import ActionTypes from '../../actions'; import InitialState from './initSetupInitialState'; const initialState = new InitialState(); export default function authReducer(state = initialState, action) { if (!(state instanceof InitialState)) return initialState.mergeDeep(state); switch (action.type) { case ActionTypes.GET_PERSONPROFILE_PERSONALINFO_REQUEST: case ActionTypes.UPDATE_PERSONAL_DEFINE_REQUEST: case ActionTypes.GET_PERSONAL_DEFINED_DATA_REQUEST: case ActionTypes.UPDATE_PERSONAL_DETAIL_REQUEST: { const nextState = state .setIn(['state'], action.type) .setIn(['isLoading'], true); return nextState; } case ActionTypes.GET_PERSONPROFILE_PERSONALINFO_SUCCESS: case ActionTypes.UPDATE_PERSONAL_DETAIL_SUCCESS: { return state .setIn(['state'], action.type) .setIn(['isLoading'], false) .setIn(['personalInfo'], action.payload); } case ActionTypes.GET_PERSONAL_DEFINED_DATA_SUCCESS: { return state .setIn(['state'], action.type) .setIn(['isLoading'], false) .setIn(['standardData'], action.payload); } case ActionTypes.UPDATE_PERSONAL_DEFINE_SUCCESS: { return state .setIn(['state'], action.type) .setIn(['isLoading'], false) .setIn(['standardData'], action.payload) .setIn(['isBlocking'], false); } case ActionTypes.GET_PERSONPROFILE_PERSONALINFO_FAILURE: case ActionTypes.UPDATE_PERSONAL_DETAIL_FAILURE: { return state.setIn(['state'], action.type).setIn(['isLoading'], false).setIn(['error'], action.payload); } case ActionTypes.GET_PERSONAL_DEFINED_DATA_FAILURE: { return state.setIn(['isLoading'], false).setIn(['error'], action.payload); } case ActionTypes.UPDATE_PERSONAL_DEFINE_FAILURE: { return state.setIn(['isLoading'], false).setIn(['error'], action.payload); } default: } return state; }