ca-mfe-page-scoring-ui
Version:
This is a react shell for the SPGI Platform MFE implementation
39 lines (35 loc) • 1.39 kB
text/typescript
import { createSlice } from '@reduxjs/toolkit';
const initialState= {
isOpen: true,
isOpenOnDefaultLoad: true,
savedPreferences: {},
editedPreferences: []
};
export const scoringSelectionSlice = createSlice({
name: 'scoringSelection',//scoringSelectionModal
initialState,
reducers: {
setScoringSelectionModal: (state, action) => {
state.isOpen = action.payload;
state.isOpenOnDefaultLoad = false;
},
setSavedPreferences: (state, action) => {
state.savedPreferences = action.payload;
state.editedPreferences = action.payload.selectedTiles;
},
setEditPreferences: (state, action) => {
const preferences = [...state.editedPreferences];
if(action.payload.add){
state.editedPreferences = [...new Set([...preferences, action.payload.add])];
} else {
const index = preferences.indexOf(action.payload.remove);
if(index !== -1){
preferences.splice(index, 1);
state.editedPreferences = [...preferences];
}
}
}
}
});
export const { setScoringSelectionModal, setSavedPreferences, setEditPreferences } = scoringSelectionSlice.actions;
export default scoringSelectionSlice.reducer;