{"version":3,"file":"use-document-visibility.cjs","names":[],"sources":["../../src/hooks/use-document-visibility.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\nexport type DocumentVisibility = \"visible\" | \"hidden\";\n\n/** Subscribe to `document.visibilityState`. Returns `\"visible\"` during SSR. */\nexport function useDocumentVisibility(): DocumentVisibility {\n    const [state, setState] = useState<DocumentVisibility>(() =>\n        typeof document === \"undefined\"\n            ? \"visible\"\n            : (document.visibilityState as DocumentVisibility),\n    );\n\n    useEffect(() => {\n        if (typeof document === \"undefined\") return;\n        const handler = (): void => setState(document.visibilityState as DocumentVisibility);\n        document.addEventListener(\"visibilitychange\", handler);\n        return () => document.removeEventListener(\"visibilitychange\", handler);\n    }, []);\n\n    return state;\n}\n"],"mappings":"uBAKA,SAAgB,GAA4C,CACxD,GAAM,CAAC,EAAO,IAAA,EAAY,EAAA,SAAA,KACtB,OAAO,SAAa,IACd,UACC,SAAS,eACpB,EASA,OAPA,EAAA,EAAA,UAAA,KAAgB,CACZ,GAAI,OAAO,SAAa,IAAa,OACrC,IAAM,MAAsB,EAAS,SAAS,eAAqC,EAEnF,OADA,SAAS,iBAAiB,mBAAoB,CAAO,MACxC,SAAS,oBAAoB,mBAAoB,CAAO,CACzE,EAAG,CAAC,CAAC,EAEE,CACX"}