useDocumentVisibility
Reactive document.visibilityState via the visibilitychange event. Browser composable — import from @sigx/use-web.
import { watch } from 'sigx';
import { useDocumentVisibility } from '@sigx/use-web';
const visibility = useDocumentVisibility();
watch(visibility, v => v === 'visible' && refetch()); // refetch when the tab returns
The return is a ReadSignal<DocumentVisibilityState> — 'visible' or 'hidden'.
Signature
function useDocumentVisibility(options?: ConfigurableDocument): ReadSignal<DocumentVisibilityState>;
Pass { document } to drive it from another document or a mock — see Configurable*.
SSR
On the server the signal reads 'visible', then reflects the real document.visibilityState on mount.
See also
useOnline— pair with connectivity to gate background work.useNetwork— full reactive network state.useIntervalFn— pause polling while the tab is hidden.
