fleet/frontend/redux/nodes/components/ForgotPasswordPage/reducer.js
Mike Stone 92d91fdebc Handle server errors (#730)
* consistent error handling

* Display server errors in InviteUserForm

* Handle errors in Form component

* Refactors query form

* creates KolideAce component

* Renders QueryForm from query page and manage hosts page

* Moves ace editor and select targets dropdown to query form

* Render base errors in Form HOC

* LoginPage and ForgotPasswordPage server errors

* Ensure unique key for user blocks

* Adds base error to login form and forgot password form

* Adds base error to query form

* Adds base error to Pack Form

* Adds errors to confirm invite form

* Adds clearErrors action

* clear errors when confirm invite page unmounts

* Handle errors in the App Setting page

* Handle server errors in the User Settings Page

* Handle server errors in the User Management Page
2017-01-05 19:01:17 -05:00

46 lines
894 B
JavaScript

import {
CLEAR_FORGOT_PASSWORD_ERRORS,
FORGOT_PASSWORD_ERROR,
FORGOT_PASSWORD_REQUEST,
FORGOT_PASSWORD_SUCCESS,
} from './actions';
export const initialState = {
email: null,
errors: {},
loading: false,
};
const reducer = (state = initialState, { type, payload }) => {
switch (type) {
case CLEAR_FORGOT_PASSWORD_ERRORS:
return {
...state,
errors: {},
};
case FORGOT_PASSWORD_REQUEST:
return {
...state,
errors: {},
loading: true,
};
case FORGOT_PASSWORD_SUCCESS:
return {
...state,
email: payload.data.email,
errors: {},
loading: false,
};
case FORGOT_PASSWORD_ERROR:
return {
...state,
email: null,
errors: payload.errors,
loading: false,
};
default:
return state;
}
};
export default reducer;