UNPKG

@sberdevices/plasma-temple

Version:

SberDevices CanvasApp Templates.

44 lines (36 loc) 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useFocusOnMount = void 0; var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var useFocusOnMount = function useFocusOnMount(ref) { var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var preventScroll = params.preventScroll, _params$delay = params.delay, delay = _params$delay === void 0 ? 150 : _params$delay, _params$prevent = params.prevent, prevent = _params$prevent === void 0 ? false : _params$prevent, _params$callOnce = params.callOnce, callOnce = _params$callOnce === void 0 ? false : _params$callOnce; var calledOnce = _react["default"].useRef(false); _react["default"].useEffect(function () { if (callOnce && calledOnce.current) { return; } var timer = setTimeout(function () { if (!prevent && ref.current instanceof HTMLElement) { ref.current.focus({ preventScroll: preventScroll }); calledOnce.current = true; } }, delay); return function () { return clearTimeout(timer); }; }, [ref, prevent, preventScroll, delay, callOnce]); }; exports.useFocusOnMount = useFocusOnMount; //# sourceMappingURL=useFocusOnMount.js.map