2017-04-07 07:15:22 +02:00
|
|
|
const redux = require('redux');
|
|
|
|
const thunk = require("redux-thunk").default;
|
|
|
|
const env = process.env.NODE_ENV || 'development';
|
|
|
|
|
|
|
|
import {
|
|
|
|
createLogger
|
|
|
|
} from 'redux-logger'
|
|
|
|
import appReducer from 'reducers/app';
|
2017-04-22 15:17:01 +02:00
|
|
|
import walletReducer from 'reducers/wallet'
|
2017-04-07 07:15:22 +02:00
|
|
|
|
|
|
|
function isFunction(object) {
|
|
|
|
return typeof object === 'function';
|
|
|
|
}
|
|
|
|
|
|
|
|
function isNotFunction(object) {
|
|
|
|
return !isFunction(object);
|
|
|
|
}
|
|
|
|
|
|
|
|
const reducers = redux.combineReducers({
|
|
|
|
app: appReducer,
|
2017-04-22 15:17:01 +02:00
|
|
|
wallet: walletReducer,
|
2017-04-07 07:15:22 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
var middleware = [thunk]
|
|
|
|
|
|
|
|
if (env === 'development') {
|
|
|
|
const logger = createLogger({
|
|
|
|
collapsed: true
|
|
|
|
});
|
|
|
|
middleware.push(logger)
|
|
|
|
}
|
|
|
|
|
|
|
|
var createStoreWithMiddleware = redux.compose(
|
|
|
|
redux.applyMiddleware(...middleware)
|
|
|
|
)(redux.createStore);
|
|
|
|
|
|
|
|
var reduxStore = createStoreWithMiddleware(reducers);
|
|
|
|
|
|
|
|
export default reduxStore;
|