@amazon-devices/react-native-gesture-handler 2.0.1758683737
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DrawerLayout/package.json +6 -0
- package/LICENSE +7 -0
- package/README.kepler.md +167 -0
- package/RNGestureHandler.podspec +41 -0
- package/Swipeable/package.json +6 -0
- package/SystemBundles/88ca607de4fbd504c736d8d5ce354ea9743ea4ae485d956b5af49e9af508e705.bundle +67466 -0
- package/SystemBundles/88ca607de4fbd504c736d8d5ce354ea9743ea4ae485d956b5af49e9af508e705.map +1 -0
- package/SystemModules/amzn__react-native-gesture-handler-2.modules.txt +338 -0
- package/SystemModules/amzn__react-native-gesture-handler-2.private.modules.txt +96 -0
- package/SystemModules/keplerscript-system-bundle-config.json +7 -0
- package/THIRD_PARTY_NOTICES.txt +578 -0
- package/android/build.gradle +205 -0
- package/android/common/src/main/java/com/swmansion/common/GestureHandlerStateManager.kt +5 -0
- package/android/gradle.properties +19 -0
- package/android/noreanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +10 -0
- package/android/reanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +17 -0
- package/android/src/fabric/java/com/swmansion/gesturehandler/RNGestureHandlerComponentsRegistry.java +29 -0
- package/android/src/fabric/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +12 -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 +707 -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 +419 -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 +77 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEventDataExtractor.kt +8 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +67 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +756 -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 +72 -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/jni/CMakeLists.txt +25 -0
- package/android/src/main/jni/cpp-adapter.cpp +44 -0
- package/android/src/paper/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerDelegate.java +50 -0
- package/android/src/paper/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerInterface.java +23 -0
- package/android/src/paper/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerDelegate.java +25 -0
- package/android/src/paper/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerInterface.java +16 -0
- package/android/src/paper/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +13 -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 +152 -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 +482 -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 +62 -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/kepler-compatibility.json +8 -0
- package/kepler-transformed-package-info.json +3 -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 +29 -0
- package/lib/commonjs/EnableNewWebImplementation.js.map +1 -0
- package/lib/commonjs/GestureHandlerRootViewContext.js +10 -0
- package/lib/commonjs/GestureHandlerRootViewContext.js.map +1 -0
- package/lib/commonjs/PlatformConstants.js +10 -0
- package/lib/commonjs/PlatformConstants.js.map +1 -0
- package/lib/commonjs/PlatformConstants.web.js +12 -0
- package/lib/commonjs/PlatformConstants.web.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.js +23 -0
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.kepler.js +33 -0
- package/lib/commonjs/RNGestureHandlerModule.kepler.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.macos.js +113 -0
- package/lib/commonjs/RNGestureHandlerModule.macos.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.web.js +123 -0
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -0
- package/lib/commonjs/RNGestureHandlerModule.windows.js +121 -0
- package/lib/commonjs/RNGestureHandlerModule.windows.js.map +1 -0
- package/lib/commonjs/RNRenderer.js +14 -0
- package/lib/commonjs/RNRenderer.js.map +1 -0
- package/lib/commonjs/RNRenderer.web.js +10 -0
- package/lib/commonjs/RNRenderer.web.js.map +1 -0
- package/lib/commonjs/State.js +19 -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 +512 -0
- package/lib/commonjs/components/DrawerLayout.js.map +1 -0
- package/lib/commonjs/components/GestureButtons.js +194 -0
- package/lib/commonjs/components/GestureButtons.js.map +1 -0
- package/lib/commonjs/components/GestureComponents.js +104 -0
- package/lib/commonjs/components/GestureComponents.js.map +1 -0
- package/lib/commonjs/components/GestureComponents.web.js +38 -0
- package/lib/commonjs/components/GestureComponents.web.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerButton.js +10 -0
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerButton.web.js +16 -0
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.android.js +23 -0
- package/lib/commonjs/components/GestureHandlerRootView.android.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.js +23 -0
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.kepler.js +18 -0
- package/lib/commonjs/components/GestureHandlerRootView.kepler.js.map +1 -0
- package/lib/commonjs/components/GestureHandlerRootView.web.js +18 -0
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +1 -0
- package/lib/commonjs/components/Swipeable.js +345 -0
- package/lib/commonjs/components/Swipeable.js.map +1 -0
- package/lib/commonjs/components/gestureHandlerRootHOC.js +31 -0
- package/lib/commonjs/components/gestureHandlerRootHOC.js.map +1 -0
- package/lib/commonjs/components/touchables/GenericTouchable.js +253 -0
- package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableHighlight.js +90 -0
- package/lib/commonjs/components/touchables/TouchableHighlight.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +84 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +9 -0
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableOpacity.js +64 -0
- package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -0
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +18 -0
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -0
- package/lib/commonjs/components/touchables/index.js +35 -0
- package/lib/commonjs/components/touchables/index.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 +14 -0
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +1 -0
- package/lib/commonjs/handlers/FlingGestureHandler.js +18 -0
- package/lib/commonjs/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js +37 -0
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/LongPressGestureHandler.js +20 -0
- package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/NativeViewGestureHandler.js +19 -0
- package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/PanGestureHandler.js +99 -0
- package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/PinchGestureHandler.js +17 -0
- package/lib/commonjs/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/PressabilityDebugView.js +13 -0
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -0
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +11 -0
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +1 -0
- package/lib/commonjs/handlers/RotationGestureHandler.js +17 -0
- package/lib/commonjs/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/TapGestureHandler.js +20 -0
- package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -0
- package/lib/commonjs/handlers/createHandler.js +402 -0
- package/lib/commonjs/handlers/createHandler.js.map +1 -0
- package/lib/commonjs/handlers/createNativeWrapper.js +63 -0
- package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -0
- package/lib/commonjs/handlers/gestureHandlerCommon.js +86 -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 +548 -0
- package/lib/commonjs/handlers/gestures/GestureDetector.js.map +1 -0
- package/lib/commonjs/handlers/gestures/eventReceiver.js +125 -0
- package/lib/commonjs/handlers/gestures/eventReceiver.js.map +1 -0
- package/lib/commonjs/handlers/gestures/flingGesture.js +27 -0
- package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +54 -0
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gesture.js +196 -0
- package/lib/commonjs/handlers/gestures/gesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureComposition.js +90 -0
- package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureObjects.js +73 -0
- package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +60 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +27 -0
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +1 -0
- package/lib/commonjs/handlers/gestures/hoverGesture.js +60 -0
- package/lib/commonjs/handlers/gestures/hoverGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/longPressGesture.js +28 -0
- package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/manualGesture.js +25 -0
- package/lib/commonjs/handlers/gestures/manualGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/nativeGesture.js +27 -0
- package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/panGesture.js +124 -0
- package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/pinchGesture.js +38 -0
- package/lib/commonjs/handlers/gestures/pinchGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +30 -0
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +1 -0
- package/lib/commonjs/handlers/gestures/rotationGesture.js +38 -0
- package/lib/commonjs/handlers/gestures/rotationGesture.js.map +1 -0
- package/lib/commonjs/handlers/gestures/tapGesture.js +48 -0
- package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -0
- package/lib/commonjs/handlers/handlersRegistry.js +52 -0
- package/lib/commonjs/handlers/handlersRegistry.js.map +1 -0
- package/lib/commonjs/index.js +241 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/init.js +25 -0
- package/lib/commonjs/init.js.map +1 -0
- package/lib/commonjs/jestUtils/index.js +19 -0
- package/lib/commonjs/jestUtils/index.js.map +1 -0
- package/lib/commonjs/jestUtils/jestUtils.js +312 -0
- package/lib/commonjs/jestUtils/jestUtils.js.map +1 -0
- package/lib/commonjs/mocks.js +61 -0
- package/lib/commonjs/mocks.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js +11 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js +20 -0
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js.map +1 -0
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js +11 -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 +64 -0
- package/lib/commonjs/utils.js.map +1 -0
- package/lib/commonjs/web/constants.js +14 -0
- package/lib/commonjs/web/constants.js.map +1 -0
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +129 -0
- package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -0
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +127 -0
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -0
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +127 -0
- package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/GestureHandler.js +668 -0
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/HoverGestureHandler.js +48 -0
- package/lib/commonjs/web/handlers/HoverGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +119 -0
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +49 -0
- package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +140 -0
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/PanGestureHandler.js +347 -0
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +136 -0
- package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +146 -0
- package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/commonjs/web/handlers/TapGestureHandler.js +219 -0
- package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -0
- package/lib/commonjs/web/interfaces.js +44 -0
- package/lib/commonjs/web/interfaces.js.map +1 -0
- package/lib/commonjs/web/tools/CircularBuffer.js +47 -0
- package/lib/commonjs/web/tools/CircularBuffer.js.map +1 -0
- package/lib/commonjs/web/tools/EventManager.js +95 -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 +305 -0
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -0
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +93 -0
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +1 -0
- package/lib/commonjs/web/tools/InteractionManager.js +99 -0
- package/lib/commonjs/web/tools/InteractionManager.js.map +1 -0
- package/lib/commonjs/web/tools/LeastSquareSolver.js +167 -0
- package/lib/commonjs/web/tools/LeastSquareSolver.js.map +1 -0
- package/lib/commonjs/web/tools/NodeManager.js +41 -0
- package/lib/commonjs/web/tools/NodeManager.js.map +1 -0
- package/lib/commonjs/web/tools/PointerEventManager.js +171 -0
- package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -0
- package/lib/commonjs/web/tools/PointerTracker.js +202 -0
- package/lib/commonjs/web/tools/PointerTracker.js.map +1 -0
- package/lib/commonjs/web/tools/TouchEventManager.js +126 -0
- package/lib/commonjs/web/tools/TouchEventManager.js.map +1 -0
- package/lib/commonjs/web/tools/VelocityTracker.js +89 -0
- package/lib/commonjs/web/tools/VelocityTracker.js.map +1 -0
- package/lib/commonjs/web/utils.js +14 -0
- package/lib/commonjs/web/utils.js.map +1 -0
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +93 -0
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js +43 -0
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/Errors.js +13 -0
- package/lib/commonjs/web_hammer/Errors.js.map +1 -0
- package/lib/commonjs/web_hammer/FlingGestureHandler.js +139 -0
- package/lib/commonjs/web_hammer/FlingGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/GestureHandler.js +491 -0
- package/lib/commonjs/web_hammer/GestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +45 -0
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js +57 -0
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +58 -0
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/NodeManager.js +40 -0
- package/lib/commonjs/web_hammer/NodeManager.js.map +1 -0
- package/lib/commonjs/web_hammer/PanGestureHandler.js +167 -0
- package/lib/commonjs/web_hammer/PanGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/PinchGestureHandler.js +31 -0
- package/lib/commonjs/web_hammer/PinchGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/PressGestureHandler.js +160 -0
- package/lib/commonjs/web_hammer/PressGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/RotationGestureHandler.js +33 -0
- package/lib/commonjs/web_hammer/RotationGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/TapGestureHandler.js +173 -0
- package/lib/commonjs/web_hammer/TapGestureHandler.js.map +1 -0
- package/lib/commonjs/web_hammer/constants.js +51 -0
- package/lib/commonjs/web_hammer/constants.js.map +1 -0
- package/lib/commonjs/web_hammer/utils.js +32 -0
- package/lib/commonjs/web_hammer/utils.js.map +1 -0
- package/lib/module/ActionType.js +9 -0
- package/lib/module/ActionType.js.map +1 -0
- package/lib/module/Directions.js +9 -0
- package/lib/module/Directions.js.map +1 -0
- package/lib/module/EnableNewWebImplementation.js +21 -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 +4 -0
- package/lib/module/PlatformConstants.js.map +1 -0
- package/lib/module/PlatformConstants.web.js +6 -0
- package/lib/module/PlatformConstants.web.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.js +17 -0
- package/lib/module/RNGestureHandlerModule.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.kepler.js +24 -0
- package/lib/module/RNGestureHandlerModule.kepler.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.macos.js +104 -0
- package/lib/module/RNGestureHandlerModule.macos.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.web.js +114 -0
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -0
- package/lib/module/RNGestureHandlerModule.windows.js +112 -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 +13 -0
- package/lib/module/State.js.map +1 -0
- package/lib/module/TouchEventType.js +10 -0
- package/lib/module/TouchEventType.js.map +1 -0
- package/lib/module/components/DrawerLayout.js +504 -0
- package/lib/module/components/DrawerLayout.js.map +1 -0
- package/lib/module/components/GestureButtons.js +176 -0
- package/lib/module/components/GestureButtons.js.map +1 -0
- package/lib/module/components/GestureComponents.js +95 -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 +8 -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.kepler.js +9 -0
- package/lib/module/components/GestureHandlerRootView.kepler.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 +338 -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 +244 -0
- package/lib/module/components/touchables/GenericTouchable.js.map +1 -0
- package/lib/module/components/touchables/TouchableHighlight.js +81 -0
- package/lib/module/components/touchables/TouchableHighlight.js.map +1 -0
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js +74 -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 +55 -0
- package/lib/module/components/touchables/TouchableOpacity.js.map +1 -0
- package/lib/module/components/touchables/TouchableWithoutFeedback.js +9 -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/getShadowNodeFromRef.js +21 -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/handlers/FlingGestureHandler.js +11 -0
- package/lib/module/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/module/handlers/ForceTouchGestureHandler.js +30 -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 +90 -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 +395 -0
- package/lib/module/handlers/createHandler.js.map +1 -0
- package/lib/module/handlers/createNativeWrapper.js +56 -0
- package/lib/module/handlers/createNativeWrapper.js.map +1 -0
- package/lib/module/handlers/gestureHandlerCommon.js +76 -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 +538 -0
- package/lib/module/handlers/gestures/GestureDetector.js.map +1 -0
- package/lib/module/handlers/gestures/eventReceiver.js +116 -0
- package/lib/module/handlers/gestures/eventReceiver.js.map +1 -0
- package/lib/module/handlers/gestures/flingGesture.js +20 -0
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -0
- package/lib/module/handlers/gestures/forceTouchGesture.js +47 -0
- package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -0
- package/lib/module/handlers/gestures/gesture.js +188 -0
- package/lib/module/handlers/gestures/gesture.js.map +1 -0
- package/lib/module/handlers/gestures/gestureComposition.js +81 -0
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -0
- package/lib/module/handlers/gestures/gestureObjects.js +67 -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 +20 -0
- package/lib/module/handlers/gestures/gestureStateManager.web.js.map +1 -0
- package/lib/module/handlers/gestures/hoverGesture.js +53 -0
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -0
- package/lib/module/handlers/gestures/longPressGesture.js +21 -0
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -0
- package/lib/module/handlers/gestures/manualGesture.js +18 -0
- package/lib/module/handlers/gestures/manualGesture.js.map +1 -0
- package/lib/module/handlers/gestures/nativeGesture.js +20 -0
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -0
- package/lib/module/handlers/gestures/panGesture.js +117 -0
- package/lib/module/handlers/gestures/panGesture.js.map +1 -0
- package/lib/module/handlers/gestures/pinchGesture.js +31 -0
- package/lib/module/handlers/gestures/pinchGesture.js.map +1 -0
- package/lib/module/handlers/gestures/reanimatedWrapper.js +25 -0
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -0
- package/lib/module/handlers/gestures/rotationGesture.js +31 -0
- package/lib/module/handlers/gestures/rotationGesture.js.map +1 -0
- package/lib/module/handlers/gestures/tapGesture.js +41 -0
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -0
- package/lib/module/handlers/handlersRegistry.js +39 -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 +17 -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 +305 -0
- package/lib/module/jestUtils/jestUtils.js.map +1 -0
- package/lib/module/mocks.js +55 -0
- package/lib/module/mocks.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js +4 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js +12 -0
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js.map +1 -0
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js +4 -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 +50 -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 +122 -0
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -0
- package/lib/module/web/detectors/ScaleGestureDetector.js +120 -0
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -0
- package/lib/module/web/handlers/FlingGestureHandler.js +119 -0
- package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/GestureHandler.js +661 -0
- package/lib/module/web/handlers/GestureHandler.js.map +1 -0
- package/lib/module/web/handlers/HoverGestureHandler.js +40 -0
- package/lib/module/web/handlers/HoverGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/LongPressGestureHandler.js +111 -0
- package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/ManualGestureHandler.js +41 -0
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/NativeViewGestureHandler.js +132 -0
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/PanGestureHandler.js +339 -0
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/PinchGestureHandler.js +128 -0
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/RotationGestureHandler.js +138 -0
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -0
- package/lib/module/web/handlers/TapGestureHandler.js +211 -0
- package/lib/module/web/handlers/TapGestureHandler.js.map +1 -0
- package/lib/module/web/interfaces.js +38 -0
- package/lib/module/web/interfaces.js.map +1 -0
- package/lib/module/web/tools/CircularBuffer.js +40 -0
- package/lib/module/web/tools/CircularBuffer.js.map +1 -0
- package/lib/module/web/tools/EventManager.js +88 -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 +297 -0
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -0
- package/lib/module/web/tools/GestureHandlerWebDelegate.js +85 -0
- package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +1 -0
- package/lib/module/web/tools/InteractionManager.js +92 -0
- package/lib/module/web/tools/InteractionManager.js.map +1 -0
- package/lib/module/web/tools/LeastSquareSolver.js +160 -0
- package/lib/module/web/tools/LeastSquareSolver.js.map +1 -0
- package/lib/module/web/tools/NodeManager.js +34 -0
- package/lib/module/web/tools/NodeManager.js.map +1 -0
- package/lib/module/web/tools/PointerEventManager.js +163 -0
- package/lib/module/web/tools/PointerEventManager.js.map +1 -0
- package/lib/module/web/tools/PointerTracker.js +194 -0
- package/lib/module/web/tools/PointerTracker.js.map +1 -0
- package/lib/module/web/tools/TouchEventManager.js +118 -0
- package/lib/module/web/tools/TouchEventManager.js.map +1 -0
- package/lib/module/web/tools/VelocityTracker.js +81 -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 +85 -0
- package/lib/module/web_hammer/DiscreteGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/DraggingGestureHandler.js +35 -0
- package/lib/module/web_hammer/DraggingGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/Errors.js +6 -0
- package/lib/module/web_hammer/Errors.js.map +1 -0
- package/lib/module/web_hammer/FlingGestureHandler.js +131 -0
- package/lib/module/web_hammer/FlingGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/GestureHandler.js +485 -0
- package/lib/module/web_hammer/GestureHandler.js.map +1 -0
- package/lib/module/web_hammer/IndiscreteGestureHandler.js +39 -0
- package/lib/module/web_hammer/IndiscreteGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/LongPressGestureHandler.js +49 -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 +31 -0
- package/lib/module/web_hammer/NodeManager.js.map +1 -0
- package/lib/module/web_hammer/PanGestureHandler.js +160 -0
- package/lib/module/web_hammer/PanGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/PinchGestureHandler.js +24 -0
- package/lib/module/web_hammer/PinchGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/PressGestureHandler.js +153 -0
- package/lib/module/web_hammer/PressGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/RotationGestureHandler.js +26 -0
- package/lib/module/web_hammer/RotationGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/TapGestureHandler.js +166 -0
- package/lib/module/web_hammer/TapGestureHandler.js.map +1 -0
- package/lib/module/web_hammer/constants.js +44 -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.kepler.d.ts +17 -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.kepler.d.ts +6 -0
- package/lib/typescript/components/GestureHandlerRootView.web.d.ts +6 -0
- package/lib/typescript/components/Swipeable.d.ts +170 -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/getShadowNodeFromRef.d.ts +1 -0
- package/lib/typescript/getShadowNodeFromRef.web.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 +67 -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 +108 -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/RNGestureHandlerButtonNativeComponent.kepler.d.ts +7 -0
- package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts +6 -0
- package/lib/typescript/typeUtils.d.ts +1 -0
- package/lib/typescript/utils.d.ts +12 -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 +140 -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 +30 -0
- package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +21 -0
- package/lib/typescript/web/tools/InteractionManager.d.ts +16 -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 +1 -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.kepler.ts +64 -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 +334 -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.kepler.tsx +17 -0
- package/src/components/GestureHandlerRootView.tsx +23 -0
- package/src/components/GestureHandlerRootView.web.tsx +17 -0
- package/src/components/Swipeable.tsx +551 -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/getShadowNodeFromRef.ts +22 -0
- package/src/getShadowNodeFromRef.web.ts +7 -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 +547 -0
- package/src/handlers/createNativeWrapper.tsx +80 -0
- package/src/handlers/gestureHandlerCommon.ts +244 -0
- package/src/handlers/gestureHandlerTypesCompat.ts +106 -0
- package/src/handlers/gestures/GestureDetector.tsx +818 -0
- package/src/handlers/gestures/eventReceiver.ts +172 -0
- package/src/handlers/gestures/flingGesture.ts +27 -0
- package/src/handlers/gestures/forceTouchGesture.ts +74 -0
- package/src/handlers/gestures/gesture.ts +341 -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.kepler.ts +27 -0
- package/src/specs/RNGestureHandlerButtonNativeComponent.ts +20 -0
- package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +7 -0
- package/src/typeUtils.ts +1 -0
- package/src/utils.ts +62 -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 +850 -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 +166 -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 +398 -0
- package/src/web/tools/GestureHandlerWebDelegate.ts +115 -0
- package/src/web/tools/InteractionManager.ts +123 -0
- package/src/web/tools/LeastSquareSolver.ts +182 -0
- package/src/web/tools/NodeManager.ts +43 -0
- package/src/web/tools/PointerEventManager.ts +193 -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 +598 -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,9 @@
|
|
|
1
|
+
export declare const isnan: (v: unknown) => boolean;
|
|
2
|
+
export declare const isValidNumber: (v: unknown) => boolean;
|
|
3
|
+
export declare const TEST_MIN_IF_NOT_NAN: (value: number, limit: number) => boolean;
|
|
4
|
+
export declare const VEC_LEN_SQ: ({ x, y }?: {
|
|
5
|
+
x?: number | undefined;
|
|
6
|
+
y?: number | undefined;
|
|
7
|
+
}) => number;
|
|
8
|
+
export declare const TEST_MAX_IF_NOT_NAN: (value: number, max: number) => boolean;
|
|
9
|
+
export declare function fireAfterInterval(method: () => void, interval?: number | boolean): number | null;
|
package/package.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name": "@amazon-devices/react-native-gesture-handler", "version": "2.0.1758683737+2.13.0", "description": "Experimental implementation of a new declarative API for gesture handling in react-native", "scripts": {"test": "jest", "tsc": "tsc -p tsconfig.build.json", "build": "$npm_execpath run tsc", "precommit": "lint-staged", "release": "npm login && release-it", "ts-check": "yarn tsc --noEmit", "format:js": "prettier --write --list-different './{src,example,FabricExample}/**/*.{js,jsx,ts,tsx}'", "format:android": "node ./scripts/format-android.js", "format:ios": "find ios/ -iname *.h -o -iname *.m -o -iname *.cpp -o -iname *.mm | xargs clang-format -i", "lint:js": "eslint --ext '.js,.ts,.tsx' src/ example/src FabricExample/src && yarn prettier --check './{src,example,FabricExample}/**/*.{js,jsx,ts,tsx}'", "lint:js-root": "eslint --ext '.js,.ts,.tsx' src/ && yarn prettier --check './src/**/*.{js,jsx,ts,tsx}'", "lint:android": "./android/gradlew -p android spotlessCheck -q", "build:release": "npm run prepare"}, "kepler": {"temporary-alias-for-package": {"name": "react-native-gesture-handler", "version": "2.13.0"}}, "keplerImport": true, "react-native": "src/index.ts", "main": "lib/commonjs/index.js", "module": "lib/module/index.js", "types": "lib/typescript/index.d.ts", "files": ["src", "lib", "!**/__tests__", "!**/__fixtures__", "!**/__mocks__", "android/build.gradle", "android/gradle.properties", "android/src/main/AndroidManifest.xml", "android/src/main/java/", "android/src/main/jni/", "android/src/fabric/java", "android/src/paper/java", "android/common/src/main/java/", "android/reanimated/src/main/java/", "android/noreanimated/src/main/java/", "ios/", "Swipeable/", "jest-utils/", "DrawerLayout/", "README.md", "jestSetup.js", "RNGestureHandler.podspec", "kepler-compatibility.json", "SystemModules", "SystemBundles", "THIRD_PARTY_NOTICES.txt", "kepler-transformed-package-info.json"], "repository": {"type": "git", "url": "git+https://github.com/software-mansion/react-native-gesture-handler.git"}, "author": {"email": "krzys.magiera@gmail.com", "name": "Krzysztof Magiera"}, "license": "See license in LICENSE", "readmeFilename": "README.md", "bugs": {"url": "https://github.com/software-mansion/react-native-gesture-handler/issues"}, "homepage": "https://github.com/software-mansion/react-native-gesture-handler#readme", "dependencies": {"@egjs/hammerjs": "^2.0.17", "hoist-non-react-statics": "^3.3.0", "invariant": "^2.2.4", "lodash": "^4.17.21", "prop-types": "^15.7.2", "react-native": "0.72.0"}, "jest": {"preset": "react-native", "modulePathIgnorePatterns": ["<rootDir>/lib/"]}, "devDependencies": {"@babel/core": "^7.12.9", "@babel/plugin-proposal-class-properties": "^7.12.1", "@babel/preset-env": "^7.12.11", "@babel/preset-typescript": "^7.12.7", "@babel/runtime": "^7.12.5", "@testing-library/jest-native": "^4.0.4", "@testing-library/react-native": "^9.0.0", "@types/hammerjs": "^2.0.38", "@types/hoist-non-react-statics": "^3.3.1", "@types/jest": "^27.0.3", "@types/react": "^18.0.24", "@types/react-test-renderer": "^17.0.0", "@typescript-eslint/eslint-plugin": "^4.33.0", "@typescript-eslint/parser": "^4.33.0", "babel-jest": "^26.6.3", "clang-format": "^1.8.0", "eslint": "^7.32.0", "eslint-config-satya164": "^3.1.8", "eslint-import-resolver-babel-module": "^5.2.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-jest": "^26.0.0", "expo": "^35.0.1", "husky": "^8.0.1", "jest": "^26.6.3", "lint-staged": "^12.3.2", "metro-react-native-babel-preset": "^0.64.0", "prettier": "^2.7.1", "react": "18.2.0", "react-dom": "^16.12.0", "react-native-builder-bob": "^0.17.1", "react-native-reanimated": "^2.3.1", "react-native-web": "^0.11.7", "react-test-renderer": "17.0.2", "release-it": "^13.6.5", "typescript": "^4.5.5", "@amazon-devices/react-native-kepler": "^2.0.0+rn0.72.0"}, "peerDependencies": {"react": "*", "react-native": "*", "@amazon-devices/react-native-kepler": "^2.0.0+rn0.72.0"}, "lint-staged": {"./{src,example,FabricExample}/**/*.{ts,tsx}": "yarn format:js", "android/**/*.kt": "yarn format:android", "ios/**/*.{h,m,mm,cpp}": "yarn format:ios"}, "release-it": {"hooks": {"before:git:bump": ["# check if version corresponds to changes in native files \n if git diff --name-only ${latestVersion} HEAD | egrep \"(android/.*)|(ios/.*)\" -q; then egrep '\\.0$' -q <<< ${version}; else test $? -eq 1; fi"]}}, "react-native-builder-bob": {"source": "src", "output": "lib", "targets": ["commonjs", "module", ["typescript", {"project": "tsconfig.build.json"}]]}, "eslintIgnore": ["node_modules/", "lib/", "src/specs/*NativeComponent.js"], "codegenConfig": {"name": "rngesturehandler_codegen", "type": "components", "jsSrcsDir": "./src/specs"}}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const ActionType = {
|
|
2
|
+
REANIMATED_WORKLET: 1,
|
|
3
|
+
NATIVE_ANIMATED_EVENT: 2,
|
|
4
|
+
JS_FUNCTION_OLD_API: 3,
|
|
5
|
+
JS_FUNCTION_NEW_API: 4,
|
|
6
|
+
} as const;
|
|
7
|
+
|
|
8
|
+
// eslint-disable-next-line @typescript-eslint/no-redeclare -- backward compatibility; it can be used as a type and as a value
|
|
9
|
+
export type ActionType = typeof ActionType[keyof typeof ActionType];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const Directions = {
|
|
2
|
+
RIGHT: 1,
|
|
3
|
+
LEFT: 2,
|
|
4
|
+
UP: 4,
|
|
5
|
+
DOWN: 8,
|
|
6
|
+
} as const;
|
|
7
|
+
|
|
8
|
+
// eslint-disable-next-line @typescript-eslint/no-redeclare -- backward compatibility; it can be used as a type and as a value
|
|
9
|
+
export type Directions = typeof Directions[keyof typeof Directions];
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
|
|
3
|
+
let useNewWebImplementation = true;
|
|
4
|
+
let getWasCalled = false;
|
|
5
|
+
|
|
6
|
+
export function enableExperimentalWebImplementation(
|
|
7
|
+
_shouldEnable = true
|
|
8
|
+
): void {
|
|
9
|
+
// NO-OP since the new implementation is now the default
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function enableLegacyWebImplementation(
|
|
13
|
+
shouldUseLegacyImplementation = true
|
|
14
|
+
): void {
|
|
15
|
+
if (
|
|
16
|
+
Platform.OS !== 'web' ||
|
|
17
|
+
useNewWebImplementation === !shouldUseLegacyImplementation
|
|
18
|
+
) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
if (getWasCalled) {
|
|
23
|
+
console.error(
|
|
24
|
+
'Some parts of this application have already started using the new gesture handler implementation. No changes will be applied. You can try enabling legacy implementation earlier.'
|
|
25
|
+
);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
useNewWebImplementation = !shouldUseLegacyImplementation;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function isNewWebImplementationEnabled(): boolean {
|
|
33
|
+
getWasCalled = true;
|
|
34
|
+
return useNewWebImplementation;
|
|
35
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { KeplerTurboModule } from '@amazon-devices/react-native-kepler/Libraries/TurboModule/KeplerTurboModule';
|
|
2
|
+
// @ts-ignore No type definitions for TurboModuleRegistry
|
|
3
|
+
import * as TurboModuleRegistry from '@amazon-devices/react-native-kepler/Libraries/TurboModule/TurboModuleRegistry';
|
|
4
|
+
import { ActionType } from './ActionType';
|
|
5
|
+
import { Alert } from 'react-native';
|
|
6
|
+
|
|
7
|
+
interface Spec extends KeplerTurboModule {
|
|
8
|
+
readonly installOnUIRuntime: (
|
|
9
|
+
uiRuntimePointer: ArrayBuffer | undefined
|
|
10
|
+
) => void;
|
|
11
|
+
readonly install: () => void;
|
|
12
|
+
readonly handleSetJSResponder: (
|
|
13
|
+
tag: number,
|
|
14
|
+
blockNativeResponder: boolean
|
|
15
|
+
) => void;
|
|
16
|
+
readonly handleClearJSResponder: () => void;
|
|
17
|
+
readonly createGestureHandler: (
|
|
18
|
+
handlerName: string,
|
|
19
|
+
handlerTag: number,
|
|
20
|
+
config: Readonly<Record<string, unknown>>
|
|
21
|
+
) => void;
|
|
22
|
+
readonly attachGestureHandler: (
|
|
23
|
+
handlerTag: number,
|
|
24
|
+
viewTag: number,
|
|
25
|
+
actionType: ActionType
|
|
26
|
+
) => void;
|
|
27
|
+
readonly updateGestureHandler: (
|
|
28
|
+
handlerTag: number,
|
|
29
|
+
config: Readonly<Record<string, unknown>>
|
|
30
|
+
) => void;
|
|
31
|
+
readonly dropGestureHandler: (handlerTag: number) => void;
|
|
32
|
+
readonly flushOperations: () => void;
|
|
33
|
+
readonly addListener: () => void;
|
|
34
|
+
readonly removeListeners: () => void;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
try {
|
|
38
|
+
// at this point we need Reanimated to be initialized so that `global._WORKLET_RUNTIME` contains a pointer to the UI runtime
|
|
39
|
+
require('@amazon-devices/react-native-reanimated/src/reanimated2/NativeReanimated');
|
|
40
|
+
} catch (_) {
|
|
41
|
+
// fail silently
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const NativeModule = TurboModuleRegistry.getEnforcing<Spec>(
|
|
45
|
+
'RNGestureHandlerModule'
|
|
46
|
+
) as Spec;
|
|
47
|
+
|
|
48
|
+
// @ts-ignore
|
|
49
|
+
global.notifyMultipleUsageError = (handlerTag: number) => {
|
|
50
|
+
Alert.alert(
|
|
51
|
+
'Exception thrown while executing UI block',
|
|
52
|
+
`Handler with tag ${handlerTag} already exists. Please ensure that no Gesture instance is used across multiple GestureDetectors.`
|
|
53
|
+
);
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
// @ts-expect-error `_WORKLET_RUNTIME` is injected into global scope by Reanimated, if Reanimated is not installed, it will not exist
|
|
57
|
+
if (global._WORKLET_RUNTIME) {
|
|
58
|
+
// @ts-expect-error same as above
|
|
59
|
+
NativeModule.installOnUIRuntime(global._WORKLET_RUNTIME);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
NativeModule.install();
|
|
63
|
+
|
|
64
|
+
export default NativeModule;
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { ActionType } from './ActionType';
|
|
2
|
+
import { isNewWebImplementationEnabled } from './EnableNewWebImplementation';
|
|
3
|
+
|
|
4
|
+
//GestureHandlers
|
|
5
|
+
import InteractionManager from './web/tools/InteractionManager';
|
|
6
|
+
import NodeManager from './web/tools/NodeManager';
|
|
7
|
+
import PanGestureHandler from './web/handlers/PanGestureHandler';
|
|
8
|
+
import TapGestureHandler from './web/handlers/TapGestureHandler';
|
|
9
|
+
import LongPressGestureHandler from './web/handlers/LongPressGestureHandler';
|
|
10
|
+
import PinchGestureHandler from './web/handlers/PinchGestureHandler';
|
|
11
|
+
import RotationGestureHandler from './web/handlers/RotationGestureHandler';
|
|
12
|
+
import FlingGestureHandler from './web/handlers/FlingGestureHandler';
|
|
13
|
+
import NativeViewGestureHandler from './web/handlers/NativeViewGestureHandler';
|
|
14
|
+
import ManualGestureHandler from './web/handlers/ManualGestureHandler';
|
|
15
|
+
|
|
16
|
+
//Hammer Handlers
|
|
17
|
+
import * as HammerNodeManager from './web_hammer/NodeManager';
|
|
18
|
+
import HammerNativeViewGestureHandler from './web_hammer/NativeViewGestureHandler';
|
|
19
|
+
import HammerPanGestureHandler from './web_hammer/PanGestureHandler';
|
|
20
|
+
import HammerTapGestureHandler from './web_hammer/TapGestureHandler';
|
|
21
|
+
import HammerLongPressGestureHandler from './web_hammer/LongPressGestureHandler';
|
|
22
|
+
import HammerPinchGestureHandler from './web_hammer/PinchGestureHandler';
|
|
23
|
+
import HammerRotationGestureHandler from './web_hammer/RotationGestureHandler';
|
|
24
|
+
import HammerFlingGestureHandler from './web_hammer/FlingGestureHandler';
|
|
25
|
+
import { Config } from './web/interfaces';
|
|
26
|
+
import { GestureHandlerWebDelegate } from './web/tools/GestureHandlerWebDelegate';
|
|
27
|
+
|
|
28
|
+
export const Gestures = {
|
|
29
|
+
NativeViewGestureHandler,
|
|
30
|
+
PanGestureHandler,
|
|
31
|
+
TapGestureHandler,
|
|
32
|
+
LongPressGestureHandler,
|
|
33
|
+
PinchGestureHandler,
|
|
34
|
+
RotationGestureHandler,
|
|
35
|
+
FlingGestureHandler,
|
|
36
|
+
ManualGestureHandler,
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export const HammerGestures = {
|
|
40
|
+
NativeViewGestureHandler: HammerNativeViewGestureHandler,
|
|
41
|
+
PanGestureHandler: HammerPanGestureHandler,
|
|
42
|
+
TapGestureHandler: HammerTapGestureHandler,
|
|
43
|
+
LongPressGestureHandler: HammerLongPressGestureHandler,
|
|
44
|
+
PinchGestureHandler: HammerPinchGestureHandler,
|
|
45
|
+
RotationGestureHandler: HammerRotationGestureHandler,
|
|
46
|
+
FlingGestureHandler: HammerFlingGestureHandler,
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export default {
|
|
50
|
+
handleSetJSResponder(_tag: number, _blockNativeResponder: boolean) {
|
|
51
|
+
// NO-OP
|
|
52
|
+
},
|
|
53
|
+
handleClearJSResponder() {
|
|
54
|
+
// NO-OP
|
|
55
|
+
},
|
|
56
|
+
createGestureHandler<T>(
|
|
57
|
+
handlerName: keyof typeof Gestures,
|
|
58
|
+
handlerTag: number,
|
|
59
|
+
config: T
|
|
60
|
+
) {
|
|
61
|
+
if (isNewWebImplementationEnabled()) {
|
|
62
|
+
if (!(handlerName in Gestures)) {
|
|
63
|
+
throw new Error(
|
|
64
|
+
`react-native-gesture-handler: ${handlerName} is not supported on web.`
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
const GestureClass = Gestures[handlerName];
|
|
69
|
+
NodeManager.createGestureHandler(
|
|
70
|
+
handlerTag,
|
|
71
|
+
new GestureClass(new GestureHandlerWebDelegate())
|
|
72
|
+
);
|
|
73
|
+
InteractionManager.getInstance().configureInteractions(
|
|
74
|
+
NodeManager.getHandler(handlerTag),
|
|
75
|
+
config as unknown as Config
|
|
76
|
+
);
|
|
77
|
+
} else {
|
|
78
|
+
if (!(handlerName in HammerGestures)) {
|
|
79
|
+
throw new Error(
|
|
80
|
+
`react-native-gesture-handler: ${handlerName} is not supported on web.`
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// @ts-ignore If it doesn't exist, the error is thrown
|
|
85
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
86
|
+
const GestureClass = HammerGestures[handlerName];
|
|
87
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
88
|
+
HammerNodeManager.createGestureHandler(handlerTag, new GestureClass());
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
this.updateGestureHandler(handlerTag, config as unknown as Config);
|
|
92
|
+
},
|
|
93
|
+
attachGestureHandler(
|
|
94
|
+
handlerTag: number,
|
|
95
|
+
newView: number,
|
|
96
|
+
_actionType: ActionType,
|
|
97
|
+
propsRef: React.RefObject<unknown>
|
|
98
|
+
) {
|
|
99
|
+
if (isNewWebImplementationEnabled()) {
|
|
100
|
+
NodeManager.getHandler(handlerTag).init(newView, propsRef);
|
|
101
|
+
} else {
|
|
102
|
+
HammerNodeManager.getHandler(handlerTag).setView(newView, propsRef);
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
updateGestureHandler(handlerTag: number, newConfig: Config) {
|
|
106
|
+
if (isNewWebImplementationEnabled()) {
|
|
107
|
+
NodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
108
|
+
|
|
109
|
+
InteractionManager.getInstance().configureInteractions(
|
|
110
|
+
NodeManager.getHandler(handlerTag),
|
|
111
|
+
newConfig
|
|
112
|
+
);
|
|
113
|
+
} else {
|
|
114
|
+
HammerNodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
getGestureHandlerNode(handlerTag: number) {
|
|
118
|
+
if (isNewWebImplementationEnabled()) {
|
|
119
|
+
return NodeManager.getHandler(handlerTag);
|
|
120
|
+
} else {
|
|
121
|
+
return HammerNodeManager.getHandler(handlerTag);
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
dropGestureHandler(handlerTag: number) {
|
|
125
|
+
if (isNewWebImplementationEnabled()) {
|
|
126
|
+
NodeManager.dropGestureHandler(handlerTag);
|
|
127
|
+
} else {
|
|
128
|
+
HammerNodeManager.dropGestureHandler(handlerTag);
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
132
|
+
flushOperations() {},
|
|
133
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { NativeModules } from 'react-native';
|
|
2
|
+
import { ActionType } from './ActionType';
|
|
3
|
+
import { tagMessage } from './utils';
|
|
4
|
+
const { RNGestureHandlerModule } = NativeModules;
|
|
5
|
+
|
|
6
|
+
if (RNGestureHandlerModule == null) {
|
|
7
|
+
console.error(
|
|
8
|
+
tagMessage(
|
|
9
|
+
`react-native-gesture-handler module was not found. Make sure you're running your app on the native platform and your code is linked properly (cd ios && pod install && cd ..).
|
|
10
|
+
|
|
11
|
+
For installation instructions, please refer to https://docs.swmansion.com/react-native-gesture-handler/docs/#installation`
|
|
12
|
+
.split('\n')
|
|
13
|
+
.map((line) => line.trim())
|
|
14
|
+
.join('\n')
|
|
15
|
+
)
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
if (
|
|
20
|
+
RNGestureHandlerModule &&
|
|
21
|
+
RNGestureHandlerModule.flushOperations === undefined
|
|
22
|
+
) {
|
|
23
|
+
RNGestureHandlerModule.flushOperations = () => {
|
|
24
|
+
// NO-OP if not defined
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export type RNGestureHandlerModuleProps = {
|
|
29
|
+
handleSetJSResponder: (tag: number, blockNativeResponder: boolean) => void;
|
|
30
|
+
handleClearJSResponder: () => void;
|
|
31
|
+
createGestureHandler: (
|
|
32
|
+
handlerName: string,
|
|
33
|
+
handlerTag: number,
|
|
34
|
+
config: Readonly<Record<string, unknown>>
|
|
35
|
+
) => void;
|
|
36
|
+
attachGestureHandler: (
|
|
37
|
+
handlerTag: number,
|
|
38
|
+
newView: number,
|
|
39
|
+
actionType: ActionType
|
|
40
|
+
) => void;
|
|
41
|
+
updateGestureHandler: (
|
|
42
|
+
handlerTag: number,
|
|
43
|
+
newConfig: Readonly<Record<string, unknown>>
|
|
44
|
+
) => void;
|
|
45
|
+
dropGestureHandler: (handlerTag: number) => void;
|
|
46
|
+
install: () => void;
|
|
47
|
+
flushOperations: () => void;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
export default RNGestureHandlerModule as RNGestureHandlerModuleProps;
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { ActionType } from './ActionType';
|
|
4
|
+
import { isNewWebImplementationEnabled } from './EnableNewWebImplementation';
|
|
5
|
+
|
|
6
|
+
//GestureHandlers
|
|
7
|
+
import InteractionManager from './web/tools/InteractionManager';
|
|
8
|
+
import NodeManager from './web/tools/NodeManager';
|
|
9
|
+
import PanGestureHandler from './web/handlers/PanGestureHandler';
|
|
10
|
+
import TapGestureHandler from './web/handlers/TapGestureHandler';
|
|
11
|
+
import LongPressGestureHandler from './web/handlers/LongPressGestureHandler';
|
|
12
|
+
import PinchGestureHandler from './web/handlers/PinchGestureHandler';
|
|
13
|
+
import RotationGestureHandler from './web/handlers/RotationGestureHandler';
|
|
14
|
+
import FlingGestureHandler from './web/handlers/FlingGestureHandler';
|
|
15
|
+
import NativeViewGestureHandler from './web/handlers/NativeViewGestureHandler';
|
|
16
|
+
import ManualGestureHandler from './web/handlers/ManualGestureHandler';
|
|
17
|
+
import HoverGestureHandler from './web/handlers/HoverGestureHandler';
|
|
18
|
+
|
|
19
|
+
//Hammer Handlers
|
|
20
|
+
import * as HammerNodeManager from './web_hammer/NodeManager';
|
|
21
|
+
import HammerNativeViewGestureHandler from './web_hammer/NativeViewGestureHandler';
|
|
22
|
+
import HammerPanGestureHandler from './web_hammer/PanGestureHandler';
|
|
23
|
+
import HammerTapGestureHandler from './web_hammer/TapGestureHandler';
|
|
24
|
+
import HammerLongPressGestureHandler from './web_hammer/LongPressGestureHandler';
|
|
25
|
+
import HammerPinchGestureHandler from './web_hammer/PinchGestureHandler';
|
|
26
|
+
import HammerRotationGestureHandler from './web_hammer/RotationGestureHandler';
|
|
27
|
+
import HammerFlingGestureHandler from './web_hammer/FlingGestureHandler';
|
|
28
|
+
import { Config } from './web/interfaces';
|
|
29
|
+
import { GestureHandlerWebDelegate } from './web/tools/GestureHandlerWebDelegate';
|
|
30
|
+
|
|
31
|
+
export const Gestures = {
|
|
32
|
+
NativeViewGestureHandler,
|
|
33
|
+
PanGestureHandler,
|
|
34
|
+
TapGestureHandler,
|
|
35
|
+
LongPressGestureHandler,
|
|
36
|
+
PinchGestureHandler,
|
|
37
|
+
RotationGestureHandler,
|
|
38
|
+
FlingGestureHandler,
|
|
39
|
+
ManualGestureHandler,
|
|
40
|
+
HoverGestureHandler,
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export const HammerGestures = {
|
|
44
|
+
NativeViewGestureHandler: HammerNativeViewGestureHandler,
|
|
45
|
+
PanGestureHandler: HammerPanGestureHandler,
|
|
46
|
+
TapGestureHandler: HammerTapGestureHandler,
|
|
47
|
+
LongPressGestureHandler: HammerLongPressGestureHandler,
|
|
48
|
+
PinchGestureHandler: HammerPinchGestureHandler,
|
|
49
|
+
RotationGestureHandler: HammerRotationGestureHandler,
|
|
50
|
+
FlingGestureHandler: HammerFlingGestureHandler,
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export default {
|
|
54
|
+
handleSetJSResponder(tag: number, blockNativeResponder: boolean) {
|
|
55
|
+
console.warn('handleSetJSResponder: ', tag, blockNativeResponder);
|
|
56
|
+
},
|
|
57
|
+
handleClearJSResponder() {
|
|
58
|
+
console.warn('handleClearJSResponder: ');
|
|
59
|
+
},
|
|
60
|
+
createGestureHandler<T>(
|
|
61
|
+
handlerName: keyof typeof Gestures,
|
|
62
|
+
handlerTag: number,
|
|
63
|
+
config: T
|
|
64
|
+
) {
|
|
65
|
+
if (isNewWebImplementationEnabled()) {
|
|
66
|
+
if (!(handlerName in Gestures)) {
|
|
67
|
+
throw new Error(
|
|
68
|
+
`react-native-gesture-handler: ${handlerName} is not supported on web.`
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
const GestureClass = Gestures[handlerName];
|
|
73
|
+
NodeManager.createGestureHandler(
|
|
74
|
+
handlerTag,
|
|
75
|
+
new GestureClass(new GestureHandlerWebDelegate())
|
|
76
|
+
);
|
|
77
|
+
InteractionManager.getInstance().configureInteractions(
|
|
78
|
+
NodeManager.getHandler(handlerTag),
|
|
79
|
+
config as unknown as Config
|
|
80
|
+
);
|
|
81
|
+
} else {
|
|
82
|
+
if (!(handlerName in HammerGestures)) {
|
|
83
|
+
throw new Error(
|
|
84
|
+
`react-native-gesture-handler: ${handlerName} is not supported on web.`
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// @ts-ignore If it doesn't exist, the error is thrown
|
|
89
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
90
|
+
const GestureClass = HammerGestures[handlerName];
|
|
91
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
92
|
+
HammerNodeManager.createGestureHandler(handlerTag, new GestureClass());
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
this.updateGestureHandler(handlerTag, config as unknown as Config);
|
|
96
|
+
},
|
|
97
|
+
attachGestureHandler(
|
|
98
|
+
handlerTag: number,
|
|
99
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
100
|
+
newView: any,
|
|
101
|
+
_actionType: ActionType,
|
|
102
|
+
propsRef: React.RefObject<unknown>
|
|
103
|
+
) {
|
|
104
|
+
if (
|
|
105
|
+
!(newView instanceof HTMLElement || newView instanceof React.Component)
|
|
106
|
+
) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
if (isNewWebImplementationEnabled()) {
|
|
111
|
+
//@ts-ignore Types should be HTMLElement or React.Component
|
|
112
|
+
NodeManager.getHandler(handlerTag).init(newView, propsRef);
|
|
113
|
+
} else {
|
|
114
|
+
//@ts-ignore Types should be HTMLElement or React.Component
|
|
115
|
+
HammerNodeManager.getHandler(handlerTag).setView(newView, propsRef);
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
updateGestureHandler(handlerTag: number, newConfig: Config) {
|
|
119
|
+
if (isNewWebImplementationEnabled()) {
|
|
120
|
+
NodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
121
|
+
|
|
122
|
+
InteractionManager.getInstance().configureInteractions(
|
|
123
|
+
NodeManager.getHandler(handlerTag),
|
|
124
|
+
newConfig
|
|
125
|
+
);
|
|
126
|
+
} else {
|
|
127
|
+
HammerNodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
getGestureHandlerNode(handlerTag: number) {
|
|
131
|
+
if (isNewWebImplementationEnabled()) {
|
|
132
|
+
return NodeManager.getHandler(handlerTag);
|
|
133
|
+
} else {
|
|
134
|
+
return HammerNodeManager.getHandler(handlerTag);
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
dropGestureHandler(handlerTag: number) {
|
|
138
|
+
if (isNewWebImplementationEnabled()) {
|
|
139
|
+
NodeManager.dropGestureHandler(handlerTag);
|
|
140
|
+
} else {
|
|
141
|
+
HammerNodeManager.dropGestureHandler(handlerTag);
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
145
|
+
flushOperations() {},
|
|
146
|
+
};
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { ActionType } from './ActionType';
|
|
4
|
+
import { isNewWebImplementationEnabled } from './EnableNewWebImplementation';
|
|
5
|
+
|
|
6
|
+
//GestureHandlers
|
|
7
|
+
import InteractionManager from './web/tools/InteractionManager';
|
|
8
|
+
import NodeManager from './web/tools/NodeManager';
|
|
9
|
+
import PanGestureHandler from './web/handlers/PanGestureHandler';
|
|
10
|
+
import TapGestureHandler from './web/handlers/TapGestureHandler';
|
|
11
|
+
import LongPressGestureHandler from './web/handlers/LongPressGestureHandler';
|
|
12
|
+
import PinchGestureHandler from './web/handlers/PinchGestureHandler';
|
|
13
|
+
import RotationGestureHandler from './web/handlers/RotationGestureHandler';
|
|
14
|
+
import FlingGestureHandler from './web/handlers/FlingGestureHandler';
|
|
15
|
+
import NativeViewGestureHandler from './web/handlers/NativeViewGestureHandler';
|
|
16
|
+
import ManualGestureHandler from './web/handlers/ManualGestureHandler';
|
|
17
|
+
|
|
18
|
+
//Hammer Handlers
|
|
19
|
+
import * as HammerNodeManager from './web_hammer/NodeManager';
|
|
20
|
+
import HammerNativeViewGestureHandler from './web_hammer/NativeViewGestureHandler';
|
|
21
|
+
import HammerPanGestureHandler from './web_hammer/PanGestureHandler';
|
|
22
|
+
import HammerTapGestureHandler from './web_hammer/TapGestureHandler';
|
|
23
|
+
import HammerLongPressGestureHandler from './web_hammer/LongPressGestureHandler';
|
|
24
|
+
import HammerPinchGestureHandler from './web_hammer/PinchGestureHandler';
|
|
25
|
+
import HammerRotationGestureHandler from './web_hammer/RotationGestureHandler';
|
|
26
|
+
import HammerFlingGestureHandler from './web_hammer/FlingGestureHandler';
|
|
27
|
+
import { Config } from './web/interfaces';
|
|
28
|
+
import { GestureHandlerWebDelegate } from './web/tools/GestureHandlerWebDelegate';
|
|
29
|
+
|
|
30
|
+
export const Gestures = {
|
|
31
|
+
NativeViewGestureHandler,
|
|
32
|
+
PanGestureHandler,
|
|
33
|
+
TapGestureHandler,
|
|
34
|
+
LongPressGestureHandler,
|
|
35
|
+
PinchGestureHandler,
|
|
36
|
+
RotationGestureHandler,
|
|
37
|
+
FlingGestureHandler,
|
|
38
|
+
ManualGestureHandler,
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export const HammerGestures = {
|
|
42
|
+
NativeViewGestureHandler: HammerNativeViewGestureHandler,
|
|
43
|
+
PanGestureHandler: HammerPanGestureHandler,
|
|
44
|
+
TapGestureHandler: HammerTapGestureHandler,
|
|
45
|
+
LongPressGestureHandler: HammerLongPressGestureHandler,
|
|
46
|
+
PinchGestureHandler: HammerPinchGestureHandler,
|
|
47
|
+
RotationGestureHandler: HammerRotationGestureHandler,
|
|
48
|
+
FlingGestureHandler: HammerFlingGestureHandler,
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export default {
|
|
52
|
+
handleSetJSResponder(_tag: number, _blockNativeResponder: boolean) {
|
|
53
|
+
// NO-OP
|
|
54
|
+
},
|
|
55
|
+
handleClearJSResponder() {
|
|
56
|
+
// NO-OP
|
|
57
|
+
},
|
|
58
|
+
createGestureHandler<T>(
|
|
59
|
+
handlerName: keyof typeof Gestures,
|
|
60
|
+
handlerTag: number,
|
|
61
|
+
config: T
|
|
62
|
+
) {
|
|
63
|
+
if (isNewWebImplementationEnabled()) {
|
|
64
|
+
if (!(handlerName in Gestures)) {
|
|
65
|
+
throw new Error(
|
|
66
|
+
`react-native-gesture-handler: ${handlerName} is not supported on web.`
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
const GestureClass = Gestures[handlerName];
|
|
71
|
+
NodeManager.createGestureHandler(
|
|
72
|
+
handlerTag,
|
|
73
|
+
new GestureClass(new GestureHandlerWebDelegate())
|
|
74
|
+
);
|
|
75
|
+
InteractionManager.getInstance().configureInteractions(
|
|
76
|
+
NodeManager.getHandler(handlerTag),
|
|
77
|
+
config as unknown as Config
|
|
78
|
+
);
|
|
79
|
+
} else {
|
|
80
|
+
if (!(handlerName in HammerGestures)) {
|
|
81
|
+
throw new Error(
|
|
82
|
+
`react-native-gesture-handler: ${handlerName} is not supported on web.`
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// @ts-ignore If it doesn't exist, the error is thrown
|
|
87
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
88
|
+
const GestureClass = HammerGestures[handlerName];
|
|
89
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
90
|
+
HammerNodeManager.createGestureHandler(handlerTag, new GestureClass());
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
this.updateGestureHandler(handlerTag, config as unknown as Config);
|
|
94
|
+
},
|
|
95
|
+
attachGestureHandler(
|
|
96
|
+
handlerTag: number,
|
|
97
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
98
|
+
newView: any,
|
|
99
|
+
_actionType: ActionType,
|
|
100
|
+
propsRef: React.RefObject<unknown>
|
|
101
|
+
) {
|
|
102
|
+
if (
|
|
103
|
+
!(newView instanceof HTMLElement || newView instanceof React.Component)
|
|
104
|
+
) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
if (isNewWebImplementationEnabled()) {
|
|
109
|
+
//@ts-ignore Types should be HTMLElement or React.Component
|
|
110
|
+
NodeManager.getHandler(handlerTag).init(newView, propsRef);
|
|
111
|
+
} else {
|
|
112
|
+
//@ts-ignore Types should be HTMLElement or React.Component
|
|
113
|
+
HammerNodeManager.getHandler(handlerTag).setView(newView, propsRef);
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
updateGestureHandler(handlerTag: number, newConfig: Config) {
|
|
117
|
+
if (isNewWebImplementationEnabled()) {
|
|
118
|
+
NodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
119
|
+
|
|
120
|
+
InteractionManager.getInstance().configureInteractions(
|
|
121
|
+
NodeManager.getHandler(handlerTag),
|
|
122
|
+
newConfig
|
|
123
|
+
);
|
|
124
|
+
} else {
|
|
125
|
+
HammerNodeManager.getHandler(handlerTag).updateGestureConfig(newConfig);
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
getGestureHandlerNode(handlerTag: number) {
|
|
129
|
+
if (isNewWebImplementationEnabled()) {
|
|
130
|
+
return NodeManager.getHandler(handlerTag);
|
|
131
|
+
} else {
|
|
132
|
+
return HammerNodeManager.getHandler(handlerTag);
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
dropGestureHandler(handlerTag: number) {
|
|
136
|
+
if (isNewWebImplementationEnabled()) {
|
|
137
|
+
NodeManager.dropGestureHandler(handlerTag);
|
|
138
|
+
} else {
|
|
139
|
+
HammerNodeManager.dropGestureHandler(handlerTag);
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
143
|
+
flushOperations() {},
|
|
144
|
+
};
|
package/src/State.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// TODO use State from RNModule
|
|
2
|
+
|
|
3
|
+
export const State = {
|
|
4
|
+
UNDETERMINED: 0,
|
|
5
|
+
FAILED: 1,
|
|
6
|
+
BEGAN: 2,
|
|
7
|
+
CANCELLED: 3,
|
|
8
|
+
ACTIVE: 4,
|
|
9
|
+
END: 5,
|
|
10
|
+
} as const;
|
|
11
|
+
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-redeclare -- backward compatibility; it can be used as a type and as a value
|
|
13
|
+
export type State = typeof State[keyof typeof State];
|