Spaces:
Paused
Paused
File size: 788 Bytes
a0fda44 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
import { createSlice } from "@reduxjs/toolkit";
const contactsSlice = createSlice({
name: "contactsSlice",
initialState: [],
reducers: {
setContacts: (state, { payload: contacts }) => contacts,
addContact: (state, { payload: contact }) => {
state.push(contact);
},
removeContact: (state, { payload }) => {
return state.filter(
(contact) => contact.contactDetails._id !== payload.id
);
},
setContactOnlineStatus: (state, { payload }) => {
const contactIndex = state.findIndex(
(contact) => contact.contactDetails._id === payload.id
);
state[contactIndex].contactDetails.status = payload.status;
},
},
});
export const contactsActions = contactsSlice.actions;
export default contactsSlice.reducer;
|