react-native-confirmation-code-field
Version:
A react-native component to input confirmation code for both Android and IOS
16 lines (15 loc) • 622 B
JavaScript
import { useState, useCallback, useDebugValue } from 'react';
export function useFocusState(onBlurFromProps, onFocusFromProps) {
'use memo';
const [isFocused, setFocusFlag] = useState(false);
const onBlur = useCallback(function onInputBlur(blurEvent) {
setFocusFlag(false);
onBlurFromProps?.(blurEvent);
}, [onBlurFromProps]);
const onFocus = useCallback(function onInputFocus(focusEvent) {
setFocusFlag(true);
onFocusFromProps?.(focusEvent);
}, [onFocusFromProps]);
useDebugValue(isFocused ? 'Focused' : 'Unfocused');
return [isFocused, onFocus, onBlur];
}