UNPKG

@uiw/react-use-online

Version:

useOnline is a tiny, zero-dependency hook for responding to online/offline changes.

24 lines (23 loc) 615 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useOnline = useOnline; var _react = require("react"); function getSnapshot() { return navigator.onLine; } function getServerSnapshot() { return true; } function subscribe(callback) { window.addEventListener('online', callback); window.addEventListener('offline', callback); return function () { window.removeEventListener('online', callback); window.removeEventListener('offline', callback); }; } function useOnline() { return (0, _react.useSyncExternalStore)(subscribe, getSnapshot, getServerSnapshot); }