UNPKG

@adaptabletools/adaptable

Version:

Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

17 lines (16 loc) 736 B
import { useEffect } from 'react'; import usePrevious from './usePrevious'; const useAutoFocus = (props, focusElementRef) => { const autoFocus = props.autoFocus === undefined ? true : props.autoFocus; const prevAutoFocus = usePrevious(props.previous ? props.previous({ autoFocus }) : autoFocus, undefined); useEffect(() => { if (focusElementRef.current && focusElementRef.current.focus && autoFocus && (props.shouldFocus ? props.shouldFocus({ autoFocus }) : true) && (prevAutoFocus === undefined || prevAutoFocus !== autoFocus)) { focusElementRef.current.focus(); } }, [autoFocus, prevAutoFocus, props.isOpen]); }; export default useAutoFocus;