use-connection-state
Version:
React hook to detect online and offline network state.
26 lines (22 loc) • 1.04 kB
JavaScript
import { connectionState } from 'connection-state';
import { useCallback, useSyncExternalStore } from 'react';
var createUseConnectionStateHook = function (options) {
var connection = connectionState(options);
var getState = function () { return connection.getState(); };
var initialState = getState();
var useConnectionState = function () {
var subscribe = useCallback(function (onStoreChange) {
connection.addListener(onStoreChange);
return function () {
connection.removeListener(onStoreChange);
};
}, []);
var getSnapshot = useCallback(function () { return getState(); }, []);
var getServerSnapshot = useCallback(function () { return initialState; }, []);
return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
};
return useConnectionState;
};
var useConnectionState = createUseConnectionStateHook();
export { createUseConnectionStateHook, useConnectionState };
//# sourceMappingURL=index.es.js.map