UNPKG

periodicjs.ext.reactadmin

Version:

An authentication extension for periodicjs that uses passport to authenticate user sessions.

42 lines (37 loc) 1.47 kB
import { createStore, applyMiddleware, } from 'redux'; import thunk from 'redux-thunk'; import combinedReducers from '../reducers'; import { routerMiddleware, } from 'react-router-redux'; import { browserHistory, hashHistory, } from 'react-router'; import AppConfigSettings from '../content/config/settings.json'; // import promise from 'redux-promise'; import createLogger from 'redux-logger'; const windowState = (typeof window !=='undefined' && window.__padmin) ? window.__padmin : {}; const disableLogger = (store) => (next) => (action) => { // console .log('dispatching: ', action,{store}); return next(action); }; const logger = (windowState.disableLogger) ? disableLogger : createLogger(); // const logger = (store) => (next) => (action) => { // console.log('dispatching: ', action,{store}); // return next(action); // }; const getRouterHistoryType = function(routerHistoryType){ return (routerHistoryType==='browserHistory') ? browserHistory : hashHistory; } const AppReduxStore = createStore( combinedReducers, applyMiddleware( thunk, routerMiddleware(getRouterHistoryType(AppConfigSettings.routerHistory)) // promise, , logger ) ); if (module.hot) { // Enable Webpack hot module replacement for reducers module.hot.accept(combinedReducers, () => { const nextRootReducer = combinedReducers; AppReduxStore.replaceReducer(nextRootReducer); }); } export default AppReduxStore;