instantjob-recruiter-client
Version:
a set of tools for creating an instantjob recruiter react client
30 lines (25 loc) • 807 B
JSX
import {createStore, applyMiddleware} from 'redux'
import RavenMiddleware from 'redux-raven-middleware'
import {sentry_dsn, DEV, PRODUCTION} from './constants'
import reducer from '../reducers/root'
const logger = store => next => action => {
console.group(action.type)
console.info('dispatching', action)
let result = next(action)
console.log('next state', store.getState())
console.groupEnd(action.type)
return result
}
const store = createStore(reducer, applyMiddleware(...([
DEV && logger,
PRODUCTION && RavenMiddleware(sentry_dsn, {
release: __RELEASE__,
}),
].filter(Boolean))))
if (module.hot) {
module.hot.accept('../reducers/root', () => {
const next_root_reducer = require('../reducers/root')
store.replaceReducer(next_root_reducer)
})
}
export default store