michaelcontento/redux-middleware-react-native-netinfo

View on GitHub
src/index.js

Summary

Maintainability
A
0 mins
Test Coverage
import { createAction } from 'redux-actions';
import createOneShotMiddleware from 'redux-middleware-oneshot';
import { NetInfo } from 'react-native';

export const TYPE = 'REDUX_MIDDLEWARE_REACT_NATIVE_NETINFO';
export const action = createAction(TYPE);
export const middleware = createOneShotMiddleware((dispatch) => {
    const handle = (isConnected) => dispatch(action({ isConnected }));
    NetInfo.isConnected.fetch().done(handle);
    NetInfo.isConnected.addEventListener('change', handle);
});