@navikt/ds-react
Version:
React components from the Norwegian Labour and Welfare Administration.
20 lines • 814 B
JavaScript
import { useEffect } from "react";
import { useCallbackRef } from "../../../util/hooks/index.js";
export function useEscapeKeydown(callback, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document, enabled = true) {
const onEscapeKeyDown = useCallbackRef(callback);
useEffect(() => {
if (!enabled) {
return;
}
const handleKeyDown = (event) => {
if (event.key === "Escape") {
onEscapeKeyDown(event);
}
};
ownerDocument.addEventListener("keydown", handleKeyDown, true);
return () => {
ownerDocument.removeEventListener("keydown", handleKeyDown, true);
};
}, [onEscapeKeyDown, ownerDocument, enabled]);
}
//# sourceMappingURL=useEscapeKeydown.js.map