From 83135dbbff91af7f1cab3029327cdd9067d2a577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrzej=20Antoni=20Kwa=C5=9Bniewski?= Date: Mon, 20 Oct 2025 13:08:26 +0200 Subject: [PATCH] fixed reanimated handlers --- .../src/v3/hooks/utils/reanimatedUtils.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/react-native-gesture-handler/src/v3/hooks/utils/reanimatedUtils.ts b/packages/react-native-gesture-handler/src/v3/hooks/utils/reanimatedUtils.ts index 300ec5f0ad..7882f6b6a9 100644 --- a/packages/react-native-gesture-handler/src/v3/hooks/utils/reanimatedUtils.ts +++ b/packages/react-native-gesture-handler/src/v3/hooks/utils/reanimatedUtils.ts @@ -1,6 +1,11 @@ import RNGestureHandlerModule from '../../../RNGestureHandlerModule'; import { Reanimated } from '../../../handlers/gestures/reanimatedWrapper'; -import { BaseGestureConfig, SharedValue, SharedValueOrT } from '../../types'; +import { + BaseGestureConfig, + GestureCallbacks, + SharedValue, + SharedValueOrT, +} from '../../types'; import { HandlerCallbacks } from './propsWhiteList'; // Variant of djb2 hash function. @@ -87,13 +92,13 @@ export function unbindSharedValues( export function hasWorkletEventHandlers( config: BaseGestureConfig ) { - return Object.entries(config).some( - (key, value) => - (key as keyof BaseGestureConfig) in - HandlerCallbacks && + return Object.entries(config).some(([key, value]) => { + return ( + HandlerCallbacks.has(key as keyof GestureCallbacks) && typeof value === 'function' && '__workletHash' in value - ); + ); + }); } export function maybeUnpackValue(v: SharedValueOrT) {