refactor
This commit is contained in:
25
redux/slices/database/pois/addPoiOnPolylineSlice.js
Normal file
25
redux/slices/database/pois/addPoiOnPolylineSlice.js
Normal 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;
|
||||
28
redux/slices/database/pois/currentPoiSlice.js
Normal file
28
redux/slices/database/pois/currentPoiSlice.js
Normal 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;
|
||||
22
redux/slices/database/pois/poiLayerVisibleSlice.js
Normal file
22
redux/slices/database/pois/poiLayerVisibleSlice.js
Normal 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;
|
||||
22
redux/slices/database/pois/poiReadFromDbTriggerSlice.js
Normal file
22
redux/slices/database/pois/poiReadFromDbTriggerSlice.js
Normal 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;
|
||||
22
redux/slices/database/pois/readPoiMarkersStoreSlice.js
Normal file
22
redux/slices/database/pois/readPoiMarkersStoreSlice.js
Normal 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;
|
||||
14
redux/slices/database/pois/selectedPoiSlice.js
Normal file
14
redux/slices/database/pois/selectedPoiSlice.js
Normal 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;
|
||||
Reference in New Issue
Block a user