UNPKG

@adaptabletools/adaptable-cjs

Version:

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

20 lines (19 loc) 909 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const react_1 = require("react"); const usePrevious_1 = tslib_1.__importDefault(require("./usePrevious")); const useAutoFocus = (props, focusElementRef) => { const autoFocus = props.autoFocus === undefined ? true : props.autoFocus; const prevAutoFocus = (0, usePrevious_1.default)(props.previous ? props.previous({ autoFocus }) : autoFocus, undefined); (0, react_1.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]); }; exports.default = useAutoFocus;