import { useEffect } from "react"; let activeLocks = 0; export default function useModalLock(isOpen: boolean): void { useEffect(() => { if (isOpen) { if (activeLocks === 0) document.body.style.overflow = "hidden"; activeLocks++; return () => { activeLocks = Math.max(0, activeLocks - 1); if (activeLocks === 0) document.body.style.overflow = ""; }; } }, [isOpen]); }