UNPKG

@react-md/utils

Version:
22 lines 705 B
import { useCallback, useRef } from "react"; import { applyRef } from "../applyRef"; import { useKeyboardFocusContext } from "./movementContext"; /** * @internal * @remarks \@since 5.0.0 */ export function useKeyboardFocusableElement(ref) { var _a = useKeyboardFocusContext(), attach = _a.attach, detach = _a.detach; var nodeRef = useRef(null); return useCallback(function (instance) { applyRef(instance, ref); if (instance) { attach(instance); } else if (nodeRef.current) { detach(nodeRef.current); } nodeRef.current = instance; }, [attach, detach, ref]); } //# sourceMappingURL=useKeyboardFocusableElement.js.map