feat: Recoil-Atom 'readPoiMarkersStore' durch Redux ersetzt

- Slice 'readPoiMarkersStoreSlice' hinzugefügt mit set/clear Funktionen
- index.js vollständig auf Redux umgestellt: useSelector + dispatch(setPoiMarkers)
- AddPOIModal.js verwendet Redux (Dispatch vorbereitet), Recoil entfernt
- store.js um readPoiMarkersStoreReducer ergänzt
- CHANGELOG.md auf 1.1.85 aktualisiert
This commit is contained in:
Ismail Ali
2025-05-18 15:49:26 +02:00
parent 819639164a
commit b6bb533339
6 changed files with 51 additions and 27 deletions

View File

@@ -1,17 +1,22 @@
//redux/slices/readPoiMarkersStoreSlice.js
import { atom } from "recoil";
// redux/slices/readPoiMarkersStoreSlice.js
import { createSlice } from "@reduxjs/toolkit";
const storeKey = "readPoiMarkersStore";
const initialState = {
poiMarkers: [],
};
// Verhindert doppelte Registrierung bei HMR
export const readPoiMarkersStore =
globalThis.readPoiMarkersStore ||
atom({
key: storeKey,
default: [],
});
const readPoiMarkersStoreSlice = createSlice({
name: "readPoiMarkersStore",
initialState,
reducers: {
setPoiMarkers: (state, action) => {
state.poiMarkers = action.payload;
},
clearPoiMarkers: (state) => {
state.poiMarkers = [];
},
},
});
// Speichert das Atom im globalen Namespace (nur in Dev)
if (process.env.NODE_ENV !== "production") {
globalThis.readPoiMarkersStore = readPoiMarkersStore;
}
export const { setPoiMarkers, clearPoiMarkers } = readPoiMarkersStoreSlice.actions;
export default readPoiMarkersStoreSlice.reducer;