Gängige Praxis: *Slice.js
Verwendung: Wenn du Redux Toolkit und createSlice nutzt, ist der Postfix Slice gängiger.
Begründung:
createSlice ist ein Begriff aus Redux Toolkit.
Der Name vermittelt, dass die Datei nicht nur den Reducer enthält, sondern auch Aktionen und den initialen Zustand.
Häufig in modernen Projekten verwendet.
fix: Dynamisches Ein- und Ausblenden des Plus-Icons bei Änderung der Marker-Sichtbarkeit
- Überarbeitung der `checkOverlappingMarkers`-Funktion, um sichtbare Marker korrekt zu verfolgen.
- Hinzugefügt: Dynamische Aktualisierung des Plus-Icons basierend auf Layer-Sichtbarkeit.
- Integration der Checkbox-Änderungen in den `useEffect`-Hook von `MapComponent`, um Echtzeit-Aktualisierungen zu gewährleisten.
- Verbesserte Konsistenz der Kartenanzeige ohne Neuladen des Browsers.
- Überarbeitung der `checkOverlappingMarkers`-Funktion, um sichtbare Marker korrekt zu verfolgen.
- Hinzugefügt: Dynamische Aktualisierung des Plus-Icons basierend auf Layer-Sichtbarkeit.
- Integration der Checkbox-Änderungen in den `useEffect`-Hook von `MapComponent`, um Echtzeit-Aktualisierungen zu gewährleisten.
- Verbesserte Konsistenz der Kartenanzeige ohne Neuladen des Browsers.
-Wenn keine Messwerte über Webservice kommen dann wird "-" statt "---" angezeigt
-Alle 20 Sekunden werden alle Icons neu gezeichnet. Dadurch "flackert" das Bild. Wenn die Daten (Prios) neu geladen werden sollen die Icons
nicht aus- und wieder eingeblendet werden. Wenn es nicht schnell behoben werden kann dann bitte das Intervall von 20 Sekunden auf 60 Sekunden erhöhen.
-Es soll, Wenn auf das + Symbol geklickt wird müssen alle Icons nebeneinander gezeichnet werden. Bisher kann man nur auf das oberste Icon klicken.
-MAP_VERSION = "1.0.15"
- zIndexOffset in `createAndSetDevices` von `100 * (5 - priority)` auf `100 * (6 - priority)` geändert.
- Dadurch erhalten Marker mit höherer Priorität einen größeren zIndex-Wert.
- Problem gelöst, bei dem POI-Marker von anderen Layern oder Markern überlagert wurden.
- Logik angepasst, um die Sichtbarkeit und Priorisierung der Marker zu stabilisieren.
- Logik implementiert, um überlappende Marker in allen Layern zu überprüfen.
- "PlusRoundIcon" wird jetzt für überlappende Marker auf der Karte angezeigt.
- useEffect angepasst, um alle Marker-Layer in die Überprüfung einzubeziehen.
- Anpassung der System-Checkboxen im DataSheet, um statt interner Schlüssel die lesbaren Namen (z. B. "GSM Modem") anzuzeigen.
- Interne Schlüssel bleiben für die Logik unverändert.
- Verbesserung der Benutzerfreundlichkeit durch klarere Bezeichnungen in der UI.
- Ursache des Problems: Inkonsistenz bei der Benennung des Layers in `useLayerVisibility` ("SMSFunkmodem" vs. "SMSModem").
- Anpassung des Layer-Namens in `useLayerVisibility`, um mit der `GisSystemStatic`-Datenstruktur und `mapLayersVisibility` übereinzustimmen.
- Konflikt führte dazu, dass der SMS Modem-Layer nicht korrekt sichtbar/unsichtbar geschaltet wurde.
- Debugging und Anpassungen führten zur erfolgreichen Behebung des Fehlers.
Dieser Fix stellt sicher, dass die Sichtbarkeit der Marker-Layer konsistent und wie erwartet funktioniert.
- Refaktorierung des `useMarkersLayer`-Hooks zur internen Behandlung der Sichtbarkeitsbedingung.
- `isVisible`-Parameter hinzugefügt, um konsistente Hook-Aufrufe sicherzustellen.
- Cleanup-Logik verbessert, um Layer beim Unmount korrekt zu entfernen.
- GMA-Marker und Tooltips basierend auf Sichtbarkeit korrekt verarbeitet.
- Problem mit doppelten Icons behoben: Alte Marker werden vor jedem Update zuverlässig entfernt (clearLayers).
- Zentrale Verwaltung aller Marker-Layer-Gruppen eingeführt (Refactoring mit layerGroups).
- Plus-Icon für überlappende Marker hinzugefügt, um bessere Übersicht bei Markern an derselben Position zu gewährleisten (checkOverlappingMarkers).
- Regelmäßige Updates der Marker-Gruppen via setInterval implementiert.
- Marker-Icons werden dynamisch aktualisiert, ohne dass Blinken oder redundantes Rendering auftritt.
- ToolTip-Werte der GMA-Stationen aktualisieren sich in Echtzeit basierend auf neuen Messdaten.
- Verbesserte Performance durch gezielte Updates nur bei Datenänderungen.
- Integriere react-select für eine benutzerfreundlichere Auswahl der Geräte und POI-Typen.
- Anwende benutzerdefinierte Styles, um eine einheitliche und übersichtliche Darstellung der Dropdowns zu gewährleisten.
- Sicherstellung, dass Platzhalter ("Gerät auswählen..." und "Typ auswählen...") immer angezeigt werden.
- Bereinige das Layout für eine konsistente Benutzererfahrung in beiden Modalen.
- Added logic to store the selected POI type in localStorage during POI selection.
- Updated PoiUpdateModal to pre-select the correct POI type from localStorage when opening the modal.
- Implemented fallback to fetch POI types if not found in localStorage.
- Ensured the selected device is also pre-filled in the dropdown.
- Implemented logic to monitor the context menu state and ensure it closes 2 seconds before the 20-second interval API call
- Added functionality to log remaining time while the context menu is open for better debugging
- Refactored interval handling to reset remaining time and close the context menu properly
- Addressed runtime error related to null context menu handling
- Set fixed min-width (150px) and max-width (200px) for the dropdown menu to ensure it does not expand too much on smaller screens.
- Removed flex-grow from dropdown to prevent it from taking excess space.
- Improved flex layout between dropdown, EditModeToggle, and expand icon to ensure proper spacing and alignment.