// redux/slices/tdrDataByIdSlice.ts import { createSlice, PayloadAction } from "@reduxjs/toolkit"; import { getTDRChartDataByIdThunk } from "../thunks/getTDRChartDataByIdThunk"; const initialState = { dataById: {} as Record, selectedId: null as number | null, }; const tdrDataByIdSlice = createSlice({ name: "tdrDataByIdSlice", initialState, reducers: { setTDRChartDataById: ( state, action: PayloadAction<{ id: number; data: { d: number; p: number }[] }> ) => { state.dataById[action.payload.id] = action.payload.data; }, setSelectedTDRId: (state, action: PayloadAction) => { state.selectedId = action.payload; }, }, extraReducers: (builder) => { builder.addCase(getTDRChartDataByIdThunk.fulfilled, (state, action) => { const { id, data } = action.payload; state.dataById[id] = data; state.selectedId = id; }); }, }); export const { setTDRChartDataById, setSelectedTDRId } = tdrDataByIdSlice.actions; export default tdrDataByIdSlice.reducer;