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,5 +1,6 @@
|
|
|
1
|
-
function _defineProperty(
|
|
2
|
-
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
3
4
|
// This component is based on RN's DrawerLayoutAndroid API
|
|
4
5
|
//
|
|
5
6
|
// It perhaps deserves to be put in a separate repo, but since it relies on
|
|
@@ -7,6 +8,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
7
8
|
// decided to keep it here for the time being. It will allow us to move faster
|
|
8
9
|
// and fix issues that may arise in gesture handler library that could be found
|
|
9
10
|
// when using the drawer component
|
|
11
|
+
|
|
10
12
|
import * as React from 'react';
|
|
11
13
|
import { Component } from 'react';
|
|
12
14
|
import invariant from 'invariant';
|
|
@@ -18,22 +20,55 @@ const DRAG_TOSS = 0.05;
|
|
|
18
20
|
const IDLE = 'Idle';
|
|
19
21
|
const DRAGGING = 'Dragging';
|
|
20
22
|
const SETTLING = 'Settling';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
42
|
+
*/
|
|
43
|
+
|
|
44
|
+
// Animated.AnimatedInterpolation has been converted to a generic type
|
|
45
|
+
// in @types/react-native 0.70. This way we can maintain compatibility
|
|
46
|
+
// with all versions of @types/react-native`
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
50
|
+
*/
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
|
|
58
|
+
*/
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* @deprecated use Reanimated version of DrawerLayout instead
|
|
62
|
+
*/
|
|
21
63
|
export default class DrawerLayout extends Component {
|
|
22
64
|
constructor(_props) {
|
|
23
65
|
super(_props);
|
|
24
|
-
|
|
25
66
|
_defineProperty(this, "openValue", void 0);
|
|
26
|
-
|
|
27
67
|
_defineProperty(this, "onGestureEvent", void 0);
|
|
28
|
-
|
|
29
68
|
_defineProperty(this, "accessibilityIsModalView", /*#__PURE__*/React.createRef());
|
|
30
|
-
|
|
31
69
|
_defineProperty(this, "pointerEventsView", /*#__PURE__*/React.createRef());
|
|
32
|
-
|
|
33
70
|
_defineProperty(this, "panGestureHandler", /*#__PURE__*/React.createRef());
|
|
34
|
-
|
|
35
71
|
_defineProperty(this, "drawerShown", false);
|
|
36
|
-
|
|
37
72
|
_defineProperty(this, "updateAnimatedEvent", (props, state) => {
|
|
38
73
|
// Event definition is based on
|
|
39
74
|
const {
|
|
@@ -49,7 +84,6 @@ export default class DrawerLayout extends Component {
|
|
|
49
84
|
} = state;
|
|
50
85
|
let dragX = dragXValue;
|
|
51
86
|
let touchX = touchXValue;
|
|
52
|
-
|
|
53
87
|
if (drawerPosition !== 'left') {
|
|
54
88
|
// Most of the code is written in a way to handle left-side drawer. In
|
|
55
89
|
// order to handle right-side drawer the only thing we need to do is to
|
|
@@ -58,13 +92,13 @@ export default class DrawerLayout extends Component {
|
|
|
58
92
|
// calulcated by subtracing real touchX from the width of the container
|
|
59
93
|
// (such that when touch happens at the right edge the value is simply 0)
|
|
60
94
|
dragX = Animated.multiply(new Animated.Value(-1), dragXValue); // TODO(TS): (for all "as" in this file) make sure we can map this
|
|
61
|
-
|
|
62
95
|
touchX = Animated.add(new Animated.Value(containerWidth), Animated.multiply(new Animated.Value(-1), touchXValue)); // TODO(TS): make sure we can map this;
|
|
63
|
-
|
|
64
96
|
touchXValue.setValue(containerWidth);
|
|
65
97
|
} else {
|
|
66
98
|
touchXValue.setValue(0);
|
|
67
|
-
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// While closing the drawer when user starts gesture outside of its area (in greyed
|
|
68
102
|
// out part of the window), we want the drawer to follow only once finger reaches the
|
|
69
103
|
// edge of the drawer.
|
|
70
104
|
// E.g. on the diagram below drawer is illustrate by X signs and the greyed out area by
|
|
@@ -89,10 +123,7 @@ export default class DrawerLayout extends Component {
|
|
|
89
123
|
//
|
|
90
124
|
// This is used only when drawerType is "front"
|
|
91
125
|
//
|
|
92
|
-
|
|
93
|
-
|
|
94
126
|
let translationX = dragX;
|
|
95
|
-
|
|
96
127
|
if (drawerType === 'front') {
|
|
97
128
|
const startPositionX = Animated.add(touchX, Animated.multiply(new Animated.Value(-1), dragX));
|
|
98
129
|
const dragOffsetFromOnStartPosition = startPositionX.interpolate({
|
|
@@ -101,7 +132,6 @@ export default class DrawerLayout extends Component {
|
|
|
101
132
|
});
|
|
102
133
|
translationX = Animated.add(dragX, dragOffsetFromOnStartPosition); // TODO: as above
|
|
103
134
|
}
|
|
104
|
-
|
|
105
135
|
this.openValue = Animated.add(translationX, drawerTranslation).interpolate({
|
|
106
136
|
inputRange: [0, drawerWidth],
|
|
107
137
|
outputRange: [0, 1],
|
|
@@ -110,17 +140,14 @@ export default class DrawerLayout extends Component {
|
|
|
110
140
|
const gestureOptions = {
|
|
111
141
|
useNativeDriver: props.useNativeAnimations
|
|
112
142
|
};
|
|
113
|
-
|
|
114
143
|
if (this.props.onDrawerSlide) {
|
|
115
144
|
gestureOptions.listener = ev => {
|
|
116
145
|
var _this$props$onDrawerS, _this$props;
|
|
117
|
-
|
|
118
146
|
const translationX = Math.floor(Math.abs(ev.nativeEvent.translationX));
|
|
119
147
|
const position = translationX / this.state.containerWidth;
|
|
120
|
-
(_this$props$onDrawerS = (_this$props = this.props).onDrawerSlide) === null || _this$props$onDrawerS === void 0
|
|
148
|
+
(_this$props$onDrawerS = (_this$props = this.props).onDrawerSlide) === null || _this$props$onDrawerS === void 0 || _this$props$onDrawerS.call(_this$props, position);
|
|
121
149
|
};
|
|
122
150
|
}
|
|
123
|
-
|
|
124
151
|
this.onGestureEvent = Animated.event([{
|
|
125
152
|
nativeEvent: {
|
|
126
153
|
translationX: dragXValue,
|
|
@@ -128,7 +155,6 @@ export default class DrawerLayout extends Component {
|
|
|
128
155
|
}
|
|
129
156
|
}], gestureOptions);
|
|
130
157
|
});
|
|
131
|
-
|
|
132
158
|
_defineProperty(this, "handleContainerLayout", ({
|
|
133
159
|
nativeEvent
|
|
134
160
|
}) => {
|
|
@@ -136,13 +162,10 @@ export default class DrawerLayout extends Component {
|
|
|
136
162
|
containerWidth: nativeEvent.layout.width
|
|
137
163
|
});
|
|
138
164
|
});
|
|
139
|
-
|
|
140
165
|
_defineProperty(this, "emitStateChanged", (newState, drawerWillShow) => {
|
|
141
166
|
var _this$props$onDrawerS2, _this$props2;
|
|
142
|
-
|
|
143
|
-
(_this$props$onDrawerS2 = (_this$props2 = this.props).onDrawerStateChanged) === null || _this$props$onDrawerS2 === void 0 ? void 0 : _this$props$onDrawerS2.call(_this$props2, newState, drawerWillShow);
|
|
167
|
+
(_this$props$onDrawerS2 = (_this$props2 = this.props).onDrawerStateChanged) === null || _this$props$onDrawerS2 === void 0 || _this$props$onDrawerS2.call(_this$props2, newState, drawerWillShow);
|
|
144
168
|
});
|
|
145
|
-
|
|
146
169
|
_defineProperty(this, "openingHandlerStateChange", ({
|
|
147
170
|
nativeEvent
|
|
148
171
|
}) => {
|
|
@@ -155,17 +178,14 @@ export default class DrawerLayout extends Component {
|
|
|
155
178
|
this.setState({
|
|
156
179
|
drawerState: DRAGGING
|
|
157
180
|
});
|
|
158
|
-
|
|
159
181
|
if (this.props.keyboardDismissMode === 'on-drag') {
|
|
160
182
|
Keyboard.dismiss();
|
|
161
183
|
}
|
|
162
|
-
|
|
163
184
|
if (this.props.hideStatusBar) {
|
|
164
185
|
StatusBar.setHidden(true, this.props.statusBarAnimation || 'slide');
|
|
165
186
|
}
|
|
166
187
|
}
|
|
167
188
|
});
|
|
168
|
-
|
|
169
189
|
_defineProperty(this, "onTapHandlerStateChange", ({
|
|
170
190
|
nativeEvent
|
|
171
191
|
}) => {
|
|
@@ -173,7 +193,6 @@ export default class DrawerLayout extends Component {
|
|
|
173
193
|
this.closeDrawer();
|
|
174
194
|
}
|
|
175
195
|
});
|
|
176
|
-
|
|
177
196
|
_defineProperty(this, "handleRelease", ({
|
|
178
197
|
nativeEvent
|
|
179
198
|
}) => {
|
|
@@ -190,7 +209,6 @@ export default class DrawerLayout extends Component {
|
|
|
190
209
|
velocityX,
|
|
191
210
|
x: touchX
|
|
192
211
|
} = nativeEvent;
|
|
193
|
-
|
|
194
212
|
if (drawerPosition !== 'left') {
|
|
195
213
|
// See description in _updateAnimatedEvent about why events are flipped
|
|
196
214
|
// for right-side drawer
|
|
@@ -198,33 +216,27 @@ export default class DrawerLayout extends Component {
|
|
|
198
216
|
touchX = containerWidth - touchX;
|
|
199
217
|
velocityX = -velocityX;
|
|
200
218
|
}
|
|
201
|
-
|
|
202
219
|
const gestureStartX = touchX - dragX;
|
|
203
220
|
let dragOffsetBasedOnStart = 0;
|
|
204
|
-
|
|
205
221
|
if (drawerType === 'front') {
|
|
206
222
|
dragOffsetBasedOnStart = gestureStartX > drawerWidth ? gestureStartX - drawerWidth : 0;
|
|
207
223
|
}
|
|
208
|
-
|
|
209
224
|
const startOffsetX = dragX + dragOffsetBasedOnStart + (this.drawerShown ? drawerWidth : 0);
|
|
210
225
|
const projOffsetX = startOffsetX + DRAG_TOSS * velocityX;
|
|
211
226
|
const shouldOpen = projOffsetX > drawerWidth / 2;
|
|
212
|
-
|
|
213
227
|
if (shouldOpen) {
|
|
214
228
|
this.animateDrawer(startOffsetX, drawerWidth, velocityX);
|
|
215
229
|
} else {
|
|
216
230
|
this.animateDrawer(startOffsetX, 0, velocityX);
|
|
217
231
|
}
|
|
218
232
|
});
|
|
219
|
-
|
|
220
233
|
_defineProperty(this, "updateShowing", showing => {
|
|
221
234
|
var _this$accessibilityIs, _this$pointerEventsVi, _this$panGestureHandl;
|
|
222
|
-
|
|
223
235
|
this.drawerShown = showing;
|
|
224
|
-
(_this$accessibilityIs = this.accessibilityIsModalView.current) === null || _this$accessibilityIs === void 0
|
|
236
|
+
(_this$accessibilityIs = this.accessibilityIsModalView.current) === null || _this$accessibilityIs === void 0 || _this$accessibilityIs.setNativeProps({
|
|
225
237
|
accessibilityViewIsModal: showing
|
|
226
238
|
});
|
|
227
|
-
(_this$pointerEventsVi = this.pointerEventsView.current) === null || _this$pointerEventsVi === void 0
|
|
239
|
+
(_this$pointerEventsVi = this.pointerEventsView.current) === null || _this$pointerEventsVi === void 0 || _this$pointerEventsVi.setNativeProps({
|
|
228
240
|
pointerEvents: showing ? 'auto' : 'none'
|
|
229
241
|
});
|
|
230
242
|
const {
|
|
@@ -232,35 +244,32 @@ export default class DrawerLayout extends Component {
|
|
|
232
244
|
minSwipeDistance,
|
|
233
245
|
edgeWidth
|
|
234
246
|
} = this.props;
|
|
235
|
-
const fromLeft = drawerPosition === 'left';
|
|
247
|
+
const fromLeft = drawerPosition === 'left';
|
|
248
|
+
// gestureOrientation is 1 if the expected gesture is from left to right and
|
|
236
249
|
// -1 otherwise e.g. when drawer is on the left and is closed we expect left
|
|
237
250
|
// to right gesture, thus orientation will be 1.
|
|
238
|
-
|
|
239
|
-
|
|
251
|
+
const gestureOrientation = (fromLeft ? 1 : -1) * (this.drawerShown ? -1 : 1);
|
|
252
|
+
// When drawer is closed we want the hitSlop to be horizontally shorter than
|
|
240
253
|
// the container size by the value of SLOP. This will make it only activate
|
|
241
254
|
// when gesture happens not further than SLOP away from the edge
|
|
242
|
-
|
|
243
255
|
const hitSlop = fromLeft ? {
|
|
244
256
|
left: 0,
|
|
245
257
|
width: showing ? undefined : edgeWidth
|
|
246
258
|
} : {
|
|
247
259
|
right: 0,
|
|
248
260
|
width: showing ? undefined : edgeWidth
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
(_this$panGestureHandl = this.panGestureHandler.current) === null || _this$panGestureHandl === void 0
|
|
261
|
+
};
|
|
262
|
+
// @ts-ignore internal API, maybe could be fixed in handler types
|
|
263
|
+
(_this$panGestureHandl = this.panGestureHandler.current) === null || _this$panGestureHandl === void 0 || _this$panGestureHandl.setNativeProps({
|
|
252
264
|
hitSlop,
|
|
253
265
|
activeOffsetX: gestureOrientation * minSwipeDistance
|
|
254
266
|
});
|
|
255
267
|
});
|
|
256
|
-
|
|
257
268
|
_defineProperty(this, "animateDrawer", (fromValue, toValue, velocity, speed) => {
|
|
258
269
|
this.state.dragX.setValue(0);
|
|
259
270
|
this.state.touchX.setValue(this.props.drawerPosition === 'left' ? 0 : this.state.containerWidth);
|
|
260
|
-
|
|
261
271
|
if (fromValue != null) {
|
|
262
272
|
let nextFramePosition = fromValue;
|
|
263
|
-
|
|
264
273
|
if (this.props.useNativeAnimations) {
|
|
265
274
|
// When using native driver, we predict the next position of the
|
|
266
275
|
// animation because it takes one frame of a roundtrip to pass RELEASE
|
|
@@ -272,21 +281,17 @@ export default class DrawerLayout extends Component {
|
|
|
272
281
|
nextFramePosition = Math.max(fromValue + velocity / 60.0, toValue);
|
|
273
282
|
}
|
|
274
283
|
}
|
|
275
|
-
|
|
276
284
|
this.state.drawerTranslation.setValue(nextFramePosition);
|
|
277
285
|
}
|
|
278
|
-
|
|
279
286
|
const willShow = toValue !== 0;
|
|
280
287
|
this.updateShowing(willShow);
|
|
281
288
|
this.emitStateChanged(SETTLING, willShow);
|
|
282
289
|
this.setState({
|
|
283
290
|
drawerState: SETTLING
|
|
284
291
|
});
|
|
285
|
-
|
|
286
292
|
if (this.props.hideStatusBar) {
|
|
287
293
|
StatusBar.setHidden(willShow, this.props.statusBarAnimation || 'slide');
|
|
288
294
|
}
|
|
289
|
-
|
|
290
295
|
Animated.spring(this.state.drawerTranslation, {
|
|
291
296
|
velocity,
|
|
292
297
|
bounciness: 0,
|
|
@@ -301,7 +306,6 @@ export default class DrawerLayout extends Component {
|
|
|
301
306
|
this.setState({
|
|
302
307
|
drawerOpened: willShow
|
|
303
308
|
});
|
|
304
|
-
|
|
305
309
|
if (this.state.drawerState !== DRAGGING) {
|
|
306
310
|
// It's possilbe that user started drag while the drawer
|
|
307
311
|
// was settling, don't override state in this case
|
|
@@ -309,47 +313,42 @@ export default class DrawerLayout extends Component {
|
|
|
309
313
|
drawerState: IDLE
|
|
310
314
|
});
|
|
311
315
|
}
|
|
312
|
-
|
|
313
316
|
if (willShow) {
|
|
314
317
|
var _this$props$onDrawerO, _this$props3;
|
|
315
|
-
|
|
316
|
-
(_this$props$onDrawerO = (_this$props3 = this.props).onDrawerOpen) === null || _this$props$onDrawerO === void 0 ? void 0 : _this$props$onDrawerO.call(_this$props3);
|
|
318
|
+
(_this$props$onDrawerO = (_this$props3 = this.props).onDrawerOpen) === null || _this$props$onDrawerO === void 0 || _this$props$onDrawerO.call(_this$props3);
|
|
317
319
|
} else {
|
|
318
320
|
var _this$props$onDrawerC, _this$props4;
|
|
319
|
-
|
|
320
|
-
(_this$props$onDrawerC = (_this$props4 = this.props).onDrawerClose) === null || _this$props$onDrawerC === void 0 ? void 0 : _this$props$onDrawerC.call(_this$props4);
|
|
321
|
+
(_this$props$onDrawerC = (_this$props4 = this.props).onDrawerClose) === null || _this$props$onDrawerC === void 0 || _this$props$onDrawerC.call(_this$props4);
|
|
321
322
|
}
|
|
322
323
|
}
|
|
323
324
|
});
|
|
324
325
|
});
|
|
325
|
-
|
|
326
326
|
_defineProperty(this, "openDrawer", (options = {}) => {
|
|
327
|
-
this.animateDrawer(
|
|
328
|
-
|
|
329
|
-
|
|
327
|
+
this.animateDrawer(
|
|
328
|
+
// TODO: decide if it should be null or undefined is the proper value
|
|
329
|
+
undefined, this.props.drawerWidth, options.velocity ? options.velocity : 0, options.speed);
|
|
330
330
|
|
|
331
|
+
// We need to force the update, otherwise the overlay is not rerendered and
|
|
332
|
+
// it would not be clickable
|
|
331
333
|
this.forceUpdate();
|
|
332
334
|
});
|
|
333
|
-
|
|
334
335
|
_defineProperty(this, "closeDrawer", (options = {}) => {
|
|
335
336
|
// TODO: decide if it should be null or undefined is the proper value
|
|
336
|
-
this.animateDrawer(undefined, 0, options.velocity ? options.velocity : 0, options.speed);
|
|
337
|
-
// it would be still clickable
|
|
337
|
+
this.animateDrawer(undefined, 0, options.velocity ? options.velocity : 0, options.speed);
|
|
338
338
|
|
|
339
|
+
// We need to force the update, otherwise the overlay is not rerendered and
|
|
340
|
+
// it would be still clickable
|
|
339
341
|
this.forceUpdate();
|
|
340
342
|
});
|
|
341
|
-
|
|
342
343
|
_defineProperty(this, "renderOverlay", () => {
|
|
343
344
|
/* Overlay styles */
|
|
344
345
|
invariant(this.openValue, 'should be set');
|
|
345
346
|
let overlayOpacity;
|
|
346
|
-
|
|
347
347
|
if (this.state.drawerState !== IDLE) {
|
|
348
348
|
overlayOpacity = this.openValue;
|
|
349
349
|
} else {
|
|
350
350
|
overlayOpacity = this.state.drawerOpened ? 1 : 0;
|
|
351
351
|
}
|
|
352
|
-
|
|
353
352
|
const dynamicOverlayStyles = {
|
|
354
353
|
opacity: overlayOpacity,
|
|
355
354
|
backgroundColor: this.props.overlayColor
|
|
@@ -362,7 +361,6 @@ export default class DrawerLayout extends Component {
|
|
|
362
361
|
style: [styles.overlay, dynamicOverlayStyles]
|
|
363
362
|
}));
|
|
364
363
|
});
|
|
365
|
-
|
|
366
364
|
_defineProperty(this, "renderDrawer", () => {
|
|
367
365
|
const {
|
|
368
366
|
drawerBackgroundColor,
|
|
@@ -374,11 +372,12 @@ export default class DrawerLayout extends Component {
|
|
|
374
372
|
} = this.props;
|
|
375
373
|
const fromLeft = drawerPosition === 'left';
|
|
376
374
|
const drawerSlide = drawerType !== 'back';
|
|
377
|
-
const containerSlide = drawerType !== 'front';
|
|
375
|
+
const containerSlide = drawerType !== 'front';
|
|
376
|
+
|
|
377
|
+
// We rely on row and row-reverse flex directions to position the drawer
|
|
378
378
|
// properly. Apparently for RTL these are flipped which requires us to use
|
|
379
379
|
// the opposite setting for the drawer to appear from left or right
|
|
380
380
|
// according to the drawerPosition prop
|
|
381
|
-
|
|
382
381
|
const reverseContentDirection = I18nManager.isRTL ? fromLeft : !fromLeft;
|
|
383
382
|
const dynamicDrawerStyles = {
|
|
384
383
|
backgroundColor: drawerBackgroundColor,
|
|
@@ -387,7 +386,6 @@ export default class DrawerLayout extends Component {
|
|
|
387
386
|
const openValue = this.openValue;
|
|
388
387
|
invariant(openValue, 'should be set');
|
|
389
388
|
let containerStyles;
|
|
390
|
-
|
|
391
389
|
if (containerSlide) {
|
|
392
390
|
const containerTranslateX = openValue.interpolate({
|
|
393
391
|
inputRange: [0, 1],
|
|
@@ -400,12 +398,9 @@ export default class DrawerLayout extends Component {
|
|
|
400
398
|
}]
|
|
401
399
|
};
|
|
402
400
|
}
|
|
403
|
-
|
|
404
401
|
let drawerTranslateX = 0;
|
|
405
|
-
|
|
406
402
|
if (drawerSlide) {
|
|
407
403
|
const closedDrawerOffset = fromLeft ? -drawerWidth : drawerWidth;
|
|
408
|
-
|
|
409
404
|
if (this.state.drawerState !== IDLE) {
|
|
410
405
|
drawerTranslateX = openValue.interpolate({
|
|
411
406
|
inputRange: [0, 1],
|
|
@@ -416,7 +411,6 @@ export default class DrawerLayout extends Component {
|
|
|
416
411
|
drawerTranslateX = this.state.drawerOpened ? 0 : closedDrawerOffset;
|
|
417
412
|
}
|
|
418
413
|
}
|
|
419
|
-
|
|
420
414
|
const drawerStyles = {
|
|
421
415
|
transform: [{
|
|
422
416
|
translateX: drawerTranslateX
|
|
@@ -438,22 +432,16 @@ export default class DrawerLayout extends Component {
|
|
|
438
432
|
style: dynamicDrawerStyles
|
|
439
433
|
}, this.props.renderNavigationView(this.openValue))));
|
|
440
434
|
});
|
|
441
|
-
|
|
442
435
|
_defineProperty(this, "setPanGestureRef", ref => {
|
|
443
436
|
var _this$props$onGesture, _this$props5;
|
|
444
|
-
|
|
445
437
|
// TODO(TS): make sure it is OK taken from
|
|
446
438
|
// https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065#issuecomment-596081842
|
|
447
439
|
this.panGestureHandler.current = ref;
|
|
448
|
-
(_this$props$onGesture = (_this$props5 = this.props).onGestureRef) === null || _this$props$onGesture === void 0
|
|
440
|
+
(_this$props$onGesture = (_this$props5 = this.props).onGestureRef) === null || _this$props$onGesture === void 0 || _this$props$onGesture.call(_this$props5, ref);
|
|
449
441
|
});
|
|
450
|
-
|
|
451
442
|
const _dragX = new Animated.Value(0);
|
|
452
|
-
|
|
453
443
|
const _touchX = new Animated.Value(0);
|
|
454
|
-
|
|
455
444
|
const _drawerTranslation = new Animated.Value(0);
|
|
456
|
-
|
|
457
445
|
this.state = {
|
|
458
446
|
dragX: _dragX,
|
|
459
447
|
touchX: _touchX,
|
|
@@ -464,15 +452,12 @@ export default class DrawerLayout extends Component {
|
|
|
464
452
|
};
|
|
465
453
|
this.updateAnimatedEvent(_props, this.state);
|
|
466
454
|
}
|
|
467
|
-
|
|
468
455
|
shouldComponentUpdate(props, state) {
|
|
469
456
|
if (this.props.drawerPosition !== props.drawerPosition || this.props.drawerWidth !== props.drawerWidth || this.props.drawerType !== props.drawerType || this.state.containerWidth !== state.containerWidth) {
|
|
470
457
|
this.updateAnimatedEvent(props, state);
|
|
471
458
|
}
|
|
472
|
-
|
|
473
459
|
return true;
|
|
474
460
|
}
|
|
475
|
-
|
|
476
461
|
render() {
|
|
477
462
|
const {
|
|
478
463
|
drawerPosition,
|
|
@@ -480,14 +465,16 @@ export default class DrawerLayout extends Component {
|
|
|
480
465
|
edgeWidth,
|
|
481
466
|
minSwipeDistance
|
|
482
467
|
} = this.props;
|
|
483
|
-
const fromLeft = drawerPosition === 'left';
|
|
468
|
+
const fromLeft = drawerPosition === 'left';
|
|
469
|
+
|
|
470
|
+
// gestureOrientation is 1 if the expected gesture is from left to right and
|
|
484
471
|
// -1 otherwise e.g. when drawer is on the left and is closed we expect left
|
|
485
472
|
// to right gesture, thus orientation will be 1.
|
|
473
|
+
const gestureOrientation = (fromLeft ? 1 : -1) * (this.drawerShown ? -1 : 1);
|
|
486
474
|
|
|
487
|
-
|
|
475
|
+
// When drawer is closed we want the hitSlop to be horizontally shorter than
|
|
488
476
|
// the container size by the value of SLOP. This will make it only activate
|
|
489
477
|
// when gesture happens not further than SLOP away from the edge
|
|
490
|
-
|
|
491
478
|
const hitSlop = fromLeft ? {
|
|
492
479
|
left: 0,
|
|
493
480
|
width: this.drawerShown ? undefined : edgeWidth
|
|
@@ -495,7 +482,8 @@ export default class DrawerLayout extends Component {
|
|
|
495
482
|
right: 0,
|
|
496
483
|
width: this.drawerShown ? undefined : edgeWidth
|
|
497
484
|
};
|
|
498
|
-
return /*#__PURE__*/React.createElement(PanGestureHandler
|
|
485
|
+
return /*#__PURE__*/React.createElement(PanGestureHandler
|
|
486
|
+
// @ts-ignore could be fixed in handler types
|
|
499
487
|
, {
|
|
500
488
|
userSelect: this.props.userSelect,
|
|
501
489
|
activeCursor: this.props.activeCursor,
|
|
@@ -511,9 +499,7 @@ export default class DrawerLayout extends Component {
|
|
|
511
499
|
enabled: drawerLockMode !== 'locked-closed' && drawerLockMode !== 'locked-open'
|
|
512
500
|
}, this.renderDrawer());
|
|
513
501
|
}
|
|
514
|
-
|
|
515
502
|
}
|
|
516
|
-
|
|
517
503
|
_defineProperty(DrawerLayout, "defaultProps", {
|
|
518
504
|
drawerWidth: 200,
|
|
519
505
|
drawerPosition: 'left',
|
|
@@ -525,28 +511,30 @@ _defineProperty(DrawerLayout, "defaultProps", {
|
|
|
525
511
|
drawerLockMode: 'unlocked',
|
|
526
512
|
enableTrackpadTwoFingerGesture: false
|
|
527
513
|
});
|
|
528
|
-
|
|
529
514
|
_defineProperty(DrawerLayout, "positions", {
|
|
530
515
|
Left: 'left',
|
|
531
516
|
Right: 'right'
|
|
532
517
|
});
|
|
533
|
-
|
|
534
518
|
const styles = StyleSheet.create({
|
|
535
|
-
drawerContainer: {
|
|
519
|
+
drawerContainer: {
|
|
520
|
+
...StyleSheet.absoluteFillObject,
|
|
536
521
|
zIndex: 1001,
|
|
537
522
|
flexDirection: 'row'
|
|
538
523
|
},
|
|
539
|
-
containerInFront: {
|
|
524
|
+
containerInFront: {
|
|
525
|
+
...StyleSheet.absoluteFillObject,
|
|
540
526
|
zIndex: 1002
|
|
541
527
|
},
|
|
542
|
-
containerOnBack: {
|
|
528
|
+
containerOnBack: {
|
|
529
|
+
...StyleSheet.absoluteFillObject
|
|
543
530
|
},
|
|
544
531
|
main: {
|
|
545
532
|
flex: 1,
|
|
546
533
|
zIndex: 0,
|
|
547
534
|
overflow: 'hidden'
|
|
548
535
|
},
|
|
549
|
-
overlay: {
|
|
536
|
+
overlay: {
|
|
537
|
+
...StyleSheet.absoluteFillObject,
|
|
550
538
|
zIndex: 1000
|
|
551
539
|
}
|
|
552
540
|
});
|