react-native-gesture-handler 3.0.0-beta.4 → 3.0.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +12 -4
- package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +6 -2
- package/android/src/main/java/com/swmansion/gesturehandler/react/Extensions.kt +21 -0
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +113 -49
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerDetectorView.kt +75 -98
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +7 -10
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRegistry.kt +64 -2
- package/apple/RNGestureHandler.mm +50 -27
- package/apple/RNGestureHandlerButton.h +4 -2
- package/apple/RNGestureHandlerButton.mm +106 -27
- package/apple/RNGestureHandlerButtonComponentView.mm +17 -2
- package/apple/RNGestureHandlerDetector.mm +99 -75
- package/apple/RNGestureHandlerModule.mm +11 -14
- package/apple/RNGestureHandlerRegistry.h +14 -0
- package/apple/RNGestureHandlerRegistry.m +56 -0
- package/lib/module/RNGestureHandlerModule.web.js +5 -1
- package/lib/module/RNGestureHandlerModule.web.js.map +1 -1
- package/lib/module/components/GestureButtons.js +16 -5
- package/lib/module/components/GestureButtons.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.web.js +63 -23
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/module/components/Pressable/Pressable.js +1 -0
- package/lib/module/components/Pressable/Pressable.js.map +1 -1
- package/lib/module/components/ReanimatedDrawerLayout.js.map +1 -1
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js +38 -5
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +1 -2
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/utils.js +0 -47
- package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -1
- package/lib/module/handlers/gestures/reanimatedWrapper.js +14 -2
- package/lib/module/handlers/gestures/reanimatedWrapper.js.map +1 -1
- package/lib/module/mocks/module.js +3 -2
- package/lib/module/mocks/module.js.map +1 -1
- package/lib/module/specs/NativeRNGestureHandlerModule.js.map +1 -1
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.ts +28 -13
- package/lib/module/v3/NativeProxy.js +5 -3
- package/lib/module/v3/NativeProxy.js.map +1 -1
- package/lib/module/v3/NativeProxy.web.js +2 -2
- package/lib/module/v3/NativeProxy.web.js.map +1 -1
- package/lib/module/v3/components/GestureButtons.js +8 -3
- package/lib/module/v3/components/GestureButtons.js.map +1 -1
- package/lib/module/v3/components/Touchable/Touchable.js +53 -4
- package/lib/module/v3/components/Touchable/Touchable.js.map +1 -1
- package/lib/module/v3/detectors/HostGestureDetector.web.js +178 -59
- package/lib/module/v3/detectors/HostGestureDetector.web.js.map +1 -1
- package/lib/module/v3/detectors/NativeDetector.js +3 -2
- package/lib/module/v3/detectors/NativeDetector.js.map +1 -1
- package/lib/module/v3/detectors/VirtualDetector/InterceptingGestureDetector.js +3 -4
- package/lib/module/v3/detectors/VirtualDetector/InterceptingGestureDetector.js.map +1 -1
- package/lib/module/v3/detectors/VirtualDetector/VirtualDetector.js +2 -2
- package/lib/module/v3/detectors/VirtualDetector/VirtualDetector.js.map +1 -1
- package/lib/module/v3/detectors/useGestureRelationsUpdater.js +23 -0
- package/lib/module/v3/detectors/useGestureRelationsUpdater.js.map +1 -0
- package/lib/module/v3/detectors/utils.js +10 -8
- package/lib/module/v3/detectors/utils.js.map +1 -1
- package/lib/module/v3/hooks/useGesture.js +3 -18
- package/lib/module/v3/hooks/useGesture.js.map +1 -1
- package/lib/module/v3/hooks/utils/configUtils.js +1 -3
- package/lib/module/v3/hooks/utils/configUtils.js.map +1 -1
- package/lib/module/v3/hooks/utils/eventHandlersUtils.js +31 -29
- package/lib/module/v3/hooks/utils/eventHandlersUtils.js.map +1 -1
- package/lib/module/v3/hooks/utils/reanimatedUtils.js +8 -2
- package/lib/module/v3/hooks/utils/reanimatedUtils.js.map +1 -1
- package/lib/module/web/tools/NodeManager.js +44 -0
- package/lib/module/web/tools/NodeManager.js.map +1 -1
- package/lib/typescript/RNGestureHandlerModule.web.d.ts +1 -1
- package/lib/typescript/RNGestureHandlerModule.web.d.ts.map +1 -1
- package/lib/typescript/components/GestureButtons.d.ts +14 -6
- package/lib/typescript/components/GestureButtons.d.ts.map +1 -1
- package/lib/typescript/components/GestureHandlerButton.d.ts +62 -8
- package/lib/typescript/components/GestureHandlerButton.d.ts.map +1 -1
- package/lib/typescript/components/GestureHandlerButton.web.d.ts +10 -3
- package/lib/typescript/components/GestureHandlerButton.web.d.ts.map +1 -1
- package/lib/typescript/components/Pressable/Pressable.d.ts.map +1 -1
- package/lib/typescript/components/Pressable/PressableProps.d.ts +1 -1
- package/lib/typescript/components/Pressable/PressableProps.d.ts.map +1 -1
- package/lib/typescript/components/ReanimatedDrawerLayout.d.ts +16 -14
- package/lib/typescript/components/ReanimatedDrawerLayout.d.ts.map +1 -1
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeable.d.ts +2 -1
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeable.d.ts.map +1 -1
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeableProps.d.ts +30 -34
- package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeableProps.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts +0 -1
- package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts.map +1 -1
- package/lib/typescript/mocks/module.d.ts +1 -1
- package/lib/typescript/mocks/module.d.ts.map +1 -1
- package/lib/typescript/specs/NativeRNGestureHandlerModule.d.ts +2 -2
- package/lib/typescript/specs/NativeRNGestureHandlerModule.d.ts.map +1 -1
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts +19 -11
- package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts.map +1 -1
- package/lib/typescript/v3/NativeProxy.d.ts +1 -1
- package/lib/typescript/v3/NativeProxy.d.ts.map +1 -1
- package/lib/typescript/v3/NativeProxy.web.d.ts +1 -1
- package/lib/typescript/v3/NativeProxy.web.d.ts.map +1 -1
- package/lib/typescript/v3/components/GestureButtons.d.ts +1 -38
- package/lib/typescript/v3/components/GestureButtons.d.ts.map +1 -1
- package/lib/typescript/v3/components/GestureButtonsProps.d.ts +1 -1
- package/lib/typescript/v3/components/GestureButtonsProps.d.ts.map +1 -1
- package/lib/typescript/v3/components/Touchable/Touchable.d.ts.map +1 -1
- package/lib/typescript/v3/components/Touchable/TouchableProps.d.ts +39 -1
- package/lib/typescript/v3/components/Touchable/TouchableProps.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/HostGestureDetector.web.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/NativeDetector.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/VirtualDetector/InterceptingGestureDetector.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/useGestureRelationsUpdater.d.ts +3 -0
- package/lib/typescript/v3/detectors/useGestureRelationsUpdater.d.ts.map +1 -0
- package/lib/typescript/v3/detectors/utils.d.ts +3 -3
- package/lib/typescript/v3/detectors/utils.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/useGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/utils/configUtils.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/utils/eventHandlersUtils.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/utils/reanimatedUtils.d.ts +1 -0
- package/lib/typescript/v3/hooks/utils/reanimatedUtils.d.ts.map +1 -1
- package/lib/typescript/web/tools/NodeManager.d.ts +7 -0
- package/lib/typescript/web/tools/NodeManager.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/RNGestureHandlerModule.web.ts +5 -1
- package/src/components/GestureButtons.tsx +23 -7
- package/src/components/GestureHandlerButton.tsx +70 -8
- package/src/components/GestureHandlerButton.web.tsx +97 -29
- package/src/components/Pressable/Pressable.tsx +1 -0
- package/src/components/Pressable/PressableProps.tsx +2 -1
- package/src/components/ReanimatedDrawerLayout.tsx +27 -23
- package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +51 -5
- package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +31 -39
- package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +1 -2
- package/src/handlers/gestures/GestureDetector/utils.ts +0 -52
- package/src/handlers/gestures/reanimatedWrapper.ts +20 -2
- package/src/mocks/module.tsx +4 -2
- package/src/specs/NativeRNGestureHandlerModule.ts +2 -4
- package/src/specs/RNGestureHandlerButtonNativeComponent.ts +28 -13
- package/src/v3/NativeProxy.ts +9 -7
- package/src/v3/NativeProxy.web.ts +2 -2
- package/src/v3/components/GestureButtons.tsx +13 -5
- package/src/v3/components/GestureButtonsProps.ts +1 -0
- package/src/v3/components/Touchable/Touchable.tsx +65 -4
- package/src/v3/components/Touchable/TouchableProps.ts +49 -1
- package/src/v3/detectors/HostGestureDetector.web.tsx +265 -108
- package/src/v3/detectors/NativeDetector.tsx +3 -2
- package/src/v3/detectors/VirtualDetector/InterceptingGestureDetector.tsx +3 -4
- package/src/v3/detectors/VirtualDetector/VirtualDetector.tsx +2 -2
- package/src/v3/detectors/useGestureRelationsUpdater.ts +30 -0
- package/src/v3/detectors/utils.ts +28 -12
- package/src/v3/hooks/useGesture.ts +4 -14
- package/src/v3/hooks/utils/configUtils.ts +2 -3
- package/src/v3/hooks/utils/eventHandlersUtils.ts +43 -32
- package/src/v3/hooks/utils/reanimatedUtils.ts +10 -10
- package/src/web/tools/NodeManager.ts +57 -0
- package/lib/module/RNRenderer.js +0 -6
- package/lib/module/RNRenderer.js.map +0 -1
- package/lib/module/RNRenderer.web.js +0 -6
- package/lib/module/RNRenderer.web.js.map +0 -1
- package/lib/typescript/RNRenderer.d.ts +0 -2
- package/lib/typescript/RNRenderer.d.ts.map +0 -1
- package/lib/typescript/RNRenderer.web.d.ts +0 -4
- package/lib/typescript/RNRenderer.web.d.ts.map +0 -1
- package/src/RNRenderer.ts +0 -3
- package/src/RNRenderer.web.ts +0 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useEffect, useMemo
|
|
3
|
+
import { useEffect, useMemo } from 'react';
|
|
4
4
|
import { getNextHandlerTag } from '../../handlers/getNextHandlerTag';
|
|
5
5
|
import { registerGesture, unregisterGesture } from '../../handlers/handlersRegistry';
|
|
6
6
|
import { scheduleFlushOperations } from '../../handlers/utils';
|
|
@@ -29,17 +29,6 @@ export function useGesture(type, config) {
|
|
|
29
29
|
requireToFail: config.requireToFail,
|
|
30
30
|
block: config.block
|
|
31
31
|
}, handlerTag), [handlerTag, config.simultaneousWith, config.requireToFail, config.block]);
|
|
32
|
-
const currentGestureRef = useRef({
|
|
33
|
-
type: '',
|
|
34
|
-
handlerTag: -1
|
|
35
|
-
});
|
|
36
|
-
if (currentGestureRef.current.handlerTag !== handlerTag || currentGestureRef.current.type !== type) {
|
|
37
|
-
currentGestureRef.current = {
|
|
38
|
-
type,
|
|
39
|
-
handlerTag
|
|
40
|
-
};
|
|
41
|
-
NativeProxy.createGestureHandler(type, handlerTag, {});
|
|
42
|
-
}
|
|
43
32
|
const gesture = useMemo(() => ({
|
|
44
33
|
handlerTag,
|
|
45
34
|
type,
|
|
@@ -52,13 +41,9 @@ export function useGesture(type, config) {
|
|
|
52
41
|
gestureRelations
|
|
53
42
|
}), [handlerTag, type, config, jsEventHandler, reanimatedEventHandler, animatedEventHandler, gestureRelations]);
|
|
54
43
|
useEffect(() => {
|
|
44
|
+
NativeProxy.createGestureHandler(type, handlerTag, {});
|
|
45
|
+
scheduleFlushOperations();
|
|
55
46
|
return () => {
|
|
56
|
-
if (currentGestureRef.current.handlerTag === handlerTag) {
|
|
57
|
-
currentGestureRef.current = {
|
|
58
|
-
type: '',
|
|
59
|
-
handlerTag: -1
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
47
|
NativeProxy.dropGestureHandler(handlerTag);
|
|
63
48
|
scheduleFlushOperations();
|
|
64
49
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useMemo","
|
|
1
|
+
{"version":3,"names":["useEffect","useMemo","getNextHandlerTag","registerGesture","unregisterGesture","scheduleFlushOperations","tagMessage","NativeProxy","useGestureCallbacks","bindSharedValues","prepareConfigForNativeSide","prepareRelations","unbindSharedValues","useGesture","type","config","handlerTag","disableReanimated","Error","jsEventHandler","reanimatedEventHandler","animatedEventHandler","shouldUseReanimatedDetector","gestureRelations","simultaneousWith","requireToFail","block","gesture","detectorCallbacks","createGestureHandler","dropGestureHandler","preparedConfig","setGestureHandlerConfig"],"sourceRoot":"../../../../src","sources":["v3/hooks/useGesture.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,9 +31,7 @@ export function prepareConfigForNativeSide(handlerType, config) {
|
|
|
31
31
|
for (const [key, value] of Object.entries(config)) {
|
|
32
32
|
// @ts-ignore That's the point, we want to see if key exists in the whitelists
|
|
33
33
|
if (allowedNativeProps.has(key) || handlerPropsWhiteList.has(key)) {
|
|
34
|
-
|
|
35
|
-
[key]: Reanimated?.isSharedValue(value) ? value.value : value
|
|
36
|
-
});
|
|
34
|
+
filteredConfig[key] = Reanimated?.isSharedValue(value) ? value.value : value;
|
|
37
35
|
} else if (PropsToFilter.has(key)) {
|
|
38
36
|
continue;
|
|
39
37
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","Reanimated","tagMessage","isNativeAnimatedEvent","shouldHandleTouchEvents","allowedNativeProps","EMPTY_WHITE_LIST","PropsToFilter","PropsWhiteLists","hasWorkletEventHandlers","maybeUnpackValue","resolveInternalConfigProps","config","runOnJS","__DEV__","onUpdate","useAnimated","console","warn","dispatchesAnimatedEvents","disableReanimated","Error","shouldUseReanimatedDetector","undefined","needsPointerData","dispatchesReanimatedEvents","prepareConfigForNativeSide","handlerType","filteredConfig","handlerPropsWhiteList","get","key","value","Object","entries","has","
|
|
1
|
+
{"version":3,"names":["useMemo","Reanimated","tagMessage","isNativeAnimatedEvent","shouldHandleTouchEvents","allowedNativeProps","EMPTY_WHITE_LIST","PropsToFilter","PropsWhiteLists","hasWorkletEventHandlers","maybeUnpackValue","resolveInternalConfigProps","config","runOnJS","__DEV__","onUpdate","useAnimated","console","warn","dispatchesAnimatedEvents","disableReanimated","Error","shouldUseReanimatedDetector","undefined","needsPointerData","dispatchesReanimatedEvents","prepareConfigForNativeSide","handlerType","filteredConfig","handlerPropsWhiteList","get","key","value","Object","entries","has","isSharedValue","cloneConfig","remapProps","propsMapping","forEach","internalKey","DEFAULT_PROPS_MAPPING","Map","DEFAULT_PROPS_TRANSFORMER","useClonedAndRemappedConfig","propsTransformer","clonedConfig","transformedConfig"],"sourceRoot":"../../../../../src","sources":["v3/hooks/utils/configUtils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,35 +4,37 @@ import { useMemo } from 'react';
|
|
|
4
4
|
import { CALLBACK_TYPE } from '../../../handlers/gestures/gesture';
|
|
5
5
|
import { TouchEventType } from '../../../TouchEventType';
|
|
6
6
|
export function useMemoizedGestureCallbacks(callbacks) {
|
|
7
|
-
return useMemo(() =>
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
7
|
+
return useMemo(() => {
|
|
8
|
+
const memoized = {};
|
|
9
|
+
if (callbacks.onBegin) {
|
|
10
|
+
memoized.onBegin = callbacks.onBegin;
|
|
11
|
+
}
|
|
12
|
+
if (callbacks.onActivate) {
|
|
13
|
+
memoized.onActivate = callbacks.onActivate;
|
|
14
|
+
}
|
|
15
|
+
if (callbacks.onDeactivate) {
|
|
16
|
+
memoized.onDeactivate = callbacks.onDeactivate;
|
|
17
|
+
}
|
|
18
|
+
if (callbacks.onFinalize) {
|
|
19
|
+
memoized.onFinalize = callbacks.onFinalize;
|
|
20
|
+
}
|
|
21
|
+
if (callbacks.onUpdate) {
|
|
22
|
+
memoized.onUpdate = callbacks.onUpdate;
|
|
23
|
+
}
|
|
24
|
+
if (callbacks.onTouchesDown) {
|
|
25
|
+
memoized.onTouchesDown = callbacks.onTouchesDown;
|
|
26
|
+
}
|
|
27
|
+
if (callbacks.onTouchesMove) {
|
|
28
|
+
memoized.onTouchesMove = callbacks.onTouchesMove;
|
|
29
|
+
}
|
|
30
|
+
if (callbacks.onTouchesUp) {
|
|
31
|
+
memoized.onTouchesUp = callbacks.onTouchesUp;
|
|
32
|
+
}
|
|
33
|
+
if (callbacks.onTouchesCancel) {
|
|
34
|
+
memoized.onTouchesCancel = callbacks.onTouchesCancel;
|
|
35
|
+
}
|
|
36
|
+
return memoized;
|
|
37
|
+
}, [callbacks.onActivate, callbacks.onBegin, callbacks.onDeactivate, callbacks.onFinalize, callbacks.onTouchesCancel, callbacks.onTouchesDown, callbacks.onTouchesMove, callbacks.onTouchesUp, callbacks.onUpdate]);
|
|
36
38
|
}
|
|
37
39
|
function getHandler(type, callbacks) {
|
|
38
40
|
'worklet';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","CALLBACK_TYPE","TouchEventType","useMemoizedGestureCallbacks","callbacks","onBegin","onActivate","onDeactivate","onFinalize","onUpdate","onTouchesDown","onTouchesMove","onTouchesUp","onTouchesCancel","getHandler","type","BEGAN","START","UPDATE","END","FINALIZE","TOUCHES_DOWN","TOUCHES_MOVE","TOUCHES_UP","TOUCHES_CANCEL","touchEventTypeToCallbackType","eventType","UNDEFINED","runCallback","event","handler"],"sourceRoot":"../../../../../src","sources":["v3/hooks/utils/eventHandlersUtils.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAE/B,SAASC,aAAa,QAAQ,oCAAoC;AAClE,SAASC,cAAc,QAAQ,yBAAyB;AASxD,OAAO,SAASC,2BAA2BA,CAIzCC,SAA+D,EACT;EACtD,OAAOJ,OAAO,
|
|
1
|
+
{"version":3,"names":["useMemo","CALLBACK_TYPE","TouchEventType","useMemoizedGestureCallbacks","callbacks","memoized","onBegin","onActivate","onDeactivate","onFinalize","onUpdate","onTouchesDown","onTouchesMove","onTouchesUp","onTouchesCancel","getHandler","type","BEGAN","START","UPDATE","END","FINALIZE","TOUCHES_DOWN","TOUCHES_MOVE","TOUCHES_UP","TOUCHES_CANCEL","touchEventTypeToCallbackType","eventType","UNDEFINED","runCallback","event","handler"],"sourceRoot":"../../../../../src","sources":["v3/hooks/utils/eventHandlersUtils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,7 +16,7 @@ function hash(str) {
|
|
|
16
16
|
}
|
|
17
17
|
return h >>> 0;
|
|
18
18
|
}
|
|
19
|
-
const SHARED_VALUE_OFFSET = 1.618;
|
|
19
|
+
export const SHARED_VALUE_OFFSET = 1.618;
|
|
20
20
|
|
|
21
21
|
// Don't transfer entire NativeProxy to the UI thread
|
|
22
22
|
const {
|
|
@@ -69,7 +69,13 @@ export function unbindSharedValues(config, handlerTag) {
|
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
export function hasWorkletEventHandlers(config) {
|
|
72
|
-
|
|
72
|
+
for (const key of HandlerCallbacks) {
|
|
73
|
+
const value = config[key];
|
|
74
|
+
if (typeof value === 'function' && '__workletHash' in value) {
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return false;
|
|
73
79
|
}
|
|
74
80
|
export function maybeUnpackValue(v) {
|
|
75
81
|
'worklet';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Reanimated","NativeProxy","HandlerCallbacks","hash","str","len","length","h","i","charCodeAt","SHARED_VALUE_OFFSET","updateGestureHandlerConfig","bindSharedValues","config","handlerTag","undefined","baseListenerId","attachListener","sharedValue","configKey","keyHash","listenerId","addListener","value","dispatchesReanimatedEvents","shouldUseReanimatedDetector","key","maybeSharedValue","Object","entries","isSharedValue","runOnUI","unbindSharedValues","removeListener","hasWorkletEventHandlers","
|
|
1
|
+
{"version":3,"names":["Reanimated","NativeProxy","HandlerCallbacks","hash","str","len","length","h","i","charCodeAt","SHARED_VALUE_OFFSET","updateGestureHandlerConfig","bindSharedValues","config","handlerTag","undefined","baseListenerId","attachListener","sharedValue","configKey","keyHash","listenerId","addListener","value","dispatchesReanimatedEvents","shouldUseReanimatedDetector","key","maybeSharedValue","Object","entries","isSharedValue","runOnUI","unbindSharedValues","removeListener","hasWorkletEventHandlers","maybeUnpackValue","v"],"sourceRoot":"../../../../../src","sources":["v3/hooks/utils/reanimatedUtils.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,8CAA8C;AACzE,SAASC,WAAW,QAAQ,mBAAmB;AAM/C,SAASC,gBAAgB,QAAQ,kBAAkB;;AAEnD;AACA;AACA,SAASC,IAAIA,CAACC,GAAW,EAAE;EACzB,SAAS;;EACT,MAAMC,GAAG,GAAGD,GAAG,CAACE,MAAM;EACtB,IAAIC,CAAC,GAAG,IAAI;EAEZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,GAAG,EAAEG,CAAC,EAAE,EAAE;IAC5BD,CAAC,GAAIA,CAAC,GAAG,EAAE,GAAIH,GAAG,CAACK,UAAU,CAACD,CAAC,CAAC;EAClC;EACA,OAAOD,CAAC,KAAK,CAAC;AAChB;AAEA,OAAO,MAAMG,mBAAmB,GAAG,KAAK;;AAExC;AACA,MAAM;EAAEC;AAA2B,CAAC,GAAGV,WAAW;AAElD,OAAO,SAASW,gBAAgBA,CAK9BC,MAAsE,EACtEC,UAAkB,EAClB;EACA,IAAId,UAAU,KAAKe,SAAS,EAAE;IAC5B;EACF;EAEA,MAAMC,cAAc,GAAGF,UAAU,GAAGJ,mBAAmB;EAEvD,MAAMO,cAAc,GAAGA,CAACC,WAAwB,EAAEC,SAAiB,KAAK;IACtE,SAAS;;IACT,MAAMC,OAAO,GAAGjB,IAAI,CAACgB,SAAS,CAAC;IAC/B,MAAME,UAAU,GAAGL,cAAc,GAAGI,OAAO;IAE3CF,WAAW,CAACI,WAAW,CAACD,UAAU,EAAGE,KAAK,IAAK;MAC7C,IAAIJ,SAAS,KAAK,SAAS,EAAE;QAC3BN,MAAM,CAACW,0BAA0B,GAC/BX,MAAM,CAACY,2BAA2B,IAAI,CAACF,KAAK;QAE9CZ,0BAA0B,CAACG,UAAU,EAAE;UACrCU,0BAA0B,EAAEX,MAAM,CAACW;QACrC,CAAC,CAAC;MACJ,CAAC,MAAM;QACLb,0BAA0B,CAACG,UAAU,EAAE;UAAE,CAACK,SAAS,GAAGI;QAAM,CAAC,CAAC;MAChE;IACF,CAAC,CAAC;EACJ,CAAC;EAED,KAAK,MAAM,CAACG,GAAG,EAAEC,gBAAgB,CAAC,IAAIC,MAAM,CAACC,OAAO,CAAChB,MAAM,CAAC,EAAE;IAC5D,IAAI,CAACb,UAAU,CAAC8B,aAAa,CAACH,gBAAgB,CAAC,EAAE;MAC/C;IACF;IAEA3B,UAAU,CAAC+B,OAAO,CAACd,cAAc,CAAC,CAACU,gBAAgB,EAAED,GAAG,CAAC;EAC3D;AACF;AAEA,OAAO,SAASM,kBAAkBA,CAKhCnB,MAAsE,EACtEC,UAAkB,EAClB;EACA,IAAId,UAAU,KAAKe,SAAS,EAAE;IAC5B;EACF;EAEA,MAAMC,cAAc,GAAGF,UAAU,GAAGJ,mBAAmB;EAEvD,KAAK,MAAM,CAACgB,GAAG,EAAEC,gBAAgB,CAAC,IAAIC,MAAM,CAACC,OAAO,CAAChB,MAAM,CAAC,EAAE;IAC5D,IAAI,CAACb,UAAU,CAAC8B,aAAa,CAACH,gBAAgB,CAAC,EAAE;MAC/C;IACF;IAEA,MAAMP,OAAO,GAAGjB,IAAI,CAACuB,GAAG,CAAC;IACzB,MAAML,UAAU,GAAGL,cAAc,GAAGI,OAAO;IAE3CpB,UAAU,CAAC+B,OAAO,CAAC,MAAM;MACvBJ,gBAAgB,CAACM,cAAc,CAACZ,UAAU,CAAC;IAC7C,CAAC,CAAC,CAAC,CAAC;EACN;AACF;AAEA,OAAO,SAASa,uBAAuBA,CAIrCrB,MAAsE,EAAE;EACxE,KAAK,MAAMa,GAAG,IAAIxB,gBAAgB,EAAE;IAClC,MAAMqB,KAAK,GAAGV,MAAM,CAACa,GAAG,CAAC;IAEzB,IAAI,OAAOH,KAAK,KAAK,UAAU,IAAI,eAAe,IAAIA,KAAK,EAAE;MAC3D,OAAO,IAAI;IACb;EACF;EAEA,OAAO,KAAK;AACd;AAEA,OAAO,SAASY,gBAAgBA,CAC9BC,CAAyC,EACtC;EACH,SAAS;;EAET,OAAQpC,UAAU,EAAE8B,aAAa,CAACM,CAAC,CAAC,GAAGA,CAAC,CAACb,KAAK,GAAGa,CAAC;AACpD","ignoreList":[]}
|
|
@@ -3,18 +3,30 @@
|
|
|
3
3
|
// eslint-disable-next-line @typescript-eslint/no-extraneous-class
|
|
4
4
|
export default class NodeManager {
|
|
5
5
|
static gestures = {};
|
|
6
|
+
static observers = new Map();
|
|
6
7
|
static getHandler(tag) {
|
|
7
8
|
if (tag in this.gestures) {
|
|
8
9
|
return this.gestures[tag];
|
|
9
10
|
}
|
|
10
11
|
throw new Error(`No handler for tag ${tag}`);
|
|
11
12
|
}
|
|
13
|
+
static hasHandler(tag) {
|
|
14
|
+
return tag in this.gestures;
|
|
15
|
+
}
|
|
12
16
|
static createGestureHandler(handlerTag, handler) {
|
|
13
17
|
if (handlerTag in this.gestures) {
|
|
14
18
|
throw new Error(`Handler with tag ${handlerTag} already exists. Please ensure that no Gesture instance is used across multiple GestureDetectors.`);
|
|
15
19
|
}
|
|
16
20
|
this.gestures[handlerTag] = handler;
|
|
17
21
|
this.gestures[handlerTag].handlerTag = handlerTag;
|
|
22
|
+
const pending = this.observers.get(handlerTag);
|
|
23
|
+
if (pending) {
|
|
24
|
+
// Snapshot before iterating — callbacks may call back into observeHandler / cancelObservation
|
|
25
|
+
// and mutate the underlying map.
|
|
26
|
+
for (const callback of Array.from(pending.values())) {
|
|
27
|
+
callback(handler);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
18
30
|
}
|
|
19
31
|
static dropGestureHandler(handlerTag) {
|
|
20
32
|
if (!(handlerTag in this.gestures)) {
|
|
@@ -31,6 +43,38 @@ export default class NodeManager {
|
|
|
31
43
|
}
|
|
32
44
|
this.gestures[handlerTag].detach();
|
|
33
45
|
}
|
|
46
|
+
|
|
47
|
+
// Invokes `callback` every time a handler with `tag` is created and, if the handler already exists,
|
|
48
|
+
// immediately before returning. The observation persists until explicitly cancelled: the registry
|
|
49
|
+
// holds both `owner` and `callback` strongly, so callers MUST call `cancelObservation` or
|
|
50
|
+
// `cancelAllObservationsForOwner` when the owner is going away (typically in effect cleanup) to
|
|
51
|
+
// avoid leaking. Observing the same tag twice with the same `owner` replaces the previous callback.
|
|
52
|
+
static observeHandler(tag, owner, callback) {
|
|
53
|
+
let table = this.observers.get(tag);
|
|
54
|
+
if (!table) {
|
|
55
|
+
table = new Map();
|
|
56
|
+
this.observers.set(tag, table);
|
|
57
|
+
}
|
|
58
|
+
table.set(owner, callback);
|
|
59
|
+
if (tag in this.gestures) {
|
|
60
|
+
callback(this.gestures[tag]);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
static cancelObservation(tag, owner) {
|
|
64
|
+
const table = this.observers.get(tag);
|
|
65
|
+
if (!table) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
table.delete(owner);
|
|
69
|
+
if (table.size === 0) {
|
|
70
|
+
this.observers.delete(tag);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
static cancelAllObservationsForOwner(owner) {
|
|
74
|
+
for (const tag of this.observers.keys()) {
|
|
75
|
+
this.cancelObservation(tag, owner);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
34
78
|
static get nodes() {
|
|
35
79
|
return {
|
|
36
80
|
...this.gestures
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NodeManager","gestures","getHandler","tag","Error","createGestureHandler","handlerTag","handler","dropGestureHandler","onDestroy","detachGestureHandler","detach","nodes"],"sourceRoot":"../../../../src","sources":["web/tools/NodeManager.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"names":["NodeManager","gestures","observers","Map","getHandler","tag","Error","hasHandler","createGestureHandler","handlerTag","handler","pending","get","callback","Array","from","values","dropGestureHandler","onDestroy","detachGestureHandler","detach","observeHandler","owner","table","set","cancelObservation","delete","size","cancelAllObservationsForOwner","keys","nodes"],"sourceRoot":"../../../../src","sources":["web/tools/NodeManager.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,7 +13,7 @@ declare const _default: {
|
|
|
13
13
|
dropGestureHandler(handlerTag: number): void;
|
|
14
14
|
configureRelations(handlerTag: number, relations: GestureRelations): void;
|
|
15
15
|
flushOperations(): void;
|
|
16
|
-
|
|
16
|
+
installUIRuntimeBindings(): boolean;
|
|
17
17
|
};
|
|
18
18
|
export default _default;
|
|
19
19
|
//# sourceMappingURL=RNGestureHandlerModule.web.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNGestureHandlerModule.web.d.ts","sourceRoot":"","sources":["../../src/RNGestureHandlerModule.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;;yBAalC,CAAC,eACP,MAAM,OAAO,QAAQ,cACtB,MAAM,UACV,CAAC;qCAgBG,MAAM,WAET,GAAG,cACA,UAAU,YACZ,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;qCAiBJ,MAAM;wCAQH,MAAM,aAAa,MAAM;2CAGtB,MAAM,aAAa,OAAO,CAAC,MAAM,CAAC;sCAGvC,MAAM;mCAGT,MAAM;mCAQN,MAAM,aAAa,gBAAgB
|
|
1
|
+
{"version":3,"file":"RNGestureHandlerModule.web.d.ts","sourceRoot":"","sources":["../../src/RNGestureHandlerModule.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;;yBAalC,CAAC,eACP,MAAM,OAAO,QAAQ,cACtB,MAAM,UACV,CAAC;qCAgBG,MAAM,WAET,GAAG,cACA,UAAU,YACZ,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;qCAiBJ,MAAM;wCAQH,MAAM,aAAa,MAAM;2CAGtB,MAAM,aAAa,OAAO,CAAC,MAAM,CAAC;sCAGvC,MAAM;mCAGT,MAAM;mCAQN,MAAM,aAAa,gBAAgB;;;;AAlEpE,wBAiFE"}
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type { LegacyBaseButtonProps, LegacyBorderlessButtonProps, LegacyRawButtonProps, LegacyRectButtonProps } from './GestureButtonsProps';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
import { type ButtonProps } from './GestureHandlerButton';
|
|
4
|
+
declare const LegacyRawButtonInner: {
|
|
5
|
+
(props: LegacyRawButtonProps & {
|
|
6
|
+
needsOffscreenAlphaCompositing?: boolean;
|
|
7
|
+
} & import("..").NativeViewGestureHandlerProps & {
|
|
8
8
|
ref?: React.Ref<React.ComponentType<any> | null> | undefined;
|
|
9
9
|
}): React.JSX.Element;
|
|
10
10
|
displayName: any;
|
|
11
11
|
};
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated use `RawButton` instead
|
|
14
|
+
*/
|
|
15
|
+
export declare const LegacyRawButton: (props: Omit<React.ComponentProps<typeof LegacyRawButtonInner>, "needsOffscreenAlphaCompositing">) => React.JSX.Element;
|
|
12
16
|
/**
|
|
13
17
|
* @deprecated use `BaseButton` instead
|
|
14
18
|
*/
|
|
@@ -27,5 +31,9 @@ export declare const LegacyRectButton: ({ ref, ...props }: Omit<LegacyRectButton
|
|
|
27
31
|
export declare const LegacyBorderlessButton: ({ ref, ...props }: Omit<LegacyBorderlessButtonProps, "innerRef"> & {
|
|
28
32
|
ref?: React.Ref<React.ComponentType<any>> | undefined;
|
|
29
33
|
}) => React.JSX.Element;
|
|
30
|
-
|
|
34
|
+
/**
|
|
35
|
+
* @deprecated use `PureNativeButton` instead
|
|
36
|
+
*/
|
|
37
|
+
export declare const LegacyPureNativeButton: (props: Omit<ButtonProps, "needsOffscreenAlphaCompositing">) => React.JSX.Element;
|
|
38
|
+
export {};
|
|
31
39
|
//# sourceMappingURL=GestureButtons.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GestureButtons.d.ts","sourceRoot":"","sources":["../../../src/components/GestureButtons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,OAAO,KAAK,EAGV,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,EACpB,qBAAqB,EAEtB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"GestureButtons.d.ts","sourceRoot":"","sources":["../../../src/components/GestureButtons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,OAAO,KAAK,EAGV,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,EACpB,qBAAqB,EAEtB,MAAM,uBAAuB,CAAC;AAC/B,OAA6B,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAMhF,QAAA,MAAM,oBAAoB;;yCAHS,OAAO;;;;;CASzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,IAAI,CACT,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,EACjD,gCAAgC,CACjC,sBACoE,CAAC;AAgHxE;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,mBAG9B,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC,GAAG;IAC3C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;CACvD,sBAAkD,CAAC;AAyEpD;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,mBAG9B,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC,GAAG;IAC3C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;CACvD,sBAAkD,CAAC;AAwCpD;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAI,mBAGpC,IAAI,CAAC,2BAA2B,EAAE,UAAU,CAAC,GAAG;IACjD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;CACvD,sBAAwD,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,IAAI,CAAC,WAAW,EAAE,gCAAgC,CAAC,sBACW,CAAC"}
|
|
@@ -42,17 +42,28 @@ export interface ButtonProps extends ViewProps, AccessibilityProps {
|
|
|
42
42
|
*/
|
|
43
43
|
touchSoundDisabled?: boolean | undefined;
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* to any negative value).
|
|
45
|
+
* Minimum duration (in milliseconds) of the press-in animation on a
|
|
46
|
+
* quick tap. Defaults to 50ms.
|
|
48
47
|
*/
|
|
49
|
-
|
|
48
|
+
tapAnimationInDuration?: number | undefined;
|
|
50
49
|
/**
|
|
51
|
-
* Minimum duration (in milliseconds)
|
|
52
|
-
*
|
|
53
|
-
* state is visible on quick taps. Defaults to 100ms.
|
|
50
|
+
* Minimum duration (in milliseconds) of the press-out animation on a
|
|
51
|
+
* quick tap. Defaults to 100ms.
|
|
54
52
|
*/
|
|
55
|
-
|
|
53
|
+
tapAnimationOutDuration?: number | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Threshold (in milliseconds) at which the press-out animation
|
|
56
|
+
* switches from the tap-out timing to `longPressAnimationOutDuration`.
|
|
57
|
+
* Set to any negative value to disable the switch.
|
|
58
|
+
*/
|
|
59
|
+
longPressDuration?: number | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Duration of the press-out animation, in milliseconds, when the
|
|
62
|
+
* button is released after being held past `longPressDuration`.
|
|
63
|
+
* Defaults to `tapAnimationOutDuration` when not set (or set to any
|
|
64
|
+
* negative value).
|
|
65
|
+
*/
|
|
66
|
+
longPressAnimationOutDuration?: number | undefined;
|
|
56
67
|
/**
|
|
57
68
|
* Opacity applied to the button when it is pressed.
|
|
58
69
|
*/
|
|
@@ -65,6 +76,39 @@ export interface ButtonProps extends ViewProps, AccessibilityProps {
|
|
|
65
76
|
* Opacity applied to the underlay when the button is pressed.
|
|
66
77
|
*/
|
|
67
78
|
activeUnderlayOpacity?: number | undefined;
|
|
79
|
+
/**
|
|
80
|
+
* Web only.
|
|
81
|
+
*
|
|
82
|
+
* Opacity applied to the button when it is hovered. Defaults to
|
|
83
|
+
* `defaultOpacity` when not set.
|
|
84
|
+
*/
|
|
85
|
+
hoverOpacity?: number | undefined;
|
|
86
|
+
/**
|
|
87
|
+
* Web only.
|
|
88
|
+
*
|
|
89
|
+
* Scale applied to the button when it is hovered. Defaults to
|
|
90
|
+
* `defaultScale` when not set.
|
|
91
|
+
*/
|
|
92
|
+
hoverScale?: number | undefined;
|
|
93
|
+
/**
|
|
94
|
+
* Web only.
|
|
95
|
+
*
|
|
96
|
+
* Opacity applied to the underlay when the button is hovered. Defaults
|
|
97
|
+
* to `defaultUnderlayOpacity` when not set.
|
|
98
|
+
*/
|
|
99
|
+
hoverUnderlayOpacity?: number | undefined;
|
|
100
|
+
/**
|
|
101
|
+
* Web only.
|
|
102
|
+
*
|
|
103
|
+
* Duration of the hover-in animation, in milliseconds. Defaults to 50ms.
|
|
104
|
+
*/
|
|
105
|
+
hoverAnimationInDuration?: number | undefined;
|
|
106
|
+
/**
|
|
107
|
+
* Web only.
|
|
108
|
+
*
|
|
109
|
+
* Duration of the hover-out animation, in milliseconds. Defaults to 100ms.
|
|
110
|
+
*/
|
|
111
|
+
hoverAnimationOutDuration?: number | undefined;
|
|
68
112
|
/**
|
|
69
113
|
* Opacity applied to the button when it is not pressed.
|
|
70
114
|
*/
|
|
@@ -81,6 +125,16 @@ export interface ButtonProps extends ViewProps, AccessibilityProps {
|
|
|
81
125
|
* Color of the underlay.
|
|
82
126
|
*/
|
|
83
127
|
underlayColor?: ColorValue | undefined;
|
|
128
|
+
/**
|
|
129
|
+
* Android only.
|
|
130
|
+
*
|
|
131
|
+
* Whether the view should render with an offscreen alpha-compositing buffer
|
|
132
|
+
* when its `opacity` is less than 1. Defaults to `false` — without the
|
|
133
|
+
* offscreen buffer, children that draw past the view's bounds (e.g. anti-
|
|
134
|
+
* aliased border edges) are not clipped by the layer when `opacity < 1`.
|
|
135
|
+
* Set to `true` to opt back into the standard Android behavior.
|
|
136
|
+
*/
|
|
137
|
+
needsOffscreenAlphaCompositing?: boolean | undefined;
|
|
84
138
|
/**
|
|
85
139
|
* Style object, use it to set additional styles.
|
|
86
140
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GestureHandlerButton.d.ts","sourceRoot":"","sources":["../../../src/components/GestureHandlerButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AAItB,MAAM,WAAW,WAAY,SAAQ,SAAS,EAAE,kBAAkB;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,eAAe,CAAC,CAAC,GAAG,SAAS,CAAC;IACxE;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAE9B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAEhC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;IAErD;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEzC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAEjC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAEjC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAEzC
|
|
1
|
+
{"version":3,"file":"GestureHandlerButton.d.ts","sourceRoot":"","sources":["../../../src/components/GestureHandlerButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,18 +5,25 @@ import { NativeGestureRole } from '../web/interfaces';
|
|
|
5
5
|
type ButtonProps = ViewProps & {
|
|
6
6
|
ref?: React.Ref<React.ComponentRef<typeof View>>;
|
|
7
7
|
enabled?: boolean;
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
tapAnimationInDuration?: number;
|
|
9
|
+
tapAnimationOutDuration?: number;
|
|
10
|
+
longPressDuration?: number;
|
|
11
|
+
longPressAnimationOutDuration?: number;
|
|
12
|
+
hoverAnimationInDuration?: number;
|
|
13
|
+
hoverAnimationOutDuration?: number;
|
|
10
14
|
activeOpacity?: number;
|
|
11
15
|
activeScale?: number;
|
|
12
16
|
activeUnderlayOpacity?: number;
|
|
17
|
+
hoverOpacity?: number;
|
|
18
|
+
hoverScale?: number;
|
|
19
|
+
hoverUnderlayOpacity?: number;
|
|
13
20
|
defaultOpacity?: number;
|
|
14
21
|
defaultScale?: number;
|
|
15
22
|
defaultUnderlayOpacity?: number;
|
|
16
23
|
underlayColor?: ColorValue;
|
|
17
24
|
};
|
|
18
25
|
export declare const ButtonComponent: {
|
|
19
|
-
({ ref: externalRef, enabled,
|
|
26
|
+
({ ref: externalRef, enabled, tapAnimationInDuration, tapAnimationOutDuration, longPressDuration, longPressAnimationOutDuration, hoverAnimationInDuration, hoverAnimationOutDuration, activeOpacity, activeScale, activeUnderlayOpacity, hoverOpacity: hoverOpacityProp, hoverScale: hoverScaleProp, hoverUnderlayOpacity: hoverUnderlayOpacityProp, defaultOpacity, defaultScale, defaultUnderlayOpacity, underlayColor, style, children, ...rest }: ButtonProps): React.JSX.Element;
|
|
20
27
|
displayName: NativeGestureRole;
|
|
21
28
|
};
|
|
22
29
|
export default ButtonComponent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GestureHandlerButton.web.d.ts","sourceRoot":"","sources":["../../../src/components/GestureHandlerButton.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAwB,SAAS,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,KAAK,WAAW,GAAG,SAAS,GAAG;IAC7B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,
|
|
1
|
+
{"version":3,"file":"GestureHandlerButton.web.d.ts","sourceRoot":"","sources":["../../../src/components/GestureHandlerButton.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAwB,SAAS,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,KAAK,WAAW,GAAG,SAAS,GAAG;IAC7B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,UAAU,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,eAAe;0bAsBzB,WAAW;;CA2Ob,CAAC;AAIF,eAAe,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pressable.d.ts","sourceRoot":"","sources":["../../../../src/components/Pressable/Pressable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAiBf,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,kBAAkB,CAAC;AAc1B;;GAEG;AACH,QAAA,MAAM,eAAe,GAAI,OAAO,oBAAoB,
|
|
1
|
+
{"version":3,"file":"Pressable.d.ts","sourceRoot":"","sources":["../../../../src/components/Pressable/Pressable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAiBf,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,kBAAkB,CAAC;AAc1B;;GAEG;AACH,QAAA,MAAM,eAAe,GAAI,OAAO,oBAAoB,sBAmWnD,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -22,7 +22,7 @@ export type InnerPressableEvent = {
|
|
|
22
22
|
export type PressableEvent = {
|
|
23
23
|
nativeEvent: InnerPressableEvent;
|
|
24
24
|
};
|
|
25
|
-
export interface LegacyPressableProps extends CommonPressableProps {
|
|
25
|
+
export interface LegacyPressableProps extends Omit<CommonPressableProps, 'needsOffscreenAlphaCompositing'> {
|
|
26
26
|
/**
|
|
27
27
|
* A gesture object or an array of gesture objects containing the configuration and callbacks to be
|
|
28
28
|
* used with the Pressable's gesture handlers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PressableProps.d.ts","sourceRoot":"","sources":["../../../../src/components/Pressable/PressableProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,4BAA4B,IAAI,8BAA8B,EAC9D,0BAA0B,IAAI,4BAA4B,EAC1D,SAAS,EACT,IAAI,EACJ,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,MAAM,mBAAmB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,0BAA0B,GAAG,4BAA4B,CAAC;AACtE,MAAM,MAAM,4BAA4B,GAAG,8BAA8B,CAAC;AAE1E,MAAM,MAAM,mBAAmB,GAAG;IAChC,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAAE,WAAW,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAElE,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"PressableProps.d.ts","sourceRoot":"","sources":["../../../../src/components/Pressable/PressableProps.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import type { StatusBarAnimation, StyleProp, ViewStyle } from 'react-native';
|
|
|
4
4
|
import type { SharedValue } from 'react-native-reanimated';
|
|
5
5
|
import type { ActiveCursor, UserSelect } from '../handlers/gestureHandlerCommon';
|
|
6
6
|
import { MouseButton } from '../handlers/gestureHandlerCommon';
|
|
7
|
+
import type { WithSharedValue } from '../v3/types';
|
|
7
8
|
export declare enum DrawerPosition {
|
|
8
9
|
LEFT = 0,
|
|
9
10
|
RIGHT = 1
|
|
@@ -27,7 +28,7 @@ export declare enum DrawerKeyboardDismissMode {
|
|
|
27
28
|
NONE = 0,
|
|
28
29
|
ON_DRAG = 1
|
|
29
30
|
}
|
|
30
|
-
export
|
|
31
|
+
export type DrawerLayoutProps = {
|
|
31
32
|
/**
|
|
32
33
|
* This attribute is present in the native android implementation already and is one
|
|
33
34
|
* of the required params. The gesture handler version of DrawerLayout makes it
|
|
@@ -122,13 +123,6 @@ export interface DrawerLayoutProps {
|
|
|
122
123
|
* Style wrapping the drawer.
|
|
123
124
|
*/
|
|
124
125
|
drawerContainerStyle?: StyleProp<ViewStyle>;
|
|
125
|
-
/**
|
|
126
|
-
* Enables two-finger gestures on supported devices, for example iPads with
|
|
127
|
-
* trackpads. If not enabled the gesture will require click + drag, with
|
|
128
|
-
* `enableTrackpadTwoFingerGesture` swiping with two fingers will also trigger
|
|
129
|
-
* the gesture.
|
|
130
|
-
*/
|
|
131
|
-
enableTrackpadTwoFingerGesture?: boolean;
|
|
132
126
|
onDrawerSlide?: (position: number) => void;
|
|
133
127
|
/**
|
|
134
128
|
* Elements that will be rendered inside the content view.
|
|
@@ -140,6 +134,19 @@ export interface DrawerLayoutProps {
|
|
|
140
134
|
* Values: 'none' | 'text' | 'auto'
|
|
141
135
|
*/
|
|
142
136
|
userSelect?: UserSelect;
|
|
137
|
+
/**
|
|
138
|
+
* @default 'false if MouseButton.RIGHT is specified'
|
|
139
|
+
* Allows to enable/disable context menu.
|
|
140
|
+
*/
|
|
141
|
+
enableContextMenu?: boolean;
|
|
142
|
+
} & WithSharedValue<{
|
|
143
|
+
/**
|
|
144
|
+
* Enables two-finger gestures on supported devices, for example iPads with
|
|
145
|
+
* trackpads. If not enabled the gesture will require click + drag, with
|
|
146
|
+
* `enableTrackpadTwoFingerGesture` swiping with two fingers will also trigger
|
|
147
|
+
* the gesture.
|
|
148
|
+
*/
|
|
149
|
+
enableTrackpadTwoFingerGesture?: boolean;
|
|
143
150
|
/**
|
|
144
151
|
* @default 'auto'
|
|
145
152
|
* Sets the displayed cursor pictogram when the drawer is being dragged.
|
|
@@ -151,12 +158,7 @@ export interface DrawerLayoutProps {
|
|
|
151
158
|
* Allows to choose which mouse button should underlying pan handler react to.
|
|
152
159
|
*/
|
|
153
160
|
mouseButton?: MouseButton;
|
|
154
|
-
|
|
155
|
-
* @default 'false if MouseButton.RIGHT is specified'
|
|
156
|
-
* Allows to enable/disable context menu.
|
|
157
|
-
*/
|
|
158
|
-
enableContextMenu?: boolean;
|
|
159
|
-
}
|
|
161
|
+
}, ActiveCursor | MouseButton>;
|
|
160
162
|
export type DrawerMovementOption = {
|
|
161
163
|
initialVelocity?: number;
|
|
162
164
|
animationSpeed?: number;
|