@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 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeComponent"],"sources":["RNGestureHandlerButtonNativeComponent.ts"],"sourcesContent":["// @ts-ignore\nimport codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';\nimport type {\n Int32,\n WithDefault,\n // @ts-ignore\n} from 'react-native/Libraries/Types/CodegenTypes';\nimport type { ViewProps, ColorValue } from 'react-native';\n\ninterface NativeProps extends ViewProps {\n exclusive?: WithDefault<boolean, true>;\n foreground?: boolean;\n borderless?: boolean;\n enabled?: WithDefault<boolean, true>;\n rippleColor?: ColorValue;\n rippleRadius?: Int32;\n touchSoundDisabled?: WithDefault<boolean, false>;\n}\n\nexport default codegenNativeComponent<NativeProps>('RNGestureHandlerButton');\n"],"mappings":"AAAA;AACA,OAAOA,sBAAsB,MAAM,yDAAyD;AAkB5F,eAAeA,sBAAsB,CAAc,wBAAwB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// @ts-ignore
|
|
2
|
+
import register from 'react-native/Libraries/Utilities/registerGeneratedViewConfig';
|
|
3
|
+
const RNGestureHandlerButton = 'RNGestureHandlerButton';
|
|
4
|
+
register(RNGestureHandlerButton, {
|
|
5
|
+
uiViewClassName: RNGestureHandlerButton,
|
|
6
|
+
validAttributes: {
|
|
7
|
+
exclusive: true,
|
|
8
|
+
enabled: true
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
export default RNGestureHandlerButton;
|
|
12
|
+
//# sourceMappingURL=RNGestureHandlerButtonNativeComponent.kepler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["register","RNGestureHandlerButton","uiViewClassName","validAttributes","exclusive","enabled"],"sources":["RNGestureHandlerButtonNativeComponent.kepler.ts"],"sourcesContent":["import type { ViewProps } from 'react-native';\n// @ts-ignore\nimport register from 'react-native/Libraries/Utilities/registerGeneratedViewConfig';\nimport {\n // @ts-ignore types not correct?\n HostComponent,\n // @ts-ignore\n} from 'react-native/Libraries/Types/CodegenTypes';\n\ninterface NativeProps extends ViewProps {\n exclusive?: boolean;\n enabled?: boolean;\n}\n\nconst RNGestureHandlerButton = 'RNGestureHandlerButton';\n\nregister(RNGestureHandlerButton, {\n uiViewClassName: RNGestureHandlerButton,\n validAttributes: {\n exclusive: true,\n enabled: true,\n }\n});\n\nexport default (RNGestureHandlerButton as unknown) as HostComponent<\n NativeProps\n>;\n"],"mappings":"AACA;AACA,OAAOA,QAAQ,MAAM,8DAA8D;AAYnF,MAAMC,sBAAsB,GAAG,wBAAwB;AAEvDD,QAAQ,CAACC,sBAAsB,EAAE;EAC/BC,eAAe,EAAED,sBAAsB;EACvCE,eAAe,EAAE;IACfC,SAAS,EAAE,IAAI;IACfC,OAAO,EAAE;EACX;AACF,CAAC,CAAC;AAEF,eAAgBJ,sBAAsB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeComponent"],"sources":["RNGestureHandlerRootViewNativeComponent.ts"],"sourcesContent":["// @ts-ignore\nimport codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';\nimport type { ViewProps } from 'react-native';\n\ninterface NativeProps extends ViewProps {}\n\nexport default codegenNativeComponent<NativeProps>('RNGestureHandlerRootView');\n"],"mappings":"AAAA;AACA,OAAOA,sBAAsB,MAAM,yDAAyD;AAK5F,eAAeA,sBAAsB,CAAc,0BAA0B,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["typeUtils.ts"],"sourcesContent":["export type ValueOf<T> = T[keyof T];\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import pack from 'react-native/package.json';
|
|
2
|
+
const [majorStr, minorStr] = pack.version.split('.');
|
|
3
|
+
export const REACT_NATIVE_VERSION = {
|
|
4
|
+
major: parseInt(majorStr, 10),
|
|
5
|
+
minor: parseInt(minorStr, 10)
|
|
6
|
+
};
|
|
7
|
+
export function toArray(object) {
|
|
8
|
+
if (!Array.isArray(object)) {
|
|
9
|
+
return [object];
|
|
10
|
+
}
|
|
11
|
+
return object;
|
|
12
|
+
}
|
|
13
|
+
export function withPrevAndCurrent(array, mapFn) {
|
|
14
|
+
const previousArr = [null];
|
|
15
|
+
const currentArr = [...array];
|
|
16
|
+
const transformedArr = [];
|
|
17
|
+
currentArr.forEach((current, i) => {
|
|
18
|
+
const previous = previousArr[i];
|
|
19
|
+
const transformed = mapFn(previous, current);
|
|
20
|
+
previousArr.push(transformed);
|
|
21
|
+
transformedArr.push(transformed);
|
|
22
|
+
});
|
|
23
|
+
return transformedArr;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
27
|
+
export function hasProperty(object, key) {
|
|
28
|
+
return Object.prototype.hasOwnProperty.call(object, key);
|
|
29
|
+
}
|
|
30
|
+
export function isJestEnv() {
|
|
31
|
+
// @ts-ignore Do not use `@types/node` because it will prioritise Node types over RN types which breaks the types (ex. setTimeout) in React Native projects.
|
|
32
|
+
return hasProperty(global, 'process') && !!process.env.JEST_WORKER_ID;
|
|
33
|
+
}
|
|
34
|
+
export function tagMessage(msg) {
|
|
35
|
+
return `[react-native-gesture-handler] ${msg}`;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// helper method to check whether Fabric is enabled, however global.nativeFabricUIManager
|
|
39
|
+
// may not be initialized before the first render
|
|
40
|
+
export function isFabric() {
|
|
41
|
+
var _global;
|
|
42
|
+
// @ts-expect-error nativeFabricUIManager is not yet included in the RN types
|
|
43
|
+
return !!((_global = global) !== null && _global !== void 0 && _global.nativeFabricUIManager);
|
|
44
|
+
}
|
|
45
|
+
export function isRemoteDebuggingEnabled() {
|
|
46
|
+
// react-native-reanimated checks if in remote debugging in the same way
|
|
47
|
+
// @ts-ignore global is available but node types are not included
|
|
48
|
+
return !global.nativeCallSyncHook || global.__REMOTEDEV__;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pack","majorStr","minorStr","version","split","REACT_NATIVE_VERSION","major","parseInt","minor","toArray","object","Array","isArray","withPrevAndCurrent","array","mapFn","previousArr","currentArr","transformedArr","forEach","current","i","previous","transformed","push","hasProperty","key","Object","prototype","hasOwnProperty","call","isJestEnv","global","process","env","JEST_WORKER_ID","tagMessage","msg","isFabric","_global","nativeFabricUIManager","isRemoteDebuggingEnabled","nativeCallSyncHook","__REMOTEDEV__"],"sources":["utils.ts"],"sourcesContent":["import pack from 'react-native/package.json';\n\nconst [majorStr, minorStr] = pack.version.split('.');\nexport const REACT_NATIVE_VERSION = {\n major: parseInt(majorStr, 10),\n minor: parseInt(minorStr, 10),\n};\n\nexport function toArray<T>(object: T | T[]): T[] {\n if (!Array.isArray(object)) {\n return [object];\n }\n\n return object;\n}\n\nexport type withPrevAndCurrentMapFn<T, Transformed> = (\n previous: Transformed | null,\n current: T\n) => Transformed;\nexport function withPrevAndCurrent<T, Transformed>(\n array: T[],\n mapFn: withPrevAndCurrentMapFn<T, Transformed>\n): Transformed[] {\n const previousArr: (null | Transformed)[] = [null];\n const currentArr = [...array];\n const transformedArr: Transformed[] = [];\n currentArr.forEach((current, i) => {\n const previous = previousArr[i];\n const transformed = mapFn(previous, current);\n previousArr.push(transformed);\n transformedArr.push(transformed);\n });\n return transformedArr;\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function hasProperty(object: object, key: string) {\n return Object.prototype.hasOwnProperty.call(object, key);\n}\n\nexport function isJestEnv(): boolean {\n // @ts-ignore Do not use `@types/node` because it will prioritise Node types over RN types which breaks the types (ex. setTimeout) in React Native projects.\n return hasProperty(global, 'process') && !!process.env.JEST_WORKER_ID;\n}\n\nexport function tagMessage(msg: string) {\n return `[react-native-gesture-handler] ${msg}`;\n}\n\n// helper method to check whether Fabric is enabled, however global.nativeFabricUIManager\n// may not be initialized before the first render\nexport function isFabric(): boolean {\n // @ts-expect-error nativeFabricUIManager is not yet included in the RN types\n return !!global?.nativeFabricUIManager;\n}\n\nexport function isRemoteDebuggingEnabled(): boolean {\n // react-native-reanimated checks if in remote debugging in the same way\n // @ts-ignore global is available but node types are not included\n return !(global as any).nativeCallSyncHook || (global as any).__REMOTEDEV__;\n}\n"],"mappings":"AAAA,OAAOA,IAAI,MAAM,2BAA2B;AAE5C,MAAM,CAACC,QAAQ,EAAEC,QAAQ,CAAC,GAAGF,IAAI,CAACG,OAAO,CAACC,KAAK,CAAC,GAAG,CAAC;AACpD,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,KAAK,EAAEC,QAAQ,CAACN,QAAQ,EAAE,EAAE,CAAC;EAC7BO,KAAK,EAAED,QAAQ,CAACL,QAAQ,EAAE,EAAE;AAC9B,CAAC;AAED,OAAO,SAASO,OAAOA,CAAIC,MAAe,EAAO;EAC/C,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,EAAE;IAC1B,OAAO,CAACA,MAAM,CAAC;EACjB;EAEA,OAAOA,MAAM;AACf;AAMA,OAAO,SAASG,kBAAkBA,CAChCC,KAAU,EACVC,KAA8C,EAC/B;EACf,MAAMC,WAAmC,GAAG,CAAC,IAAI,CAAC;EAClD,MAAMC,UAAU,GAAG,CAAC,GAAGH,KAAK,CAAC;EAC7B,MAAMI,cAA6B,GAAG,EAAE;EACxCD,UAAU,CAACE,OAAO,CAAC,CAACC,OAAO,EAAEC,CAAC,KAAK;IACjC,MAAMC,QAAQ,GAAGN,WAAW,CAACK,CAAC,CAAC;IAC/B,MAAME,WAAW,GAAGR,KAAK,CAACO,QAAQ,EAAEF,OAAO,CAAC;IAC5CJ,WAAW,CAACQ,IAAI,CAACD,WAAW,CAAC;IAC7BL,cAAc,CAACM,IAAI,CAACD,WAAW,CAAC;EAClC,CAAC,CAAC;EACF,OAAOL,cAAc;AACvB;;AAEA;AACA,OAAO,SAASO,WAAWA,CAACf,MAAc,EAAEgB,GAAW,EAAE;EACvD,OAAOC,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACpB,MAAM,EAAEgB,GAAG,CAAC;AAC1D;AAEA,OAAO,SAASK,SAASA,CAAA,EAAY;EACnC;EACA,OAAON,WAAW,CAACO,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAACC,OAAO,CAACC,GAAG,CAACC,cAAc;AACvE;AAEA,OAAO,SAASC,UAAUA,CAACC,GAAW,EAAE;EACtC,OAAO,kCAAkCA,GAAG,EAAE;AAChD;;AAEA;AACA;AACA,OAAO,SAASC,QAAQA,CAAA,EAAY;EAAA,IAAAC,OAAA;EAClC;EACA,OAAO,CAAC,GAAAA,OAAA,GAACP,MAAM,cAAAO,OAAA,eAANA,OAAA,CAAQC,qBAAqB;AACxC;AAEA,OAAO,SAASC,wBAAwBA,CAAA,EAAY;EAClD;EACA;EACA,OAAO,CAAET,MAAM,CAASU,kBAAkB,IAAKV,MAAM,CAASW,aAAa;AAC7E","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DEFAULT_TOUCH_SLOP","Direction","RIGHT","LEFT","UP","DOWN"],"sources":["constants.ts"],"sourcesContent":["export const DEFAULT_TOUCH_SLOP = 15;\n\nexport const Direction = {\n RIGHT: 1,\n LEFT: 2,\n UP: 4,\n DOWN: 8,\n};\n"],"mappings":"AAAA,OAAO,MAAMA,kBAAkB,GAAG,EAAE;AAEpC,OAAO,MAAMC,SAAS,GAAG;EACvBC,KAAK,EAAE,CAAC;EACRC,IAAI,EAAE,CAAC;EACPC,EAAE,EAAE,CAAC;EACLC,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
|
+
import { EventTypes } from '../interfaces';
|
|
5
|
+
export default class RotationGestureDetector {
|
|
6
|
+
constructor(callbacks) {
|
|
7
|
+
_defineProperty(this, "onRotationBegin", void 0);
|
|
8
|
+
_defineProperty(this, "onRotation", void 0);
|
|
9
|
+
_defineProperty(this, "onRotationEnd", void 0);
|
|
10
|
+
_defineProperty(this, "currentTime", 0);
|
|
11
|
+
_defineProperty(this, "previousTime", 0);
|
|
12
|
+
_defineProperty(this, "previousAngle", 0);
|
|
13
|
+
_defineProperty(this, "rotation", 0);
|
|
14
|
+
_defineProperty(this, "anchorX", 0);
|
|
15
|
+
_defineProperty(this, "anchorY", 0);
|
|
16
|
+
_defineProperty(this, "isInProgress", false);
|
|
17
|
+
_defineProperty(this, "keyPointers", [NaN, NaN]);
|
|
18
|
+
this.onRotationBegin = callbacks.onRotationBegin;
|
|
19
|
+
this.onRotation = callbacks.onRotation;
|
|
20
|
+
this.onRotationEnd = callbacks.onRotationEnd;
|
|
21
|
+
}
|
|
22
|
+
updateCurrent(event, tracker) {
|
|
23
|
+
this.previousTime = this.currentTime;
|
|
24
|
+
this.currentTime = event.time;
|
|
25
|
+
const [firstPointerID, secondPointerID] = this.keyPointers;
|
|
26
|
+
const firstPointerX = tracker.getLastX(firstPointerID);
|
|
27
|
+
const firstPointerY = tracker.getLastY(firstPointerID);
|
|
28
|
+
const secondPointerX = tracker.getLastX(secondPointerID);
|
|
29
|
+
const secondPointerY = tracker.getLastY(secondPointerID);
|
|
30
|
+
const vectorX = secondPointerX - firstPointerX;
|
|
31
|
+
const vectorY = secondPointerY - firstPointerY;
|
|
32
|
+
this.anchorX = (firstPointerX + secondPointerX) / 2;
|
|
33
|
+
this.anchorY = (firstPointerY + secondPointerY) / 2;
|
|
34
|
+
|
|
35
|
+
//Angle diff should be positive when rotating in clockwise direction
|
|
36
|
+
const angle = -Math.atan2(vectorY, vectorX);
|
|
37
|
+
this.rotation = Number.isNaN(this.previousAngle) ? 0 : this.previousAngle - angle;
|
|
38
|
+
this.previousAngle = angle;
|
|
39
|
+
if (this.rotation > Math.PI) {
|
|
40
|
+
this.rotation -= Math.PI;
|
|
41
|
+
} else if (this.rotation < -Math.PI) {
|
|
42
|
+
this.rotation += Math.PI;
|
|
43
|
+
}
|
|
44
|
+
if (this.rotation > Math.PI / 2) {
|
|
45
|
+
this.rotation -= Math.PI;
|
|
46
|
+
} else if (this.rotation < -Math.PI / 2) {
|
|
47
|
+
this.rotation += Math.PI;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
finish() {
|
|
51
|
+
if (!this.isInProgress) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
this.isInProgress = false;
|
|
55
|
+
this.keyPointers = [NaN, NaN];
|
|
56
|
+
this.onRotationEnd(this);
|
|
57
|
+
}
|
|
58
|
+
setKeyPointers(tracker) {
|
|
59
|
+
if (this.keyPointers[0] && this.keyPointers[1]) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const pointerIDs = tracker.getData().keys();
|
|
63
|
+
this.keyPointers[0] = pointerIDs.next().value;
|
|
64
|
+
this.keyPointers[1] = pointerIDs.next().value;
|
|
65
|
+
}
|
|
66
|
+
onTouchEvent(event, tracker) {
|
|
67
|
+
switch (event.eventType) {
|
|
68
|
+
case EventTypes.DOWN:
|
|
69
|
+
this.isInProgress = false;
|
|
70
|
+
break;
|
|
71
|
+
case EventTypes.ADDITIONAL_POINTER_DOWN:
|
|
72
|
+
if (this.isInProgress) {
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
this.isInProgress = true;
|
|
76
|
+
this.previousTime = event.time;
|
|
77
|
+
this.previousAngle = NaN;
|
|
78
|
+
this.setKeyPointers(tracker);
|
|
79
|
+
this.updateCurrent(event, tracker);
|
|
80
|
+
this.onRotationBegin(this);
|
|
81
|
+
break;
|
|
82
|
+
case EventTypes.MOVE:
|
|
83
|
+
if (!this.isInProgress) {
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
this.updateCurrent(event, tracker);
|
|
87
|
+
this.onRotation(this);
|
|
88
|
+
break;
|
|
89
|
+
case EventTypes.ADDITIONAL_POINTER_UP:
|
|
90
|
+
if (!this.isInProgress) {
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
if (this.keyPointers.indexOf(event.pointerId) >= 0) {
|
|
94
|
+
this.finish();
|
|
95
|
+
}
|
|
96
|
+
break;
|
|
97
|
+
case EventTypes.UP:
|
|
98
|
+
if (this.isInProgress) {
|
|
99
|
+
this.finish();
|
|
100
|
+
}
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
105
|
+
getTimeDelta() {
|
|
106
|
+
return this.currentTime + this.previousTime;
|
|
107
|
+
}
|
|
108
|
+
getAnchorX() {
|
|
109
|
+
return this.anchorX;
|
|
110
|
+
}
|
|
111
|
+
getAnchorY() {
|
|
112
|
+
return this.anchorY;
|
|
113
|
+
}
|
|
114
|
+
getRotation() {
|
|
115
|
+
return this.rotation;
|
|
116
|
+
}
|
|
117
|
+
reset() {
|
|
118
|
+
this.keyPointers = [NaN, NaN];
|
|
119
|
+
this.isInProgress = false;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=RotationGestureDetector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["EventTypes","RotationGestureDetector","constructor","callbacks","_defineProperty","NaN","onRotationBegin","onRotation","onRotationEnd","updateCurrent","event","tracker","previousTime","currentTime","time","firstPointerID","secondPointerID","keyPointers","firstPointerX","getLastX","firstPointerY","getLastY","secondPointerX","secondPointerY","vectorX","vectorY","anchorX","anchorY","angle","Math","atan2","rotation","Number","isNaN","previousAngle","PI","finish","isInProgress","setKeyPointers","pointerIDs","getData","keys","next","value","onTouchEvent","eventType","DOWN","ADDITIONAL_POINTER_DOWN","MOVE","ADDITIONAL_POINTER_UP","indexOf","pointerId","UP","getTimeDelta","getAnchorX","getAnchorY","getRotation","reset"],"sources":["RotationGestureDetector.ts"],"sourcesContent":["import { AdaptedEvent, EventTypes } from '../interfaces';\nimport PointerTracker from '../tools/PointerTracker';\n\nexport interface RotationGestureListener {\n onRotationBegin: (detector: RotationGestureDetector) => boolean;\n onRotation: (detector: RotationGestureDetector) => boolean;\n onRotationEnd: (detector: RotationGestureDetector) => void;\n}\n\nexport default class RotationGestureDetector\n implements RotationGestureListener\n{\n onRotationBegin: (detector: RotationGestureDetector) => boolean;\n onRotation: (detector: RotationGestureDetector) => boolean;\n onRotationEnd: (detector: RotationGestureDetector) => void;\n\n private currentTime = 0;\n private previousTime = 0;\n\n private previousAngle = 0;\n private rotation = 0;\n\n private anchorX = 0;\n private anchorY = 0;\n\n private isInProgress = false;\n\n private keyPointers: number[] = [NaN, NaN];\n\n constructor(callbacks: RotationGestureListener) {\n this.onRotationBegin = callbacks.onRotationBegin;\n this.onRotation = callbacks.onRotation;\n this.onRotationEnd = callbacks.onRotationEnd;\n }\n\n private updateCurrent(event: AdaptedEvent, tracker: PointerTracker): void {\n this.previousTime = this.currentTime;\n this.currentTime = event.time;\n\n const [firstPointerID, secondPointerID] = this.keyPointers;\n\n const firstPointerX: number = tracker.getLastX(firstPointerID);\n const firstPointerY: number = tracker.getLastY(firstPointerID);\n const secondPointerX: number = tracker.getLastX(secondPointerID);\n const secondPointerY: number = tracker.getLastY(secondPointerID);\n\n const vectorX: number = secondPointerX - firstPointerX;\n const vectorY: number = secondPointerY - firstPointerY;\n\n this.anchorX = (firstPointerX + secondPointerX) / 2;\n this.anchorY = (firstPointerY + secondPointerY) / 2;\n\n //Angle diff should be positive when rotating in clockwise direction\n const angle: number = -Math.atan2(vectorY, vectorX);\n\n this.rotation = Number.isNaN(this.previousAngle)\n ? 0\n : this.previousAngle - angle;\n\n this.previousAngle = angle;\n\n if (this.rotation > Math.PI) {\n this.rotation -= Math.PI;\n } else if (this.rotation < -Math.PI) {\n this.rotation += Math.PI;\n }\n\n if (this.rotation > Math.PI / 2) {\n this.rotation -= Math.PI;\n } else if (this.rotation < -Math.PI / 2) {\n this.rotation += Math.PI;\n }\n }\n\n private finish(): void {\n if (!this.isInProgress) {\n return;\n }\n\n this.isInProgress = false;\n this.keyPointers = [NaN, NaN];\n this.onRotationEnd(this);\n }\n\n private setKeyPointers(tracker: PointerTracker): void {\n if (this.keyPointers[0] && this.keyPointers[1]) {\n return;\n }\n\n const pointerIDs: IterableIterator<number> = tracker.getData().keys();\n\n this.keyPointers[0] = pointerIDs.next().value as number;\n this.keyPointers[1] = pointerIDs.next().value as number;\n }\n\n public onTouchEvent(event: AdaptedEvent, tracker: PointerTracker): boolean {\n switch (event.eventType) {\n case EventTypes.DOWN:\n this.isInProgress = false;\n break;\n\n case EventTypes.ADDITIONAL_POINTER_DOWN:\n if (this.isInProgress) {\n break;\n }\n this.isInProgress = true;\n\n this.previousTime = event.time;\n this.previousAngle = NaN;\n\n this.setKeyPointers(tracker);\n\n this.updateCurrent(event, tracker);\n this.onRotationBegin(this);\n break;\n\n case EventTypes.MOVE:\n if (!this.isInProgress) {\n break;\n }\n\n this.updateCurrent(event, tracker);\n this.onRotation(this);\n\n break;\n\n case EventTypes.ADDITIONAL_POINTER_UP:\n if (!this.isInProgress) {\n break;\n }\n\n if (this.keyPointers.indexOf(event.pointerId) >= 0) {\n this.finish();\n }\n\n break;\n\n case EventTypes.UP:\n if (this.isInProgress) {\n this.finish();\n }\n break;\n }\n\n return true;\n }\n\n public getTimeDelta(): number {\n return this.currentTime + this.previousTime;\n }\n\n public getAnchorX(): number {\n return this.anchorX;\n }\n\n public getAnchorY(): number {\n return this.anchorY;\n }\n\n public getRotation(): number {\n return this.rotation;\n }\n\n public reset(): void {\n this.keyPointers = [NaN, NaN];\n this.isInProgress = false;\n }\n}\n"],"mappings":";;;AAAA,SAAuBA,UAAU,QAAQ,eAAe;AASxD,eAAe,MAAMC,uBAAuB,CAE5C;EAkBEC,WAAWA,CAACC,SAAkC,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,sBAb1B,CAAC;IAAAA,eAAA,uBACA,CAAC;IAAAA,eAAA,wBAEA,CAAC;IAAAA,eAAA,mBACN,CAAC;IAAAA,eAAA,kBAEF,CAAC;IAAAA,eAAA,kBACD,CAAC;IAAAA,eAAA,uBAEI,KAAK;IAAAA,eAAA,sBAEI,CAACC,GAAG,EAAEA,GAAG,CAAC;IAGxC,IAAI,CAACC,eAAe,GAAGH,SAAS,CAACG,eAAe;IAChD,IAAI,CAACC,UAAU,GAAGJ,SAAS,CAACI,UAAU;IACtC,IAAI,CAACC,aAAa,GAAGL,SAAS,CAACK,aAAa;EAC9C;EAEQC,aAAaA,CAACC,KAAmB,EAAEC,OAAuB,EAAQ;IACxE,IAAI,CAACC,YAAY,GAAG,IAAI,CAACC,WAAW;IACpC,IAAI,CAACA,WAAW,GAAGH,KAAK,CAACI,IAAI;IAE7B,MAAM,CAACC,cAAc,EAAEC,eAAe,CAAC,GAAG,IAAI,CAACC,WAAW;IAE1D,MAAMC,aAAqB,GAAGP,OAAO,CAACQ,QAAQ,CAACJ,cAAc,CAAC;IAC9D,MAAMK,aAAqB,GAAGT,OAAO,CAACU,QAAQ,CAACN,cAAc,CAAC;IAC9D,MAAMO,cAAsB,GAAGX,OAAO,CAACQ,QAAQ,CAACH,eAAe,CAAC;IAChE,MAAMO,cAAsB,GAAGZ,OAAO,CAACU,QAAQ,CAACL,eAAe,CAAC;IAEhE,MAAMQ,OAAe,GAAGF,cAAc,GAAGJ,aAAa;IACtD,MAAMO,OAAe,GAAGF,cAAc,GAAGH,aAAa;IAEtD,IAAI,CAACM,OAAO,GAAG,CAACR,aAAa,GAAGI,cAAc,IAAI,CAAC;IACnD,IAAI,CAACK,OAAO,GAAG,CAACP,aAAa,GAAGG,cAAc,IAAI,CAAC;;IAEnD;IACA,MAAMK,KAAa,GAAG,CAACC,IAAI,CAACC,KAAK,CAACL,OAAO,EAAED,OAAO,CAAC;IAEnD,IAAI,CAACO,QAAQ,GAAGC,MAAM,CAACC,KAAK,CAAC,IAAI,CAACC,aAAa,CAAC,GAC5C,CAAC,GACD,IAAI,CAACA,aAAa,GAAGN,KAAK;IAE9B,IAAI,CAACM,aAAa,GAAGN,KAAK;IAE1B,IAAI,IAAI,CAACG,QAAQ,GAAGF,IAAI,CAACM,EAAE,EAAE;MAC3B,IAAI,CAACJ,QAAQ,IAAIF,IAAI,CAACM,EAAE;IAC1B,CAAC,MAAM,IAAI,IAAI,CAACJ,QAAQ,GAAG,CAACF,IAAI,CAACM,EAAE,EAAE;MACnC,IAAI,CAACJ,QAAQ,IAAIF,IAAI,CAACM,EAAE;IAC1B;IAEA,IAAI,IAAI,CAACJ,QAAQ,GAAGF,IAAI,CAACM,EAAE,GAAG,CAAC,EAAE;MAC/B,IAAI,CAACJ,QAAQ,IAAIF,IAAI,CAACM,EAAE;IAC1B,CAAC,MAAM,IAAI,IAAI,CAACJ,QAAQ,GAAG,CAACF,IAAI,CAACM,EAAE,GAAG,CAAC,EAAE;MACvC,IAAI,CAACJ,QAAQ,IAAIF,IAAI,CAACM,EAAE;IAC1B;EACF;EAEQC,MAAMA,CAAA,EAAS;IACrB,IAAI,CAAC,IAAI,CAACC,YAAY,EAAE;MACtB;IACF;IAEA,IAAI,CAACA,YAAY,GAAG,KAAK;IACzB,IAAI,CAACpB,WAAW,GAAG,CAACZ,GAAG,EAAEA,GAAG,CAAC;IAC7B,IAAI,CAACG,aAAa,CAAC,IAAI,CAAC;EAC1B;EAEQ8B,cAAcA,CAAC3B,OAAuB,EAAQ;IACpD,IAAI,IAAI,CAACM,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAACA,WAAW,CAAC,CAAC,CAAC,EAAE;MAC9C;IACF;IAEA,MAAMsB,UAAoC,GAAG5B,OAAO,CAAC6B,OAAO,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC;IAErE,IAAI,CAACxB,WAAW,CAAC,CAAC,CAAC,GAAGsB,UAAU,CAACG,IAAI,CAAC,CAAC,CAACC,KAAe;IACvD,IAAI,CAAC1B,WAAW,CAAC,CAAC,CAAC,GAAGsB,UAAU,CAACG,IAAI,CAAC,CAAC,CAACC,KAAe;EACzD;EAEOC,YAAYA,CAAClC,KAAmB,EAAEC,OAAuB,EAAW;IACzE,QAAQD,KAAK,CAACmC,SAAS;MACrB,KAAK7C,UAAU,CAAC8C,IAAI;QAClB,IAAI,CAACT,YAAY,GAAG,KAAK;QACzB;MAEF,KAAKrC,UAAU,CAAC+C,uBAAuB;QACrC,IAAI,IAAI,CAACV,YAAY,EAAE;UACrB;QACF;QACA,IAAI,CAACA,YAAY,GAAG,IAAI;QAExB,IAAI,CAACzB,YAAY,GAAGF,KAAK,CAACI,IAAI;QAC9B,IAAI,CAACoB,aAAa,GAAG7B,GAAG;QAExB,IAAI,CAACiC,cAAc,CAAC3B,OAAO,CAAC;QAE5B,IAAI,CAACF,aAAa,CAACC,KAAK,EAAEC,OAAO,CAAC;QAClC,IAAI,CAACL,eAAe,CAAC,IAAI,CAAC;QAC1B;MAEF,KAAKN,UAAU,CAACgD,IAAI;QAClB,IAAI,CAAC,IAAI,CAACX,YAAY,EAAE;UACtB;QACF;QAEA,IAAI,CAAC5B,aAAa,CAACC,KAAK,EAAEC,OAAO,CAAC;QAClC,IAAI,CAACJ,UAAU,CAAC,IAAI,CAAC;QAErB;MAEF,KAAKP,UAAU,CAACiD,qBAAqB;QACnC,IAAI,CAAC,IAAI,CAACZ,YAAY,EAAE;UACtB;QACF;QAEA,IAAI,IAAI,CAACpB,WAAW,CAACiC,OAAO,CAACxC,KAAK,CAACyC,SAAS,CAAC,IAAI,CAAC,EAAE;UAClD,IAAI,CAACf,MAAM,CAAC,CAAC;QACf;QAEA;MAEF,KAAKpC,UAAU,CAACoD,EAAE;QAChB,IAAI,IAAI,CAACf,YAAY,EAAE;UACrB,IAAI,CAACD,MAAM,CAAC,CAAC;QACf;QACA;IACJ;IAEA,OAAO,IAAI;EACb;EAEOiB,YAAYA,CAAA,EAAW;IAC5B,OAAO,IAAI,CAACxC,WAAW,GAAG,IAAI,CAACD,YAAY;EAC7C;EAEO0C,UAAUA,CAAA,EAAW;IAC1B,OAAO,IAAI,CAAC5B,OAAO;EACrB;EAEO6B,UAAUA,CAAA,EAAW;IAC1B,OAAO,IAAI,CAAC5B,OAAO;EACrB;EAEO6B,WAAWA,CAAA,EAAW;IAC3B,OAAO,IAAI,CAACzB,QAAQ;EACtB;EAEO0B,KAAKA,CAAA,EAAS;IACnB,IAAI,CAACxC,WAAW,GAAG,CAACZ,GAAG,EAAEA,GAAG,CAAC;IAC7B,IAAI,CAACgC,YAAY,GAAG,KAAK;EAC3B;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
|
+
import { DEFAULT_TOUCH_SLOP } from '../constants';
|
|
5
|
+
import { EventTypes } from '../interfaces';
|
|
6
|
+
export default class ScaleGestureDetector {
|
|
7
|
+
constructor(callbacks) {
|
|
8
|
+
_defineProperty(this, "onScaleBegin", void 0);
|
|
9
|
+
_defineProperty(this, "onScale", void 0);
|
|
10
|
+
_defineProperty(this, "onScaleEnd", void 0);
|
|
11
|
+
_defineProperty(this, "focusX", void 0);
|
|
12
|
+
_defineProperty(this, "focusY", void 0);
|
|
13
|
+
_defineProperty(this, "currentSpan", void 0);
|
|
14
|
+
_defineProperty(this, "prevSpan", void 0);
|
|
15
|
+
_defineProperty(this, "initialSpan", void 0);
|
|
16
|
+
_defineProperty(this, "currentTime", void 0);
|
|
17
|
+
_defineProperty(this, "prevTime", void 0);
|
|
18
|
+
_defineProperty(this, "inProgress", false);
|
|
19
|
+
_defineProperty(this, "spanSlop", void 0);
|
|
20
|
+
_defineProperty(this, "minSpan", void 0);
|
|
21
|
+
this.onScaleBegin = callbacks.onScaleBegin;
|
|
22
|
+
this.onScale = callbacks.onScale;
|
|
23
|
+
this.onScaleEnd = callbacks.onScaleEnd;
|
|
24
|
+
this.spanSlop = DEFAULT_TOUCH_SLOP * 2;
|
|
25
|
+
this.minSpan = 0;
|
|
26
|
+
}
|
|
27
|
+
onTouchEvent(event, tracker) {
|
|
28
|
+
this.currentTime = event.time;
|
|
29
|
+
const action = event.eventType;
|
|
30
|
+
const numOfPointers = tracker.getTrackedPointersCount();
|
|
31
|
+
const streamComplete = action === EventTypes.UP || action === EventTypes.ADDITIONAL_POINTER_UP || action === EventTypes.CANCEL;
|
|
32
|
+
if (action === EventTypes.DOWN || streamComplete) {
|
|
33
|
+
if (this.inProgress) {
|
|
34
|
+
this.onScaleEnd(this);
|
|
35
|
+
this.inProgress = false;
|
|
36
|
+
this.initialSpan = 0;
|
|
37
|
+
}
|
|
38
|
+
if (streamComplete) {
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const configChanged = action === EventTypes.DOWN || action === EventTypes.ADDITIONAL_POINTER_UP || action === EventTypes.ADDITIONAL_POINTER_DOWN;
|
|
43
|
+
const pointerUp = action === EventTypes.ADDITIONAL_POINTER_UP;
|
|
44
|
+
const ignoredPointer = pointerUp ? event.pointerId : undefined;
|
|
45
|
+
|
|
46
|
+
//Determine focal point
|
|
47
|
+
|
|
48
|
+
const div = pointerUp ? numOfPointers - 1 : numOfPointers;
|
|
49
|
+
const sumX = tracker.getSumX(ignoredPointer);
|
|
50
|
+
const sumY = tracker.getSumY(ignoredPointer);
|
|
51
|
+
const focusX = sumX / div;
|
|
52
|
+
const focusY = sumY / div;
|
|
53
|
+
|
|
54
|
+
//Determine average deviation from focal point
|
|
55
|
+
|
|
56
|
+
let devSumX = 0;
|
|
57
|
+
let devSumY = 0;
|
|
58
|
+
tracker.getData().forEach((value, key) => {
|
|
59
|
+
if (key === ignoredPointer) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
devSumX += Math.abs(value.lastX - focusX);
|
|
63
|
+
devSumY += Math.abs(value.lastY - focusY);
|
|
64
|
+
});
|
|
65
|
+
const devX = devSumX / div;
|
|
66
|
+
const devY = devSumY / div;
|
|
67
|
+
const spanX = devX * 2;
|
|
68
|
+
const spanY = devY * 2;
|
|
69
|
+
const span = Math.hypot(spanX, spanY);
|
|
70
|
+
|
|
71
|
+
//Begin/end events
|
|
72
|
+
const wasInProgress = this.inProgress;
|
|
73
|
+
this.focusX = focusX;
|
|
74
|
+
this.focusY = focusY;
|
|
75
|
+
if (this.inProgress && (span < this.minSpan || configChanged)) {
|
|
76
|
+
this.onScaleEnd(this);
|
|
77
|
+
this.inProgress = false;
|
|
78
|
+
this.initialSpan = span;
|
|
79
|
+
}
|
|
80
|
+
if (configChanged) {
|
|
81
|
+
this.initialSpan = this.prevSpan = this.currentSpan = span;
|
|
82
|
+
}
|
|
83
|
+
if (!this.inProgress && span >= this.minSpan && (wasInProgress || Math.abs(span - this.initialSpan) > this.spanSlop)) {
|
|
84
|
+
this.prevSpan = this.currentSpan = span;
|
|
85
|
+
this.prevTime = this.currentTime;
|
|
86
|
+
this.inProgress = this.onScaleBegin(this);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
//Handle motion
|
|
90
|
+
if (action !== EventTypes.MOVE) {
|
|
91
|
+
return true;
|
|
92
|
+
}
|
|
93
|
+
this.currentSpan = span;
|
|
94
|
+
if (this.inProgress && !this.onScale(this)) {
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
this.prevSpan = this.currentSpan;
|
|
98
|
+
this.prevTime = this.currentTime;
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
getCurrentSpan() {
|
|
102
|
+
return this.currentSpan;
|
|
103
|
+
}
|
|
104
|
+
getFocusX() {
|
|
105
|
+
return this.focusX;
|
|
106
|
+
}
|
|
107
|
+
getFocusY() {
|
|
108
|
+
return this.focusY;
|
|
109
|
+
}
|
|
110
|
+
getTimeDelta() {
|
|
111
|
+
return this.currentTime - this.prevTime;
|
|
112
|
+
}
|
|
113
|
+
getScaleFactor(numOfPointers) {
|
|
114
|
+
if (numOfPointers < 2) {
|
|
115
|
+
return 1;
|
|
116
|
+
}
|
|
117
|
+
return this.prevSpan > 0 ? this.currentSpan / this.prevSpan : 1;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=ScaleGestureDetector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DEFAULT_TOUCH_SLOP","EventTypes","ScaleGestureDetector","constructor","callbacks","_defineProperty","onScaleBegin","onScale","onScaleEnd","spanSlop","minSpan","onTouchEvent","event","tracker","currentTime","time","action","eventType","numOfPointers","getTrackedPointersCount","streamComplete","UP","ADDITIONAL_POINTER_UP","CANCEL","DOWN","inProgress","initialSpan","configChanged","ADDITIONAL_POINTER_DOWN","pointerUp","ignoredPointer","pointerId","undefined","div","sumX","getSumX","sumY","getSumY","focusX","focusY","devSumX","devSumY","getData","forEach","value","key","Math","abs","lastX","lastY","devX","devY","spanX","spanY","span","hypot","wasInProgress","prevSpan","currentSpan","prevTime","MOVE","getCurrentSpan","getFocusX","getFocusY","getTimeDelta","getScaleFactor"],"sources":["ScaleGestureDetector.ts"],"sourcesContent":["import { DEFAULT_TOUCH_SLOP } from '../constants';\nimport { AdaptedEvent, EventTypes } from '../interfaces';\n\nimport PointerTracker from '../tools/PointerTracker';\n\nexport interface ScaleGestureListener {\n onScaleBegin: (detector: ScaleGestureDetector) => boolean;\n onScale: (detector: ScaleGestureDetector) => boolean;\n onScaleEnd: (detector: ScaleGestureDetector) => void;\n}\n\nexport default class ScaleGestureDetector implements ScaleGestureListener {\n public onScaleBegin: (detector: ScaleGestureDetector) => boolean;\n public onScale: (detector: ScaleGestureDetector) => boolean;\n public onScaleEnd: (detector: ScaleGestureDetector) => void;\n\n private focusX!: number;\n private focusY!: number;\n\n private currentSpan!: number;\n private prevSpan!: number;\n private initialSpan!: number;\n\n private currentTime!: number;\n private prevTime!: number;\n\n private inProgress = false;\n\n private spanSlop: number;\n private minSpan: number;\n\n public constructor(callbacks: ScaleGestureListener) {\n this.onScaleBegin = callbacks.onScaleBegin;\n this.onScale = callbacks.onScale;\n this.onScaleEnd = callbacks.onScaleEnd;\n\n this.spanSlop = DEFAULT_TOUCH_SLOP * 2;\n this.minSpan = 0;\n }\n\n public onTouchEvent(event: AdaptedEvent, tracker: PointerTracker): boolean {\n this.currentTime = event.time;\n\n const action: EventTypes = event.eventType;\n const numOfPointers = tracker.getTrackedPointersCount();\n\n const streamComplete: boolean =\n action === EventTypes.UP ||\n action === EventTypes.ADDITIONAL_POINTER_UP ||\n action === EventTypes.CANCEL;\n\n if (action === EventTypes.DOWN || streamComplete) {\n if (this.inProgress) {\n this.onScaleEnd(this);\n this.inProgress = false;\n this.initialSpan = 0;\n }\n\n if (streamComplete) {\n return true;\n }\n }\n\n const configChanged: boolean =\n action === EventTypes.DOWN ||\n action === EventTypes.ADDITIONAL_POINTER_UP ||\n action === EventTypes.ADDITIONAL_POINTER_DOWN;\n\n const pointerUp = action === EventTypes.ADDITIONAL_POINTER_UP;\n\n const ignoredPointer: number | undefined = pointerUp\n ? event.pointerId\n : undefined;\n\n //Determine focal point\n\n const div: number = pointerUp ? numOfPointers - 1 : numOfPointers;\n\n const sumX = tracker.getSumX(ignoredPointer);\n const sumY = tracker.getSumY(ignoredPointer);\n\n const focusX = sumX / div;\n const focusY = sumY / div;\n\n //Determine average deviation from focal point\n\n let devSumX = 0;\n let devSumY = 0;\n\n tracker.getData().forEach((value, key) => {\n if (key === ignoredPointer) {\n return;\n }\n\n devSumX += Math.abs(value.lastX - focusX);\n devSumY += Math.abs(value.lastY - focusY);\n });\n\n const devX: number = devSumX / div;\n const devY: number = devSumY / div;\n\n const spanX: number = devX * 2;\n const spanY: number = devY * 2;\n\n const span = Math.hypot(spanX, spanY);\n\n //Begin/end events\n const wasInProgress: boolean = this.inProgress;\n this.focusX = focusX;\n this.focusY = focusY;\n\n if (this.inProgress && (span < this.minSpan || configChanged)) {\n this.onScaleEnd(this);\n this.inProgress = false;\n this.initialSpan = span;\n }\n\n if (configChanged) {\n this.initialSpan = this.prevSpan = this.currentSpan = span;\n }\n\n if (\n !this.inProgress &&\n span >= this.minSpan &&\n (wasInProgress || Math.abs(span - this.initialSpan) > this.spanSlop)\n ) {\n this.prevSpan = this.currentSpan = span;\n this.prevTime = this.currentTime;\n this.inProgress = this.onScaleBegin(this);\n }\n\n //Handle motion\n if (action !== EventTypes.MOVE) {\n return true;\n }\n\n this.currentSpan = span;\n\n if (this.inProgress && !this.onScale(this)) {\n return true;\n }\n\n this.prevSpan = this.currentSpan;\n this.prevTime = this.currentTime;\n\n return true;\n }\n\n public getCurrentSpan(): number {\n return this.currentSpan;\n }\n\n public getFocusX(): number {\n return this.focusX;\n }\n\n public getFocusY(): number {\n return this.focusY;\n }\n\n public getTimeDelta(): number {\n return this.currentTime - this.prevTime;\n }\n\n public getScaleFactor(numOfPointers: number): number {\n if (numOfPointers < 2) {\n return 1;\n }\n\n return this.prevSpan > 0 ? this.currentSpan / this.prevSpan : 1;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
|
+
import { State } from '../../State';
|
|
5
|
+
import { Direction } from '../constants';
|
|
6
|
+
import GestureHandler from './GestureHandler';
|
|
7
|
+
const DEFAULT_MAX_DURATION_MS = 800;
|
|
8
|
+
const DEFAULT_MIN_ACCEPTABLE_DELTA = 160;
|
|
9
|
+
const DEFAULT_DIRECTION = Direction.RIGHT;
|
|
10
|
+
const DEFAULT_NUMBER_OF_TOUCHES_REQUIRED = 1;
|
|
11
|
+
export default class FlingGestureHandler extends GestureHandler {
|
|
12
|
+
constructor(...args) {
|
|
13
|
+
super(...args);
|
|
14
|
+
_defineProperty(this, "numberOfPointersRequired", DEFAULT_NUMBER_OF_TOUCHES_REQUIRED);
|
|
15
|
+
_defineProperty(this, "direction", DEFAULT_DIRECTION);
|
|
16
|
+
_defineProperty(this, "maxDurationMs", DEFAULT_MAX_DURATION_MS);
|
|
17
|
+
_defineProperty(this, "minAcceptableDelta", DEFAULT_MIN_ACCEPTABLE_DELTA);
|
|
18
|
+
_defineProperty(this, "delayTimeout", void 0);
|
|
19
|
+
_defineProperty(this, "startX", 0);
|
|
20
|
+
_defineProperty(this, "startY", 0);
|
|
21
|
+
_defineProperty(this, "maxNumberOfPointersSimultaneously", 0);
|
|
22
|
+
_defineProperty(this, "keyPointer", NaN);
|
|
23
|
+
}
|
|
24
|
+
init(ref, propsRef) {
|
|
25
|
+
super.init(ref, propsRef);
|
|
26
|
+
}
|
|
27
|
+
updateGestureConfig({
|
|
28
|
+
enabled = true,
|
|
29
|
+
...props
|
|
30
|
+
}) {
|
|
31
|
+
super.updateGestureConfig({
|
|
32
|
+
enabled: enabled,
|
|
33
|
+
...props
|
|
34
|
+
});
|
|
35
|
+
if (this.config.direction) {
|
|
36
|
+
this.direction = this.config.direction;
|
|
37
|
+
}
|
|
38
|
+
if (this.config.numberOfPointers) {
|
|
39
|
+
this.numberOfPointersRequired = this.config.numberOfPointers;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
startFling() {
|
|
43
|
+
this.startX = this.tracker.getLastX(this.keyPointer);
|
|
44
|
+
this.startY = this.tracker.getLastY(this.keyPointer);
|
|
45
|
+
this.begin();
|
|
46
|
+
this.maxNumberOfPointersSimultaneously = 1;
|
|
47
|
+
this.delayTimeout = setTimeout(() => this.fail(), this.maxDurationMs);
|
|
48
|
+
}
|
|
49
|
+
tryEndFling() {
|
|
50
|
+
if (this.maxNumberOfPointersSimultaneously === this.numberOfPointersRequired && (this.direction & Direction.RIGHT && this.tracker.getLastX(this.keyPointer) - this.startX > this.minAcceptableDelta || this.direction & Direction.LEFT && this.startX - this.tracker.getLastX(this.keyPointer) > this.minAcceptableDelta || this.direction & Direction.UP && this.startY - this.tracker.getLastY(this.keyPointer) > this.minAcceptableDelta || this.direction & Direction.DOWN && this.tracker.getLastY(this.keyPointer) - this.startY > this.minAcceptableDelta)) {
|
|
51
|
+
clearTimeout(this.delayTimeout);
|
|
52
|
+
this.activate();
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
endFling() {
|
|
58
|
+
if (!this.tryEndFling()) {
|
|
59
|
+
this.fail();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
onPointerDown(event) {
|
|
63
|
+
this.tracker.addToTracker(event);
|
|
64
|
+
this.keyPointer = event.pointerId;
|
|
65
|
+
super.onPointerDown(event);
|
|
66
|
+
this.newPointerAction();
|
|
67
|
+
}
|
|
68
|
+
onPointerAdd(event) {
|
|
69
|
+
this.tracker.addToTracker(event);
|
|
70
|
+
super.onPointerAdd(event);
|
|
71
|
+
this.newPointerAction();
|
|
72
|
+
}
|
|
73
|
+
newPointerAction() {
|
|
74
|
+
if (this.currentState === State.UNDETERMINED) {
|
|
75
|
+
this.startFling();
|
|
76
|
+
}
|
|
77
|
+
if (this.currentState !== State.BEGAN) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
this.tryEndFling();
|
|
81
|
+
if (this.tracker.getTrackedPointersCount() > this.maxNumberOfPointersSimultaneously) {
|
|
82
|
+
this.maxNumberOfPointersSimultaneously = this.tracker.getTrackedPointersCount();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
onPointerMove(event) {
|
|
86
|
+
this.tracker.track(event);
|
|
87
|
+
if (this.currentState !== State.BEGAN) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
this.tryEndFling();
|
|
91
|
+
super.onPointerMove(event);
|
|
92
|
+
}
|
|
93
|
+
onPointerUp(event) {
|
|
94
|
+
super.onPointerUp(event);
|
|
95
|
+
this.onUp(event);
|
|
96
|
+
this.keyPointer = NaN;
|
|
97
|
+
}
|
|
98
|
+
onPointerRemove(event) {
|
|
99
|
+
super.onPointerRemove(event);
|
|
100
|
+
this.onUp(event);
|
|
101
|
+
}
|
|
102
|
+
onUp(event) {
|
|
103
|
+
this.tracker.removeFromTracker(event.pointerId);
|
|
104
|
+
if (this.currentState !== State.BEGAN) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
this.endFling();
|
|
108
|
+
}
|
|
109
|
+
activate(force) {
|
|
110
|
+
super.activate(force);
|
|
111
|
+
this.end();
|
|
112
|
+
}
|
|
113
|
+
resetConfig() {
|
|
114
|
+
super.resetConfig();
|
|
115
|
+
this.numberOfPointersRequired = DEFAULT_NUMBER_OF_TOUCHES_REQUIRED;
|
|
116
|
+
this.direction = DEFAULT_DIRECTION;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=FlingGestureHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["State","Direction","GestureHandler","DEFAULT_MAX_DURATION_MS","DEFAULT_MIN_ACCEPTABLE_DELTA","DEFAULT_DIRECTION","RIGHT","DEFAULT_NUMBER_OF_TOUCHES_REQUIRED","FlingGestureHandler","constructor","args","_defineProperty","NaN","init","ref","propsRef","updateGestureConfig","enabled","props","config","direction","numberOfPointers","numberOfPointersRequired","startFling","startX","tracker","getLastX","keyPointer","startY","getLastY","begin","maxNumberOfPointersSimultaneously","delayTimeout","setTimeout","fail","maxDurationMs","tryEndFling","minAcceptableDelta","LEFT","UP","DOWN","clearTimeout","activate","endFling","onPointerDown","event","addToTracker","pointerId","newPointerAction","onPointerAdd","currentState","UNDETERMINED","BEGAN","getTrackedPointersCount","onPointerMove","track","onPointerUp","onUp","onPointerRemove","removeFromTracker","force","end","resetConfig"],"sources":["FlingGestureHandler.ts"],"sourcesContent":["import { State } from '../../State';\nimport { Direction } from '../constants';\nimport { AdaptedEvent, Config } from '../interfaces';\n\nimport GestureHandler from './GestureHandler';\n\nconst DEFAULT_MAX_DURATION_MS = 800;\nconst DEFAULT_MIN_ACCEPTABLE_DELTA = 160;\nconst DEFAULT_DIRECTION = Direction.RIGHT;\nconst DEFAULT_NUMBER_OF_TOUCHES_REQUIRED = 1;\n\nexport default class FlingGestureHandler extends GestureHandler {\n private numberOfPointersRequired = DEFAULT_NUMBER_OF_TOUCHES_REQUIRED;\n private direction = DEFAULT_DIRECTION;\n\n private maxDurationMs = DEFAULT_MAX_DURATION_MS;\n private minAcceptableDelta = DEFAULT_MIN_ACCEPTABLE_DELTA;\n private delayTimeout!: number;\n\n private startX = 0;\n private startY = 0;\n\n private maxNumberOfPointersSimultaneously = 0;\n private keyPointer = NaN;\n\n public init(ref: number, propsRef: React.RefObject<unknown>): void {\n super.init(ref, propsRef);\n }\n\n public updateGestureConfig({ enabled = true, ...props }: Config): void {\n super.updateGestureConfig({ enabled: enabled, ...props });\n\n if (this.config.direction) {\n this.direction = this.config.direction;\n }\n\n if (this.config.numberOfPointers) {\n this.numberOfPointersRequired = this.config.numberOfPointers;\n }\n }\n\n private startFling(): void {\n this.startX = this.tracker.getLastX(this.keyPointer);\n this.startY = this.tracker.getLastY(this.keyPointer);\n\n this.begin();\n\n this.maxNumberOfPointersSimultaneously = 1;\n\n this.delayTimeout = setTimeout(() => this.fail(), this.maxDurationMs);\n }\n\n private tryEndFling(): boolean {\n if (\n this.maxNumberOfPointersSimultaneously ===\n this.numberOfPointersRequired &&\n ((this.direction & Direction.RIGHT &&\n this.tracker.getLastX(this.keyPointer) - this.startX >\n this.minAcceptableDelta) ||\n (this.direction & Direction.LEFT &&\n this.startX - this.tracker.getLastX(this.keyPointer) >\n this.minAcceptableDelta) ||\n (this.direction & Direction.UP &&\n this.startY - this.tracker.getLastY(this.keyPointer) >\n this.minAcceptableDelta) ||\n (this.direction & Direction.DOWN &&\n this.tracker.getLastY(this.keyPointer) - this.startY >\n this.minAcceptableDelta))\n ) {\n clearTimeout(this.delayTimeout);\n this.activate();\n\n return true;\n }\n\n return false;\n }\n\n private endFling() {\n if (!this.tryEndFling()) {\n this.fail();\n }\n }\n\n protected onPointerDown(event: AdaptedEvent): void {\n this.tracker.addToTracker(event);\n this.keyPointer = event.pointerId;\n\n super.onPointerDown(event);\n this.newPointerAction();\n }\n\n protected onPointerAdd(event: AdaptedEvent): void {\n this.tracker.addToTracker(event);\n super.onPointerAdd(event);\n this.newPointerAction();\n }\n\n private newPointerAction(): void {\n if (this.currentState === State.UNDETERMINED) {\n this.startFling();\n }\n\n if (this.currentState !== State.BEGAN) {\n return;\n }\n\n this.tryEndFling();\n\n if (\n this.tracker.getTrackedPointersCount() >\n this.maxNumberOfPointersSimultaneously\n ) {\n this.maxNumberOfPointersSimultaneously =\n this.tracker.getTrackedPointersCount();\n }\n }\n\n protected onPointerMove(event: AdaptedEvent): void {\n this.tracker.track(event);\n\n if (this.currentState !== State.BEGAN) {\n return;\n }\n\n this.tryEndFling();\n\n super.onPointerMove(event);\n }\n\n protected onPointerUp(event: AdaptedEvent): void {\n super.onPointerUp(event);\n this.onUp(event);\n\n this.keyPointer = NaN;\n }\n\n protected onPointerRemove(event: AdaptedEvent): void {\n super.onPointerRemove(event);\n this.onUp(event);\n }\n\n private onUp(event: AdaptedEvent): void {\n this.tracker.removeFromTracker(event.pointerId);\n if (this.currentState !== State.BEGAN) {\n return;\n }\n this.endFling();\n }\n\n public activate(force?: boolean): void {\n super.activate(force);\n this.end();\n }\n\n protected resetConfig(): void {\n super.resetConfig();\n this.numberOfPointersRequired = DEFAULT_NUMBER_OF_TOUCHES_REQUIRED;\n this.direction = DEFAULT_DIRECTION;\n }\n}\n"],"mappings":";;;AAAA,SAASA,KAAK,QAAQ,aAAa;AACnC,SAASC,SAAS,QAAQ,cAAc;AAGxC,OAAOC,cAAc,MAAM,kBAAkB;AAE7C,MAAMC,uBAAuB,GAAG,GAAG;AACnC,MAAMC,4BAA4B,GAAG,GAAG;AACxC,MAAMC,iBAAiB,GAAGJ,SAAS,CAACK,KAAK;AACzC,MAAMC,kCAAkC,GAAG,CAAC;AAE5C,eAAe,MAAMC,mBAAmB,SAASN,cAAc,CAAC;EAAAO,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,mCAC3BJ,kCAAkC;IAAAI,eAAA,oBACjDN,iBAAiB;IAAAM,eAAA,wBAEbR,uBAAuB;IAAAQ,eAAA,6BAClBP,4BAA4B;IAAAO,eAAA;IAAAA,eAAA,iBAGxC,CAAC;IAAAA,eAAA,iBACD,CAAC;IAAAA,eAAA,4CAE0B,CAAC;IAAAA,eAAA,qBACxBC,GAAG;EAAA;EAEjBC,IAAIA,CAACC,GAAW,EAAEC,QAAkC,EAAQ;IACjE,KAAK,CAACF,IAAI,CAACC,GAAG,EAAEC,QAAQ,CAAC;EAC3B;EAEOC,mBAAmBA,CAAC;IAAEC,OAAO,GAAG,IAAI;IAAE,GAAGC;EAAc,CAAC,EAAQ;IACrE,KAAK,CAACF,mBAAmB,CAAC;MAAEC,OAAO,EAAEA,OAAO;MAAE,GAAGC;IAAM,CAAC,CAAC;IAEzD,IAAI,IAAI,CAACC,MAAM,CAACC,SAAS,EAAE;MACzB,IAAI,CAACA,SAAS,GAAG,IAAI,CAACD,MAAM,CAACC,SAAS;IACxC;IAEA,IAAI,IAAI,CAACD,MAAM,CAACE,gBAAgB,EAAE;MAChC,IAAI,CAACC,wBAAwB,GAAG,IAAI,CAACH,MAAM,CAACE,gBAAgB;IAC9D;EACF;EAEQE,UAAUA,CAAA,EAAS;IACzB,IAAI,CAACC,MAAM,GAAG,IAAI,CAACC,OAAO,CAACC,QAAQ,CAAC,IAAI,CAACC,UAAU,CAAC;IACpD,IAAI,CAACC,MAAM,GAAG,IAAI,CAACH,OAAO,CAACI,QAAQ,CAAC,IAAI,CAACF,UAAU,CAAC;IAEpD,IAAI,CAACG,KAAK,CAAC,CAAC;IAEZ,IAAI,CAACC,iCAAiC,GAAG,CAAC;IAE1C,IAAI,CAACC,YAAY,GAAGC,UAAU,CAAC,MAAM,IAAI,CAACC,IAAI,CAAC,CAAC,EAAE,IAAI,CAACC,aAAa,CAAC;EACvE;EAEQC,WAAWA,CAAA,EAAY;IAC7B,IACE,IAAI,CAACL,iCAAiC,KACpC,IAAI,CAACT,wBAAwB,KAC7B,IAAI,CAACF,SAAS,GAAGnB,SAAS,CAACK,KAAK,IAChC,IAAI,CAACmB,OAAO,CAACC,QAAQ,CAAC,IAAI,CAACC,UAAU,CAAC,GAAG,IAAI,CAACH,MAAM,GAClD,IAAI,CAACa,kBAAkB,IACxB,IAAI,CAACjB,SAAS,GAAGnB,SAAS,CAACqC,IAAI,IAC9B,IAAI,CAACd,MAAM,GAAG,IAAI,CAACC,OAAO,CAACC,QAAQ,CAAC,IAAI,CAACC,UAAU,CAAC,GAClD,IAAI,CAACU,kBAAmB,IAC3B,IAAI,CAACjB,SAAS,GAAGnB,SAAS,CAACsC,EAAE,IAC5B,IAAI,CAACX,MAAM,GAAG,IAAI,CAACH,OAAO,CAACI,QAAQ,CAAC,IAAI,CAACF,UAAU,CAAC,GAClD,IAAI,CAACU,kBAAmB,IAC3B,IAAI,CAACjB,SAAS,GAAGnB,SAAS,CAACuC,IAAI,IAC9B,IAAI,CAACf,OAAO,CAACI,QAAQ,CAAC,IAAI,CAACF,UAAU,CAAC,GAAG,IAAI,CAACC,MAAM,GAClD,IAAI,CAACS,kBAAmB,CAAC,EAC/B;MACAI,YAAY,CAAC,IAAI,CAACT,YAAY,CAAC;MAC/B,IAAI,CAACU,QAAQ,CAAC,CAAC;MAEf,OAAO,IAAI;IACb;IAEA,OAAO,KAAK;EACd;EAEQC,QAAQA,CAAA,EAAG;IACjB,IAAI,CAAC,IAAI,CAACP,WAAW,CAAC,CAAC,EAAE;MACvB,IAAI,CAACF,IAAI,CAAC,CAAC;IACb;EACF;EAEUU,aAAaA,CAACC,KAAmB,EAAQ;IACjD,IAAI,CAACpB,OAAO,CAACqB,YAAY,CAACD,KAAK,CAAC;IAChC,IAAI,CAAClB,UAAU,GAAGkB,KAAK,CAACE,SAAS;IAEjC,KAAK,CAACH,aAAa,CAACC,KAAK,CAAC;IAC1B,IAAI,CAACG,gBAAgB,CAAC,CAAC;EACzB;EAEUC,YAAYA,CAACJ,KAAmB,EAAQ;IAChD,IAAI,CAACpB,OAAO,CAACqB,YAAY,CAACD,KAAK,CAAC;IAChC,KAAK,CAACI,YAAY,CAACJ,KAAK,CAAC;IACzB,IAAI,CAACG,gBAAgB,CAAC,CAAC;EACzB;EAEQA,gBAAgBA,CAAA,EAAS;IAC/B,IAAI,IAAI,CAACE,YAAY,KAAKlD,KAAK,CAACmD,YAAY,EAAE;MAC5C,IAAI,CAAC5B,UAAU,CAAC,CAAC;IACnB;IAEA,IAAI,IAAI,CAAC2B,YAAY,KAAKlD,KAAK,CAACoD,KAAK,EAAE;MACrC;IACF;IAEA,IAAI,CAAChB,WAAW,CAAC,CAAC;IAElB,IACE,IAAI,CAACX,OAAO,CAAC4B,uBAAuB,CAAC,CAAC,GACtC,IAAI,CAACtB,iCAAiC,EACtC;MACA,IAAI,CAACA,iCAAiC,GACpC,IAAI,CAACN,OAAO,CAAC4B,uBAAuB,CAAC,CAAC;IAC1C;EACF;EAEUC,aAAaA,CAACT,KAAmB,EAAQ;IACjD,IAAI,CAACpB,OAAO,CAAC8B,KAAK,CAACV,KAAK,CAAC;IAEzB,IAAI,IAAI,CAACK,YAAY,KAAKlD,KAAK,CAACoD,KAAK,EAAE;MACrC;IACF;IAEA,IAAI,CAAChB,WAAW,CAAC,CAAC;IAElB,KAAK,CAACkB,aAAa,CAACT,KAAK,CAAC;EAC5B;EAEUW,WAAWA,CAACX,KAAmB,EAAQ;IAC/C,KAAK,CAACW,WAAW,CAACX,KAAK,CAAC;IACxB,IAAI,CAACY,IAAI,CAACZ,KAAK,CAAC;IAEhB,IAAI,CAAClB,UAAU,GAAGf,GAAG;EACvB;EAEU8C,eAAeA,CAACb,KAAmB,EAAQ;IACnD,KAAK,CAACa,eAAe,CAACb,KAAK,CAAC;IAC5B,IAAI,CAACY,IAAI,CAACZ,KAAK,CAAC;EAClB;EAEQY,IAAIA,CAACZ,KAAmB,EAAQ;IACtC,IAAI,CAACpB,OAAO,CAACkC,iBAAiB,CAACd,KAAK,CAACE,SAAS,CAAC;IAC/C,IAAI,IAAI,CAACG,YAAY,KAAKlD,KAAK,CAACoD,KAAK,EAAE;MACrC;IACF;IACA,IAAI,CAACT,QAAQ,CAAC,CAAC;EACjB;EAEOD,QAAQA,CAACkB,KAAe,EAAQ;IACrC,KAAK,CAAClB,QAAQ,CAACkB,KAAK,CAAC;IACrB,IAAI,CAACC,GAAG,CAAC,CAAC;EACZ;EAEUC,WAAWA,CAAA,EAAS;IAC5B,KAAK,CAACA,WAAW,CAAC,CAAC;IACnB,IAAI,CAACxC,wBAAwB,GAAGf,kCAAkC;IAClE,IAAI,CAACa,SAAS,GAAGf,iBAAiB;EACpC;AACF","ignoreList":[]}
|