UNPKG

react-native-sortables

Version:

Powerful Sortable Components for Flexible Content Reordering in React Native

26 lines (24 loc) 793 B
"use strict"; import { useCallback, useEffect } from 'react'; import { useSharedValue } from 'react-native-reanimated'; import { clearAnimatedTimeout, setAnimatedTimeout } from './animatedTimeout'; export function useAnimatedDebounce() { const updateTimeoutId = useSharedValue(-1); useEffect(() => { return () => { clearAnimatedTimeout(updateTimeoutId.value); }; }, [updateTimeoutId]); const debounce = useCallback((callback, timeout) => { 'worklet'; if (updateTimeoutId.value !== -1) { clearAnimatedTimeout(updateTimeoutId.value); } updateTimeoutId.value = setAnimatedTimeout(() => { callback(); updateTimeoutId.value = -1; }, timeout); }, [updateTimeoutId]); return debounce; } //# sourceMappingURL=useAnimatedDebounce.js.map