29 lines
891 B
TypeScript
29 lines
891 B
TypeScript
import { createSlice } from '@reduxjs/toolkit';
|
|
|
|
const entitiesSlice = createSlice({
|
|
name: 'entities',
|
|
initialState: {},
|
|
reducers: {
|
|
setEntities: (state, action) => {
|
|
return action.payload;
|
|
},
|
|
|
|
addEntity: (state: any, action: any) => {
|
|
state.push(action.payload);
|
|
},
|
|
updateEntity: (state: any, action) => {
|
|
const { id, updatedEntity } = action.payload;
|
|
const index = state.findIndex((entity: any) => entity.id === id);
|
|
if (index !== -1) {
|
|
state[index] = updatedEntity;
|
|
}
|
|
},
|
|
// removeEntity: (state, action) => {
|
|
// const idToRemove = action.payload;
|
|
// return state.filter((entity: any) => entity.id !== idToRemove);
|
|
// },
|
|
},
|
|
});
|
|
|
|
export const { setEntities, addEntity, updateEntity } = entitiesSlice.actions;
|
|
export default entitiesSlice.reducer; |