revalidate config changes, check on focus changes

This commit is contained in:
Ben Phelps 2022-09-26 22:54:12 +03:00
parent 5f0c1ec70a
commit c980c70798
3 changed files with 96 additions and 1 deletions

View file

@ -0,0 +1,26 @@
import { useState, useEffect } from "react";
const hasFocus = () => typeof document !== "undefined" && document.hasFocus();
const useWindowFocus = () => {
const [focused, setFocused] = useState(hasFocus);
useEffect(() => {
setFocused(hasFocus());
const onFocus = () => setFocused(true);
const onBlur = () => setFocused(false);
window.addEventListener("focus", onFocus);
window.addEventListener("blur", onBlur);
return () => {
window.removeEventListener("focus", onFocus);
window.removeEventListener("blur", onBlur);
};
}, []);
return focused;
};
export default useWindowFocus;