mirror of
https://github.com/generativefm/generative.fm.git
synced 2026-04-26 03:00:08 -04:00
Move online status control to a middleware
This commit is contained in:
@@ -4,7 +4,6 @@ import { install } from 'offline-plugin/runtime';
|
||||
import { Provider } from 'react-redux';
|
||||
import store from './store';
|
||||
import indicateUpdateAvailable from './store/actions/creators/indicate-update-available.creator';
|
||||
import setOnlineStatus from './store/actions/creators/set-online-status.creator';
|
||||
import isProduction from './config/is-production';
|
||||
import App from './containers/app.container';
|
||||
import './styles/base-styles.scss';
|
||||
@@ -20,12 +19,6 @@ if (isProduction) {
|
||||
console.log('https://github.com/generative-music/generative.fm');
|
||||
}
|
||||
|
||||
const makeSetOnlineStatus = online => () =>
|
||||
store.dispatch(setOnlineStatus(online));
|
||||
|
||||
window.addEventListener('online', makeSetOnlineStatus(true));
|
||||
window.addEventListener('offline', makeSetOnlineStatus(false));
|
||||
|
||||
render(
|
||||
<Provider store={store}>
|
||||
<App />
|
||||
|
||||
13
src/store/middleware/online-status.middleware.js
Normal file
13
src/store/middleware/online-status.middleware.js
Normal file
@@ -0,0 +1,13 @@
|
||||
import setOnlineStatus from '../actions/creators/set-online-status.creator';
|
||||
|
||||
const setOnlineStatusMiddleware = store => next => {
|
||||
const makeSetOnlineStatus = online => () =>
|
||||
store.dispatch(setOnlineStatus(online));
|
||||
|
||||
window.addEventListener('online', makeSetOnlineStatus(true));
|
||||
window.addEventListener('offline', makeSetOnlineStatus(false));
|
||||
|
||||
return action => next(action);
|
||||
};
|
||||
|
||||
export default setOnlineStatusMiddleware;
|
||||
Reference in New Issue
Block a user