import { createSlice } from '@reduxjs/toolkit';

import { sliceNames } from '@/constants/redux/redux'
import { UserDetails } from '@/types/redux/user'

const initialState: UserDetails = {};

const userSlice = createSlice({
    name: sliceNames.user,
    initialState,
    reducers: {
        setUser: (state, action) => {
            if (action.payload === null) {
                return initialState;
            }
            return { ...state, ...action.payload };
        },
        clearUser: () => initialState,
    },
});

export const { setUser, clearUser } = userSlice.actions;
export default userSlice.reducer;