react-native-confirmation-code-field
Version:
A react-native component to input confirmation code for both Android and IOS
15 lines (14 loc) • 597 B
JavaScript
import React, { useState, useCallback } from 'react';
import { useInterval } from './useTimer';
export const DEFAULT_BLINKING_SPEED = 500;
export const DEFAULT_CURSOR_SYMBOL = '|';
export function Cursor({ cursorSymbol = DEFAULT_CURSOR_SYMBOL, delay = DEFAULT_BLINKING_SPEED, }) {
'use memo';
const [visibleFlag, setFlag] = useState(true);
const toggleVisibility = useCallback(function toggleCursorVisibility() {
setFlag((prev) => !prev);
}, []);
useInterval(toggleVisibility, delay);
return <>{visibleFlag ? cursorSymbol : ''}</>;
}
Cursor.displayName = 'Cursor';