23 lines
753 B
JavaScript
23 lines
753 B
JavaScript
|
// @flow
|
||
|
import { LOAD_ADDRESSES_ERROR } from './modules/receive';
|
||
|
import { VALIDATE_ADDRESS_ERROR } from './modules/send';
|
||
|
import { LOAD_TRANSACTIONS_ERROR } from './modules/transactions';
|
||
|
import { LOAD_WALLET_SUMMARY_ERROR } from './modules/wallet';
|
||
|
import { showErrorModal } from './modules/app';
|
||
|
|
||
|
import type { Middleware } from '../types/redux';
|
||
|
|
||
|
const ERRORS = [
|
||
|
LOAD_ADDRESSES_ERROR,
|
||
|
VALIDATE_ADDRESS_ERROR,
|
||
|
LOAD_TRANSACTIONS_ERROR,
|
||
|
LOAD_WALLET_SUMMARY_ERROR,
|
||
|
];
|
||
|
|
||
|
export const errorHandler: Middleware = ({ dispatch }) => next => (action) => {
|
||
|
// eslint-disable-next-line max-len
|
||
|
if (ERRORS.includes(action.type)) return dispatch(showErrorModal({ error: action.payload.error || 'Something went wrong!' }));
|
||
|
|
||
|
return next(action);
|
||
|
};
|