diff options
Diffstat (limited to 'app/javascript/flavours/glitch/middleware/errors.js')
-rw-r--r-- | app/javascript/flavours/glitch/middleware/errors.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/app/javascript/flavours/glitch/middleware/errors.js b/app/javascript/flavours/glitch/middleware/errors.js new file mode 100644 index 000000000..3639a5951 --- /dev/null +++ b/app/javascript/flavours/glitch/middleware/errors.js @@ -0,0 +1,17 @@ +import { showAlertForError } from 'flavours/glitch/actions/alerts'; + +const defaultFailSuffix = 'FAIL'; + +export default function errorsMiddleware() { + return ({ dispatch }) => next => action => { + if (action.type && !action.skipAlert) { + const isFail = new RegExp(`${defaultFailSuffix}$`, 'g'); + + if (action.type.match(isFail)) { + dispatch(showAlertForError(action.error, action.skipNotFound)); + } + } + + return next(action); + }; +} |