docs
This commit is contained in:
13
docs/hooks/layers/useAreaMarkersLayer.md
Normal file
13
docs/hooks/layers/useAreaMarkersLayer.md
Normal file
@@ -0,0 +1,13 @@
|
||||
<!-- /docs/hooks/layers/useAreaMarkersLayer.md -->
|
||||
|
||||
# 🗺️ useAreaMarkersLayer.js
|
||||
|
||||
Lädt Bereichs-/Stationsmarker aus einer API und rendert sie auf der Karte.
|
||||
|
||||
## Features
|
||||
|
||||
- Marker mit Tooltip für Standort & Bereich
|
||||
- Draggable Marker (verschiebbar)
|
||||
- Automatischer API-Fetch mit `fetch(...)`
|
||||
- Dynamisches Layer-Handling via localStorage ("mapLayersVisibility")
|
||||
- Automatisches Speichern neuer Koordinaten per `updateAreaThunk()`
|
||||
11
docs/hooks/layers/useCiscoRouterMarkersLayer.md
Normal file
11
docs/hooks/layers/useCiscoRouterMarkersLayer.md
Normal file
@@ -0,0 +1,11 @@
|
||||
<!-- /docs/hooks/layers/useCiscoRouterMarkersLayer.md -->
|
||||
|
||||
# 🌐 useCiscoRouterMarkersLayer.js
|
||||
|
||||
Hook zur Verwaltung aller Cisco-Router-Marker in der Leaflet-Karte.
|
||||
|
||||
## Funktionen
|
||||
|
||||
- Lädt Geräte per `createAndSetDevices(6, ...)`
|
||||
- Fügt Marker hinzu & registriert Popup/Kontextmenü
|
||||
- Verwendet `checkOverlappingMarkers(...)`
|
||||
11
docs/hooks/layers/useDauzMarkersLayer.md
Normal file
11
docs/hooks/layers/useDauzMarkersLayer.md
Normal file
@@ -0,0 +1,11 @@
|
||||
<!-- /docs/hooks/layers/useDauzMarkersLayer.md -->
|
||||
|
||||
# 🔧 useDauzMarkersLayer.js
|
||||
|
||||
Spezialisierter Hook zur Verwaltung von DAUZ-Gerätemarkern (System-ID: 110)
|
||||
|
||||
## Verhalten
|
||||
|
||||
- Marker mit Popup & Kontextmenü
|
||||
- Nutzung von `createAndSetDevices(...)`
|
||||
- Sichtbarkeit direkt über Kartenlayer steuerbar
|
||||
11
docs/hooks/layers/useDrawLines.md
Normal file
11
docs/hooks/layers/useDrawLines.md
Normal file
@@ -0,0 +1,11 @@
|
||||
<!-- /docs/hooks/layers/useDrawLines.md -->
|
||||
|
||||
# 🧬 useDrawLines.js
|
||||
|
||||
Hook zur Konvertierung von GIS-Linien in kartentaugliche Koordinatenpaare.
|
||||
|
||||
## Schritte
|
||||
|
||||
- Lädt Linien mit `fetchGisLinesThunk()`
|
||||
- Wandelt `points[x, y]` in Leaflet-Koordinaten `[lat, lng]` um
|
||||
- Gibt `setLinePositions([...])` zurück
|
||||
11
docs/hooks/layers/useEciMarkersLayer.md
Normal file
11
docs/hooks/layers/useEciMarkersLayer.md
Normal file
@@ -0,0 +1,11 @@
|
||||
<!-- /docs/hooks/layers/useEciMarkersLayer.md -->
|
||||
|
||||
# 🛰️ useEciMarkersLayer.js
|
||||
|
||||
Verwaltet die Darstellung und Events für ECI-Marker (System-ID: 2)
|
||||
|
||||
## Features
|
||||
|
||||
- Kontextmenü & Popup für jeden Marker
|
||||
- Erkennung überlappender Marker (`checkOverlappingMarkers`)
|
||||
- Nutzung von `createAndSetDevices(...)`
|
||||
11
docs/hooks/layers/useGmaMarkersLayer.md
Normal file
11
docs/hooks/layers/useGmaMarkersLayer.md
Normal file
@@ -0,0 +1,11 @@
|
||||
<!-- /docs/hooks/layers/useGmaMarkersLayer.md -->
|
||||
|
||||
# 🌡️ useGmaMarkersLayer.js
|
||||
|
||||
Spezialhook für GMA-Marker mit Messwertanzeige (LT, FBT, GT, RLF).
|
||||
|
||||
## Besonderheiten
|
||||
|
||||
- Tooltip enthält Temperatur-/Feuchtigkeitswerte aus Redux
|
||||
- Eigenes Kontextmenü mit Zoom/Zentrieren
|
||||
- Verwendet `marker.options.areaName` zur Messzuordnung
|
||||
10
docs/hooks/layers/useLteModemMarkersLayer.md
Normal file
10
docs/hooks/layers/useLteModemMarkersLayer.md
Normal file
@@ -0,0 +1,10 @@
|
||||
<!-- /docs/hooks/layers/useLteModemMarkersLayer.md -->
|
||||
|
||||
# 📶 useLteModemMarkersLayer.js
|
||||
|
||||
Steuert Marker vom Typ LTE-Modem (System-ID: 5)
|
||||
|
||||
## Features
|
||||
|
||||
- Standard-Kontextmenü + Popup
|
||||
- Integration mit OMS und Overlap-Check
|
||||
10
docs/hooks/layers/useMessstellenMarkersLayer.md
Normal file
10
docs/hooks/layers/useMessstellenMarkersLayer.md
Normal file
@@ -0,0 +1,10 @@
|
||||
<!-- /docs/hooks/layers/useMessstellenMarkersLayer.md -->
|
||||
|
||||
# 🧾 useMessstellenMarkersLayer.js
|
||||
|
||||
Für Messstellen-Marker (System-ID: 13)
|
||||
|
||||
## Verhalten
|
||||
|
||||
- Einfache Marker mit Tooltip
|
||||
- Nutzung von `createAndSetDevices(...)` + Kontextmenü
|
||||
10
docs/hooks/layers/useOtdrMarkersLayer.md
Normal file
10
docs/hooks/layers/useOtdrMarkersLayer.md
Normal file
@@ -0,0 +1,10 @@
|
||||
<!-- /docs/hooks/layers/useOtdrMarkersLayer.md -->
|
||||
|
||||
# 🔍 useOtdrMarkersLayer.js
|
||||
|
||||
Darstellung von OTDR-Messpunkten (System-ID: 9)
|
||||
|
||||
## Funktionen
|
||||
|
||||
- Popup-Interaktion beim Hover
|
||||
- Marker mit Kontextmenü via `addContextMenuToMarker`
|
||||
7
docs/hooks/layers/useSiemensMarkersLayer.md
Normal file
7
docs/hooks/layers/useSiemensMarkersLayer.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# 🏭 useSiemensMarkersLayer.js
|
||||
|
||||
Für Siemens-Geräte (System-ID: 8).
|
||||
|
||||
- Marker mit Kontextmenü und Overlap-Prüfung
|
||||
- Integration mit OMS
|
||||
- Nutzung von `checkOverlappingMarkers(...)`
|
||||
7
docs/hooks/layers/useSmsfunkmodemMarkersLayer.md
Normal file
7
docs/hooks/layers/useSmsfunkmodemMarkersLayer.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# 📡 useSmsfunkmodemMarkersLayer.js
|
||||
|
||||
Filtert `GisSystemStatic` nach SMS Modem (System 111 oder Name).
|
||||
|
||||
- Icon: `/img/icons/pois/sms-funkmodem.png`
|
||||
- Kontextmenü & Popup
|
||||
- Sichtbarkeit über `isVisible` steuerbar
|
||||
7
docs/hooks/layers/useSonstigeMarkersLayer.md
Normal file
7
docs/hooks/layers/useSonstigeMarkersLayer.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# ❔ useSonstigeMarkersLayer.js
|
||||
|
||||
Für alle Geräte mit System-ID 200 (Sonstige).
|
||||
|
||||
- Klassische Leaflet-Marker
|
||||
- Kontextmenü und Popup
|
||||
- Nutzung von `createAndSetDevices(...)`
|
||||
6
docs/hooks/layers/useTalasMarkersLayer.md
Normal file
6
docs/hooks/layers/useTalasMarkersLayer.md
Normal file
@@ -0,0 +1,6 @@
|
||||
# 🌐 useTalasMarkersLayer.js
|
||||
|
||||
Für TALAS-Systeme (System-ID: 1).
|
||||
|
||||
- Popup + Kontextmenü auf Marker
|
||||
- Fügt Marker zuerst zu OMS, dann zu Karte hinzu
|
||||
6
docs/hooks/layers/useTalasiclMarkersLayer.md
Normal file
6
docs/hooks/layers/useTalasiclMarkersLayer.md
Normal file
@@ -0,0 +1,6 @@
|
||||
# 🔗 useTalasiclMarkersLayer.js
|
||||
|
||||
Spezialhook für Geräte vom Typ TALASICL (System-ID: 100).
|
||||
|
||||
- Erstellt Marker mit Standardverhalten
|
||||
- Kontextmenü, Popup, Overlap-Prüfung
|
||||
6
docs/hooks/layers/useTkComponentsMarkersLayer.md
Normal file
6
docs/hooks/layers/useTkComponentsMarkersLayer.md
Normal file
@@ -0,0 +1,6 @@
|
||||
# ⚙️ useTkComponentsMarkersLayer.js
|
||||
|
||||
Für TK-Komponenten (System-ID: 30).
|
||||
|
||||
- Lädt Marker via `createAndSetDevices`
|
||||
- Marker-Koordinaten können debug-geloggt werden
|
||||
7
docs/hooks/layers/useUlafMarkersLayer.md
Normal file
7
docs/hooks/layers/useUlafMarkersLayer.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# 💡 useUlafMarkersLayer.js
|
||||
|
||||
Spezialhook für ULAF-Systeme (System-ID: 0).
|
||||
|
||||
- Marker mit ULAF-Icon
|
||||
- Kontextmenü und Popup (statisch)
|
||||
- Dynamisch generierter Popupinhalt
|
||||
6
docs/hooks/layers/useWagoMarkersLayer.md
Normal file
6
docs/hooks/layers/useWagoMarkersLayer.md
Normal file
@@ -0,0 +1,6 @@
|
||||
# 🧰 useWagoMarkersLayer.js
|
||||
|
||||
Für WAGO-Systeme (System-ID: 7).
|
||||
|
||||
- Kontextmenü, Popup, Overlapping-Support
|
||||
- OMS-Integration und Layer-Hinzufügung
|
||||
7
docs/hooks/layers/useWdmMarkersLayer.md
Normal file
7
docs/hooks/layers/useWdmMarkersLayer.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# 🔷 useWdmMarkersLayer.js
|
||||
|
||||
Verwaltet WDM-Marker (System-ID: 10) in Leaflet.
|
||||
|
||||
- Marker mit Kontextmenü
|
||||
- Mouseover-Popup
|
||||
- Nutzung von `createAndSetDevices(...)`
|
||||
17
docs/hooks/useCreateAndSetDevices.md
Normal file
17
docs/hooks/useCreateAndSetDevices.md
Normal file
@@ -0,0 +1,17 @@
|
||||
<!-- /docs/hooks/useCreateAndSetDevices.md -->
|
||||
|
||||
# 🛠️ useCreateAndSetDevices.js
|
||||
|
||||
Custom Hook zur Initialisierung von Leaflet-Markern für ein bestimmtes System.
|
||||
Bindet `createAndSetDevices(...)` automatisch in einen `useEffect`.
|
||||
|
||||
## Parameter
|
||||
|
||||
- `systemId`: ID des Gerätesystems (z. B. 1 = TALAS)
|
||||
- `setMarkersFunction`: Funktion zum Speichern der erzeugten Marker
|
||||
- `GisSystemStatic`: Systemdaten aus Redux
|
||||
- `priorityConfig`: Konfigurationsobjekt zur Prioritätsbewertung
|
||||
|
||||
## Redux
|
||||
|
||||
- Bezieht `polylineEventsDisabled` aus Redux zur Steuerung der Interaktivität
|
||||
17
docs/hooks/useDynamicMarkerLayers.md
Normal file
17
docs/hooks/useDynamicMarkerLayers.md
Normal file
@@ -0,0 +1,17 @@
|
||||
<!-- /docs/hooks/useDynamicMarkerLayers.md -->
|
||||
|
||||
# 🔄 useDynamicMarkerLayers.js
|
||||
|
||||
Verwaltet alle Marker-Layergruppen dynamisch und modular in einem zentralen Hook.
|
||||
|
||||
## Funktionen
|
||||
|
||||
- Initialisiert LayerGroups für 15+ Gerätesysteme
|
||||
- Ruft `createAndSetDevices()` pro System-ID auf
|
||||
- Führt automatisch Overlap-Check aus (`checkOverlappingMarkers`)
|
||||
- Speichert erzeugte Marker in `setMarkerStates`
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
- Karte (`map`) muss bereit sein
|
||||
- `GisSystemStatic` + `priorityConfig` + Marker-Setter müssen übergeben werden
|
||||
@@ -1,44 +0,0 @@
|
||||
# 📍 useFetchPoiData – Laden von POI-Typen und Icons
|
||||
|
||||
## Zweck
|
||||
|
||||
Dieser React-Hook wird im Frontend verwendet, um:
|
||||
|
||||
1. Alle POI-Typen (`poiTyp/readPoiTyp`)
|
||||
2. Alle POI-Icons (`pois/poi-icons`)
|
||||
|
||||
vom Server abzurufen und sie in lokale React-Komponenten zu laden.
|
||||
|
||||
---
|
||||
|
||||
## Aufrufstruktur
|
||||
|
||||
```js
|
||||
const API_BASE_URL = typeof window !== "undefined" ? `${window.location.protocol}//${window.location.hostname}:3000` : "";
|
||||
|
||||
await fetch(`${API_BASE_URL}/api/talas_v5_DB/poiTyp/readPoiTyp`);
|
||||
await fetch(`${API_BASE_URL}/api/talas_v5_DB/pois/poi-icons`);
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Erklärung
|
||||
|
||||
Da die Anwendung produktiv über Port `80` läuft, aber die Next.js-API auf Port `3000`, wird `:3000` explizit in der URL ergänzt.
|
||||
|
||||
Dieser Hook funktioniert nur im Client-Browser. Die Prüfung mit `typeof window !== "undefined"` schützt davor, dass `window` im SSR-Kontext (Server-Side Rendering) undefined ist.
|
||||
|
||||
---
|
||||
|
||||
## Verhalten bei Fehlern
|
||||
|
||||
- Wenn die Antwort nicht `ok` ist (z. B. 404, 500), wird ein Fehler in der Console angezeigt.
|
||||
- Wenn die Daten kein Array sind (für `poiTyp`), wird eine zusätzliche Validierung ausgelöst.
|
||||
|
||||
---
|
||||
|
||||
## Siehe auch
|
||||
|
||||
- [`MapComponent`](../components/MapComponent.md)
|
||||
- `pages/api/talas_v5_DB/poiTyp/readPoiTyp.js`
|
||||
- `pages/api/talas_v5_DB/pois/poi-icons.js`
|
||||
15
docs/hooks/useLayerVisibility.md
Normal file
15
docs/hooks/useLayerVisibility.md
Normal file
@@ -0,0 +1,15 @@
|
||||
<!-- /docs/hooks/useLayerVisibility.md -->
|
||||
|
||||
# 👁️ useLayerVisibility.js
|
||||
|
||||
Custom Hook zur dynamischen Steuerung von Layer-Sichtbarkeit basierend auf Redux.
|
||||
|
||||
## Features
|
||||
|
||||
- Entfernt oder zeigt Marker je nach `mapLayersVisibility`
|
||||
- Nutzt `OverlappingMarkerSpiderfier` (`oms`)
|
||||
- Normalisiert Layer-Keys (z. B. `"GMA"` → `"gma"`)
|
||||
|
||||
## Intern
|
||||
|
||||
Verwendet `addContextMenuToMarker()` zur Kontextmenüintegration pro Marker.
|
||||
19
docs/hooks/useLineData.md
Normal file
19
docs/hooks/useLineData.md
Normal file
@@ -0,0 +1,19 @@
|
||||
<!-- /docs/hooks/useLineData.md -->
|
||||
|
||||
# 📊 useLineData.js
|
||||
|
||||
Lädt Linienstatusdaten (Farben, Tooltips) aus zwei Webservices in Redux und bereitet sie auf.
|
||||
|
||||
## Rückgabe
|
||||
|
||||
- `lineColors`: Farben pro Linie basierend auf Status
|
||||
- `tooltipContents`: HTML-Tooltip pro Modul/Station
|
||||
|
||||
## Datenquellen
|
||||
|
||||
- `fetchGisLinesThunk()` (Struktur)
|
||||
- `fetchGisLinesStatusThunk()` (Statusdaten)
|
||||
|
||||
## Intern
|
||||
|
||||
- Nutzt Map `valueMap`, um Messwert, Schleifenwert, Meldungen zu gruppieren
|
||||
18
docs/hooks/useMapComponentState.md
Normal file
18
docs/hooks/useMapComponentState.md
Normal file
@@ -0,0 +1,18 @@
|
||||
<!-- /docs/hooks/useMapComponentState.md -->
|
||||
|
||||
# 🧠 useMapComponentState.js
|
||||
|
||||
Sammelt zentrale UI-Zustände und Redux-Daten für die `MapComponent`.
|
||||
|
||||
## Rückgabe
|
||||
|
||||
- POI-Typen + Ladezustand
|
||||
- `deviceName` (z. B. erstes Gerät)
|
||||
- `locationDeviceData`
|
||||
- `priorityConfig`
|
||||
- `menuItemAdded`, `setMenuItemAdded`
|
||||
- Sichtbarkeit des POI-Layers
|
||||
|
||||
## Redux
|
||||
|
||||
- `fetchPoiTypThunk`, `fetchGisStationsStaticDistrictThunk`, `fetchPriorityConfigThunk`
|
||||
16
docs/hooks/useMarkerLayers.md
Normal file
16
docs/hooks/useMarkerLayers.md
Normal file
@@ -0,0 +1,16 @@
|
||||
<!-- /docs/hooks/useMarkerLayers.md -->
|
||||
|
||||
# 📍 useMarkerLayers.js
|
||||
|
||||
Steuert das Hinzufügen oder Entfernen von Markern in ein Leaflet-Map-Layer.
|
||||
|
||||
## Verwendung
|
||||
|
||||
```js
|
||||
useMarkerLayers(map, gmaMarkers, "GMA");
|
||||
```
|
||||
|
||||
## Redux
|
||||
|
||||
- Liest `mapLayersVisibility` aus dem Store
|
||||
- Reagiert automatisch auf Änderungen
|
||||
15
docs/hooks/usePolylineTooltipLayer.md
Normal file
15
docs/hooks/usePolylineTooltipLayer.md
Normal file
@@ -0,0 +1,15 @@
|
||||
<!-- /docs/hooks/usePolylineTooltipLayer.md -->
|
||||
|
||||
# 💬 usePolylineTooltipLayer.js
|
||||
|
||||
Initialisiert und steuert Polylinien + Tooltip-Verhalten für Linienmessdaten.
|
||||
|
||||
## Funktion
|
||||
|
||||
- Nutzt `setupPolylines(...)` zur Marker- und Linienerstellung
|
||||
- Tooltip-Anzeige bei `mouseover`, dynamisch positioniert
|
||||
- Entfernt alte Marker und Polylinien automatisch
|
||||
|
||||
## Parameter (gekürzt)
|
||||
|
||||
- `map`, `markers`, `setMarkers`, `setPolylines`, `linePositions`, `tooltipContents`, `lineColors`, etc.
|
||||
Reference in New Issue
Block a user