feat: priorityConfig vollständig auf Redux umgestellt – Slice, Thunk und Service integriert und zentral ausgelagert
This commit is contained in:
16
redux/slices/database/priorityConfigSlice.js
Normal file
16
redux/slices/database/priorityConfigSlice.js
Normal file
@@ -0,0 +1,16 @@
|
||||
// redux/slices/database/priorityConfigSlice.js
|
||||
import { fetchPriorityConfigThunk } from "../../thunks/database/fetchPriorityConfigThunk";
|
||||
|
||||
import { createSlice } from "@reduxjs/toolkit";
|
||||
const slice = createSlice({
|
||||
name: "priorityConfig",
|
||||
initialState: { data: [], status: "idle" },
|
||||
extraReducers: (builder) => {
|
||||
builder.addCase(fetchPriorityConfigThunk.fulfilled, (state, action) => {
|
||||
state.status = "succeeded";
|
||||
state.data = action.payload;
|
||||
});
|
||||
},
|
||||
});
|
||||
export default slice.reducer;
|
||||
export const selectPriorityConfig = (state) => state.priorityConfig.data;
|
||||
@@ -22,6 +22,7 @@ import readPoiMarkersStoreReducer from "./slices/readPoiMarkersStoreSlice";
|
||||
import selectedAreaReducer from "./slices/selectedAreaSlice";
|
||||
import zoomTriggerReducer from "./slices/zoomTriggerSlice";
|
||||
import urlParameterReducer from "./slices/urlParameterSlice";
|
||||
import priorityConfigReducer from "./slices/database/priorityConfigSlice";
|
||||
|
||||
export const store = configureStore({
|
||||
reducer: {
|
||||
@@ -46,5 +47,6 @@ export const store = configureStore({
|
||||
selectedArea: selectedAreaReducer,
|
||||
zoomTrigger: zoomTriggerReducer,
|
||||
urlParameter: urlParameterReducer,
|
||||
priorityConfig: priorityConfigReducer,
|
||||
},
|
||||
});
|
||||
|
||||
7
redux/thunks/database/fetchPriorityConfigThunk.js
Normal file
7
redux/thunks/database/fetchPriorityConfigThunk.js
Normal file
@@ -0,0 +1,7 @@
|
||||
// /redux/thunks/database/fetchPriorityConfigThunk.js
|
||||
import { createAsyncThunk } from "@reduxjs/toolkit";
|
||||
import { fetchPriorityConfigService } from "../../../services/database/fetchPriorityConfigService";
|
||||
|
||||
export const fetchPriorityConfigThunk = createAsyncThunk("priorityConfig/fetch", async () => {
|
||||
return await fetchPriorityConfigService();
|
||||
});
|
||||
Reference in New Issue
Block a user