@react-native-oh-tpl/react-native-gesture-handler 2.12.1-0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- package/DrawerLayout/package.json +6 -0
- package/LICENSE +21 -0
- package/README.md +62 -0
- package/RNGestureHandler.podspec +44 -0
- package/Swipeable/package.json +6 -0
- package/android/build.gradle +209 -0
- package/android/common/src/main/java/com/swmansion/common/GestureHandlerStateManager.kt +5 -0
- package/android/fabric/src/main/java/com/swmansion/gesturehandler/RNGestureHandlerComponentsRegistry.java +29 -0
- package/android/fabric/src/main/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +12 -0
- package/android/gradle.properties +19 -0
- package/android/noreanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +10 -0
- package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerDelegate.java +50 -0
- package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerInterface.java +23 -0
- package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerDelegate.java +25 -0
- package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerInterface.java +16 -0
- package/android/paper/src/main/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +13 -0
- package/android/reanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +17 -0
- package/android/src/main/AndroidManifest.xml +3 -0
- package/android/src/main/java/com/swmansion/gesturehandler/RNGestureHandlerPackage.kt +21 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/FlingGestureHandler.kt +100 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt +807 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerInteractionController.kt +8 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +671 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerRegistry.kt +8 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureUtils.kt +47 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/HoverGestureHandler.kt +120 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/LongPressGestureHandler.kt +100 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/ManualGestureHandler.kt +11 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +257 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/OnTouchEventListener.kt +9 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/PanGestureHandler.kt +322 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/PinchGestureHandler.kt +103 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/PointerEventsConfig.kt +23 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureDetector.kt +125 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureHandler.kt +93 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/ScaleGestureDetector.java +558 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/TapGestureHandler.kt +168 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/ViewConfigurationHelper.kt +10 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/Extensions.kt +16 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +423 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEnabledRootView.kt +15 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEvent.kt +75 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +74 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +702 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRegistry.kt +100 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt +142 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootInterface.kt +5 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootView.kt +78 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.kt +51 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerStateChangeEvent.kt +78 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt +69 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.kt +51 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/FlingGestureHandlerEventDataBuilder.kt +30 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/GestureHandlerEventDataBuilder.kt +22 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/HoverGestureHandlerEventDataBuilder.kt +30 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/LongPressGestureHandlerEventDataBuilder.kt +33 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/ManualGestureHandlerEventDataBuilder.kt +5 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/NativeGestureHandlerEventDataBuilder.kt +18 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/PanGestureHandlerEventDataBuilder.kt +42 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/PinchGestureHandlerEventDataBuilder.kt +30 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/RotationGestureHandlerEventDataBuilder.kt +30 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/TapGestureHandlerEventDataBuilder.kt +30 -0
- package/android/src/main/jni/CMakeLists.txt +37 -0
- package/android/src/main/jni/cpp-adapter.cpp +44 -0
- package/ios/Handlers/RNFlingHandler.h +4 -0
- package/ios/Handlers/RNFlingHandler.m +152 -0
- package/ios/Handlers/RNForceTouchHandler.h +4 -0
- package/ios/Handlers/RNForceTouchHandler.m +175 -0
- package/ios/Handlers/RNHoverHandler.h +12 -0
- package/ios/Handlers/RNHoverHandler.m +153 -0
- package/ios/Handlers/RNLongPressHandler.h +12 -0
- package/ios/Handlers/RNLongPressHandler.m +183 -0
- package/ios/Handlers/RNManualHandler.h +4 -0
- package/ios/Handlers/RNManualHandler.m +88 -0
- package/ios/Handlers/RNNativeViewHandler.h +15 -0
- package/ios/Handlers/RNNativeViewHandler.mm +193 -0
- package/ios/Handlers/RNPanHandler.h +12 -0
- package/ios/Handlers/RNPanHandler.m +331 -0
- package/ios/Handlers/RNPinchHandler.h +12 -0
- package/ios/Handlers/RNPinchHandler.m +95 -0
- package/ios/Handlers/RNRotationHandler.h +12 -0
- package/ios/Handlers/RNRotationHandler.m +93 -0
- package/ios/Handlers/RNTapHandler.h +12 -0
- package/ios/Handlers/RNTapHandler.m +265 -0
- package/ios/RNGHTouchEventType.h +9 -0
- package/ios/RNGestureHandler.h +90 -0
- package/ios/RNGestureHandler.m +493 -0
- package/ios/RNGestureHandler.xcodeproj/project.pbxproj +690 -0
- package/ios/RNGestureHandler.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/RNGestureHandlerActionType.h +10 -0
- package/ios/RNGestureHandlerButton.h +19 -0
- package/ios/RNGestureHandlerButton.m +77 -0
- package/ios/RNGestureHandlerButtonComponentView.h +17 -0
- package/ios/RNGestureHandlerButtonComponentView.mm +64 -0
- package/ios/RNGestureHandlerButtonManager.h +5 -0
- package/ios/RNGestureHandlerButtonManager.m +34 -0
- package/ios/RNGestureHandlerDirection.h +8 -0
- package/ios/RNGestureHandlerEvents.h +65 -0
- package/ios/RNGestureHandlerEvents.m +260 -0
- package/ios/RNGestureHandlerManager.h +35 -0
- package/ios/RNGestureHandlerManager.mm +367 -0
- package/ios/RNGestureHandlerModule.h +7 -0
- package/ios/RNGestureHandlerModule.mm +320 -0
- package/ios/RNGestureHandlerPointerTracker.h +25 -0
- package/ios/RNGestureHandlerPointerTracker.m +243 -0
- package/ios/RNGestureHandlerRegistry.h +21 -0
- package/ios/RNGestureHandlerRegistry.m +63 -0
- package/ios/RNGestureHandlerRootViewComponentView.mm +21 -0
- package/ios/RNGestureHandlerState.h +10 -0
- package/ios/RNGestureHandlerStateManager.h +5 -0
- package/ios/RNManualActivationRecognizer.h +10 -0
- package/ios/RNManualActivationRecognizer.m +88 -0
- package/ios/RNRootViewGestureRecognizer.h +17 -0
- package/ios/RNRootViewGestureRecognizer.m +106 -0
- package/jest-utils/package.json +6 -0
- package/jestSetup.js +7 -0
- package/lib/commonjs/ActionType.js +15 -0
- package/lib/commonjs/ActionType.js.map +1 -0
- package/lib/commonjs/Directions.js +15 -0
- package/lib/commonjs/Directions.js.map +1 -0
- package/lib/commonjs/EnableNewWebImplementation.js +35 -0
- package/lib/commonjs/EnableNewWebImplementation.js.map +1 -0
- package/lib/commonjs/GestureHandlerRootViewContext.js +15 -0
- package/lib/commonjs/GestureHandlerRootViewContext.js.map +1 -0
- package/lib/commonjs/PlatformConstants.js +15 -0
- package/lib/commonjs/PlatformConstants.js.map +1 -0
- package/lib/commonjs/PlatformConstants.web.js +14 -0
- package/lib/commonjs/PlatformConstants.web.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.js +29 -0
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.macos.js +149 -0
- package/lib/commonjs/RNGestureHandlerModule.macos.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.web.js +163 -0
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.windows.js +158 -0
- package/lib/commonjs/RNGestureHandlerModule.windows.js.map +1 -0
- package/lib/commonjs/RNRenderer.js +16 -0
- package/lib/commonjs/RNRenderer.js.map +1 -0
- package/lib/commonjs/RNRenderer.web.js +11 -0
- package/lib/commonjs/RNRenderer.web.js.map +1 -0
- package/lib/commonjs/State.js +18 -0
- package/lib/commonjs/State.js.map +1 -0
- package/lib/commonjs/TouchEventType.js +16 -0
- package/lib/commonjs/TouchEventType.js.map +1 -0
- package/lib/commonjs/components/DrawerLayout.js +566 -0
- package/lib/commonjs/components/DrawerLayout.js.map +1 -0
- package/lib/commonjs/components/GestureButtons.js +240 -0
- package/lib/commonjs/components/GestureButtons.js.map +1 -0
- package/lib/commonjs/components/GestureComponents.js +115 -0
- package/lib/commonjs/components/GestureComponents.js.map +1 -0
- package/lib/commonjs/components/GestureComponents.web.js +52 -0
- package/lib/commonjs/components/GestureComponents.web.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerButton.js +14 -0
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerButton.web.js +24 -0
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.android.js +31 -0
- package/lib/commonjs/components/GestureHandlerRootView.android.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.js +31 -0
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.web.js +25 -0
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +1 -0
- package/lib/commonjs/components/Swipeable.js +408 -0
- package/lib/commonjs/components/Swipeable.js.map +1 -0
- package/lib/commonjs/components/gestureHandlerRootHOC.js +40 -0
- package/lib/commonjs/components/gestureHandlerRootHOC.js.map +1 -0
- package/lib/commonjs/components/touchables/GenericTouchable.js +289 -0
- package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableHighlight.js +109 -0
- package/lib/commonjs/components/touchables/TouchableHighlight.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +100 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +12 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableOpacity.js +77 -0
- package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +26 -0
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -0
- package/lib/commonjs/components/touchables/index.js +40 -0
- package/lib/commonjs/components/touchables/index.js.map +1 -0
- package/lib/commonjs/getReactNativeVersion.js +22 -0
- package/lib/commonjs/getReactNativeVersion.js.map +1 -0
- package/lib/commonjs/getReactNativeVersion.web.js +11 -0
- package/lib/commonjs/getReactNativeVersion.web.js.map +1 -0
- package/lib/commonjs/getShadowNodeFromRef.js +27 -0
- package/lib/commonjs/getShadowNodeFromRef.js.map +1 -0
- package/lib/commonjs/getShadowNodeFromRef.web.js +15 -0
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +1 -0
- package/lib/commonjs/ghQueueMicrotask.js +12 -0
- package/lib/commonjs/ghQueueMicrotask.js.map +1 -0
- package/lib/commonjs/handlers/FlingGestureHandler.js +25 -0
- package/lib/commonjs/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js +49 -0
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/LongPressGestureHandler.js +27 -0
- package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/NativeViewGestureHandler.js +27 -0
- package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/PanGestureHandler.js +123 -0
- package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/PinchGestureHandler.js +23 -0
- package/lib/commonjs/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/PressabilityDebugView.js +14 -0
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -0
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +12 -0
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +1 -0
- package/lib/commonjs/handlers/RotationGestureHandler.js +23 -0
- package/lib/commonjs/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/TapGestureHandler.js +27 -0
- package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/createHandler.js +464 -0
- package/lib/commonjs/handlers/createHandler.js.map +1 -0
- package/lib/commonjs/handlers/createNativeWrapper.js +74 -0
- package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -0
- package/lib/commonjs/handlers/gestureHandlerCommon.js +103 -0
- package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -0
- package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +6 -0
- package/lib/commonjs/handlers/gestureHandlerTypesCompat.js.map +1 -0
- package/lib/commonjs/handlers/gestures/GestureDetector.js +669 -0
- package/lib/commonjs/handlers/gestures/GestureDetector.js.map +1 -0
- package/lib/commonjs/handlers/gestures/eventReceiver.js +147 -0
- package/lib/commonjs/handlers/gestures/eventReceiver.js.map +1 -0
- package/lib/commonjs/handlers/gestures/flingGesture.js +34 -0
- package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +65 -0
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gesture.js +241 -0
- package/lib/commonjs/handlers/gestures/gesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureComposition.js +105 -0
- package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureObjects.js +90 -0
- package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +65 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +32 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +1 -0
- package/lib/commonjs/handlers/gestures/hoverGesture.js +74 -0
- package/lib/commonjs/handlers/gestures/hoverGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/longPressGesture.js +35 -0
- package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/manualGesture.js +31 -0
- package/lib/commonjs/handlers/gestures/manualGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/nativeGesture.js +34 -0
- package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/panGesture.js +149 -0
- package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/pinchGesture.js +45 -0
- package/lib/commonjs/handlers/gestures/pinchGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +37 -0
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +1 -0
- package/lib/commonjs/handlers/gestures/rotationGesture.js +45 -0
- package/lib/commonjs/handlers/gestures/rotationGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/tapGesture.js +60 -0
- package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -0
- package/lib/commonjs/handlers/handlersRegistry.js +67 -0
- package/lib/commonjs/handlers/handlersRegistry.js.map +1 -0
- package/lib/commonjs/index.js +266 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/init.js +32 -0
- package/lib/commonjs/init.js.map +1 -0
- package/lib/commonjs/jestUtils/index.js +20 -0
- package/lib/commonjs/jestUtils/index.js.map +1 -0
- package/lib/commonjs/jestUtils/jestUtils.js +375 -0
- package/lib/commonjs/jestUtils/jestUtils.js.map +1 -0
- package/lib/commonjs/mocks.js +66 -0
- package/lib/commonjs/mocks.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js +15 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js +15 -0
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js.map +1 -0
- package/lib/commonjs/typeUtils.js +2 -0
- package/lib/commonjs/typeUtils.js.map +1 -0
- package/lib/commonjs/utils.js +63 -0
- package/lib/commonjs/utils.js.map +1 -0
- package/lib/commonjs/web/constants.js +16 -0
- package/lib/commonjs/web/constants.js.map +1 -0
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +165 -0
- package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -0
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +156 -0
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -0
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +167 -0
- package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/GestureHandler.js +794 -0
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/HoverGestureHandler.js +62 -0
- package/lib/commonjs/web/handlers/HoverGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +151 -0
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +61 -0
- package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +178 -0
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/PanGestureHandler.js +448 -0
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +174 -0
- package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +186 -0
- package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/TapGestureHandler.js +280 -0
- package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -0
- package/lib/commonjs/web/interfaces.js +55 -0
- package/lib/commonjs/web/interfaces.js.map +1 -0
- package/lib/commonjs/web/tools/CircularBuffer.js +59 -0
- package/lib/commonjs/web/tools/CircularBuffer.js.map +1 -0
- package/lib/commonjs/web/tools/EventManager.js +127 -0
- package/lib/commonjs/web/tools/EventManager.js.map +1 -0
- package/lib/commonjs/web/tools/GestureHandlerDelegate.js +6 -0
- package/lib/commonjs/web/tools/GestureHandlerDelegate.js.map +1 -0
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +349 -0
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -0
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +118 -0
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +1 -0
- package/lib/commonjs/web/tools/InteractionManager.js +114 -0
- package/lib/commonjs/web/tools/InteractionManager.js.map +1 -0
- package/lib/commonjs/web/tools/LeastSquareSolver.js +204 -0
- package/lib/commonjs/web/tools/LeastSquareSolver.js.map +1 -0
- package/lib/commonjs/web/tools/NodeManager.js +48 -0
- package/lib/commonjs/web/tools/NodeManager.js.map +1 -0
- package/lib/commonjs/web/tools/PointerEventManager.js +198 -0
- package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -0
- package/lib/commonjs/web/tools/PointerTracker.js +226 -0
- package/lib/commonjs/web/tools/PointerTracker.js.map +1 -0
- package/lib/commonjs/web/tools/TouchEventManager.js +138 -0
- package/lib/commonjs/web/tools/TouchEventManager.js.map +1 -0
- package/lib/commonjs/web/tools/VelocityTracker.js +111 -0
- package/lib/commonjs/web/tools/VelocityTracker.js.map +1 -0
- package/lib/commonjs/web/utils.js +15 -0
- package/lib/commonjs/web/utils.js.map +1 -0
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +105 -0
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js +53 -0
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/Errors.js +16 -0
- package/lib/commonjs/web_hammer/Errors.js.map +1 -0
- package/lib/commonjs/web_hammer/FlingGestureHandler.js +170 -0
- package/lib/commonjs/web_hammer/FlingGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/GestureHandler.js +579 -0
- package/lib/commonjs/web_hammer/GestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +54 -0
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js +71 -0
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +66 -0
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/NodeManager.js +46 -0
- package/lib/commonjs/web_hammer/NodeManager.js.map +1 -0
- package/lib/commonjs/web_hammer/PanGestureHandler.js +208 -0
- package/lib/commonjs/web_hammer/PanGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/PinchGestureHandler.js +40 -0
- package/lib/commonjs/web_hammer/PinchGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/PressGestureHandler.js +188 -0
- package/lib/commonjs/web_hammer/PressGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/RotationGestureHandler.js +44 -0
- package/lib/commonjs/web_hammer/RotationGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/TapGestureHandler.js +192 -0
- package/lib/commonjs/web_hammer/TapGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/constants.js +64 -0
- package/lib/commonjs/web_hammer/constants.js.map +1 -0
- package/lib/commonjs/web_hammer/utils.js +42 -0
- package/lib/commonjs/web_hammer/utils.js.map +1 -0
- package/lib/module/ActionType.js +7 -0
- package/lib/module/ActionType.js.map +1 -0
- package/lib/module/Directions.js +7 -0
- package/lib/module/Directions.js.map +1 -0
- package/lib/module/EnableNewWebImplementation.js +22 -0
- package/lib/module/EnableNewWebImplementation.js.map +1 -0
- package/lib/module/GestureHandlerRootViewContext.js +3 -0
- package/lib/module/GestureHandlerRootViewContext.js.map +1 -0
- package/lib/module/PlatformConstants.js +5 -0
- package/lib/module/PlatformConstants.js.map +1 -0
- package/lib/module/PlatformConstants.web.js +7 -0
- package/lib/module/PlatformConstants.web.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.js +19 -0
- package/lib/module/RNGestureHandlerModule.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.macos.js +110 -0
- package/lib/module/RNGestureHandlerModule.macos.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.web.js +122 -0
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.windows.js +118 -0
- package/lib/module/RNGestureHandlerModule.windows.js.map +1 -0
- package/lib/module/RNRenderer.js +4 -0
- package/lib/module/RNRenderer.js.map +1 -0
- package/lib/module/RNRenderer.web.js +4 -0
- package/lib/module/RNRenderer.web.js.map +1 -0
- package/lib/module/State.js +10 -0
- package/lib/module/State.js.map +1 -0
- package/lib/module/TouchEventType.js +8 -0
- package/lib/module/TouchEventType.js.map +1 -0
- package/lib/module/components/DrawerLayout.js +551 -0
- package/lib/module/components/DrawerLayout.js.map +1 -0
- package/lib/module/components/GestureButtons.js +206 -0
- package/lib/module/components/GestureButtons.js.map +1 -0
- package/lib/module/components/GestureComponents.js +90 -0
- package/lib/module/components/GestureComponents.js.map +1 -0
- package/lib/module/components/GestureComponents.web.js +28 -0
- package/lib/module/components/GestureComponents.web.js.map +1 -0
- package/lib/module/components/GestureHandlerButton.js +3 -0
- package/lib/module/components/GestureHandlerButton.js.map +1 -0
- package/lib/module/components/GestureHandlerButton.web.js +9 -0
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -0
- package/lib/module/components/GestureHandlerRootView.android.js +14 -0
- package/lib/module/components/GestureHandlerRootView.android.js.map +1 -0
- package/lib/module/components/GestureHandlerRootView.js +14 -0
- package/lib/module/components/GestureHandlerRootView.js.map +1 -0
- package/lib/module/components/GestureHandlerRootView.web.js +9 -0
- package/lib/module/components/GestureHandlerRootView.web.js.map +1 -0
- package/lib/module/components/Swipeable.js +390 -0
- package/lib/module/components/Swipeable.js.map +1 -0
- package/lib/module/components/gestureHandlerRootHOC.js +22 -0
- package/lib/module/components/gestureHandlerRootHOC.js.map +1 -0
- package/lib/module/components/touchables/GenericTouchable.js +273 -0
- package/lib/module/components/touchables/GenericTouchable.js.map +1 -0
- package/lib/module/components/touchables/TouchableHighlight.js +95 -0
- package/lib/module/components/touchables/TouchableHighlight.js.map +1 -0
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js +84 -0
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js.map +1 -0
- package/lib/module/components/touchables/TouchableNativeFeedback.js +3 -0
- package/lib/module/components/touchables/TouchableNativeFeedback.js.map +1 -0
- package/lib/module/components/touchables/TouchableOpacity.js +63 -0
- package/lib/module/components/touchables/TouchableOpacity.js.map +1 -0
- package/lib/module/components/touchables/TouchableWithoutFeedback.js +10 -0
- package/lib/module/components/touchables/TouchableWithoutFeedback.js.map +1 -0
- package/lib/module/components/touchables/index.js +5 -0
- package/lib/module/components/touchables/index.js.map +1 -0
- package/lib/module/getReactNativeVersion.js +10 -0
- package/lib/module/getReactNativeVersion.js.map +1 -0
- package/lib/module/getReactNativeVersion.web.js +4 -0
- package/lib/module/getReactNativeVersion.web.js.map +1 -0
- package/lib/module/getShadowNodeFromRef.js +20 -0
- package/lib/module/getShadowNodeFromRef.js.map +1 -0
- package/lib/module/getShadowNodeFromRef.web.js +8 -0
- package/lib/module/getShadowNodeFromRef.web.js.map +1 -0
- package/lib/module/ghQueueMicrotask.js +5 -0
- package/lib/module/ghQueueMicrotask.js.map +1 -0
- package/lib/module/handlers/FlingGestureHandler.js +11 -0
- package/lib/module/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/module/handlers/ForceTouchGestureHandler.js +31 -0
- package/lib/module/handlers/ForceTouchGestureHandler.js.map +1 -0
- package/lib/module/handlers/LongPressGestureHandler.js +13 -0
- package/lib/module/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/module/handlers/NativeViewGestureHandler.js +12 -0
- package/lib/module/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/module/handlers/PanGestureHandler.js +107 -0
- package/lib/module/handlers/PanGestureHandler.js.map +1 -0
- package/lib/module/handlers/PinchGestureHandler.js +10 -0
- package/lib/module/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/module/handlers/PressabilityDebugView.js +3 -0
- package/lib/module/handlers/PressabilityDebugView.js.map +1 -0
- package/lib/module/handlers/PressabilityDebugView.web.js +5 -0
- package/lib/module/handlers/PressabilityDebugView.web.js.map +1 -0
- package/lib/module/handlers/RotationGestureHandler.js +10 -0
- package/lib/module/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/module/handlers/TapGestureHandler.js +13 -0
- package/lib/module/handlers/TapGestureHandler.js.map +1 -0
- package/lib/module/handlers/createHandler.js +433 -0
- package/lib/module/handlers/createHandler.js.map +1 -0
- package/lib/module/handlers/createNativeWrapper.js +62 -0
- package/lib/module/handlers/createNativeWrapper.js.map +1 -0
- package/lib/module/handlers/gestureHandlerCommon.js +81 -0
- package/lib/module/handlers/gestureHandlerCommon.js.map +1 -0
- package/lib/module/handlers/gestureHandlerTypesCompat.js +2 -0
- package/lib/module/handlers/gestureHandlerTypesCompat.js.map +1 -0
- package/lib/module/handlers/gestures/GestureDetector.js +619 -0
- package/lib/module/handlers/gestures/GestureDetector.js.map +1 -0
- package/lib/module/handlers/gestures/eventReceiver.js +131 -0
- package/lib/module/handlers/gestures/eventReceiver.js.map +1 -0
- package/lib/module/handlers/gestures/flingGesture.js +24 -0
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -0
- package/lib/module/handlers/gestures/forceTouchGesture.js +56 -0
- package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -0
- package/lib/module/handlers/gestures/gesture.js +222 -0
- package/lib/module/handlers/gestures/gesture.js.map +1 -0
- package/lib/module/handlers/gestures/gestureComposition.js +90 -0
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -0
- package/lib/module/handlers/gestures/gestureObjects.js +71 -0
- package/lib/module/handlers/gestures/gestureObjects.js.map +1 -0
- package/lib/module/handlers/gestures/gestureStateManager.js +54 -0
- package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -0
- package/lib/module/handlers/gestures/gestureStateManager.web.js +21 -0
- package/lib/module/handlers/gestures/gestureStateManager.web.js.map +1 -0
- package/lib/module/handlers/gestures/hoverGesture.js +62 -0
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -0
- package/lib/module/handlers/gestures/longPressGesture.js +25 -0
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -0
- package/lib/module/handlers/gestures/manualGesture.js +22 -0
- package/lib/module/handlers/gestures/manualGesture.js.map +1 -0
- package/lib/module/handlers/gestures/nativeGesture.js +24 -0
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -0
- package/lib/module/handlers/gestures/panGesture.js +140 -0
- package/lib/module/handlers/gestures/panGesture.js.map +1 -0
- package/lib/module/handlers/gestures/pinchGesture.js +36 -0
- package/lib/module/handlers/gestures/pinchGesture.js.map +1 -0
- package/lib/module/handlers/gestures/reanimatedWrapper.js +30 -0
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -0
- package/lib/module/handlers/gestures/rotationGesture.js +36 -0
- package/lib/module/handlers/gestures/rotationGesture.js.map +1 -0
- package/lib/module/handlers/gestures/tapGesture.js +50 -0
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -0
- package/lib/module/handlers/handlersRegistry.js +44 -0
- package/lib/module/handlers/handlersRegistry.js.map +1 -0
- package/lib/module/index.js +25 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/init.js +16 -0
- package/lib/module/init.js.map +1 -0
- package/lib/module/jestUtils/index.js +2 -0
- package/lib/module/jestUtils/index.js.map +1 -0
- package/lib/module/jestUtils/jestUtils.js +350 -0
- package/lib/module/jestUtils/jestUtils.js.map +1 -0
- package/lib/module/mocks.js +56 -0
- package/lib/module/mocks.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js +3 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js +3 -0
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js.map +1 -0
- package/lib/module/typeUtils.js +2 -0
- package/lib/module/typeUtils.js.map +1 -0
- package/lib/module/utils.js +44 -0
- package/lib/module/utils.js.map +1 -0
- package/lib/module/web/constants.js +8 -0
- package/lib/module/web/constants.js.map +1 -0
- package/lib/module/web/detectors/RotationGestureDetector.js +155 -0
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -0
- package/lib/module/web/detectors/ScaleGestureDetector.js +145 -0
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -0
- package/lib/module/web/handlers/FlingGestureHandler.js +152 -0
- package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/GestureHandler.js +776 -0
- package/lib/module/web/handlers/GestureHandler.js.map +1 -0
- package/lib/module/web/handlers/HoverGestureHandler.js +47 -0
- package/lib/module/web/handlers/HoverGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/LongPressGestureHandler.js +136 -0
- package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/ManualGestureHandler.js +49 -0
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/NativeViewGestureHandler.js +163 -0
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/PanGestureHandler.js +433 -0
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/PinchGestureHandler.js +159 -0
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/RotationGestureHandler.js +171 -0
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/TapGestureHandler.js +265 -0
- package/lib/module/web/handlers/TapGestureHandler.js.map +1 -0
- package/lib/module/web/interfaces.js +45 -0
- package/lib/module/web/interfaces.js.map +1 -0
- package/lib/module/web/tools/CircularBuffer.js +50 -0
- package/lib/module/web/tools/CircularBuffer.js.map +1 -0
- package/lib/module/web/tools/EventManager.js +118 -0
- package/lib/module/web/tools/EventManager.js.map +1 -0
- package/lib/module/web/tools/GestureHandlerDelegate.js +2 -0
- package/lib/module/web/tools/GestureHandlerDelegate.js.map +1 -0
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +335 -0
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -0
- package/lib/module/web/tools/GestureHandlerWebDelegate.js +102 -0
- package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +1 -0
- package/lib/module/web/tools/InteractionManager.js +105 -0
- package/lib/module/web/tools/InteractionManager.js.map +1 -0
- package/lib/module/web/tools/LeastSquareSolver.js +195 -0
- package/lib/module/web/tools/LeastSquareSolver.js.map +1 -0
- package/lib/module/web/tools/NodeManager.js +39 -0
- package/lib/module/web/tools/NodeManager.js.map +1 -0
- package/lib/module/web/tools/PointerEventManager.js +184 -0
- package/lib/module/web/tools/PointerEventManager.js.map +1 -0
- package/lib/module/web/tools/PointerTracker.js +213 -0
- package/lib/module/web/tools/PointerTracker.js.map +1 -0
- package/lib/module/web/tools/TouchEventManager.js +124 -0
- package/lib/module/web/tools/TouchEventManager.js.map +1 -0
- package/lib/module/web/tools/VelocityTracker.js +98 -0
- package/lib/module/web/tools/VelocityTracker.js.map +1 -0
- package/lib/module/web/utils.js +8 -0
- package/lib/module/web/utils.js.map +1 -0
- package/lib/module/web_hammer/DiscreteGestureHandler.js +94 -0
- package/lib/module/web_hammer/DiscreteGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/DraggingGestureHandler.js +40 -0
- package/lib/module/web_hammer/DraggingGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/Errors.js +7 -0
- package/lib/module/web_hammer/Errors.js.map +1 -0
- package/lib/module/web_hammer/FlingGestureHandler.js +156 -0
- package/lib/module/web_hammer/FlingGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/GestureHandler.js +563 -0
- package/lib/module/web_hammer/GestureHandler.js.map +1 -0
- package/lib/module/web_hammer/IndiscreteGestureHandler.js +44 -0
- package/lib/module/web_hammer/IndiscreteGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/LongPressGestureHandler.js +58 -0
- package/lib/module/web_hammer/LongPressGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/NativeViewGestureHandler.js +49 -0
- package/lib/module/web_hammer/NativeViewGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/NodeManager.js +33 -0
- package/lib/module/web_hammer/NodeManager.js.map +1 -0
- package/lib/module/web_hammer/PanGestureHandler.js +194 -0
- package/lib/module/web_hammer/PanGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/PinchGestureHandler.js +29 -0
- package/lib/module/web_hammer/PinchGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/PressGestureHandler.js +174 -0
- package/lib/module/web_hammer/PressGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/RotationGestureHandler.js +32 -0
- package/lib/module/web_hammer/RotationGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/TapGestureHandler.js +180 -0
- package/lib/module/web_hammer/TapGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/constants.js +43 -0
- package/lib/module/web_hammer/constants.js.map +1 -0
- package/lib/module/web_hammer/utils.js +19 -0
- package/lib/module/web_hammer/utils.js.map +1 -0
- package/lib/typescript/ActionType.d.ts +7 -0
- package/lib/typescript/Directions.d.ts +7 -0
- package/lib/typescript/EnableNewWebImplementation.d.ts +3 -0
- package/lib/typescript/GestureHandlerRootViewContext.d.ts +3 -0
- package/lib/typescript/PlatformConstants.d.ts +5 -0
- package/lib/typescript/PlatformConstants.web.d.ts +4 -0
- package/lib/typescript/RNGestureHandlerModule.d.ts +13 -0
- package/lib/typescript/RNGestureHandlerModule.macos.d.ts +47 -0
- package/lib/typescript/RNGestureHandlerModule.web.d.ts +50 -0
- package/lib/typescript/RNGestureHandlerModule.windows.d.ts +48 -0
- package/lib/typescript/RNRenderer.d.ts +1 -0
- package/lib/typescript/RNRenderer.web.d.ts +3 -0
- package/lib/typescript/State.d.ts +9 -0
- package/lib/typescript/TouchEventType.d.ts +8 -0
- package/lib/typescript/components/DrawerLayout.d.ts +148 -0
- package/lib/typescript/components/GestureButtons.d.ts +121 -0
- package/lib/typescript/components/GestureComponents.d.ts +22 -0
- package/lib/typescript/components/GestureComponents.web.d.ts +8 -0
- package/lib/typescript/components/GestureHandlerButton.d.ts +4 -0
- package/lib/typescript/components/GestureHandlerButton.web.d.ts +4 -0
- package/lib/typescript/components/GestureHandlerRootView.android.d.ts +6 -0
- package/lib/typescript/components/GestureHandlerRootView.d.ts +6 -0
- package/lib/typescript/components/GestureHandlerRootView.web.d.ts +6 -0
- package/lib/typescript/components/Swipeable.d.ts +178 -0
- package/lib/typescript/components/gestureHandlerRootHOC.d.ts +3 -0
- package/lib/typescript/components/touchables/GenericTouchable.d.ts +68 -0
- package/lib/typescript/components/touchables/TouchableHighlight.d.ts +36 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +45 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +2 -0
- package/lib/typescript/components/touchables/TouchableOpacity.d.ts +25 -0
- package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +7 -0
- package/lib/typescript/components/touchables/index.d.ts +7 -0
- package/lib/typescript/getReactNativeVersion.d.ts +4 -0
- package/lib/typescript/getReactNativeVersion.web.d.ts +1 -0
- package/lib/typescript/getShadowNodeFromRef.d.ts +1 -0
- package/lib/typescript/getShadowNodeFromRef.web.d.ts +1 -0
- package/lib/typescript/ghQueueMicrotask.d.ts +1 -0
- package/lib/typescript/handlers/FlingGestureHandler.d.ts +34 -0
- package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +44 -0
- package/lib/typescript/handlers/LongPressGestureHandler.d.ts +56 -0
- package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +28 -0
- package/lib/typescript/handlers/PanGestureHandler.d.ts +139 -0
- package/lib/typescript/handlers/PinchGestureHandler.d.ts +29 -0
- package/lib/typescript/handlers/PressabilityDebugView.d.ts +1 -0
- package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +1 -0
- package/lib/typescript/handlers/RotationGestureHandler.d.ts +29 -0
- package/lib/typescript/handlers/TapGestureHandler.d.ts +57 -0
- package/lib/typescript/handlers/createHandler.d.ts +11 -0
- package/lib/typescript/handlers/createNativeWrapper.d.ts +3 -0
- package/lib/typescript/handlers/gestureHandlerCommon.d.ts +68 -0
- package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts +42 -0
- package/lib/typescript/handlers/gestures/GestureDetector.d.ts +19 -0
- package/lib/typescript/handlers/gestures/eventReceiver.d.ts +4 -0
- package/lib/typescript/handlers/gestures/flingGesture.d.ts +9 -0
- package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +15 -0
- package/lib/typescript/handlers/gestures/gesture.d.ts +110 -0
- package/lib/typescript/handlers/gestures/gestureComposition.d.ts +21 -0
- package/lib/typescript/handlers/gestures/gestureObjects.d.ts +41 -0
- package/lib/typescript/handlers/gestures/gestureStateManager.d.ts +9 -0
- package/lib/typescript/handlers/gestures/gestureStateManager.web.d.ts +4 -0
- package/lib/typescript/handlers/gestures/hoverGesture.d.ts +32 -0
- package/lib/typescript/handlers/gestures/longPressGesture.d.ts +9 -0
- package/lib/typescript/handlers/gestures/manualGesture.d.ts +7 -0
- package/lib/typescript/handlers/gestures/nativeGesture.d.ts +9 -0
- package/lib/typescript/handlers/gestures/panGesture.d.ts +26 -0
- package/lib/typescript/handlers/gestures/pinchGesture.d.ts +11 -0
- package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts +14 -0
- package/lib/typescript/handlers/gestures/rotationGesture.d.ts +12 -0
- package/lib/typescript/handlers/gestures/tapGesture.d.ts +14 -0
- package/lib/typescript/handlers/handlersRegistry.d.ts +14 -0
- package/lib/typescript/index.d.ts +52 -0
- package/lib/typescript/init.d.ts +2 -0
- package/lib/typescript/jestUtils/index.d.ts +1 -0
- package/lib/typescript/jestUtils/jestUtils.d.ts +28 -0
- package/lib/typescript/mocks.d.ts +44 -0
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts +14 -0
- package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts +6 -0
- package/lib/typescript/typeUtils.d.ts +1 -0
- package/lib/typescript/utils.d.ts +8 -0
- package/lib/typescript/web/constants.d.ts +7 -0
- package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +30 -0
- package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +29 -0
- package/lib/typescript/web/handlers/FlingGestureHandler.d.ts +27 -0
- package/lib/typescript/web/handlers/GestureHandler.d.ts +90 -0
- package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +10 -0
- package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts +26 -0
- package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +12 -0
- package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +24 -0
- package/lib/typescript/web/handlers/PanGestureHandler.d.ts +55 -0
- package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +28 -0
- package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +29 -0
- package/lib/typescript/web/handlers/TapGestureHandler.d.ts +39 -0
- package/lib/typescript/web/interfaces.d.ts +141 -0
- package/lib/typescript/web/tools/CircularBuffer.d.ts +11 -0
- package/lib/typescript/web/tools/EventManager.d.ts +34 -0
- package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +22 -0
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +29 -0
- package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +21 -0
- package/lib/typescript/web/tools/InteractionManager.d.ts +17 -0
- package/lib/typescript/web/tools/LeastSquareSolver.d.ts +12 -0
- package/lib/typescript/web/tools/NodeManager.d.ts +11 -0
- package/lib/typescript/web/tools/PointerEventManager.d.ts +8 -0
- package/lib/typescript/web/tools/PointerTracker.d.ts +53 -0
- package/lib/typescript/web/tools/TouchEventManager.d.ts +6 -0
- package/lib/typescript/web/tools/VelocityTracker.d.ts +13 -0
- package/lib/typescript/web/utils.d.ts +4 -0
- package/lib/typescript/web_hammer/DiscreteGestureHandler.d.ts +20 -0
- package/lib/typescript/web_hammer/DraggingGestureHandler.d.ts +15 -0
- package/lib/typescript/web_hammer/Errors.d.ts +3 -0
- package/lib/typescript/web_hammer/FlingGestureHandler.d.ts +43 -0
- package/lib/typescript/web_hammer/GestureHandler.d.ts +145 -0
- package/lib/typescript/web_hammer/IndiscreteGestureHandler.d.ts +40 -0
- package/lib/typescript/web_hammer/LongPressGestureHandler.d.ts +38 -0
- package/lib/typescript/web_hammer/NativeViewGestureHandler.d.ts +7 -0
- package/lib/typescript/web_hammer/NodeManager.d.ts +8 -0
- package/lib/typescript/web_hammer/PanGestureHandler.d.ts +56 -0
- package/lib/typescript/web_hammer/PinchGestureHandler.d.ts +13 -0
- package/lib/typescript/web_hammer/PressGestureHandler.d.ts +83 -0
- package/lib/typescript/web_hammer/RotationGestureHandler.d.ts +13 -0
- package/lib/typescript/web_hammer/TapGestureHandler.d.ts +57 -0
- package/lib/typescript/web_hammer/constants.d.ts +39 -0
- package/lib/typescript/web_hammer/utils.d.ts +9 -0
- package/package.json +156 -0
- package/src/ActionType.ts +9 -0
- package/src/Directions.ts +9 -0
- package/src/EnableNewWebImplementation.ts +35 -0
- package/src/GestureHandlerRootViewContext.ts +3 -0
- package/src/PlatformConstants.ts +8 -0
- package/src/PlatformConstants.web.ts +5 -0
- package/src/RNGestureHandlerModule.macos.ts +133 -0
- package/src/RNGestureHandlerModule.ts +50 -0
- package/src/RNGestureHandlerModule.web.ts +146 -0
- package/src/RNGestureHandlerModule.windows.ts +144 -0
- package/src/RNRenderer.ts +3 -0
- package/src/RNRenderer.web.ts +3 -0
- package/src/State.ts +13 -0
- package/src/TouchEventType.ts +10 -0
- package/src/components/DrawerLayout.tsx +743 -0
- package/src/components/GestureButtons.tsx +332 -0
- package/src/components/GestureComponents.tsx +148 -0
- package/src/components/GestureComponents.web.tsx +41 -0
- package/src/components/GestureHandlerButton.tsx +5 -0
- package/src/components/GestureHandlerButton.web.tsx +6 -0
- package/src/components/GestureHandlerRootView.android.tsx +24 -0
- package/src/components/GestureHandlerRootView.tsx +23 -0
- package/src/components/GestureHandlerRootView.web.tsx +17 -0
- package/src/components/Swipeable.tsx +584 -0
- package/src/components/gestureHandlerRootHOC.tsx +32 -0
- package/src/components/touchables/GenericTouchable.tsx +301 -0
- package/src/components/touchables/TouchableHighlight.tsx +115 -0
- package/src/components/touchables/TouchableNativeFeedback.android.tsx +91 -0
- package/src/components/touchables/TouchableNativeFeedback.tsx +3 -0
- package/src/components/touchables/TouchableOpacity.tsx +75 -0
- package/src/components/touchables/TouchableWithoutFeedback.tsx +14 -0
- package/src/components/touchables/index.ts +7 -0
- package/src/getReactNativeVersion.ts +11 -0
- package/src/getReactNativeVersion.web.ts +3 -0
- package/src/getShadowNodeFromRef.ts +22 -0
- package/src/getShadowNodeFromRef.web.ts +7 -0
- package/src/ghQueueMicrotask.ts +5 -0
- package/src/handlers/FlingGestureHandler.ts +59 -0
- package/src/handlers/ForceTouchGestureHandler.ts +90 -0
- package/src/handlers/LongPressGestureHandler.ts +88 -0
- package/src/handlers/NativeViewGestureHandler.ts +55 -0
- package/src/handlers/PanGestureHandler.ts +325 -0
- package/src/handlers/PinchGestureHandler.ts +48 -0
- package/src/handlers/PressabilityDebugView.tsx +2 -0
- package/src/handlers/PressabilityDebugView.web.tsx +4 -0
- package/src/handlers/RotationGestureHandler.ts +48 -0
- package/src/handlers/TapGestureHandler.ts +94 -0
- package/src/handlers/createHandler.tsx +533 -0
- package/src/handlers/createNativeWrapper.tsx +80 -0
- package/src/handlers/gestureHandlerCommon.ts +250 -0
- package/src/handlers/gestureHandlerTypesCompat.ts +106 -0
- package/src/handlers/gestures/GestureDetector.tsx +822 -0
- package/src/handlers/gestures/eventReceiver.ts +155 -0
- package/src/handlers/gestures/flingGesture.ts +27 -0
- package/src/handlers/gestures/forceTouchGesture.ts +74 -0
- package/src/handlers/gestures/gesture.ts +349 -0
- package/src/handlers/gestures/gestureComposition.ts +122 -0
- package/src/handlers/gestures/gestureObjects.ts +84 -0
- package/src/handlers/gestures/gestureStateManager.ts +62 -0
- package/src/handlers/gestures/gestureStateManager.web.ts +24 -0
- package/src/handlers/gestures/hoverGesture.ts +83 -0
- package/src/handlers/gestures/longPressGesture.ts +28 -0
- package/src/handlers/gestures/manualGesture.ts +31 -0
- package/src/handlers/gestures/nativeGesture.ts +27 -0
- package/src/handlers/gestures/panGesture.ts +152 -0
- package/src/handlers/gestures/pinchGesture.ts +51 -0
- package/src/handlers/gestures/reanimatedWrapper.ts +56 -0
- package/src/handlers/gestures/rotationGesture.ts +51 -0
- package/src/handlers/gestures/tapGesture.ts +53 -0
- package/src/handlers/handlersRegistry.ts +60 -0
- package/src/index.ts +174 -0
- package/src/init.ts +18 -0
- package/src/jestUtils/index.ts +1 -0
- package/src/jestUtils/jestUtils.ts +505 -0
- package/src/mocks.ts +67 -0
- package/src/specs/RNGestureHandlerButtonNativeComponent.ts +18 -0
- package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +6 -0
- package/src/typeUtils.ts +1 -0
- package/src/utils.ts +54 -0
- package/src/web/constants.ts +8 -0
- package/src/web/detectors/RotationGestureDetector.ts +168 -0
- package/src/web/detectors/ScaleGestureDetector.ts +172 -0
- package/src/web/handlers/FlingGestureHandler.ts +161 -0
- package/src/web/handlers/GestureHandler.ts +849 -0
- package/src/web/handlers/HoverGestureHandler.ts +43 -0
- package/src/web/handlers/LongPressGestureHandler.ts +125 -0
- package/src/web/handlers/ManualGestureHandler.ts +43 -0
- package/src/web/handlers/NativeViewGestureHandler.ts +167 -0
- package/src/web/handlers/PanGestureHandler.ts +485 -0
- package/src/web/handlers/PinchGestureHandler.ts +158 -0
- package/src/web/handlers/RotationGestureHandler.ts +172 -0
- package/src/web/handlers/TapGestureHandler.ts +273 -0
- package/src/web/interfaces.ts +167 -0
- package/src/web/tools/CircularBuffer.ts +42 -0
- package/src/web/tools/EventManager.ts +104 -0
- package/src/web/tools/GestureHandlerDelegate.ts +23 -0
- package/src/web/tools/GestureHandlerOrchestrator.ts +389 -0
- package/src/web/tools/GestureHandlerWebDelegate.ts +115 -0
- package/src/web/tools/InteractionManager.ts +130 -0
- package/src/web/tools/LeastSquareSolver.ts +182 -0
- package/src/web/tools/NodeManager.ts +43 -0
- package/src/web/tools/PointerEventManager.ts +202 -0
- package/src/web/tools/PointerTracker.ts +240 -0
- package/src/web/tools/TouchEventManager.ts +167 -0
- package/src/web/tools/VelocityTracker.ts +98 -0
- package/src/web/utils.ts +8 -0
- package/src/web_hammer/DiscreteGestureHandler.ts +82 -0
- package/src/web_hammer/DraggingGestureHandler.ts +34 -0
- package/src/web_hammer/Errors.ts +7 -0
- package/src/web_hammer/FlingGestureHandler.ts +134 -0
- package/src/web_hammer/GestureHandler.ts +599 -0
- package/src/web_hammer/IndiscreteGestureHandler.ts +33 -0
- package/src/web_hammer/LongPressGestureHandler.ts +56 -0
- package/src/web_hammer/NativeViewGestureHandler.ts +47 -0
- package/src/web_hammer/NodeManager.ts +42 -0
- package/src/web_hammer/PanGestureHandler.ts +226 -0
- package/src/web_hammer/PinchGestureHandler.ts +25 -0
- package/src/web_hammer/PressGestureHandler.ts +167 -0
- package/src/web_hammer/RotationGestureHandler.ts +25 -0
- package/src/web_hammer/TapGestureHandler.ts +172 -0
- package/src/web_hammer/constants.ts +48 -0
- package/src/web_hammer/utils.ts +24 -0
@@ -0,0 +1,408 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var React = _interopRequireWildcard(require("react"));
|
9
|
+
|
10
|
+
var _reactNative = require("react-native");
|
11
|
+
|
12
|
+
var _PanGestureHandler = require("../handlers/PanGestureHandler");
|
13
|
+
|
14
|
+
var _TapGestureHandler = require("../handlers/TapGestureHandler");
|
15
|
+
|
16
|
+
var _State = require("../State");
|
17
|
+
|
18
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
19
|
+
|
20
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
21
|
+
|
22
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
23
|
+
|
24
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
25
|
+
|
26
|
+
const DRAG_TOSS = 0.05;
|
27
|
+
|
28
|
+
class Swipeable extends React.Component {
|
29
|
+
constructor(_props) {
|
30
|
+
super(_props);
|
31
|
+
|
32
|
+
_defineProperty(this, "onGestureEvent", void 0);
|
33
|
+
|
34
|
+
_defineProperty(this, "transX", void 0);
|
35
|
+
|
36
|
+
_defineProperty(this, "showLeftAction", void 0);
|
37
|
+
|
38
|
+
_defineProperty(this, "leftActionTranslate", void 0);
|
39
|
+
|
40
|
+
_defineProperty(this, "showRightAction", void 0);
|
41
|
+
|
42
|
+
_defineProperty(this, "rightActionTranslate", void 0);
|
43
|
+
|
44
|
+
_defineProperty(this, "updateAnimatedEvent", (props, state) => {
|
45
|
+
const {
|
46
|
+
friction,
|
47
|
+
overshootFriction
|
48
|
+
} = props;
|
49
|
+
const {
|
50
|
+
dragX,
|
51
|
+
rowTranslation,
|
52
|
+
leftWidth = 0,
|
53
|
+
rowWidth = 0
|
54
|
+
} = state;
|
55
|
+
const {
|
56
|
+
rightOffset = rowWidth
|
57
|
+
} = state;
|
58
|
+
const rightWidth = Math.max(0, rowWidth - rightOffset);
|
59
|
+
const {
|
60
|
+
overshootLeft = leftWidth > 0,
|
61
|
+
overshootRight = rightWidth > 0
|
62
|
+
} = props;
|
63
|
+
|
64
|
+
const transX = _reactNative.Animated.add(rowTranslation, dragX.interpolate({
|
65
|
+
inputRange: [0, friction],
|
66
|
+
outputRange: [0, 1]
|
67
|
+
})).interpolate({
|
68
|
+
inputRange: [-rightWidth - 1, -rightWidth, leftWidth, leftWidth + 1],
|
69
|
+
outputRange: [-rightWidth - (overshootRight ? 1 / overshootFriction : 0), -rightWidth, leftWidth, leftWidth + (overshootLeft ? 1 / overshootFriction : 0)]
|
70
|
+
});
|
71
|
+
|
72
|
+
this.transX = transX;
|
73
|
+
this.showLeftAction = leftWidth > 0 ? transX.interpolate({
|
74
|
+
inputRange: [-1, 0, leftWidth],
|
75
|
+
outputRange: [0, 0, 1]
|
76
|
+
}) : new _reactNative.Animated.Value(0);
|
77
|
+
this.leftActionTranslate = this.showLeftAction.interpolate({
|
78
|
+
inputRange: [0, Number.MIN_VALUE],
|
79
|
+
outputRange: [-10000, 0],
|
80
|
+
extrapolate: 'clamp'
|
81
|
+
});
|
82
|
+
this.showRightAction = rightWidth > 0 ? transX.interpolate({
|
83
|
+
inputRange: [-rightWidth, 0, 1],
|
84
|
+
outputRange: [1, 0, 0]
|
85
|
+
}) : new _reactNative.Animated.Value(0);
|
86
|
+
this.rightActionTranslate = this.showRightAction.interpolate({
|
87
|
+
inputRange: [0, Number.MIN_VALUE],
|
88
|
+
outputRange: [-10000, 0],
|
89
|
+
extrapolate: 'clamp'
|
90
|
+
});
|
91
|
+
});
|
92
|
+
|
93
|
+
_defineProperty(this, "onTapHandlerStateChange", ({
|
94
|
+
nativeEvent
|
95
|
+
}) => {
|
96
|
+
if (nativeEvent.oldState === _State.State.ACTIVE) {
|
97
|
+
this.close();
|
98
|
+
}
|
99
|
+
});
|
100
|
+
|
101
|
+
_defineProperty(this, "onHandlerStateChange", ev => {
|
102
|
+
if (ev.nativeEvent.oldState === _State.State.ACTIVE) {
|
103
|
+
this.handleRelease(ev);
|
104
|
+
}
|
105
|
+
|
106
|
+
if (ev.nativeEvent.state === _State.State.ACTIVE) {
|
107
|
+
const {
|
108
|
+
velocityX,
|
109
|
+
translationX: dragX
|
110
|
+
} = ev.nativeEvent;
|
111
|
+
const {
|
112
|
+
rowState
|
113
|
+
} = this.state;
|
114
|
+
const {
|
115
|
+
friction
|
116
|
+
} = this.props;
|
117
|
+
const translationX = (dragX + DRAG_TOSS * velocityX) / friction;
|
118
|
+
const direction = rowState === -1 ? 'right' : rowState === 1 ? 'left' : translationX > 0 ? 'left' : 'right';
|
119
|
+
|
120
|
+
if (rowState === 0) {
|
121
|
+
var _this$props$onSwipeab, _this$props;
|
122
|
+
|
123
|
+
(_this$props$onSwipeab = (_this$props = this.props).onSwipeableOpenStartDrag) === null || _this$props$onSwipeab === void 0 ? void 0 : _this$props$onSwipeab.call(_this$props, direction);
|
124
|
+
} else {
|
125
|
+
var _this$props$onSwipeab2, _this$props2;
|
126
|
+
|
127
|
+
(_this$props$onSwipeab2 = (_this$props2 = this.props).onSwipeableCloseStartDrag) === null || _this$props$onSwipeab2 === void 0 ? void 0 : _this$props$onSwipeab2.call(_this$props2, direction);
|
128
|
+
}
|
129
|
+
}
|
130
|
+
});
|
131
|
+
|
132
|
+
_defineProperty(this, "handleRelease", ev => {
|
133
|
+
const {
|
134
|
+
velocityX,
|
135
|
+
translationX: dragX
|
136
|
+
} = ev.nativeEvent;
|
137
|
+
const {
|
138
|
+
leftWidth = 0,
|
139
|
+
rowWidth = 0,
|
140
|
+
rowState
|
141
|
+
} = this.state;
|
142
|
+
const {
|
143
|
+
rightOffset = rowWidth
|
144
|
+
} = this.state;
|
145
|
+
const rightWidth = rowWidth - rightOffset;
|
146
|
+
const {
|
147
|
+
friction,
|
148
|
+
leftThreshold = leftWidth / 2,
|
149
|
+
rightThreshold = rightWidth / 2
|
150
|
+
} = this.props;
|
151
|
+
const startOffsetX = this.currentOffset() + dragX / friction;
|
152
|
+
const translationX = (dragX + DRAG_TOSS * velocityX) / friction;
|
153
|
+
let toValue = 0;
|
154
|
+
|
155
|
+
if (rowState === 0) {
|
156
|
+
if (translationX > leftThreshold) {
|
157
|
+
toValue = leftWidth;
|
158
|
+
} else if (translationX < -rightThreshold) {
|
159
|
+
toValue = -rightWidth;
|
160
|
+
}
|
161
|
+
} else if (rowState === 1) {
|
162
|
+
// swiped to left
|
163
|
+
if (translationX > -leftThreshold) {
|
164
|
+
toValue = leftWidth;
|
165
|
+
}
|
166
|
+
} else {
|
167
|
+
// swiped to right
|
168
|
+
if (translationX < rightThreshold) {
|
169
|
+
toValue = -rightWidth;
|
170
|
+
}
|
171
|
+
}
|
172
|
+
|
173
|
+
this.animateRow(startOffsetX, toValue, velocityX / friction);
|
174
|
+
});
|
175
|
+
|
176
|
+
_defineProperty(this, "animateRow", (fromValue, toValue, velocityX) => {
|
177
|
+
const {
|
178
|
+
dragX,
|
179
|
+
rowTranslation
|
180
|
+
} = this.state;
|
181
|
+
dragX.setValue(0);
|
182
|
+
rowTranslation.setValue(fromValue);
|
183
|
+
this.setState({
|
184
|
+
rowState: Math.sign(toValue)
|
185
|
+
});
|
186
|
+
|
187
|
+
_reactNative.Animated.spring(rowTranslation, {
|
188
|
+
restSpeedThreshold: 1.7,
|
189
|
+
restDisplacementThreshold: 0.4,
|
190
|
+
velocity: velocityX,
|
191
|
+
bounciness: 0,
|
192
|
+
toValue,
|
193
|
+
useNativeDriver: this.props.useNativeAnimations,
|
194
|
+
...this.props.animationOptions
|
195
|
+
}).start(({
|
196
|
+
finished
|
197
|
+
}) => {
|
198
|
+
if (finished) {
|
199
|
+
if (toValue > 0) {
|
200
|
+
var _this$props$onSwipeab3, _this$props3, _this$props$onSwipeab4, _this$props4;
|
201
|
+
|
202
|
+
(_this$props$onSwipeab3 = (_this$props3 = this.props).onSwipeableLeftOpen) === null || _this$props$onSwipeab3 === void 0 ? void 0 : _this$props$onSwipeab3.call(_this$props3);
|
203
|
+
(_this$props$onSwipeab4 = (_this$props4 = this.props).onSwipeableOpen) === null || _this$props$onSwipeab4 === void 0 ? void 0 : _this$props$onSwipeab4.call(_this$props4, 'left', this);
|
204
|
+
} else if (toValue < 0) {
|
205
|
+
var _this$props$onSwipeab5, _this$props5, _this$props$onSwipeab6, _this$props6;
|
206
|
+
|
207
|
+
(_this$props$onSwipeab5 = (_this$props5 = this.props).onSwipeableRightOpen) === null || _this$props$onSwipeab5 === void 0 ? void 0 : _this$props$onSwipeab5.call(_this$props5);
|
208
|
+
(_this$props$onSwipeab6 = (_this$props6 = this.props).onSwipeableOpen) === null || _this$props$onSwipeab6 === void 0 ? void 0 : _this$props$onSwipeab6.call(_this$props6, 'right', this);
|
209
|
+
} else {
|
210
|
+
var _this$props$onSwipeab7, _this$props7;
|
211
|
+
|
212
|
+
const closingDirection = fromValue > 0 ? 'left' : 'right';
|
213
|
+
(_this$props$onSwipeab7 = (_this$props7 = this.props).onSwipeableClose) === null || _this$props$onSwipeab7 === void 0 ? void 0 : _this$props$onSwipeab7.call(_this$props7, closingDirection, this);
|
214
|
+
}
|
215
|
+
}
|
216
|
+
});
|
217
|
+
|
218
|
+
if (toValue > 0) {
|
219
|
+
var _this$props$onSwipeab8, _this$props8, _this$props$onSwipeab9, _this$props9;
|
220
|
+
|
221
|
+
(_this$props$onSwipeab8 = (_this$props8 = this.props).onSwipeableLeftWillOpen) === null || _this$props$onSwipeab8 === void 0 ? void 0 : _this$props$onSwipeab8.call(_this$props8);
|
222
|
+
(_this$props$onSwipeab9 = (_this$props9 = this.props).onSwipeableWillOpen) === null || _this$props$onSwipeab9 === void 0 ? void 0 : _this$props$onSwipeab9.call(_this$props9, 'left');
|
223
|
+
} else if (toValue < 0) {
|
224
|
+
var _this$props$onSwipeab10, _this$props10, _this$props$onSwipeab11, _this$props11;
|
225
|
+
|
226
|
+
(_this$props$onSwipeab10 = (_this$props10 = this.props).onSwipeableRightWillOpen) === null || _this$props$onSwipeab10 === void 0 ? void 0 : _this$props$onSwipeab10.call(_this$props10);
|
227
|
+
(_this$props$onSwipeab11 = (_this$props11 = this.props).onSwipeableWillOpen) === null || _this$props$onSwipeab11 === void 0 ? void 0 : _this$props$onSwipeab11.call(_this$props11, 'right');
|
228
|
+
} else {
|
229
|
+
var _this$props$onSwipeab12, _this$props12;
|
230
|
+
|
231
|
+
const closingDirection = fromValue > 0 ? 'left' : 'right';
|
232
|
+
(_this$props$onSwipeab12 = (_this$props12 = this.props).onSwipeableWillClose) === null || _this$props$onSwipeab12 === void 0 ? void 0 : _this$props$onSwipeab12.call(_this$props12, closingDirection);
|
233
|
+
}
|
234
|
+
});
|
235
|
+
|
236
|
+
_defineProperty(this, "onRowLayout", ({
|
237
|
+
nativeEvent
|
238
|
+
}) => {
|
239
|
+
this.setState({
|
240
|
+
rowWidth: nativeEvent.layout.width
|
241
|
+
});
|
242
|
+
});
|
243
|
+
|
244
|
+
_defineProperty(this, "currentOffset", () => {
|
245
|
+
const {
|
246
|
+
leftWidth = 0,
|
247
|
+
rowWidth = 0,
|
248
|
+
rowState
|
249
|
+
} = this.state;
|
250
|
+
const {
|
251
|
+
rightOffset = rowWidth
|
252
|
+
} = this.state;
|
253
|
+
const rightWidth = rowWidth - rightOffset;
|
254
|
+
|
255
|
+
if (rowState === 1) {
|
256
|
+
return leftWidth;
|
257
|
+
} else if (rowState === -1) {
|
258
|
+
return -rightWidth;
|
259
|
+
}
|
260
|
+
|
261
|
+
return 0;
|
262
|
+
});
|
263
|
+
|
264
|
+
_defineProperty(this, "close", () => {
|
265
|
+
this.animateRow(this.currentOffset(), 0);
|
266
|
+
});
|
267
|
+
|
268
|
+
_defineProperty(this, "openLeft", () => {
|
269
|
+
const {
|
270
|
+
leftWidth = 0
|
271
|
+
} = this.state;
|
272
|
+
this.animateRow(this.currentOffset(), leftWidth);
|
273
|
+
});
|
274
|
+
|
275
|
+
_defineProperty(this, "openRight", () => {
|
276
|
+
const {
|
277
|
+
rowWidth = 0
|
278
|
+
} = this.state;
|
279
|
+
const {
|
280
|
+
rightOffset = rowWidth
|
281
|
+
} = this.state;
|
282
|
+
const rightWidth = rowWidth - rightOffset;
|
283
|
+
this.animateRow(this.currentOffset(), -rightWidth);
|
284
|
+
});
|
285
|
+
|
286
|
+
_defineProperty(this, "reset", () => {
|
287
|
+
const {
|
288
|
+
dragX,
|
289
|
+
rowTranslation
|
290
|
+
} = this.state;
|
291
|
+
dragX.setValue(0);
|
292
|
+
rowTranslation.setValue(0);
|
293
|
+
this.setState({
|
294
|
+
rowState: 0
|
295
|
+
});
|
296
|
+
});
|
297
|
+
|
298
|
+
const _dragX = new _reactNative.Animated.Value(0);
|
299
|
+
|
300
|
+
this.state = {
|
301
|
+
dragX: _dragX,
|
302
|
+
rowTranslation: new _reactNative.Animated.Value(0),
|
303
|
+
rowState: 0,
|
304
|
+
leftWidth: undefined,
|
305
|
+
rightOffset: undefined,
|
306
|
+
rowWidth: undefined
|
307
|
+
};
|
308
|
+
this.updateAnimatedEvent(_props, this.state);
|
309
|
+
this.onGestureEvent = _reactNative.Animated.event([{
|
310
|
+
nativeEvent: {
|
311
|
+
translationX: _dragX
|
312
|
+
}
|
313
|
+
}], {
|
314
|
+
useNativeDriver: _props.useNativeAnimations
|
315
|
+
});
|
316
|
+
}
|
317
|
+
|
318
|
+
shouldComponentUpdate(props, state) {
|
319
|
+
if (this.props.friction !== props.friction || this.props.overshootLeft !== props.overshootLeft || this.props.overshootRight !== props.overshootRight || this.props.overshootFriction !== props.overshootFriction || this.state.leftWidth !== state.leftWidth || this.state.rightOffset !== state.rightOffset || this.state.rowWidth !== state.rowWidth) {
|
320
|
+
this.updateAnimatedEvent(props, state);
|
321
|
+
}
|
322
|
+
|
323
|
+
return true;
|
324
|
+
}
|
325
|
+
|
326
|
+
render() {
|
327
|
+
const {
|
328
|
+
rowState
|
329
|
+
} = this.state;
|
330
|
+
const {
|
331
|
+
children,
|
332
|
+
renderLeftActions,
|
333
|
+
renderRightActions,
|
334
|
+
dragOffsetFromLeftEdge = 10,
|
335
|
+
dragOffsetFromRightEdge = 10
|
336
|
+
} = this.props;
|
337
|
+
const left = renderLeftActions && /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
|
338
|
+
style: [styles.leftActions, // all those and below parameters can have ! since they are all
|
339
|
+
// asigned in constructor in `updateAnimatedEvent` but TS cannot spot
|
340
|
+
// it for some reason
|
341
|
+
{
|
342
|
+
transform: [{
|
343
|
+
translateX: this.leftActionTranslate
|
344
|
+
}]
|
345
|
+
}]
|
346
|
+
}, renderLeftActions(this.showLeftAction, this.transX, this), /*#__PURE__*/React.createElement(_reactNative.View, {
|
347
|
+
onLayout: ({
|
348
|
+
nativeEvent
|
349
|
+
}) => this.setState({
|
350
|
+
leftWidth: nativeEvent.layout.x
|
351
|
+
})
|
352
|
+
}));
|
353
|
+
const right = renderRightActions && /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
|
354
|
+
style: [styles.rightActions, {
|
355
|
+
transform: [{
|
356
|
+
translateX: this.rightActionTranslate
|
357
|
+
}]
|
358
|
+
}]
|
359
|
+
}, renderRightActions(this.showRightAction, this.transX, this), /*#__PURE__*/React.createElement(_reactNative.View, {
|
360
|
+
onLayout: ({
|
361
|
+
nativeEvent
|
362
|
+
}) => this.setState({
|
363
|
+
rightOffset: nativeEvent.layout.x
|
364
|
+
})
|
365
|
+
}));
|
366
|
+
return /*#__PURE__*/React.createElement(_PanGestureHandler.PanGestureHandler, _extends({
|
367
|
+
activeOffsetX: [-dragOffsetFromRightEdge, dragOffsetFromLeftEdge]
|
368
|
+
}, this.props, {
|
369
|
+
onGestureEvent: this.onGestureEvent,
|
370
|
+
onHandlerStateChange: this.onHandlerStateChange
|
371
|
+
}), /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
|
372
|
+
onLayout: this.onRowLayout,
|
373
|
+
style: [styles.container, this.props.containerStyle]
|
374
|
+
}, left, right, /*#__PURE__*/React.createElement(_TapGestureHandler.TapGestureHandler, {
|
375
|
+
enabled: rowState !== 0,
|
376
|
+
onHandlerStateChange: this.onTapHandlerStateChange
|
377
|
+
}, /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
|
378
|
+
pointerEvents: rowState === 0 ? 'auto' : 'box-only',
|
379
|
+
style: [{
|
380
|
+
transform: [{
|
381
|
+
translateX: this.transX
|
382
|
+
}]
|
383
|
+
}, this.props.childrenContainerStyle]
|
384
|
+
}, children))));
|
385
|
+
}
|
386
|
+
|
387
|
+
}
|
388
|
+
|
389
|
+
exports.default = Swipeable;
|
390
|
+
|
391
|
+
_defineProperty(Swipeable, "defaultProps", {
|
392
|
+
friction: 1,
|
393
|
+
overshootFriction: 1,
|
394
|
+
useNativeAnimations: true
|
395
|
+
});
|
396
|
+
|
397
|
+
const styles = _reactNative.StyleSheet.create({
|
398
|
+
container: {
|
399
|
+
overflow: 'hidden'
|
400
|
+
},
|
401
|
+
leftActions: { ..._reactNative.StyleSheet.absoluteFillObject,
|
402
|
+
flexDirection: _reactNative.I18nManager.isRTL ? 'row-reverse' : 'row'
|
403
|
+
},
|
404
|
+
rightActions: { ..._reactNative.StyleSheet.absoluteFillObject,
|
405
|
+
flexDirection: _reactNative.I18nManager.isRTL ? 'row' : 'row-reverse'
|
406
|
+
}
|
407
|
+
});
|
408
|
+
//# sourceMappingURL=Swipeable.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["Swipeable.tsx"],"names":["DRAG_TOSS","Swipeable","Component","constructor","props","state","friction","overshootFriction","dragX","rowTranslation","leftWidth","rowWidth","rightOffset","rightWidth","Math","max","overshootLeft","overshootRight","transX","Animated","add","interpolate","inputRange","outputRange","showLeftAction","Value","leftActionTranslate","Number","MIN_VALUE","extrapolate","showRightAction","rightActionTranslate","nativeEvent","oldState","State","ACTIVE","close","ev","handleRelease","velocityX","translationX","rowState","direction","onSwipeableOpenStartDrag","onSwipeableCloseStartDrag","leftThreshold","rightThreshold","startOffsetX","currentOffset","toValue","animateRow","fromValue","setValue","setState","sign","spring","restSpeedThreshold","restDisplacementThreshold","velocity","bounciness","useNativeDriver","useNativeAnimations","animationOptions","start","finished","onSwipeableLeftOpen","onSwipeableOpen","onSwipeableRightOpen","closingDirection","onSwipeableClose","onSwipeableLeftWillOpen","onSwipeableWillOpen","onSwipeableRightWillOpen","onSwipeableWillClose","layout","width","undefined","updateAnimatedEvent","onGestureEvent","event","shouldComponentUpdate","render","children","renderLeftActions","renderRightActions","dragOffsetFromLeftEdge","dragOffsetFromRightEdge","left","styles","leftActions","transform","translateX","x","right","rightActions","onHandlerStateChange","onRowLayout","container","containerStyle","onTapHandlerStateChange","childrenContainerStyle","StyleSheet","create","overflow","absoluteFillObject","flexDirection","I18nManager","isRTL"],"mappings":"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","sourcesContent":["// Similarily to the DrawerLayout component this deserves to be put in a\r\n// separate repo. Although, keeping it here for the time being will allow us to\r\n// move faster and fix possible issues quicker\r\n\r\nimport * as React from 'react';\r\nimport { Component } from 'react';\r\nimport {\r\n Animated,\r\n StyleSheet,\r\n View,\r\n I18nManager,\r\n LayoutChangeEvent,\r\n StyleProp,\r\n ViewStyle,\r\n} from 'react-native';\r\n\r\nimport {\r\n GestureEvent,\r\n HandlerStateChangeEvent,\r\n} from '../handlers/gestureHandlerCommon';\r\nimport {\r\n PanGestureHandler,\r\n PanGestureHandlerEventPayload,\r\n PanGestureHandlerProps,\r\n} from '../handlers/PanGestureHandler';\r\nimport {\r\n TapGestureHandler,\r\n TapGestureHandlerEventPayload,\r\n} from '../handlers/TapGestureHandler';\r\nimport { State } from '../State';\r\n\r\nconst DRAG_TOSS = 0.05;\r\n\r\ntype SwipeableExcludes = Exclude<\r\n keyof PanGestureHandlerProps,\r\n 'onGestureEvent' | 'onHandlerStateChange'\r\n>;\r\n\r\n// Animated.AnimatedInterpolation has been converted to a generic type\r\n// in @types/react-native 0.70. This way we can maintain compatibility\r\n// with all versions of @types/react-native\r\ntype AnimatedInterpolation = ReturnType<Animated.Value['interpolate']>;\r\n\r\nexport interface SwipeableProps\r\n extends Pick<PanGestureHandlerProps, SwipeableExcludes> {\r\n /**\r\n * Enables two-finger gestures on supported devices, for example iPads with\r\n * trackpads. If not enabled the gesture will require click + drag, with\r\n * `enableTrackpadTwoFingerGesture` swiping with two fingers will also trigger\r\n * the gesture.\r\n */\r\n enableTrackpadTwoFingerGesture?: boolean;\r\n\r\n /**\r\n * Specifies how much the visual interaction will be delayed compared to the\r\n * gesture distance. e.g. value of 1 will indicate that the swipeable panel\r\n * should exactly follow the gesture, 2 means it is going to be two times\r\n * \"slower\".\r\n */\r\n friction?: number;\r\n\r\n /**\r\n * Distance from the left edge at which released panel will animate to the\r\n * open state (or the open panel will animate into the closed state). By\r\n * default it's a half of the panel's width.\r\n */\r\n leftThreshold?: number;\r\n\r\n /**\r\n * Distance from the right edge at which released panel will animate to the\r\n * open state (or the open panel will animate into the closed state). By\r\n * default it's a half of the panel's width.\r\n */\r\n rightThreshold?: number;\r\n\r\n /**\r\n * Distance that the panel must be dragged from the left edge to be considered\r\n * a swipe. The default value is 10.\r\n */\r\n dragOffsetFromLeftEdge?: number;\r\n\r\n /**\r\n * Distance that the panel must be dragged from the right edge to be considered\r\n * a swipe. The default value is 10.\r\n */\r\n dragOffsetFromRightEdge?: number;\r\n\r\n /**\r\n * Value indicating if the swipeable panel can be pulled further than the left\r\n * actions panel's width. It is set to true by default as long as the left\r\n * panel render method is present.\r\n */\r\n overshootLeft?: boolean;\r\n\r\n /**\r\n * Value indicating if the swipeable panel can be pulled further than the\r\n * right actions panel's width. It is set to true by default as long as the\r\n * right panel render method is present.\r\n */\r\n overshootRight?: boolean;\r\n\r\n /**\r\n * Specifies how much the visual interaction will be delayed compared to the\r\n * gesture distance at overshoot. Default value is 1, it mean no friction, for\r\n * a native feel, try 8 or above.\r\n */\r\n overshootFriction?: number;\r\n\r\n /**\r\n * @deprecated Use `direction` argument of onSwipeableOpen()\r\n *\r\n * Called when left action panel gets open.\r\n */\r\n onSwipeableLeftOpen?: () => void;\r\n\r\n /**\r\n * @deprecated Use `direction` argument of onSwipeableOpen()\r\n *\r\n * Called when right action panel gets open.\r\n */\r\n onSwipeableRightOpen?: () => void;\r\n\r\n /**\r\n * Called when action panel gets open (either right or left).\r\n */\r\n onSwipeableOpen?: (direction: 'left' | 'right', swipeable: Swipeable) => void;\r\n\r\n /**\r\n * Called when action panel is closed.\r\n */\r\n onSwipeableClose?: (\r\n direction: 'left' | 'right',\r\n swipeable: Swipeable\r\n ) => void;\r\n\r\n /**\r\n * @deprecated Use `direction` argument of onSwipeableWillOpen()\r\n *\r\n * Called when left action panel starts animating on open.\r\n */\r\n onSwipeableLeftWillOpen?: () => void;\r\n\r\n /**\r\n * @deprecated Use `direction` argument of onSwipeableWillOpen()\r\n *\r\n * Called when right action panel starts animating on open.\r\n */\r\n onSwipeableRightWillOpen?: () => void;\r\n\r\n /**\r\n * Called when action panel starts animating on open (either right or left).\r\n */\r\n onSwipeableWillOpen?: (direction: 'left' | 'right') => void;\r\n\r\n /**\r\n * Called when action panel starts animating on close.\r\n */\r\n onSwipeableWillClose?: (direction: 'left' | 'right') => void;\r\n\r\n /**\r\n * Called when action panel starts being shown on dragging to open.\r\n */\r\n onSwipeableOpenStartDrag?: (direction: 'left' | 'right') => void;\r\n\r\n /**\r\n * Called when action panel starts being shown on dragging to close.\r\n */\r\n onSwipeableCloseStartDrag?: (direction: 'left' | 'right') => void;\r\n\r\n /**\r\n *\r\n * This map describes the values to use as inputRange for extra interpolation:\r\n * AnimatedValue: [startValue, endValue]\r\n *\r\n * progressAnimatedValue: [0, 1] dragAnimatedValue: [0, +]\r\n *\r\n * To support `rtl` flexbox layouts use `flexDirection` styling.\r\n * */\r\n renderLeftActions?: (\r\n progressAnimatedValue: AnimatedInterpolation,\r\n dragAnimatedValue: AnimatedInterpolation,\r\n swipeable: Swipeable\r\n ) => React.ReactNode;\r\n /**\r\n *\r\n * This map describes the values to use as inputRange for extra interpolation:\r\n * AnimatedValue: [startValue, endValue]\r\n *\r\n * progressAnimatedValue: [0, 1] dragAnimatedValue: [0, -]\r\n *\r\n * To support `rtl` flexbox layouts use `flexDirection` styling.\r\n * */\r\n renderRightActions?: (\r\n progressAnimatedValue: AnimatedInterpolation,\r\n dragAnimatedValue: AnimatedInterpolation,\r\n swipeable: Swipeable\r\n ) => React.ReactNode;\r\n\r\n useNativeAnimations?: boolean;\r\n\r\n animationOptions?: Record<string, unknown>;\r\n\r\n /**\r\n * Style object for the container (`Animated.View`), for example to override\r\n * `overflow: 'hidden'`.\r\n */\r\n containerStyle?: StyleProp<ViewStyle>;\r\n\r\n /**\r\n * Style object for the children container (`Animated.View`), for example to\r\n * apply `flex: 1`\r\n */\r\n childrenContainerStyle?: StyleProp<ViewStyle>;\r\n}\r\n\r\ntype SwipeableState = {\r\n dragX: Animated.Value;\r\n rowTranslation: Animated.Value;\r\n rowState: number;\r\n leftWidth?: number;\r\n rightOffset?: number;\r\n rowWidth?: number;\r\n};\r\n\r\nexport default class Swipeable extends Component<\r\n SwipeableProps,\r\n SwipeableState\r\n> {\r\n static defaultProps = {\r\n friction: 1,\r\n overshootFriction: 1,\r\n useNativeAnimations: true,\r\n };\r\n\r\n constructor(props: SwipeableProps) {\r\n super(props);\r\n const dragX = new Animated.Value(0);\r\n this.state = {\r\n dragX,\r\n rowTranslation: new Animated.Value(0),\r\n rowState: 0,\r\n leftWidth: undefined,\r\n rightOffset: undefined,\r\n rowWidth: undefined,\r\n };\r\n this.updateAnimatedEvent(props, this.state);\r\n\r\n this.onGestureEvent = Animated.event(\r\n [{ nativeEvent: { translationX: dragX } }],\r\n { useNativeDriver: props.useNativeAnimations! }\r\n );\r\n }\r\n\r\n shouldComponentUpdate(props: SwipeableProps, state: SwipeableState) {\r\n if (\r\n this.props.friction !== props.friction ||\r\n this.props.overshootLeft !== props.overshootLeft ||\r\n this.props.overshootRight !== props.overshootRight ||\r\n this.props.overshootFriction !== props.overshootFriction ||\r\n this.state.leftWidth !== state.leftWidth ||\r\n this.state.rightOffset !== state.rightOffset ||\r\n this.state.rowWidth !== state.rowWidth\r\n ) {\r\n this.updateAnimatedEvent(props, state);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n private onGestureEvent?: (\r\n event: GestureEvent<PanGestureHandlerEventPayload>\r\n ) => void;\r\n private transX?: AnimatedInterpolation;\r\n private showLeftAction?: AnimatedInterpolation | Animated.Value;\r\n private leftActionTranslate?: AnimatedInterpolation;\r\n private showRightAction?: AnimatedInterpolation | Animated.Value;\r\n private rightActionTranslate?: AnimatedInterpolation;\r\n\r\n private updateAnimatedEvent = (\r\n props: SwipeableProps,\r\n state: SwipeableState\r\n ) => {\r\n const { friction, overshootFriction } = props;\r\n const { dragX, rowTranslation, leftWidth = 0, rowWidth = 0 } = state;\r\n const { rightOffset = rowWidth } = state;\r\n const rightWidth = Math.max(0, rowWidth - rightOffset);\r\n\r\n const { overshootLeft = leftWidth > 0, overshootRight = rightWidth > 0 } =\r\n props;\r\n\r\n const transX = Animated.add(\r\n rowTranslation,\r\n dragX.interpolate({\r\n inputRange: [0, friction!],\r\n outputRange: [0, 1],\r\n })\r\n ).interpolate({\r\n inputRange: [-rightWidth - 1, -rightWidth, leftWidth, leftWidth + 1],\r\n outputRange: [\r\n -rightWidth - (overshootRight ? 1 / overshootFriction! : 0),\r\n -rightWidth,\r\n leftWidth,\r\n leftWidth + (overshootLeft ? 1 / overshootFriction! : 0),\r\n ],\r\n });\r\n this.transX = transX;\r\n this.showLeftAction =\r\n leftWidth > 0\r\n ? transX.interpolate({\r\n inputRange: [-1, 0, leftWidth],\r\n outputRange: [0, 0, 1],\r\n })\r\n : new Animated.Value(0);\r\n this.leftActionTranslate = this.showLeftAction.interpolate({\r\n inputRange: [0, Number.MIN_VALUE],\r\n outputRange: [-10000, 0],\r\n extrapolate: 'clamp',\r\n });\r\n this.showRightAction =\r\n rightWidth > 0\r\n ? transX.interpolate({\r\n inputRange: [-rightWidth, 0, 1],\r\n outputRange: [1, 0, 0],\r\n })\r\n : new Animated.Value(0);\r\n this.rightActionTranslate = this.showRightAction.interpolate({\r\n inputRange: [0, Number.MIN_VALUE],\r\n outputRange: [-10000, 0],\r\n extrapolate: 'clamp',\r\n });\r\n };\r\n\r\n private onTapHandlerStateChange = ({\r\n nativeEvent,\r\n }: HandlerStateChangeEvent<TapGestureHandlerEventPayload>) => {\r\n if (nativeEvent.oldState === State.ACTIVE) {\r\n this.close();\r\n }\r\n };\r\n\r\n private onHandlerStateChange = (\r\n ev: HandlerStateChangeEvent<PanGestureHandlerEventPayload>\r\n ) => {\r\n if (ev.nativeEvent.oldState === State.ACTIVE) {\r\n this.handleRelease(ev);\r\n }\r\n\r\n if (ev.nativeEvent.state === State.ACTIVE) {\r\n const { velocityX, translationX: dragX } = ev.nativeEvent;\r\n const { rowState } = this.state;\r\n const { friction } = this.props;\r\n\r\n const translationX = (dragX + DRAG_TOSS * velocityX) / friction!;\r\n\r\n const direction =\r\n rowState === -1\r\n ? 'right'\r\n : rowState === 1\r\n ? 'left'\r\n : translationX > 0\r\n ? 'left'\r\n : 'right';\r\n\r\n if (rowState === 0) {\r\n this.props.onSwipeableOpenStartDrag?.(direction);\r\n } else {\r\n this.props.onSwipeableCloseStartDrag?.(direction);\r\n }\r\n }\r\n };\r\n\r\n private handleRelease = (\r\n ev: HandlerStateChangeEvent<PanGestureHandlerEventPayload>\r\n ) => {\r\n const { velocityX, translationX: dragX } = ev.nativeEvent;\r\n const { leftWidth = 0, rowWidth = 0, rowState } = this.state;\r\n const { rightOffset = rowWidth } = this.state;\r\n const rightWidth = rowWidth - rightOffset;\r\n const {\r\n friction,\r\n leftThreshold = leftWidth / 2,\r\n rightThreshold = rightWidth / 2,\r\n } = this.props;\r\n\r\n const startOffsetX = this.currentOffset() + dragX / friction!;\r\n const translationX = (dragX + DRAG_TOSS * velocityX) / friction!;\r\n\r\n let toValue = 0;\r\n if (rowState === 0) {\r\n if (translationX > leftThreshold) {\r\n toValue = leftWidth;\r\n } else if (translationX < -rightThreshold) {\r\n toValue = -rightWidth;\r\n }\r\n } else if (rowState === 1) {\r\n // swiped to left\r\n if (translationX > -leftThreshold) {\r\n toValue = leftWidth;\r\n }\r\n } else {\r\n // swiped to right\r\n if (translationX < rightThreshold) {\r\n toValue = -rightWidth;\r\n }\r\n }\r\n\r\n this.animateRow(startOffsetX, toValue, velocityX / friction!);\r\n };\r\n\r\n private animateRow = (\r\n fromValue: number,\r\n toValue: number,\r\n velocityX?:\r\n | number\r\n | {\r\n x: number;\r\n y: number;\r\n }\r\n ) => {\r\n const { dragX, rowTranslation } = this.state;\r\n dragX.setValue(0);\r\n rowTranslation.setValue(fromValue);\r\n\r\n this.setState({ rowState: Math.sign(toValue) });\r\n Animated.spring(rowTranslation, {\r\n restSpeedThreshold: 1.7,\r\n restDisplacementThreshold: 0.4,\r\n velocity: velocityX,\r\n bounciness: 0,\r\n toValue,\r\n useNativeDriver: this.props.useNativeAnimations!,\r\n ...this.props.animationOptions,\r\n }).start(({ finished }) => {\r\n if (finished) {\r\n if (toValue > 0) {\r\n this.props.onSwipeableLeftOpen?.();\r\n this.props.onSwipeableOpen?.('left', this);\r\n } else if (toValue < 0) {\r\n this.props.onSwipeableRightOpen?.();\r\n this.props.onSwipeableOpen?.('right', this);\r\n } else {\r\n const closingDirection = fromValue > 0 ? 'left' : 'right';\r\n this.props.onSwipeableClose?.(closingDirection, this);\r\n }\r\n }\r\n });\r\n if (toValue > 0) {\r\n this.props.onSwipeableLeftWillOpen?.();\r\n this.props.onSwipeableWillOpen?.('left');\r\n } else if (toValue < 0) {\r\n this.props.onSwipeableRightWillOpen?.();\r\n this.props.onSwipeableWillOpen?.('right');\r\n } else {\r\n const closingDirection = fromValue > 0 ? 'left' : 'right';\r\n this.props.onSwipeableWillClose?.(closingDirection);\r\n }\r\n };\r\n\r\n private onRowLayout = ({ nativeEvent }: LayoutChangeEvent) => {\r\n this.setState({ rowWidth: nativeEvent.layout.width });\r\n };\r\n\r\n private currentOffset = () => {\r\n const { leftWidth = 0, rowWidth = 0, rowState } = this.state;\r\n const { rightOffset = rowWidth } = this.state;\r\n const rightWidth = rowWidth - rightOffset;\r\n if (rowState === 1) {\r\n return leftWidth;\r\n } else if (rowState === -1) {\r\n return -rightWidth;\r\n }\r\n return 0;\r\n };\r\n\r\n close = () => {\r\n this.animateRow(this.currentOffset(), 0);\r\n };\r\n\r\n openLeft = () => {\r\n const { leftWidth = 0 } = this.state;\r\n this.animateRow(this.currentOffset(), leftWidth);\r\n };\r\n\r\n openRight = () => {\r\n const { rowWidth = 0 } = this.state;\r\n const { rightOffset = rowWidth } = this.state;\r\n const rightWidth = rowWidth - rightOffset;\r\n this.animateRow(this.currentOffset(), -rightWidth);\r\n };\r\n\r\n reset = () => {\r\n const { dragX, rowTranslation } = this.state;\r\n dragX.setValue(0);\r\n rowTranslation.setValue(0);\r\n this.setState({ rowState: 0 });\r\n };\r\n\r\n render() {\r\n const { rowState } = this.state;\r\n const {\r\n children,\r\n renderLeftActions,\r\n renderRightActions,\r\n dragOffsetFromLeftEdge = 10,\r\n dragOffsetFromRightEdge = 10,\r\n } = this.props;\r\n\r\n const left = renderLeftActions && (\r\n <Animated.View\r\n style={[\r\n styles.leftActions,\r\n // all those and below parameters can have ! since they are all\r\n // asigned in constructor in `updateAnimatedEvent` but TS cannot spot\r\n // it for some reason\r\n { transform: [{ translateX: this.leftActionTranslate! }] },\r\n ]}>\r\n {renderLeftActions(this.showLeftAction!, this.transX!, this)}\r\n <View\r\n onLayout={({ nativeEvent }) =>\r\n this.setState({ leftWidth: nativeEvent.layout.x })\r\n }\r\n />\r\n </Animated.View>\r\n );\r\n\r\n const right = renderRightActions && (\r\n <Animated.View\r\n style={[\r\n styles.rightActions,\r\n { transform: [{ translateX: this.rightActionTranslate! }] },\r\n ]}>\r\n {renderRightActions(this.showRightAction!, this.transX!, this)}\r\n <View\r\n onLayout={({ nativeEvent }) =>\r\n this.setState({ rightOffset: nativeEvent.layout.x })\r\n }\r\n />\r\n </Animated.View>\r\n );\r\n\r\n return (\r\n <PanGestureHandler\r\n activeOffsetX={[-dragOffsetFromRightEdge, dragOffsetFromLeftEdge]}\r\n {...this.props}\r\n onGestureEvent={this.onGestureEvent}\r\n onHandlerStateChange={this.onHandlerStateChange}>\r\n <Animated.View\r\n onLayout={this.onRowLayout}\r\n style={[styles.container, this.props.containerStyle]}>\r\n {left}\r\n {right}\r\n <TapGestureHandler\r\n enabled={rowState !== 0}\r\n onHandlerStateChange={this.onTapHandlerStateChange}>\r\n <Animated.View\r\n pointerEvents={rowState === 0 ? 'auto' : 'box-only'}\r\n style={[\r\n {\r\n transform: [{ translateX: this.transX! }],\r\n },\r\n this.props.childrenContainerStyle,\r\n ]}>\r\n {children}\r\n </Animated.View>\r\n </TapGestureHandler>\r\n </Animated.View>\r\n </PanGestureHandler>\r\n );\r\n }\r\n}\r\n\r\nconst styles = StyleSheet.create({\r\n container: {\r\n overflow: 'hidden',\r\n },\r\n leftActions: {\r\n ...StyleSheet.absoluteFillObject,\r\n flexDirection: I18nManager.isRTL ? 'row-reverse' : 'row',\r\n },\r\n rightActions: {\r\n ...StyleSheet.absoluteFillObject,\r\n flexDirection: I18nManager.isRTL ? 'row' : 'row-reverse',\r\n },\r\n});\r\n"]}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = gestureHandlerRootHOC;
|
7
|
+
|
8
|
+
var React = _interopRequireWildcard(require("react"));
|
9
|
+
|
10
|
+
var _reactNative = require("react-native");
|
11
|
+
|
12
|
+
var _hoistNonReactStatics = _interopRequireDefault(require("hoist-non-react-statics"));
|
13
|
+
|
14
|
+
var _GestureHandlerRootView = _interopRequireDefault(require("./GestureHandlerRootView"));
|
15
|
+
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17
|
+
|
18
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
19
|
+
|
20
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
21
|
+
|
22
|
+
function gestureHandlerRootHOC(Component, containerStyles) {
|
23
|
+
function Wrapper(props) {
|
24
|
+
return /*#__PURE__*/React.createElement(_GestureHandlerRootView.default, {
|
25
|
+
style: [styles.container, containerStyles]
|
26
|
+
}, /*#__PURE__*/React.createElement(Component, props));
|
27
|
+
}
|
28
|
+
|
29
|
+
Wrapper.displayName = `gestureHandlerRootHOC(${Component.displayName || Component.name})`; // @ts-ignore - hoistNonReactStatics uses old version of @types/react
|
30
|
+
|
31
|
+
(0, _hoistNonReactStatics.default)(Wrapper, Component);
|
32
|
+
return Wrapper;
|
33
|
+
}
|
34
|
+
|
35
|
+
const styles = _reactNative.StyleSheet.create({
|
36
|
+
container: {
|
37
|
+
flex: 1
|
38
|
+
}
|
39
|
+
});
|
40
|
+
//# sourceMappingURL=gestureHandlerRootHOC.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["gestureHandlerRootHOC.tsx"],"names":["gestureHandlerRootHOC","Component","containerStyles","Wrapper","props","styles","container","displayName","name","StyleSheet","create","flex"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEe,SAASA,qBAAT,CAGbC,SAHa,EAIbC,eAJa,EAKW;AACxB,WAASC,OAAT,CAAiBC,KAAjB,EAA2B;AACzB,wBACE,oBAAC,+BAAD;AAAwB,MAAA,KAAK,EAAE,CAACC,MAAM,CAACC,SAAR,EAAmBJ,eAAnB;AAA/B,oBACE,oBAAC,SAAD,EAAeE,KAAf,CADF,CADF;AAKD;;AAEDD,EAAAA,OAAO,CAACI,WAAR,GAAuB,yBACrBN,SAAS,CAACM,WAAV,IAAyBN,SAAS,CAACO,IACpC,GAFD,CATwB,CAaxB;;AACA,qCAAqBL,OAArB,EAA8BF,SAA9B;AAEA,SAAOE,OAAP;AACD;;AAED,MAAME,MAAM,GAAGI,wBAAWC,MAAX,CAAkB;AAC/BJ,EAAAA,SAAS,EAAE;AAAEK,IAAAA,IAAI,EAAE;AAAR;AADoB,CAAlB,CAAf","sourcesContent":["import * as React from 'react';\r\nimport { StyleSheet, StyleProp, ViewStyle } from 'react-native';\r\nimport hoistNonReactStatics from 'hoist-non-react-statics';\r\nimport GestureHandlerRootView from './GestureHandlerRootView';\r\n\r\nexport default function gestureHandlerRootHOC<\r\n P extends Record<string, unknown>\r\n>(\r\n Component: React.ComponentType<P>,\r\n containerStyles?: StyleProp<ViewStyle>\r\n): React.ComponentType<P> {\r\n function Wrapper(props: P) {\r\n return (\r\n <GestureHandlerRootView style={[styles.container, containerStyles]}>\r\n <Component {...props} />\r\n </GestureHandlerRootView>\r\n );\r\n }\r\n\r\n Wrapper.displayName = `gestureHandlerRootHOC(${\r\n Component.displayName || Component.name\r\n })`;\r\n\r\n // @ts-ignore - hoistNonReactStatics uses old version of @types/react\r\n hoistNonReactStatics(Wrapper, Component);\r\n\r\n return Wrapper;\r\n}\r\n\r\nconst styles = StyleSheet.create({\r\n container: { flex: 1 },\r\n});\r\n"]}
|