zepio/app/redux/errorHandler.js

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);
};