react-native-gesture-handler 2.22.1 → 2.23.0
Sign up to get free protection for your applications and to get access to all the features.
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +14 -0
- package/android/src/main/jni/cpp-adapter.cpp +19 -12
- package/apple/RNGestureHandler.mm +15 -8
- package/apple/RNGestureHandlerModule.mm +17 -5
- package/lib/commonjs/ActionType.js +3 -3
- package/lib/commonjs/ActionType.js.map +1 -1
- package/lib/commonjs/Directions.js +11 -8
- package/lib/commonjs/Directions.js.map +1 -1
- package/lib/commonjs/EnableNewWebImplementation.js +2 -10
- package/lib/commonjs/EnableNewWebImplementation.js.map +1 -1
- package/lib/commonjs/GestureHandlerRootViewContext.js +2 -7
- package/lib/commonjs/GestureHandlerRootViewContext.js.map +1 -1
- package/lib/commonjs/PlatformConstants.js +1 -6
- package/lib/commonjs/PlatformConstants.js.map +1 -1
- package/lib/commonjs/PlatformConstants.web.js +1 -3
- package/lib/commonjs/PlatformConstants.web.js.map +1 -1
- package/lib/commonjs/PointerType.js +3 -5
- package/lib/commonjs/PointerType.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.js +2 -6
- package/lib/commonjs/RNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.web.js +13 -39
- package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/commonjs/RNGestureHandlerModule.windows.js +22 -32
- package/lib/commonjs/RNGestureHandlerModule.windows.js.map +1 -1
- package/lib/commonjs/RNRenderer.js +1 -3
- package/lib/commonjs/RNRenderer.js.map +1 -1
- package/lib/commonjs/RNRenderer.web.js +1 -2
- package/lib/commonjs/RNRenderer.web.js.map +1 -1
- package/lib/commonjs/State.js +4 -3
- package/lib/commonjs/State.js.map +1 -1
- package/lib/commonjs/TouchEventType.js +3 -3
- package/lib/commonjs/TouchEventType.js.map +1 -1
- package/lib/commonjs/components/DrawerLayout.js +96 -115
- package/lib/commonjs/components/DrawerLayout.js.map +1 -1
- package/lib/commonjs/components/GestureButtons.js +36 -80
- package/lib/commonjs/components/GestureButtons.js.map +1 -1
- package/lib/commonjs/components/GestureButtonsProps.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.js +26 -37
- package/lib/commonjs/components/GestureComponents.js.map +1 -1
- package/lib/commonjs/components/GestureComponents.web.js +13 -27
- package/lib/commonjs/components/GestureComponents.web.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.js +2 -6
- package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerButton.web.js +4 -12
- package/lib/commonjs/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.android.js +4 -15
- package/lib/commonjs/components/GestureHandlerRootView.android.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.js +4 -14
- package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
- package/lib/commonjs/components/GestureHandlerRootView.web.js +4 -13
- package/lib/commonjs/components/GestureHandlerRootView.web.js.map +1 -1
- package/lib/commonjs/components/Pressable/Pressable.js +46 -78
- package/lib/commonjs/components/Pressable/Pressable.js.map +1 -1
- package/lib/commonjs/components/Pressable/PressableProps.js.map +1 -1
- package/lib/commonjs/components/Pressable/index.js +1 -3
- package/lib/commonjs/components/Pressable/index.js.map +1 -1
- package/lib/commonjs/components/Pressable/utils.js +5 -20
- package/lib/commonjs/components/Pressable/utils.js.map +1 -1
- package/lib/commonjs/components/ReanimatedDrawerLayout.js +38 -76
- package/lib/commonjs/components/ReanimatedDrawerLayout.js.map +1 -1
- package/lib/commonjs/components/ReanimatedSwipeable.js +61 -59
- package/lib/commonjs/components/ReanimatedSwipeable.js.map +1 -1
- package/lib/commonjs/components/Swipeable.js +34 -75
- package/lib/commonjs/components/Swipeable.js.map +1 -1
- package/lib/commonjs/components/Text.js +18 -26
- package/lib/commonjs/components/Text.js.map +1 -1
- package/lib/commonjs/components/gestureHandlerRootHOC.js +5 -14
- package/lib/commonjs/components/gestureHandlerRootHOC.js.map +1 -1
- package/lib/commonjs/components/touchables/GenericTouchable.js +40 -76
- package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/commonjs/components/touchables/GenericTouchableProps.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableHighlight.js +20 -33
- package/lib/commonjs/components/touchables/TouchableHighlight.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +17 -31
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +5 -4
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableOpacity.js +17 -24
- package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -1
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +12 -13
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -1
- package/lib/commonjs/components/touchables/index.js +7 -12
- package/lib/commonjs/components/touchables/index.js.map +1 -1
- package/lib/commonjs/findNodeHandle.js +1 -4
- package/lib/commonjs/findNodeHandle.js.map +1 -1
- package/lib/commonjs/findNodeHandle.web.js +9 -10
- package/lib/commonjs/findNodeHandle.web.js.map +1 -1
- package/lib/commonjs/getReactNativeVersion.js +1 -6
- package/lib/commonjs/getReactNativeVersion.js.map +1 -1
- package/lib/commonjs/getReactNativeVersion.web.js +0 -1
- package/lib/commonjs/getReactNativeVersion.web.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.js +13 -14
- package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js +0 -1
- package/lib/commonjs/getShadowNodeFromRef.web.js.map +1 -1
- package/lib/commonjs/ghQueueMicrotask.js +1 -2
- package/lib/commonjs/ghQueueMicrotask.js.map +1 -1
- package/lib/commonjs/handlers/FlingGestureHandler.js +16 -10
- package/lib/commonjs/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js +20 -23
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/GestureHandlerEventPayload.js.map +1 -1
- package/lib/commonjs/handlers/LongPressGestureHandler.js +16 -10
- package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/NativeViewGestureHandler.js +17 -12
- package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PanGestureHandler.js +20 -31
- package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PinchGestureHandler.js +14 -8
- package/lib/commonjs/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.js +0 -1
- package/lib/commonjs/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -1
- package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +1 -1
- package/lib/commonjs/handlers/RotationGestureHandler.js +14 -8
- package/lib/commonjs/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/TapGestureHandler.js +16 -10
- package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/handlers/createHandler.js +55 -135
- package/lib/commonjs/handlers/createHandler.js.map +1 -1
- package/lib/commonjs/handlers/createNativeWrapper.js +17 -27
- package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js +0 -1
- package/lib/commonjs/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/commonjs/handlers/customDirectEventTypes.web.js +1 -2
- package/lib/commonjs/handlers/customDirectEventTypes.web.js.map +1 -1
- package/lib/commonjs/handlers/gestureHandlerCommon.js +9 -10
- package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/commonjs/handlers/gestureHandlerTypesCompat.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +5 -14
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +10 -20
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +9 -29
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +1 -10
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js +12 -37
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +0 -3
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/types.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +12 -24
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +12 -48
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +3 -13
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +2 -9
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +8 -16
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -1
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +28 -56
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js.map +1 -1
- package/lib/commonjs/handlers/gestures/eventReceiver.js +14 -46
- package/lib/commonjs/handlers/gestures/eventReceiver.js.map +1 -1
- package/lib/commonjs/handlers/gestures/flingGesture.js +5 -12
- package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +8 -19
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gesture.js +44 -84
- package/lib/commonjs/handlers/gestures/gesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureComposition.js +17 -31
- package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureObjects.js +1 -27
- package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +3 -9
- package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +2 -7
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/commonjs/handlers/gestures/hoverGesture.js +11 -25
- package/lib/commonjs/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/longPressGesture.js +6 -14
- package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/manualGesture.js +0 -6
- package/lib/commonjs/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/nativeGesture.js +5 -12
- package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/panGesture.js +18 -43
- package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/pinchGesture.js +2 -9
- package/lib/commonjs/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +1 -8
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/commonjs/handlers/gestures/rotationGesture.js +2 -9
- package/lib/commonjs/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/commonjs/handlers/gestures/tapGesture.js +10 -22
- package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/commonjs/handlers/getNextHandlerTag.js +0 -1
- package/lib/commonjs/handlers/getNextHandlerTag.js.map +1 -1
- package/lib/commonjs/handlers/handlersRegistry.js +11 -21
- package/lib/commonjs/handlers/handlersRegistry.js.map +1 -1
- package/lib/commonjs/handlers/utils.js +6 -26
- package/lib/commonjs/handlers/utils.js.map +1 -1
- package/lib/commonjs/index.js +75 -104
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/init.js +4 -11
- package/lib/commonjs/init.js.map +1 -1
- package/lib/commonjs/jestUtils/index.js +4 -5
- package/lib/commonjs/jestUtils/index.js.map +1 -1
- package/lib/commonjs/jestUtils/jestUtils.js +19 -83
- package/lib/commonjs/jestUtils/jestUtils.js.map +1 -1
- package/lib/commonjs/mocks.js +5 -15
- package/lib/commonjs/mocks.js.map +1 -1
- package/lib/commonjs/mountRegistry.js +3 -12
- package/lib/commonjs/mountRegistry.js.map +1 -1
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +1 -5
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js.map +1 -1
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js +2 -7
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js +2 -7
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js.map +1 -1
- package/lib/commonjs/typeUtils.js.map +1 -1
- package/lib/commonjs/utils.js +15 -30
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/commonjs/web/Gestures.js +5 -23
- package/lib/commonjs/web/Gestures.js.map +1 -1
- package/lib/commonjs/web/constants.js +2 -4
- package/lib/commonjs/web/constants.js.map +1 -1
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +26 -62
- package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +36 -65
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +12 -55
- package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/GestureHandler.js +160 -273
- package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/HoverGestureHandler.js +8 -21
- package/lib/commonjs/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/IGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +12 -53
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +1 -11
- package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +21 -62
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PanGestureHandler.js +23 -138
- package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +19 -56
- package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +16 -54
- package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web/handlers/TapGestureHandler.js +10 -71
- package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web/interfaces.js +9 -17
- package/lib/commonjs/web/interfaces.js.map +1 -1
- package/lib/commonjs/web/tools/CircularBuffer.js +17 -29
- package/lib/commonjs/web/tools/CircularBuffer.js.map +1 -1
- package/lib/commonjs/web/tools/EventManager.js +7 -41
- package/lib/commonjs/web/tools/EventManager.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerDelegate.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +51 -118
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +37 -58
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +1 -1
- package/lib/commonjs/web/tools/InteractionManager.js +21 -40
- package/lib/commonjs/web/tools/InteractionManager.js.map +1 -1
- package/lib/commonjs/web/tools/KeyboardEventManager.js +4 -26
- package/lib/commonjs/web/tools/KeyboardEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/LeastSquareSolver.js +30 -67
- package/lib/commonjs/web/tools/LeastSquareSolver.js.map +1 -1
- package/lib/commonjs/web/tools/NodeManager.js +9 -16
- package/lib/commonjs/web/tools/NodeManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerEventManager.js +10 -45
- package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -1
- package/lib/commonjs/web/tools/PointerTracker.js +24 -60
- package/lib/commonjs/web/tools/PointerTracker.js.map +1 -1
- package/lib/commonjs/web/tools/Vector.js +3 -18
- package/lib/commonjs/web/tools/Vector.js.map +1 -1
- package/lib/commonjs/web/tools/VelocityTracker.js +10 -32
- package/lib/commonjs/web/tools/VelocityTracker.js.map +1 -1
- package/lib/commonjs/web/tools/WheelEventManager.js +4 -17
- package/lib/commonjs/web/tools/WheelEventManager.js.map +1 -1
- package/lib/commonjs/web/utils.js +26 -55
- package/lib/commonjs/web/utils.js.map +1 -1
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +7 -19
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js +3 -13
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/Errors.js +0 -3
- package/lib/commonjs/web_hammer/Errors.js.map +1 -1
- package/lib/commonjs/web_hammer/FlingGestureHandler.js +13 -44
- package/lib/commonjs/web_hammer/FlingGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/GestureHandler.js +55 -142
- package/lib/commonjs/web_hammer/GestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +2 -11
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js +5 -19
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +16 -24
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/NodeManager.js +9 -16
- package/lib/commonjs/web_hammer/NodeManager.js.map +1 -1
- package/lib/commonjs/web_hammer/PanGestureHandler.js +8 -49
- package/lib/commonjs/web_hammer/PanGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/PinchGestureHandler.js +2 -11
- package/lib/commonjs/web_hammer/PinchGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/PressGestureHandler.js +15 -43
- package/lib/commonjs/web_hammer/PressGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/RotationGestureHandler.js +2 -13
- package/lib/commonjs/web_hammer/RotationGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/TapGestureHandler.js +33 -52
- package/lib/commonjs/web_hammer/TapGestureHandler.js.map +1 -1
- package/lib/commonjs/web_hammer/constants.js +13 -26
- package/lib/commonjs/web_hammer/constants.js.map +1 -1
- package/lib/commonjs/web_hammer/utils.js +4 -14
- package/lib/commonjs/web_hammer/utils.js.map +1 -1
- package/lib/module/ActionType.js +3 -1
- package/lib/module/ActionType.js.map +1 -1
- package/lib/module/Directions.js +9 -3
- package/lib/module/Directions.js.map +1 -1
- package/lib/module/EnableNewWebImplementation.js +2 -5
- package/lib/module/EnableNewWebImplementation.js.map +1 -1
- package/lib/module/GestureHandlerRootViewContext.js.map +1 -1
- package/lib/module/PlatformConstants.js +0 -1
- package/lib/module/PlatformConstants.js.map +1 -1
- package/lib/module/PlatformConstants.web.js +0 -1
- package/lib/module/PlatformConstants.web.js.map +1 -1
- package/lib/module/PointerType.js +3 -4
- package/lib/module/PointerType.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.js +1 -0
- package/lib/module/RNGestureHandlerModule.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.web.js +12 -22
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/module/RNGestureHandlerModule.windows.js +18 -17
- package/lib/module/RNGestureHandlerModule.windows.js.map +1 -1
- package/lib/module/RNRenderer.js.map +1 -1
- package/lib/module/RNRenderer.web.js.map +1 -1
- package/lib/module/State.js +4 -1
- package/lib/module/State.js.map +1 -1
- package/lib/module/TouchEventType.js +3 -1
- package/lib/module/TouchEventType.js.map +1 -1
- package/lib/module/components/DrawerLayout.js +87 -99
- package/lib/module/components/DrawerLayout.js.map +1 -1
- package/lib/module/components/GestureButtons.js +27 -55
- package/lib/module/components/GestureButtons.js.map +1 -1
- package/lib/module/components/GestureButtonsProps.js.map +1 -1
- package/lib/module/components/GestureComponents.js +17 -12
- package/lib/module/components/GestureComponents.js.map +1 -1
- package/lib/module/components/GestureComponents.web.js +4 -4
- package/lib/module/components/GestureComponents.web.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.web.js +1 -2
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.android.js +1 -2
- package/lib/module/components/GestureHandlerRootView.android.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.js +1 -2
- package/lib/module/components/GestureHandlerRootView.js.map +1 -1
- package/lib/module/components/GestureHandlerRootView.web.js +1 -2
- package/lib/module/components/GestureHandlerRootView.web.js.map +1 -1
- package/lib/module/components/Pressable/Pressable.js +44 -61
- package/lib/module/components/Pressable/Pressable.js.map +1 -1
- package/lib/module/components/Pressable/PressableProps.js.map +1 -1
- package/lib/module/components/Pressable/index.js.map +1 -1
- package/lib/module/components/Pressable/utils.js +4 -14
- package/lib/module/components/Pressable/utils.js.map +1 -1
- package/lib/module/components/ReanimatedDrawerLayout.js +34 -56
- package/lib/module/components/ReanimatedDrawerLayout.js.map +1 -1
- package/lib/module/components/ReanimatedSwipeable.js +57 -44
- package/lib/module/components/ReanimatedSwipeable.js.map +1 -1
- package/lib/module/components/Swipeable.js +28 -59
- package/lib/module/components/Swipeable.js.map +1 -1
- package/lib/module/components/Text.js +14 -13
- package/lib/module/components/Text.js.map +1 -1
- package/lib/module/components/gestureHandlerRootHOC.js +2 -2
- package/lib/module/components/gestureHandlerRootHOC.js.map +1 -1
- package/lib/module/components/touchables/GenericTouchable.js +34 -63
- package/lib/module/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/module/components/touchables/GenericTouchableProps.js.map +1 -1
- package/lib/module/components/touchables/TouchableHighlight.js +16 -23
- package/lib/module/components/touchables/TouchableHighlight.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js +11 -19
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.js +6 -1
- package/lib/module/components/touchables/TouchableNativeFeedback.js.map +1 -1
- package/lib/module/components/touchables/TouchableNativeFeedbackProps.js.map +1 -1
- package/lib/module/components/touchables/TouchableOpacity.js +13 -14
- package/lib/module/components/touchables/TouchableOpacity.js.map +1 -1
- package/lib/module/components/touchables/TouchableWithoutFeedback.js +9 -2
- package/lib/module/components/touchables/TouchableWithoutFeedback.js.map +1 -1
- package/lib/module/components/touchables/index.js.map +1 -1
- package/lib/module/findNodeHandle.js.map +1 -1
- package/lib/module/findNodeHandle.web.js +9 -8
- package/lib/module/findNodeHandle.web.js.map +1 -1
- package/lib/module/getReactNativeVersion.js.map +1 -1
- package/lib/module/getReactNativeVersion.web.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.js +13 -13
- package/lib/module/getShadowNodeFromRef.js.map +1 -1
- package/lib/module/getShadowNodeFromRef.web.js.map +1 -1
- package/lib/module/ghQueueMicrotask.js.map +1 -1
- package/lib/module/handlers/FlingGestureHandler.js +13 -0
- package/lib/module/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/handlers/ForceTouchGestureHandler.js +16 -8
- package/lib/module/handlers/ForceTouchGestureHandler.js.map +1 -1
- package/lib/module/handlers/GestureHandlerEventPayload.js.map +1 -1
- package/lib/module/handlers/LongPressGestureHandler.js +13 -0
- package/lib/module/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/handlers/NativeViewGestureHandler.js +13 -0
- package/lib/module/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/handlers/PanGestureHandler.js +15 -19
- package/lib/module/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/handlers/PinchGestureHandler.js +13 -0
- package/lib/module/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.js.map +1 -1
- package/lib/module/handlers/PressabilityDebugView.web.js.map +1 -1
- package/lib/module/handlers/RotationGestureHandler.js +13 -0
- package/lib/module/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/handlers/TapGestureHandler.js +13 -0
- package/lib/module/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/handlers/createHandler.js +54 -108
- package/lib/module/handlers/createHandler.js.map +1 -1
- package/lib/module/handlers/createNativeWrapper.js +12 -17
- package/lib/module/handlers/createNativeWrapper.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.js.map +1 -1
- package/lib/module/handlers/customDirectEventTypes.web.js.map +1 -1
- package/lib/module/handlers/gestureHandlerCommon.js +9 -4
- package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
- package/lib/module/handlers/gestureHandlerTypesCompat.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js +3 -4
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js +5 -6
- package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +8 -16
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +0 -1
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/index.js +9 -15
- package/lib/module/handlers/gestures/GestureDetector/index.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +0 -2
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/types.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +11 -14
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +12 -39
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +5 -5
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +2 -6
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +7 -9
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/utils.js +25 -30
- package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -1
- package/lib/module/handlers/gestures/eventReceiver.js +14 -38
- package/lib/module/handlers/gestures/eventReceiver.js.map +1 -1
- package/lib/module/handlers/gestures/flingGesture.js +5 -9
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/module/handlers/gestures/forceTouchGesture.js +8 -17
- package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/gesture.js +44 -73
- package/lib/module/handlers/gestures/gesture.js.map +1 -1
- package/lib/module/handlers/gestures/gestureComposition.js +16 -24
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/module/handlers/gestures/gestureObjects.js +1 -14
- package/lib/module/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.js +3 -4
- package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -1
- package/lib/module/handlers/gestures/gestureStateManager.web.js.map +1 -1
- package/lib/module/handlers/gestures/hoverGesture.js +9 -18
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/module/handlers/gestures/longPressGesture.js +6 -11
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/module/handlers/gestures/manualGesture.js +0 -4
- package/lib/module/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/module/handlers/gestures/nativeGesture.js +5 -9
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/module/handlers/gestures/panGesture.js +18 -41
- package/lib/module/handlers/gestures/panGesture.js.map +1 -1
- package/lib/module/handlers/gestures/pinchGesture.js +2 -7
- package/lib/module/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -5
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/module/handlers/gestures/rotationGesture.js +2 -7
- package/lib/module/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/module/handlers/gestures/tapGesture.js +10 -19
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/module/handlers/getNextHandlerTag.js.map +1 -1
- package/lib/module/handlers/handlersRegistry.js +6 -8
- package/lib/module/handlers/handlersRegistry.js.map +1 -1
- package/lib/module/handlers/utils.js +4 -13
- package/lib/module/handlers/utils.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/init.js +3 -2
- package/lib/module/init.js.map +1 -1
- package/lib/module/jestUtils/index.js.map +1 -1
- package/lib/module/jestUtils/jestUtils.js +20 -66
- package/lib/module/jestUtils/jestUtils.js.map +1 -1
- package/lib/module/mocks.js +3 -7
- package/lib/module/mocks.js.map +1 -1
- package/lib/module/mountRegistry.js +3 -10
- package/lib/module/mountRegistry.js.map +1 -1
- package/lib/module/specs/NativeRNGestureHandlerModule.js.map +1 -1
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js.map +1 -1
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js.map +1 -1
- package/lib/module/typeUtils.js.map +1 -1
- package/lib/module/utils.js +8 -13
- package/lib/module/utils.js.map +1 -1
- package/lib/module/web/Gestures.js +2 -1
- package/lib/module/web/Gestures.js.map +1 -1
- package/lib/module/web/constants.js.map +1 -1
- package/lib/module/web/detectors/RotationGestureDetector.js +26 -59
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/module/web/detectors/ScaleGestureDetector.js +36 -61
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/module/web/handlers/FlingGestureHandler.js +11 -45
- package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/GestureHandler.js +159 -259
- package/lib/module/web/handlers/GestureHandler.js.map +1 -1
- package/lib/module/web/handlers/HoverGestureHandler.js +7 -13
- package/lib/module/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/IGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/LongPressGestureHandler.js +11 -46
- package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/ManualGestureHandler.js +0 -6
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/NativeViewGestureHandler.js +20 -54
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PanGestureHandler.js +22 -129
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PinchGestureHandler.js +18 -48
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/RotationGestureHandler.js +15 -46
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/TapGestureHandler.js +9 -63
- package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
- package/lib/module/web/interfaces.js +9 -14
- package/lib/module/web/interfaces.js.map +1 -1
- package/lib/module/web/tools/CircularBuffer.js +17 -27
- package/lib/module/web/tools/CircularBuffer.js.map +1 -1
- package/lib/module/web/tools/EventManager.js +7 -39
- package/lib/module/web/tools/EventManager.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerDelegate.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +50 -111
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerWebDelegate.js +36 -47
- package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +1 -1
- package/lib/module/web/tools/InteractionManager.js +21 -35
- package/lib/module/web/tools/InteractionManager.js.map +1 -1
- package/lib/module/web/tools/KeyboardEventManager.js +3 -19
- package/lib/module/web/tools/KeyboardEventManager.js.map +1 -1
- package/lib/module/web/tools/LeastSquareSolver.js +30 -65
- package/lib/module/web/tools/LeastSquareSolver.js.map +1 -1
- package/lib/module/web/tools/NodeManager.js +9 -14
- package/lib/module/web/tools/NodeManager.js.map +1 -1
- package/lib/module/web/tools/PointerEventManager.js +9 -35
- package/lib/module/web/tools/PointerEventManager.js.map +1 -1
- package/lib/module/web/tools/PointerTracker.js +23 -54
- package/lib/module/web/tools/PointerTracker.js.map +1 -1
- package/lib/module/web/tools/Vector.js +3 -14
- package/lib/module/web/tools/Vector.js.map +1 -1
- package/lib/module/web/tools/VelocityTracker.js +9 -26
- package/lib/module/web/tools/VelocityTracker.js.map +1 -1
- package/lib/module/web/tools/WheelEventManager.js +3 -10
- package/lib/module/web/tools/WheelEventManager.js.map +1 -1
- package/lib/module/web/utils.js +21 -40
- package/lib/module/web/utils.js.map +1 -1
- package/lib/module/web_hammer/DiscreteGestureHandler.js +4 -13
- package/lib/module/web_hammer/DiscreteGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/DraggingGestureHandler.js +0 -5
- package/lib/module/web_hammer/DraggingGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/Errors.js +0 -1
- package/lib/module/web_hammer/Errors.js.map +1 -1
- package/lib/module/web_hammer/FlingGestureHandler.js +10 -35
- package/lib/module/web_hammer/FlingGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/GestureHandler.js +53 -130
- package/lib/module/web_hammer/GestureHandler.js.map +1 -1
- package/lib/module/web_hammer/IndiscreteGestureHandler.js +1 -6
- package/lib/module/web_hammer/IndiscreteGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/LongPressGestureHandler.js +2 -11
- package/lib/module/web_hammer/LongPressGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/NativeViewGestureHandler.js +12 -12
- package/lib/module/web_hammer/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/NodeManager.js +6 -8
- package/lib/module/web_hammer/NodeManager.js.map +1 -1
- package/lib/module/web_hammer/PanGestureHandler.js +6 -40
- package/lib/module/web_hammer/PanGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/PinchGestureHandler.js +0 -5
- package/lib/module/web_hammer/PinchGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/PressGestureHandler.js +13 -34
- package/lib/module/web_hammer/PressGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/RotationGestureHandler.js +0 -6
- package/lib/module/web_hammer/RotationGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/TapGestureHandler.js +31 -45
- package/lib/module/web_hammer/TapGestureHandler.js.map +1 -1
- package/lib/module/web_hammer/constants.js +2 -1
- package/lib/module/web_hammer/constants.js.map +1 -1
- package/lib/module/web_hammer/utils.js +2 -2
- package/lib/module/web_hammer/utils.js.map +1 -1
- package/lib/typescript/components/DrawerLayout.d.ts +27 -0
- package/lib/typescript/components/GestureButtonsProps.d.ts +18 -2
- package/lib/typescript/components/Pressable/PressableProps.d.ts +3 -10
- package/lib/typescript/components/Pressable/index.d.ts +1 -1
- package/lib/typescript/components/ReanimatedSwipeable.d.ts +6 -0
- package/lib/typescript/components/touchables/TouchableHighlight.d.ts +5 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +2 -0
- package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +5 -1
- package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts +3 -0
- package/lib/typescript/components/touchables/TouchableOpacity.d.ts +5 -0
- package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +6 -0
- package/lib/typescript/handlers/FlingGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/LongPressGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/PanGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/PinchGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/RotationGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/TapGestureHandler.d.ts +9 -0
- package/lib/typescript/handlers/handlersRegistry.d.ts +1 -0
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/utils.d.ts +1 -1
- package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +7 -7
- package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +8 -8
- package/lib/typescript/web/handlers/GestureHandler.d.ts +33 -28
- package/lib/typescript/web/handlers/IGestureHandler.d.ts +12 -13
- package/lib/typescript/web/tools/CircularBuffer.d.ts +3 -3
- package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +1 -1
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +2 -2
- package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +3 -2
- package/lib/typescript/web/tools/InteractionManager.d.ts +2 -2
- package/lib/typescript/web/tools/NodeManager.d.ts +1 -1
- package/lib/typescript/web/tools/PointerTracker.d.ts +4 -4
- package/lib/typescript/web/tools/VelocityTracker.d.ts +1 -1
- package/package.json +2 -2
- package/src/RNGestureHandlerModule.web.ts +2 -2
- package/src/components/DrawerLayout.tsx +29 -0
- package/src/components/GestureButtons.tsx +13 -2
- package/src/components/GestureButtonsProps.ts +31 -2
- package/src/components/Pressable/Pressable.tsx +22 -5
- package/src/components/Pressable/PressableProps.tsx +4 -11
- package/src/components/Pressable/index.ts +4 -1
- package/src/components/ReanimatedSwipeable.tsx +97 -66
- package/src/components/Text.tsx +13 -4
- package/src/components/touchables/TouchableHighlight.tsx +5 -0
- package/src/components/touchables/TouchableNativeFeedback.android.tsx +2 -0
- package/src/components/touchables/TouchableNativeFeedback.tsx +6 -1
- package/src/components/touchables/TouchableNativeFeedbackProps.tsx +3 -0
- package/src/components/touchables/TouchableOpacity.tsx +5 -0
- package/src/components/touchables/TouchableWithoutFeedback.tsx +6 -0
- package/src/findNodeHandle.web.ts +6 -0
- package/src/handlers/FlingGestureHandler.ts +10 -0
- package/src/handlers/ForceTouchGestureHandler.ts +9 -0
- package/src/handlers/LongPressGestureHandler.ts +10 -0
- package/src/handlers/NativeViewGestureHandler.ts +10 -0
- package/src/handlers/PanGestureHandler.ts +10 -0
- package/src/handlers/PinchGestureHandler.ts +10 -0
- package/src/handlers/RotationGestureHandler.ts +10 -0
- package/src/handlers/TapGestureHandler.ts +10 -0
- package/src/handlers/createHandler.tsx +11 -4
- package/src/handlers/gestures/GestureDetector/index.tsx +2 -2
- package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +3 -3
- package/src/handlers/gestures/GestureDetector/utils.ts +2 -2
- package/src/handlers/handlersRegistry.ts +7 -3
- package/src/index.ts +4 -1
- package/src/utils.ts +2 -2
- package/src/web/detectors/RotationGestureDetector.ts +22 -22
- package/src/web/detectors/ScaleGestureDetector.ts +24 -24
- package/src/web/handlers/FlingGestureHandler.ts +6 -7
- package/src/web/handlers/GestureHandler.ts +115 -105
- package/src/web/handlers/HoverGestureHandler.ts +2 -2
- package/src/web/handlers/IGestureHandler.ts +12 -13
- package/src/web/handlers/LongPressGestureHandler.ts +7 -7
- package/src/web/handlers/NativeViewGestureHandler.ts +14 -19
- package/src/web/handlers/PanGestureHandler.ts +17 -17
- package/src/web/handlers/PinchGestureHandler.ts +17 -21
- package/src/web/handlers/RotationGestureHandler.ts +12 -12
- package/src/web/handlers/TapGestureHandler.ts +4 -6
- package/src/web/tools/CircularBuffer.ts +15 -15
- package/src/web/tools/GestureHandlerDelegate.ts +1 -1
- package/src/web/tools/GestureHandlerOrchestrator.ts +42 -42
- package/src/web/tools/GestureHandlerWebDelegate.ts +32 -13
- package/src/web/tools/InteractionManager.ts +16 -16
- package/src/web/tools/NodeManager.ts +2 -2
- package/src/web/tools/PointerTracker.ts +20 -20
- package/src/web/tools/Vector.ts +1 -1
- package/src/web/tools/VelocityTracker.ts +1 -1
@@ -4,82 +4,66 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
|
-
|
8
7
|
var _constants = require("../constants");
|
9
|
-
|
10
8
|
var _interfaces = require("../interfaces");
|
11
|
-
|
12
|
-
function
|
13
|
-
|
9
|
+
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; }
|
10
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
11
|
+
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); }
|
14
12
|
class ScaleGestureDetector {
|
15
13
|
constructor(callbacks) {
|
16
14
|
_defineProperty(this, "onScaleBegin", void 0);
|
17
|
-
|
18
15
|
_defineProperty(this, "onScale", void 0);
|
19
|
-
|
20
16
|
_defineProperty(this, "onScaleEnd", void 0);
|
21
|
-
|
22
|
-
_defineProperty(this, "
|
23
|
-
|
24
|
-
_defineProperty(this, "focusY", void 0);
|
25
|
-
|
26
|
-
_defineProperty(this, "currentSpan", void 0);
|
27
|
-
|
17
|
+
_defineProperty(this, "_focusX", void 0);
|
18
|
+
_defineProperty(this, "_focusY", void 0);
|
19
|
+
_defineProperty(this, "_currentSpan", void 0);
|
28
20
|
_defineProperty(this, "prevSpan", void 0);
|
29
|
-
|
30
21
|
_defineProperty(this, "initialSpan", void 0);
|
31
|
-
|
32
22
|
_defineProperty(this, "currentTime", void 0);
|
33
|
-
|
34
23
|
_defineProperty(this, "prevTime", void 0);
|
35
|
-
|
36
24
|
_defineProperty(this, "inProgress", false);
|
37
|
-
|
38
25
|
_defineProperty(this, "spanSlop", void 0);
|
39
|
-
|
40
26
|
_defineProperty(this, "minSpan", void 0);
|
41
|
-
|
42
27
|
this.onScaleBegin = callbacks.onScaleBegin;
|
43
28
|
this.onScale = callbacks.onScale;
|
44
29
|
this.onScaleEnd = callbacks.onScaleEnd;
|
45
30
|
this.spanSlop = _constants.DEFAULT_TOUCH_SLOP * 2;
|
46
31
|
this.minSpan = 0;
|
47
32
|
}
|
48
|
-
|
49
33
|
onTouchEvent(event, tracker) {
|
50
34
|
this.currentTime = event.time;
|
51
35
|
const action = event.eventType;
|
52
|
-
const numOfPointers = tracker.
|
36
|
+
const numOfPointers = tracker.trackedPointersCount;
|
53
37
|
const streamComplete = action === _interfaces.EventTypes.UP || action === _interfaces.EventTypes.ADDITIONAL_POINTER_UP || action === _interfaces.EventTypes.CANCEL;
|
54
|
-
|
55
38
|
if (action === _interfaces.EventTypes.DOWN || streamComplete) {
|
56
39
|
if (this.inProgress) {
|
57
40
|
this.onScaleEnd(this);
|
58
41
|
this.inProgress = false;
|
59
42
|
this.initialSpan = 0;
|
60
43
|
}
|
61
|
-
|
62
44
|
if (streamComplete) {
|
63
45
|
return true;
|
64
46
|
}
|
65
47
|
}
|
66
|
-
|
67
48
|
const configChanged = action === _interfaces.EventTypes.DOWN || action === _interfaces.EventTypes.ADDITIONAL_POINTER_UP || action === _interfaces.EventTypes.ADDITIONAL_POINTER_DOWN;
|
68
49
|
const pointerUp = action === _interfaces.EventTypes.ADDITIONAL_POINTER_UP;
|
69
|
-
const ignoredPointer = pointerUp ? event.pointerId : undefined;
|
50
|
+
const ignoredPointer = pointerUp ? event.pointerId : undefined;
|
51
|
+
|
52
|
+
// Determine focal point
|
70
53
|
|
71
54
|
const div = pointerUp ? numOfPointers - 1 : numOfPointers;
|
72
55
|
const coordsSum = tracker.getAbsoluteCoordsSum();
|
73
56
|
const focusX = coordsSum.x / div;
|
74
|
-
const focusY = coordsSum.y / div;
|
57
|
+
const focusY = coordsSum.y / div;
|
58
|
+
|
59
|
+
// Determine average deviation from focal point
|
75
60
|
|
76
61
|
let devSumX = 0;
|
77
62
|
let devSumY = 0;
|
78
|
-
tracker.
|
63
|
+
tracker.trackedPointers.forEach((value, key) => {
|
79
64
|
if (key === ignoredPointer) {
|
80
65
|
return;
|
81
66
|
}
|
82
|
-
|
83
67
|
devSumX += Math.abs(value.abosoluteCoords.x - focusX);
|
84
68
|
devSumY += Math.abs(value.abosoluteCoords.y - focusY);
|
85
69
|
});
|
@@ -87,69 +71,56 @@ class ScaleGestureDetector {
|
|
87
71
|
const devY = devSumY / div;
|
88
72
|
const spanX = devX * 2;
|
89
73
|
const spanY = devY * 2;
|
90
|
-
const span = Math.hypot(spanX, spanY);
|
74
|
+
const span = Math.hypot(spanX, spanY);
|
91
75
|
|
76
|
+
// Begin/end events
|
92
77
|
const wasInProgress = this.inProgress;
|
93
|
-
this.
|
94
|
-
this.
|
95
|
-
|
78
|
+
this._focusX = focusX;
|
79
|
+
this._focusY = focusY;
|
96
80
|
if (this.inProgress && (span < this.minSpan || configChanged)) {
|
97
81
|
this.onScaleEnd(this);
|
98
82
|
this.inProgress = false;
|
99
83
|
this.initialSpan = span;
|
100
84
|
}
|
101
|
-
|
102
85
|
if (configChanged) {
|
103
|
-
this.initialSpan = this.prevSpan = this.
|
86
|
+
this.initialSpan = this.prevSpan = this._currentSpan = span;
|
104
87
|
}
|
105
|
-
|
106
88
|
if (!this.inProgress && span >= this.minSpan && (wasInProgress || Math.abs(span - this.initialSpan) > this.spanSlop)) {
|
107
|
-
this.prevSpan = this.
|
89
|
+
this.prevSpan = this._currentSpan = span;
|
108
90
|
this.prevTime = this.currentTime;
|
109
91
|
this.inProgress = this.onScaleBegin(this);
|
110
|
-
}
|
111
|
-
|
92
|
+
}
|
112
93
|
|
94
|
+
// Handle motion
|
113
95
|
if (action !== _interfaces.EventTypes.MOVE) {
|
114
96
|
return true;
|
115
97
|
}
|
116
|
-
|
117
|
-
this.currentSpan = span;
|
118
|
-
|
98
|
+
this._currentSpan = span;
|
119
99
|
if (this.inProgress && !this.onScale(this)) {
|
120
100
|
return true;
|
121
101
|
}
|
122
|
-
|
123
102
|
this.prevSpan = this.currentSpan;
|
124
103
|
this.prevTime = this.currentTime;
|
125
104
|
return true;
|
126
105
|
}
|
127
|
-
|
128
|
-
getCurrentSpan() {
|
129
|
-
return this.currentSpan;
|
130
|
-
}
|
131
|
-
|
132
|
-
getFocusX() {
|
133
|
-
return this.focusX;
|
134
|
-
}
|
135
|
-
|
136
|
-
getFocusY() {
|
137
|
-
return this.focusY;
|
138
|
-
}
|
139
|
-
|
140
|
-
getTimeDelta() {
|
141
|
-
return this.currentTime - this.prevTime;
|
142
|
-
}
|
143
|
-
|
144
|
-
getScaleFactor(numOfPointers) {
|
106
|
+
calculateScaleFactor(numOfPointers) {
|
145
107
|
if (numOfPointers < 2) {
|
146
108
|
return 1;
|
147
109
|
}
|
148
|
-
|
149
110
|
return this.prevSpan > 0 ? this.currentSpan / this.prevSpan : 1;
|
150
111
|
}
|
151
|
-
|
112
|
+
get currentSpan() {
|
113
|
+
return this._currentSpan;
|
114
|
+
}
|
115
|
+
get focusX() {
|
116
|
+
return this._focusX;
|
117
|
+
}
|
118
|
+
get focusY() {
|
119
|
+
return this._focusY;
|
120
|
+
}
|
121
|
+
get timeDelta() {
|
122
|
+
return this.currentTime - this.prevTime;
|
123
|
+
}
|
152
124
|
}
|
153
|
-
|
154
125
|
exports.default = ScaleGestureDetector;
|
155
126
|
//# sourceMappingURL=ScaleGestureDetector.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"
|
1
|
+
{"version":3,"names":["_constants","require","_interfaces","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ScaleGestureDetector","constructor","callbacks","onScaleBegin","onScale","onScaleEnd","spanSlop","DEFAULT_TOUCH_SLOP","minSpan","onTouchEvent","event","tracker","currentTime","time","action","eventType","numOfPointers","trackedPointersCount","streamComplete","EventTypes","UP","ADDITIONAL_POINTER_UP","CANCEL","DOWN","inProgress","initialSpan","configChanged","ADDITIONAL_POINTER_DOWN","pointerUp","ignoredPointer","pointerId","undefined","div","coordsSum","getAbsoluteCoordsSum","focusX","x","focusY","y","devSumX","devSumY","trackedPointers","forEach","key","Math","abs","abosoluteCoords","devX","devY","spanX","spanY","span","hypot","wasInProgress","_focusX","_focusY","prevSpan","_currentSpan","prevTime","MOVE","currentSpan","calculateScaleFactor","timeDelta","exports","default"],"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 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.trackedPointersCount;\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 coordsSum = tracker.getAbsoluteCoordsSum();\n\n const focusX = coordsSum.x / div;\n const focusY = coordsSum.y / div;\n\n // Determine average deviation from focal point\n\n let devSumX = 0;\n let devSumY = 0;\n\n tracker.trackedPointers.forEach((value, key) => {\n if (key === ignoredPointer) {\n return;\n }\n\n devSumX += Math.abs(value.abosoluteCoords.x - focusX);\n devSumY += Math.abs(value.abosoluteCoords.y - 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 calculateScaleFactor(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 public get currentSpan() {\n return this._currentSpan;\n }\n\n public get focusX() {\n return this._focusX;\n }\n\n public get focusY() {\n return this._focusY;\n }\n\n public get timeDelta() {\n return this.currentTime - this.prevTime;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -4,21 +4,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
|
-
|
8
7
|
var _State = require("../../State");
|
9
|
-
|
10
8
|
var _Directions = require("../../Directions");
|
11
|
-
|
12
9
|
var _GestureHandler = _interopRequireDefault(require("./GestureHandler"));
|
13
|
-
|
14
10
|
var _Vector = _interopRequireDefault(require("../tools/Vector"));
|
15
|
-
|
16
11
|
var _utils = require("../utils");
|
17
|
-
|
18
|
-
function
|
19
|
-
|
20
|
-
function
|
21
|
-
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
13
|
+
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; }
|
14
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
15
|
+
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); }
|
22
16
|
const DEFAULT_MAX_DURATION_MS = 800;
|
23
17
|
const DEFAULT_MIN_VELOCITY = 700;
|
24
18
|
const DEFAULT_ALIGNMENT_CONE = 30;
|
@@ -26,26 +20,17 @@ const DEFAULT_DIRECTION = _Directions.Directions.RIGHT;
|
|
26
20
|
const DEFAULT_NUMBER_OF_TOUCHES_REQUIRED = 1;
|
27
21
|
const AXIAL_DEVIATION_COSINE = (0, _utils.coneToDeviation)(DEFAULT_ALIGNMENT_CONE);
|
28
22
|
const DIAGONAL_DEVIATION_COSINE = (0, _utils.coneToDeviation)(90 - DEFAULT_ALIGNMENT_CONE);
|
29
|
-
|
30
23
|
class FlingGestureHandler extends _GestureHandler.default {
|
31
24
|
constructor(...args) {
|
32
25
|
super(...args);
|
33
|
-
|
34
26
|
_defineProperty(this, "numberOfPointersRequired", DEFAULT_NUMBER_OF_TOUCHES_REQUIRED);
|
35
|
-
|
36
27
|
_defineProperty(this, "direction", DEFAULT_DIRECTION);
|
37
|
-
|
38
28
|
_defineProperty(this, "maxDurationMs", DEFAULT_MAX_DURATION_MS);
|
39
|
-
|
40
29
|
_defineProperty(this, "minVelocity", DEFAULT_MIN_VELOCITY);
|
41
|
-
|
42
30
|
_defineProperty(this, "delayTimeout", void 0);
|
43
|
-
|
44
31
|
_defineProperty(this, "maxNumberOfPointersSimultaneously", 0);
|
45
|
-
|
46
32
|
_defineProperty(this, "keyPointer", NaN);
|
47
33
|
}
|
48
|
-
|
49
34
|
updateGestureConfig({
|
50
35
|
enabled = true,
|
51
36
|
...props
|
@@ -54,137 +39,109 @@ class FlingGestureHandler extends _GestureHandler.default {
|
|
54
39
|
enabled: enabled,
|
55
40
|
...props
|
56
41
|
});
|
57
|
-
|
58
42
|
if (this.config.direction) {
|
59
43
|
this.direction = this.config.direction;
|
60
44
|
}
|
61
|
-
|
62
45
|
if (this.config.numberOfPointers) {
|
63
46
|
this.numberOfPointersRequired = this.config.numberOfPointers;
|
64
47
|
}
|
65
48
|
}
|
66
|
-
|
67
49
|
startFling() {
|
68
50
|
this.begin();
|
69
51
|
this.maxNumberOfPointersSimultaneously = 1;
|
70
52
|
this.delayTimeout = setTimeout(() => this.fail(), this.maxDurationMs);
|
71
53
|
}
|
72
|
-
|
73
54
|
tryEndFling() {
|
74
55
|
const velocityVector = _Vector.default.fromVelocity(this.tracker, this.keyPointer);
|
75
|
-
|
76
56
|
const getAlignment = (direction, minimalAlignmentCosine) => {
|
77
57
|
return (direction & this.direction) === direction && velocityVector.isSimilar(_Vector.default.fromDirection(direction), minimalAlignmentCosine);
|
78
58
|
};
|
79
|
-
|
80
59
|
const axialDirectionsList = Object.values(_Directions.Directions);
|
81
|
-
const diagonalDirectionsList = Object.values(_Directions.DiagonalDirections);
|
60
|
+
const diagonalDirectionsList = Object.values(_Directions.DiagonalDirections);
|
82
61
|
|
62
|
+
// List of alignments to all activated directions
|
83
63
|
const axialAlignmentList = axialDirectionsList.map(direction => getAlignment(direction, AXIAL_DEVIATION_COSINE));
|
84
64
|
const diagonalAlignmentList = diagonalDirectionsList.map(direction => getAlignment(direction, DIAGONAL_DEVIATION_COSINE));
|
85
65
|
const isAligned = axialAlignmentList.some(Boolean) || diagonalAlignmentList.some(Boolean);
|
86
66
|
const isFast = velocityVector.magnitude > this.minVelocity;
|
87
|
-
|
88
67
|
if (this.maxNumberOfPointersSimultaneously === this.numberOfPointersRequired && isAligned && isFast) {
|
89
68
|
clearTimeout(this.delayTimeout);
|
90
69
|
this.activate();
|
91
70
|
return true;
|
92
71
|
}
|
93
|
-
|
94
72
|
return false;
|
95
73
|
}
|
96
|
-
|
97
74
|
endFling() {
|
98
75
|
if (!this.tryEndFling()) {
|
99
76
|
this.fail();
|
100
77
|
}
|
101
78
|
}
|
102
|
-
|
103
79
|
onPointerDown(event) {
|
104
80
|
if (!this.isButtonInConfig(event.button)) {
|
105
81
|
return;
|
106
82
|
}
|
107
|
-
|
108
83
|
this.tracker.addToTracker(event);
|
109
84
|
this.keyPointer = event.pointerId;
|
110
85
|
super.onPointerDown(event);
|
111
86
|
this.newPointerAction();
|
112
87
|
this.tryToSendTouchEvent(event);
|
113
88
|
}
|
114
|
-
|
115
89
|
onPointerAdd(event) {
|
116
90
|
this.tracker.addToTracker(event);
|
117
91
|
super.onPointerAdd(event);
|
118
92
|
this.newPointerAction();
|
119
93
|
}
|
120
|
-
|
121
94
|
newPointerAction() {
|
122
|
-
if (this.
|
95
|
+
if (this.state === _State.State.UNDETERMINED) {
|
123
96
|
this.startFling();
|
124
97
|
}
|
125
|
-
|
126
|
-
if (this.currentState !== _State.State.BEGAN) {
|
98
|
+
if (this.state !== _State.State.BEGAN) {
|
127
99
|
return;
|
128
100
|
}
|
129
|
-
|
130
101
|
this.tryEndFling();
|
131
|
-
|
132
|
-
|
133
|
-
this.maxNumberOfPointersSimultaneously = this.tracker.getTrackedPointersCount();
|
102
|
+
if (this.tracker.trackedPointersCount > this.maxNumberOfPointersSimultaneously) {
|
103
|
+
this.maxNumberOfPointersSimultaneously = this.tracker.trackedPointersCount;
|
134
104
|
}
|
135
105
|
}
|
136
|
-
|
137
106
|
pointerMoveAction(event) {
|
138
107
|
this.tracker.track(event);
|
139
|
-
|
140
|
-
if (this.currentState !== _State.State.BEGAN) {
|
108
|
+
if (this.state !== _State.State.BEGAN) {
|
141
109
|
return;
|
142
110
|
}
|
143
|
-
|
144
111
|
this.tryEndFling();
|
145
112
|
}
|
146
|
-
|
147
113
|
onPointerMove(event) {
|
148
114
|
this.pointerMoveAction(event);
|
149
115
|
super.onPointerMove(event);
|
150
116
|
}
|
151
|
-
|
152
117
|
onPointerOutOfBounds(event) {
|
153
118
|
this.pointerMoveAction(event);
|
154
119
|
super.onPointerOutOfBounds(event);
|
155
120
|
}
|
156
|
-
|
157
121
|
onPointerUp(event) {
|
158
122
|
super.onPointerUp(event);
|
159
123
|
this.onUp(event);
|
160
124
|
this.keyPointer = NaN;
|
161
125
|
}
|
162
|
-
|
163
126
|
onPointerRemove(event) {
|
164
127
|
super.onPointerRemove(event);
|
165
128
|
this.onUp(event);
|
166
129
|
}
|
167
|
-
|
168
130
|
onUp(event) {
|
169
|
-
if (this.
|
131
|
+
if (this.state === _State.State.BEGAN) {
|
170
132
|
this.endFling();
|
171
133
|
}
|
172
|
-
|
173
134
|
this.tracker.removeFromTracker(event.pointerId);
|
174
135
|
}
|
175
|
-
|
176
136
|
activate(force) {
|
177
137
|
super.activate(force);
|
178
138
|
this.end();
|
179
139
|
}
|
180
|
-
|
181
140
|
resetConfig() {
|
182
141
|
super.resetConfig();
|
183
142
|
this.numberOfPointersRequired = DEFAULT_NUMBER_OF_TOUCHES_REQUIRED;
|
184
143
|
this.direction = DEFAULT_DIRECTION;
|
185
144
|
}
|
186
|
-
|
187
145
|
}
|
188
|
-
|
189
146
|
exports.default = FlingGestureHandler;
|
190
147
|
//# sourceMappingURL=FlingGestureHandler.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["FlingGestureHandler.ts"],"names":["DEFAULT_MAX_DURATION_MS","DEFAULT_MIN_VELOCITY","DEFAULT_ALIGNMENT_CONE","DEFAULT_DIRECTION","Directions","RIGHT","DEFAULT_NUMBER_OF_TOUCHES_REQUIRED","AXIAL_DEVIATION_COSINE","DIAGONAL_DEVIATION_COSINE","FlingGestureHandler","GestureHandler","NaN","updateGestureConfig","enabled","props","config","direction","numberOfPointers","numberOfPointersRequired","startFling","begin","maxNumberOfPointersSimultaneously","delayTimeout","setTimeout","fail","maxDurationMs","tryEndFling","velocityVector","Vector","fromVelocity","tracker","keyPointer","getAlignment","minimalAlignmentCosine","isSimilar","fromDirection","axialDirectionsList","Object","values","diagonalDirectionsList","DiagonalDirections","axialAlignmentList","map","diagonalAlignmentList","isAligned","some","Boolean","isFast","magnitude","minVelocity","clearTimeout","activate","endFling","onPointerDown","event","isButtonInConfig","button","addToTracker","pointerId","newPointerAction","tryToSendTouchEvent","onPointerAdd","currentState","State","UNDETERMINED","BEGAN","getTrackedPointersCount","pointerMoveAction","track","onPointerMove","onPointerOutOfBounds","onPointerUp","onUp","onPointerRemove","removeFromTracker","force","end","resetConfig"],"mappings":"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","sourcesContent":["import { State } from '../../State';\nimport { DiagonalDirections, Directions } from '../../Directions';\nimport { AdaptedEvent, Config } from '../interfaces';\n\nimport GestureHandler from './GestureHandler';\nimport Vector from '../tools/Vector';\nimport { coneToDeviation } from '../utils';\n\nconst DEFAULT_MAX_DURATION_MS = 800;\nconst DEFAULT_MIN_VELOCITY = 700;\nconst DEFAULT_ALIGNMENT_CONE = 30;\nconst DEFAULT_DIRECTION = Directions.RIGHT;\nconst DEFAULT_NUMBER_OF_TOUCHES_REQUIRED = 1;\n\nconst AXIAL_DEVIATION_COSINE = coneToDeviation(DEFAULT_ALIGNMENT_CONE);\nconst DIAGONAL_DEVIATION_COSINE = coneToDeviation(90 - DEFAULT_ALIGNMENT_CONE);\n\nexport default class FlingGestureHandler extends GestureHandler {\n private numberOfPointersRequired = DEFAULT_NUMBER_OF_TOUCHES_REQUIRED;\n private direction: Directions = DEFAULT_DIRECTION;\n\n private maxDurationMs = DEFAULT_MAX_DURATION_MS;\n private minVelocity = DEFAULT_MIN_VELOCITY;\n private delayTimeout!: number;\n\n private maxNumberOfPointersSimultaneously = 0;\n private keyPointer = NaN;\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.begin();\n\n this.maxNumberOfPointersSimultaneously = 1;\n\n this.delayTimeout = setTimeout(() => this.fail(), this.maxDurationMs);\n }\n\n private tryEndFling(): boolean {\n const velocityVector = Vector.fromVelocity(this.tracker, this.keyPointer);\n\n const getAlignment = (\n direction: Directions | DiagonalDirections,\n minimalAlignmentCosine: number\n ) => {\n return (\n (direction & this.direction) === direction &&\n velocityVector.isSimilar(\n Vector.fromDirection(direction),\n minimalAlignmentCosine\n )\n );\n };\n\n const axialDirectionsList = Object.values(Directions);\n const diagonalDirectionsList = Object.values(DiagonalDirections);\n\n // List of alignments to all activated directions\n const axialAlignmentList = axialDirectionsList.map((direction) =>\n getAlignment(direction, AXIAL_DEVIATION_COSINE)\n );\n\n const diagonalAlignmentList = diagonalDirectionsList.map((direction) =>\n getAlignment(direction, DIAGONAL_DEVIATION_COSINE)\n );\n\n const isAligned =\n axialAlignmentList.some(Boolean) || diagonalAlignmentList.some(Boolean);\n\n const isFast = velocityVector.magnitude > this.minVelocity;\n\n if (\n this.maxNumberOfPointersSimultaneously ===\n this.numberOfPointersRequired &&\n isAligned &&\n isFast\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 if (!this.isButtonInConfig(event.button)) {\n return;\n }\n\n this.tracker.addToTracker(event);\n this.keyPointer = event.pointerId;\n\n super.onPointerDown(event);\n this.newPointerAction();\n\n this.tryToSendTouchEvent(event);\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 private pointerMoveAction(event: AdaptedEvent): void {\n this.tracker.track(event);\n\n if (this.currentState !== State.BEGAN) {\n return;\n }\n\n this.tryEndFling();\n }\n\n protected onPointerMove(event: AdaptedEvent): void {\n this.pointerMoveAction(event);\n super.onPointerMove(event);\n }\n\n protected onPointerOutOfBounds(event: AdaptedEvent): void {\n this.pointerMoveAction(event);\n super.onPointerOutOfBounds(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 if (this.currentState === State.BEGAN) {\n this.endFling();\n }\n\n this.tracker.removeFromTracker(event.pointerId);\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"]}
|
1
|
+
{"version":3,"names":["_State","require","_Directions","_GestureHandler","_interopRequireDefault","_Vector","_utils","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DEFAULT_MAX_DURATION_MS","DEFAULT_MIN_VELOCITY","DEFAULT_ALIGNMENT_CONE","DEFAULT_DIRECTION","Directions","RIGHT","DEFAULT_NUMBER_OF_TOUCHES_REQUIRED","AXIAL_DEVIATION_COSINE","coneToDeviation","DIAGONAL_DEVIATION_COSINE","FlingGestureHandler","GestureHandler","constructor","args","NaN","updateGestureConfig","enabled","props","config","direction","numberOfPointers","numberOfPointersRequired","startFling","begin","maxNumberOfPointersSimultaneously","delayTimeout","setTimeout","fail","maxDurationMs","tryEndFling","velocityVector","Vector","fromVelocity","tracker","keyPointer","getAlignment","minimalAlignmentCosine","isSimilar","fromDirection","axialDirectionsList","values","diagonalDirectionsList","DiagonalDirections","axialAlignmentList","map","diagonalAlignmentList","isAligned","some","Boolean","isFast","magnitude","minVelocity","clearTimeout","activate","endFling","onPointerDown","event","isButtonInConfig","button","addToTracker","pointerId","newPointerAction","tryToSendTouchEvent","onPointerAdd","state","State","UNDETERMINED","BEGAN","trackedPointersCount","pointerMoveAction","track","onPointerMove","onPointerOutOfBounds","onPointerUp","onUp","onPointerRemove","removeFromTracker","force","end","resetConfig","exports"],"sources":["FlingGestureHandler.ts"],"sourcesContent":["import { State } from '../../State';\nimport { DiagonalDirections, Directions } from '../../Directions';\nimport { AdaptedEvent, Config } from '../interfaces';\n\nimport GestureHandler from './GestureHandler';\nimport Vector from '../tools/Vector';\nimport { coneToDeviation } from '../utils';\n\nconst DEFAULT_MAX_DURATION_MS = 800;\nconst DEFAULT_MIN_VELOCITY = 700;\nconst DEFAULT_ALIGNMENT_CONE = 30;\nconst DEFAULT_DIRECTION = Directions.RIGHT;\nconst DEFAULT_NUMBER_OF_TOUCHES_REQUIRED = 1;\n\nconst AXIAL_DEVIATION_COSINE = coneToDeviation(DEFAULT_ALIGNMENT_CONE);\nconst DIAGONAL_DEVIATION_COSINE = coneToDeviation(90 - DEFAULT_ALIGNMENT_CONE);\n\nexport default class FlingGestureHandler extends GestureHandler {\n private numberOfPointersRequired = DEFAULT_NUMBER_OF_TOUCHES_REQUIRED;\n private direction: Directions = DEFAULT_DIRECTION;\n\n private maxDurationMs = DEFAULT_MAX_DURATION_MS;\n private minVelocity = DEFAULT_MIN_VELOCITY;\n private delayTimeout!: number;\n\n private maxNumberOfPointersSimultaneously = 0;\n private keyPointer = NaN;\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.begin();\n\n this.maxNumberOfPointersSimultaneously = 1;\n\n this.delayTimeout = setTimeout(() => this.fail(), this.maxDurationMs);\n }\n\n private tryEndFling(): boolean {\n const velocityVector = Vector.fromVelocity(this.tracker, this.keyPointer);\n\n const getAlignment = (\n direction: Directions | DiagonalDirections,\n minimalAlignmentCosine: number\n ) => {\n return (\n (direction & this.direction) === direction &&\n velocityVector.isSimilar(\n Vector.fromDirection(direction),\n minimalAlignmentCosine\n )\n );\n };\n\n const axialDirectionsList = Object.values(Directions);\n const diagonalDirectionsList = Object.values(DiagonalDirections);\n\n // List of alignments to all activated directions\n const axialAlignmentList = axialDirectionsList.map((direction) =>\n getAlignment(direction, AXIAL_DEVIATION_COSINE)\n );\n\n const diagonalAlignmentList = diagonalDirectionsList.map((direction) =>\n getAlignment(direction, DIAGONAL_DEVIATION_COSINE)\n );\n\n const isAligned =\n axialAlignmentList.some(Boolean) || diagonalAlignmentList.some(Boolean);\n\n const isFast = velocityVector.magnitude > this.minVelocity;\n\n if (\n this.maxNumberOfPointersSimultaneously ===\n this.numberOfPointersRequired &&\n isAligned &&\n isFast\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 if (!this.isButtonInConfig(event.button)) {\n return;\n }\n\n this.tracker.addToTracker(event);\n this.keyPointer = event.pointerId;\n\n super.onPointerDown(event);\n this.newPointerAction();\n\n this.tryToSendTouchEvent(event);\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.state === State.UNDETERMINED) {\n this.startFling();\n }\n\n if (this.state !== State.BEGAN) {\n return;\n }\n\n this.tryEndFling();\n\n if (\n this.tracker.trackedPointersCount > this.maxNumberOfPointersSimultaneously\n ) {\n this.maxNumberOfPointersSimultaneously =\n this.tracker.trackedPointersCount;\n }\n }\n\n private pointerMoveAction(event: AdaptedEvent): void {\n this.tracker.track(event);\n\n if (this.state !== State.BEGAN) {\n return;\n }\n\n this.tryEndFling();\n }\n\n protected onPointerMove(event: AdaptedEvent): void {\n this.pointerMoveAction(event);\n super.onPointerMove(event);\n }\n\n protected onPointerOutOfBounds(event: AdaptedEvent): void {\n this.pointerMoveAction(event);\n super.onPointerOutOfBounds(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 if (this.state === State.BEGAN) {\n this.endFling();\n }\n\n this.tracker.removeFromTracker(event.pointerId);\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,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,OAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAA2C,SAAAG,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAE3C,MAAMgB,uBAAuB,GAAG,GAAG;AACnC,MAAMC,oBAAoB,GAAG,GAAG;AAChC,MAAMC,sBAAsB,GAAG,EAAE;AACjC,MAAMC,iBAAiB,GAAGC,sBAAU,CAACC,KAAK;AAC1C,MAAMC,kCAAkC,GAAG,CAAC;AAE5C,MAAMC,sBAAsB,GAAG,IAAAC,sBAAe,EAACN,sBAAsB,CAAC;AACtE,MAAMO,yBAAyB,GAAG,IAAAD,sBAAe,EAAC,EAAE,GAAGN,sBAAsB,CAAC;AAE/D,MAAMQ,mBAAmB,SAASC,uBAAc,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA/B,eAAA,mCAC3BwB,kCAAkC;IAAAxB,eAAA,oBACrCqB,iBAAiB;IAAArB,eAAA,wBAEzBkB,uBAAuB;IAAAlB,eAAA,sBACzBmB,oBAAoB;IAAAnB,eAAA;IAAAA,eAAA,4CAGE,CAAC;IAAAA,eAAA,qBACxBgC,GAAG;EAAA;EAEjBC,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,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,MAAMC,cAAc,GAAGC,eAAM,CAACC,YAAY,CAAC,IAAI,CAACC,OAAO,EAAE,IAAI,CAACC,UAAU,CAAC;IAEzE,MAAMC,YAAY,GAAGA,CACnBhB,SAA0C,EAC1CiB,sBAA8B,KAC3B;MACH,OACE,CAACjB,SAAS,GAAG,IAAI,CAACA,SAAS,MAAMA,SAAS,IAC1CW,cAAc,CAACO,SAAS,CACtBN,eAAM,CAACO,aAAa,CAACnB,SAAS,CAAC,EAC/BiB,sBACF,CAAC;IAEL,CAAC;IAED,MAAMG,mBAAmB,GAAGrD,MAAM,CAACsD,MAAM,CAACpC,sBAAU,CAAC;IACrD,MAAMqC,sBAAsB,GAAGvD,MAAM,CAACsD,MAAM,CAACE,8BAAkB,CAAC;;IAEhE;IACA,MAAMC,kBAAkB,GAAGJ,mBAAmB,CAACK,GAAG,CAAEzB,SAAS,IAC3DgB,YAAY,CAAChB,SAAS,EAAEZ,sBAAsB,CAChD,CAAC;IAED,MAAMsC,qBAAqB,GAAGJ,sBAAsB,CAACG,GAAG,CAAEzB,SAAS,IACjEgB,YAAY,CAAChB,SAAS,EAAEV,yBAAyB,CACnD,CAAC;IAED,MAAMqC,SAAS,GACbH,kBAAkB,CAACI,IAAI,CAACC,OAAO,CAAC,IAAIH,qBAAqB,CAACE,IAAI,CAACC,OAAO,CAAC;IAEzE,MAAMC,MAAM,GAAGnB,cAAc,CAACoB,SAAS,GAAG,IAAI,CAACC,WAAW;IAE1D,IACE,IAAI,CAAC3B,iCAAiC,KACpC,IAAI,CAACH,wBAAwB,IAC/ByB,SAAS,IACTG,MAAM,EACN;MACAG,YAAY,CAAC,IAAI,CAAC3B,YAAY,CAAC;MAC/B,IAAI,CAAC4B,QAAQ,CAAC,CAAC;MAEf,OAAO,IAAI;IACb;IAEA,OAAO,KAAK;EACd;EAEQC,QAAQA,CAAA,EAAG;IACjB,IAAI,CAAC,IAAI,CAACzB,WAAW,CAAC,CAAC,EAAE;MACvB,IAAI,CAACF,IAAI,CAAC,CAAC;IACb;EACF;EAEU4B,aAAaA,CAACC,KAAmB,EAAQ;IACjD,IAAI,CAAC,IAAI,CAACC,gBAAgB,CAACD,KAAK,CAACE,MAAM,CAAC,EAAE;MACxC;IACF;IAEA,IAAI,CAACzB,OAAO,CAAC0B,YAAY,CAACH,KAAK,CAAC;IAChC,IAAI,CAACtB,UAAU,GAAGsB,KAAK,CAACI,SAAS;IAEjC,KAAK,CAACL,aAAa,CAACC,KAAK,CAAC;IAC1B,IAAI,CAACK,gBAAgB,CAAC,CAAC;IAEvB,IAAI,CAACC,mBAAmB,CAACN,KAAK,CAAC;EACjC;EAEUO,YAAYA,CAACP,KAAmB,EAAQ;IAChD,IAAI,CAACvB,OAAO,CAAC0B,YAAY,CAACH,KAAK,CAAC;IAChC,KAAK,CAACO,YAAY,CAACP,KAAK,CAAC;IACzB,IAAI,CAACK,gBAAgB,CAAC,CAAC;EACzB;EAEQA,gBAAgBA,CAAA,EAAS;IAC/B,IAAI,IAAI,CAACG,KAAK,KAAKC,YAAK,CAACC,YAAY,EAAE;MACrC,IAAI,CAAC5C,UAAU,CAAC,CAAC;IACnB;IAEA,IAAI,IAAI,CAAC0C,KAAK,KAAKC,YAAK,CAACE,KAAK,EAAE;MAC9B;IACF;IAEA,IAAI,CAACtC,WAAW,CAAC,CAAC;IAElB,IACE,IAAI,CAACI,OAAO,CAACmC,oBAAoB,GAAG,IAAI,CAAC5C,iCAAiC,EAC1E;MACA,IAAI,CAACA,iCAAiC,GACpC,IAAI,CAACS,OAAO,CAACmC,oBAAoB;IACrC;EACF;EAEQC,iBAAiBA,CAACb,KAAmB,EAAQ;IACnD,IAAI,CAACvB,OAAO,CAACqC,KAAK,CAACd,KAAK,CAAC;IAEzB,IAAI,IAAI,CAACQ,KAAK,KAAKC,YAAK,CAACE,KAAK,EAAE;MAC9B;IACF;IAEA,IAAI,CAACtC,WAAW,CAAC,CAAC;EACpB;EAEU0C,aAAaA,CAACf,KAAmB,EAAQ;IACjD,IAAI,CAACa,iBAAiB,CAACb,KAAK,CAAC;IAC7B,KAAK,CAACe,aAAa,CAACf,KAAK,CAAC;EAC5B;EAEUgB,oBAAoBA,CAAChB,KAAmB,EAAQ;IACxD,IAAI,CAACa,iBAAiB,CAACb,KAAK,CAAC;IAC7B,KAAK,CAACgB,oBAAoB,CAAChB,KAAK,CAAC;EACnC;EAEUiB,WAAWA,CAACjB,KAAmB,EAAQ;IAC/C,KAAK,CAACiB,WAAW,CAACjB,KAAK,CAAC;IACxB,IAAI,CAACkB,IAAI,CAAClB,KAAK,CAAC;IAEhB,IAAI,CAACtB,UAAU,GAAGpB,GAAG;EACvB;EAEU6D,eAAeA,CAACnB,KAAmB,EAAQ;IACnD,KAAK,CAACmB,eAAe,CAACnB,KAAK,CAAC;IAC5B,IAAI,CAACkB,IAAI,CAAClB,KAAK,CAAC;EAClB;EAEQkB,IAAIA,CAAClB,KAAmB,EAAQ;IACtC,IAAI,IAAI,CAACQ,KAAK,KAAKC,YAAK,CAACE,KAAK,EAAE;MAC9B,IAAI,CAACb,QAAQ,CAAC,CAAC;IACjB;IAEA,IAAI,CAACrB,OAAO,CAAC2C,iBAAiB,CAACpB,KAAK,CAACI,SAAS,CAAC;EACjD;EAEOP,QAAQA,CAACwB,KAAe,EAAQ;IACrC,KAAK,CAACxB,QAAQ,CAACwB,KAAK,CAAC;IACrB,IAAI,CAACC,GAAG,CAAC,CAAC;EACZ;EAEUC,WAAWA,CAAA,EAAS;IAC5B,KAAK,CAACA,WAAW,CAAC,CAAC;IACnB,IAAI,CAAC1D,wBAAwB,GAAGf,kCAAkC;IAClE,IAAI,CAACa,SAAS,GAAGhB,iBAAiB;EACpC;AACF;AAAC6E,OAAA,CAAAnG,OAAA,GAAA6B,mBAAA","ignoreList":[]}
|