From 55591e0ae19e2e951377efbfb01f6abea9eee90d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Thu, 1 Oct 2026 12:18:10 +0200 Subject: [PATCH] Make gesture fields non-enumerable --- .../src/v3/hooks/useGesture.ts | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/packages/react-native-gesture-handler/src/v3/hooks/useGesture.ts b/packages/react-native-gesture-handler/src/v3/hooks/useGesture.ts index b4d4106bdf..1df1a1147f 100644 --- a/packages/react-native-gesture-handler/src/v3/hooks/useGesture.ts +++ b/packages/react-native-gesture-handler/src/v3/hooks/useGesture.ts @@ -60,8 +60,8 @@ export function useGesture< [handlerTag, config.simultaneousWith, config.requireToFail, config.block] ); - const gesture = useMemo( - () => ({ + const gesture = useMemo(() => { + const g = { handlerTag, type, config, @@ -71,17 +71,25 @@ export function useGesture< reanimatedEventHandler, }, gestureRelations, - }), - [ - handlerTag, - type, - config, - jsEventHandler, - reanimatedEventHandler, - animatedEventHandler, - gestureRelations, - ] - ); + }; + + Object.defineProperties(g, { + type: { enumerable: false }, + config: { enumerable: false }, + detectorCallbacks: { enumerable: false }, + gestureRelations: { enumerable: false }, + }); + + return g; + }, [ + handlerTag, + type, + config, + jsEventHandler, + reanimatedEventHandler, + animatedEventHandler, + gestureRelations, + ]); useEffect(() => { NativeProxy.createGestureHandler(type, handlerTag, {});