lidarr/frontend/src/Store/Middleware/middlewares.js
2017-09-16 11:09:23 -04:00

43 lines
1 KiB
JavaScript

import { applyMiddleware, compose } from 'redux';
import Raven from 'raven-js';
import createRavenMiddleware from 'raven-for-redux';
// import ravenMiddleware from 'redux-raven-middleware';
import thunk from 'redux-thunk';
import { routerMiddleware } from 'react-router-redux';
import persistState from './persistState';
export default function(history) {
const {
analytics,
branch,
version,
release,
isProduction
} = window.Sonarr;
const dsn = isProduction ? 'https://c3a5b33e08de4e18b7d0505e942dbc95@sentry.io/216290' :
'https://c3a5b33e08de4e18b7d0505e942dbc95@sentry.io/216290';
Raven.config(dsn).install();
const middlewares = [];
if (analytics) {
middlewares.push(createRavenMiddleware(Raven, {
environment: isProduction ? 'production' : 'development',
release,
tags: {
branch,
version
}
}));
}
middlewares.push(routerMiddleware(history));
middlewares.push(thunk);
return compose(
applyMiddleware(...middlewares),
persistState
);
}