PrithviGuardian / client /src /hooks /useOfflineStatus.ts
Varad Bakshi
Fresh upload
e7427b5
Raw
History Blame Contribute Delete
603 Bytes
import { useState, useEffect } from 'react';
export function useOfflineStatus(): boolean {
const [isOffline, setIsOffline] = useState(!navigator.onLine);
useEffect(() => {
const handleOnline = () => setIsOffline(false);
const handleOffline = () => setIsOffline(true);
window.addEventListener('online', handleOnline);
window.addEventListener('offline', handleOffline);
return () => {
window.removeEventListener('online', handleOnline);
window.removeEventListener('offline', handleOffline);
};
}, []);
return isOffline;
}
export default useOfflineStatus;