hooks auslagern von MapComponent, useInitializeMap.js und useLoadUserRights.js

This commit is contained in:
ISA
2025-03-11 07:45:08 +01:00
parent 0dce495435
commit f59fb62d29
7 changed files with 113 additions and 19 deletions

View File

@@ -0,0 +1,26 @@
// /components/mainComponent/hooks/useSetupMarkers.js
import { useEffect } from "react";
import { checkOverlappingMarkers } from "../../../utils/mapUtils";
const useSetupMarkers = (map, allMarkers, mapLayersVisibility, plusRoundIcon) => {
useEffect(() => {
if (map) {
allMarkers.forEach((marker) => {
const layerKey = marker.options?.layerKey;
const isVisible = mapLayersVisibility[layerKey];
if (!layerKey || isVisible === undefined) return;
if (localStorage.getItem("editMode") === "true" || !isVisible) {
if (map.hasLayer(marker)) map.removeLayer(marker);
} else {
if (!map.hasLayer(marker)) marker.addTo(map);
}
});
checkOverlappingMarkers(map, allMarkers, plusRoundIcon);
}
}, [map, allMarkers, mapLayersVisibility]);
};
export default useSetupMarkers;