This commit is contained in:
ISA
2025-05-26 11:12:45 +02:00
parent c8d7fbe434
commit 03a1f480e0
20 changed files with 87 additions and 86 deletions

View File

@@ -0,0 +1,25 @@
// /redux/slices/database/pois/addPoiOnPolylineSlice.js
import { createSlice } from "@reduxjs/toolkit";
const initialState = {
isOpen: false,
latlng: null,
};
const addPoiOnPolylineSlice = createSlice({
name: "addPoiOnPolyline",
initialState,
reducers: {
openAddPoiOnPolylineModal: (state, action) => {
state.isOpen = true;
state.latlng = action.payload;
},
closeAddPoiOnPolylineModal: (state) => {
state.isOpen = false;
state.latlng = null;
},
},
});
export const { openAddPoiOnPolylineModal, closeAddPoiOnPolylineModal } = addPoiOnPolylineSlice.actions;
export default addPoiOnPolylineSlice.reducer;

View File

@@ -0,0 +1,28 @@
// /redux/slices/database/pois/currentPoiSlice.js
import { createSlice } from "@reduxjs/toolkit";
const initialState = {
currentPoi: null,
};
const currentPoiSlice = createSlice({
name: "currentPoi",
initialState,
reducers: {
setCurrentPoi(state, action) {
state.currentPoi = action.payload; // Zustand mit dem neuen POI aktualisieren
},
clearCurrentPoi(state) {
state.currentPoi = null; // Zustand auf null zurücksetzen
},
},
});
// Actions exportieren
export const { setCurrentPoi, clearCurrentPoi } = currentPoiSlice.actions;
// Selector exportieren (optional)
export const selectCurrentPoi = (state) => state.currentPoi.currentPoi;
// Reducer exportieren
export default currentPoiSlice.reducer;

View File

@@ -0,0 +1,22 @@
// /redux/slices/database/pois/poiLayerVisibleSlice.js
import { createSlice } from "@reduxjs/toolkit";
const initialState = {
visible: true,
};
export const poiLayerVisibleSlice = createSlice({
name: "poiLayerVisible",
initialState,
reducers: {
setVisible: (state, action) => {
state.visible = action.payload;
},
toggleVisible: (state) => {
state.visible = !state.visible;
},
},
});
export const { setVisible, toggleVisible } = poiLayerVisibleSlice.actions;
export default poiLayerVisibleSlice.reducer;

View File

@@ -0,0 +1,22 @@
// redux/slices/database/pois/poiReadFromDbTriggerSlice.js
import { createSlice } from "@reduxjs/toolkit";
const initialState = {
trigger: 0,
};
const poiReadFromDbTriggerSlice = createSlice({
name: "poiReadFromDbTrigger",
initialState,
reducers: {
incrementTrigger: (state) => {
state.trigger += 1;
},
resetTrigger: (state) => {
state.trigger = 0;
},
},
});
export const { incrementTrigger, resetTrigger } = poiReadFromDbTriggerSlice.actions;
export default poiReadFromDbTriggerSlice.reducer;

View File

@@ -0,0 +1,22 @@
// redux/slices/database/pois/readPoiMarkersStoreSlice.js
import { createSlice } from "@reduxjs/toolkit";
const initialState = {
poiMarkers: [],
};
const readPoiMarkersStoreSlice = createSlice({
name: "readPoiMarkersStore",
initialState,
reducers: {
setPoiMarkers: (state, action) => {
state.poiMarkers = action.payload;
},
clearPoiMarkers: (state) => {
state.poiMarkers = [];
},
},
});
export const { setPoiMarkers, clearPoiMarkers } = readPoiMarkersStoreSlice.actions;
export default readPoiMarkersStoreSlice.reducer;

View File

@@ -0,0 +1,14 @@
// redux/slices/database/pois/selectedPoiSlice.js
import { createSlice } from "@reduxjs/toolkit";
export const selectedPoiSlice = createSlice({
name: "selectedPoi",
initialState: null,
reducers: {
setSelectedPoi: (state, action) => action.payload, // Speichert POI-Daten
clearSelectedPoi: () => null, // Entfernt POI aus dem State
},
});
export const { setSelectedPoi, clearSelectedPoi } = selectedPoiSlice.actions;
export default selectedPoiSlice.reducer;