import {
LOCALE_STORAGE_AUTH_KEY,
LOCALE_STORAGE_REFRESH_TOKEN,
} from '@/utils/constants';
import type { Module } from '@hanabira/store';
const AuthState: Module = {
namespace: 'auth',
state: {
user: null,
isAuth: false,
[LOCALE_STORAGE_AUTH_KEY]: null,
[LOCALE_STORAGE_REFRESH_TOKEN]: null,
},
reducers: {
logout: (state) => ({ ...state, user: null, isAuth: false }),
login: (state, payload) => ({
...state,
isAuth: true,
user: payload.user,
[LOCALE_STORAGE_AUTH_KEY]: payload.token,
[LOCALE_STORAGE_REFRESH_TOKEN]: payload.refreshToken,
}),
},
};
export default AuthState;