instantjob-recruiter-client
Version:
a set of tools for creating an instantjob recruiter react client
49 lines (35 loc) • 1.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');
var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
var _redux = require('redux');
var _reduxRavenMiddleware = require('redux-raven-middleware');
var _reduxRavenMiddleware2 = _interopRequireDefault(_reduxRavenMiddleware);
var _constants = require('./constants');
var _root = require('../reducers/root');
var _root2 = _interopRequireDefault(_root);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var logger = function logger(store) {
return function (next) {
return function (action) {
console.group(action.type);
console.info('dispatching', action);
var result = next(action);
console.log('next state', store.getState());
console.groupEnd(action.type);
return result;
};
};
};
var store = (0, _redux.createStore)(_root2.default, _redux.applyMiddleware.apply(undefined, (0, _toConsumableArray3.default)([_constants.DEV && logger, _constants.PRODUCTION && (0, _reduxRavenMiddleware2.default)(_constants.sentry_dsn, {
release: __RELEASE__
})].filter(Boolean))));
if (module.hot) {
module.hot.accept('../reducers/root', function () {
var next_root_reducer = require('../reducers/root');
store.replaceReducer(next_root_reducer);
});
}
exports.default = store;