Appearance
useIdle
Tracks whether the user is being inactive
Demo
Usage
tsx
import { useIdle } from '@reause/core'
const { idle, lastActive, reset } = useIdle(5 * 60 * 1000) // 5 min
console.log(idle) // true or falsereset() restarts the idle timer without touching lastActive.
Type Declarations
ts
export interface UseIdleOptions extends ConfigurableWindow {
events?: (keyof WindowEventMap)[];
listenForVisibilityChange?: boolean;
initialState?: boolean;
eventFilter?: EventFilter;
}
export interface UseIdleReturn {
idle: boolean;
lastActive: number;
isPending: boolean;
reset: () => void;
stop: () => void;
start: () => void;
}
export function useIdle(timeout?: number, options?: UseIdleOptions): UseIdleReturn