2020-02-19 13:51:14 +01:00
|
|
|
import { LOGIN_SUCCESS, LOGOUT_SUCCESS } from "../actions/auth.actions";
|
2020-02-19 12:21:04 +01:00
|
|
|
|
|
|
|
const initialState = {
|
|
|
|
isLoggedIn: false,
|
|
|
|
user: null,
|
|
|
|
};
|
|
|
|
|
|
|
|
export function sessionReducer(state = initialState, action) {
|
|
|
|
switch(action.type) {
|
|
|
|
case LOGIN_SUCCESS:
|
|
|
|
return handleLoginSuccess(state, action);
|
2020-02-19 13:51:14 +01:00
|
|
|
case LOGOUT_SUCCESS:
|
|
|
|
return handleLogoutSuccess(state, action);
|
2020-02-19 12:21:04 +01:00
|
|
|
};
|
|
|
|
return state;
|
|
|
|
}
|
|
|
|
|
|
|
|
function handleLoginSuccess(state, action) {
|
|
|
|
return {
|
2020-02-19 13:19:04 +01:00
|
|
|
...state,
|
2020-02-19 12:21:04 +01:00
|
|
|
isLoggedIn: true,
|
|
|
|
user: {
|
|
|
|
username: action.username,
|
|
|
|
},
|
|
|
|
}
|
2020-02-19 13:51:14 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
function handleLogoutSuccess(state, action) {
|
|
|
|
return {
|
|
|
|
...state,
|
|
|
|
isLoggedIn: false,
|
|
|
|
user: null,
|
|
|
|
}
|
2020-02-19 12:21:04 +01:00
|
|
|
};
|