docs: [Zurück zur Übersicht](../README.md) in Alle in README für jeder Verzeichnis

This commit is contained in:
ISA
2025-06-24 08:22:48 +02:00
parent 82a1e11797
commit 0347ec9d98
243 changed files with 1425 additions and 283 deletions

View File

@@ -25,4 +25,4 @@ NEXT_PUBLIC_USE_MOCKS=true
NEXT_PUBLIC_BASE_PATH=/talas5 NEXT_PUBLIC_BASE_PATH=/talas5
# Oder leer lassen für direkten Zugriff -> NEXT_PUBLIC_BASE_PATH= # Oder leer lassen für direkten Zugriff -> NEXT_PUBLIC_BASE_PATH=
# App-Versionsnummer # App-Versionsnummer
NEXT_PUBLIC_APP_VERSION=1.1.284 NEXT_PUBLIC_APP_VERSION=1.1.285

View File

@@ -26,4 +26,4 @@ NEXT_PUBLIC_BASE_PATH=/talas5
# Oder leer lassen für direkten Zugriff -> NEXT_PUBLIC_BASE_PATH= # Oder leer lassen für direkten Zugriff -> NEXT_PUBLIC_BASE_PATH=
# App-Versionsnummer # App-Versionsnummer
NEXT_PUBLIC_APP_VERSION=1.1.284 NEXT_PUBLIC_APP_VERSION=1.1.285

55
_index.md Normal file
View File

@@ -0,0 +1,55 @@
# 🧭 NodeMap Dokumentationsübersicht
- [docs](docs/README.md)
- [architecture](docs/architecture/README.md)
- [components](docs/components/README.md)
- [contextmenu](docs/components/contextmenu/README.md)
- [gisPolylines](docs/components/gisPolylines/README.md)
- [icons](docs/components/gisPolylines/icons/README.md)
- [overlapping](docs/components/icons/devices/overlapping/README.md)
- [mainComponent](docs/components/mainComponent/README.md)
- [hooks](docs/components/mainComponent/hooks/README.md)
- [pois](docs/components/pois/README.md)
- [uiWidgets](docs/components/uiWidgets/README.md)
- [mapLayersControlPanel](docs/components/uiWidgets/mapLayersControlPanel/README.md)
- [config](docs/config/README.md)
- [guide](docs/guide/README.md)
- [hooks](docs/hooks/README.md)
- [layers](docs/hooks/layers/README.md)
- [pages](docs/pages/README.md)
- [api](docs/pages/api/README.md)
- [talas_v5_DB](docs/pages/api/talas_v5_DB/README.md)
- [area](docs/pages/api/talas_v5_DB/area/README.md)
- [device](docs/pages/api/talas_v5_DB/device/README.md)
- [gisLines](docs/pages/api/talas_v5_DB/gisLines/README.md)
- [locationDevice](docs/pages/api/talas_v5_DB/locationDevice/README.md)
- [poiTyp](docs/pages/api/talas_v5_DB/poiTyp/README.md)
- [pois](docs/pages/api/talas_v5_DB/pois/README.md)
- [station](docs/pages/api/talas_v5_DB/station/README.md)
- [redux](docs/redux/README.md)
- [slices](docs/redux/slices/README.md)
- [database](docs/redux/slices/database/README.md)
- [area](docs/redux/slices/database/area/README.md)
- [locationDevice](docs/redux/slices/database/locationDevice/README.md)
- [pois](docs/redux/slices/database/pois/README.md)
- [polylines](docs/redux/slices/database/polylines/README.md)
- [mapLayers](docs/redux/slices/mapLayers/README.md)
- [webService](docs/redux/slices/webService/README.md)
- [database](docs/redux/thunks/database/README.md)
- [area](docs/redux/thunks/database/area/README.md)
- [locationDevice](docs/redux/thunks/database/locationDevice/README.md)
- [pois](docs/redux/thunks/database/pois/README.md)
- [polylines](docs/redux/thunks/database/polylines/README.md)
- [webservice](docs/redux/thunks/webservice/README.md)
- [database](docs/services/database/README.md)
- [area](docs/services/database/area/README.md)
- [locationDevice](docs/services/database/locationDevice/README.md)
- [pois](docs/services/database/pois/README.md)
- [polylines](docs/services/database/polylines/README.md)
- [utils](docs/services/utils/README.md)
- [webservice](docs/services/webservice/README.md)
- [standards](docs/standards/README.md)
- [troubleshooting](docs/troubleshooting/README.md)
- [utils](docs/utils/README.md)
- [devices](docs/utils/devices/README.md)
- [polylines](docs/utils/polylines/README.md)

27
add-footer.ps1 Normal file
View File

@@ -0,0 +1,27 @@
# Pfad zum docs-Ordner anpassen
$root = "C:\Users\isa.LTW\Desktop\24.06.2025\NodeMap\24.06.2025 NodeMap\docs"
# Alle .md-Dateien rekursiv holen, außer README.md
$mdFiles = Get-ChildItem -Path $root -Recurse -Filter *.md | Where-Object { $_.Name -ne "README.md" }
foreach ($file in $mdFiles) {
$content = Get-Content $file.FullName -Raw
if ($content -notmatch "\[Zurück zur Übersicht\]") {
# Pfad relativ zum Root-Ordner
$relativePath = $file.DirectoryName.Substring($root.Length).TrimStart('\')
$depth = if ($relativePath) { $relativePath.Split('\').Count } else { 0 }
# Rücksprungpfad berechnen
$backPath = ("../" * $depth) + "README.md"
# Footer-Text (ohne Emojis!)
$footer = "`n---`n`n[Zurück zur Übersicht]($backPath)`n`n"
# Footer anhängen
Add-Content -Path $file.FullName -Value $footer
Write-Host "✅ Footer hinzugefügt: $($file.FullName)"
} else {
Write-Host "🔄 Footer bereits vorhanden: $($file.FullName)"
}
}

View File

@@ -1,6 +1,7 @@
# 🗺️ Dynamische Marker-Verwaltung in MapComponent.js (NodeMap) # 🗺️ Dynamische Marker-Verwaltung in MapComponent.js (NodeMap)
Dieses Dokument erklärt, wie Marker dynamisch erstellt, verwaltet und in `MapComponent.js` verwendet werden inklusive Datenfluss und OverlappingMarkerSpiderfier-Integration. Dieses Dokument erklärt, wie Marker dynamisch erstellt, verwaltet und in `MapComponent.js` verwendet
werden inklusive Datenfluss und OverlappingMarkerSpiderfier-Integration.
--- ---
@@ -17,7 +18,13 @@ useLayerVisibility(map, talasMarkers, mapLayersVisibility, "TALAS", oms);
Jetzt (dynamisch): Jetzt (dynamisch):
```js ```js
const { markerStates, layerRefs } = useDynamicDeviceLayers(map, GisSystemStatic, mapLayersVisibility, priorityConfig, oms); const { markerStates, layerRefs } = useDynamicDeviceLayers(
map,
GisSystemStatic,
mapLayersVisibility,
priorityConfig,
oms
);
``` ```
--- ---
@@ -96,3 +103,7 @@ flowchart TD
--- ---
Letztes Update: automatisch generiert mit ChatGPT (OpenAI) Letztes Update: automatisch generiert mit ChatGPT (OpenAI)
---
[Zurück zur Übersicht](README.md)

View File

@@ -158,8 +158,3 @@ Zudem gibt es eine Begriffsliste zur Orientierung:
Wenn du neu im Projekt bist, beginne mit dem Kapitel **Projektstruktur & Setup** und folge dann über Wenn du neu im Projekt bist, beginne mit dem Kapitel **Projektstruktur & Setup** und folge dann über
die Webservices bis zu den Komponenten. die Webservices bis zu den Komponenten.
---
Möchtest du eine `.md`-Datei exportiert zum Einfügen in dein Projektverzeichnis? Ich kann dir sofort
eine Download-Version erstellen. Sag einfach: „Ja, bitte als Datei“.

View File

@@ -301,3 +301,7 @@ sequenceDiagram
--- ---
> Letzte Änderung: `{{heutiges Datum}}` von Ismail Ali > Letzte Änderung: `{{heutiges Datum}}` von Ismail Ali
---
[Zurück zur Übersicht](README.md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/architecture
- [device-layer-connection](device-layer-connection.md)

View File

@@ -1,6 +1,7 @@
# 📡 Architektur: Verbindung GIS-System & GIS-Station # 📡 Architektur: Verbindung GIS-System & GIS-Station
Dieses Diagramm zeigt den Ablauf, wie Geräte (Marker) auf der Karte über die ID (System gegen IdSystem) korrekt geladen und sichtbar gemacht werden. Dieses Diagramm zeigt den Ablauf, wie Geräte (Marker) auf der Karte über die ID (System gegen
IdSystem) korrekt geladen und sichtbar gemacht werden.
```mermaid ```mermaid
flowchart TD flowchart TD
@@ -16,3 +17,7 @@ flowchart TD
end end
I -->|Sichtbarkeit steuert Anzeige| E I -->|Sichtbarkeit steuert Anzeige| E
``` ```
---
[Zurück zur Übersicht](../README.md)

View File

@@ -2,7 +2,8 @@
# 🛠 Deployment & Build-Verhalten (Next.js) # 🛠 Deployment & Build-Verhalten (Next.js)
Diese Datei beschreibt, welche Projektdateien in den Build (`.next/`) aufgenommen werden und welche nicht. Diese Datei beschreibt, welche Projektdateien in den Build (`.next/`) aufgenommen werden und welche
nicht.
Ziel: Klarheit für Onboarding, Deployment-ZIP-Erstellung oder CI/CD. Ziel: Klarheit für Onboarding, Deployment-ZIP-Erstellung oder CI/CD.
--- ---
@@ -44,3 +45,7 @@ package.json
package-lock.json package-lock.json
.env.local .env.local
``` ```
---
[Zurück zur Übersicht](README.md)

View File

@@ -40,3 +40,7 @@ Bevor du einen Feature-, Refactor- oder Bugfix-Commit abschließt, geh diese Lis
--- ---
Du kannst diese Checkliste in jedem Projekt beibehalten und auf deine Arbeitsweise anpassen. Du kannst diese Checkliste in jedem Projekt beibehalten und auf deine Arbeitsweise anpassen.
---
[Zurück zur Übersicht](README.md)

View File

@@ -6,7 +6,8 @@ Ein einfaches React-Testskript zur Laufzeitüberprüfung von Codefragmenten in `
## Zweck ## Zweck
Dieses Skript durchsucht die geladene `setupPolylines.js`-Datei (per `raw-loader`) nach bestimmten Kontextmenüeinträgen: Dieses Skript durchsucht die geladene `setupPolylines.js`-Datei (per `raw-loader`) nach bestimmten
Kontextmenüeinträgen:
- „Stützpunkt entfernen“ - „Stützpunkt entfernen“
- „Stützpunkt hinzufügen“ - „Stützpunkt hinzufügen“
@@ -20,7 +21,7 @@ Dieses Skript durchsucht die geladene `setupPolylines.js`-Datei (per `raw-loader
## Ausgaben ## Ausgaben
| Zustand | Beschreibung | | Zustand | Beschreibung |
|-------------|-----------------------------------------------------| | ---------------------- | ------------------------------------------- |
| ✅ Test bestanden | Der gesuchte Text wurde gefunden | | ✅ Test bestanden | Der gesuchte Text wurde gefunden |
| ❌ Test fehlgeschlagen | Der gesuchte Text fehlt in der Datei | | ❌ Test fehlgeschlagen | Der gesuchte Text fehlt in der Datei |
| Info | Neutrale Zusatzinformationen in der Konsole | | Info | Neutrale Zusatzinformationen in der Konsole |
@@ -42,3 +43,6 @@ Dieses Skript durchsucht die geladene `setupPolylines.js`-Datei (per `raw-loader
- Wird automatisch beim Mount (via `useEffect`) ausgeführt - Wird automatisch beim Mount (via `useEffect`) ausgeführt
- `return null` → keine sichtbare Ausgabe - `return null` → keine sichtbare Ausgabe
---
[Zurück zur Übersicht](../README.md)

View File

@@ -18,7 +18,15 @@ Wird typischerweise in `initializeMap()` oder `MapComponent` verwendet.
## Parameter ## Parameter
```js ```js
addItemsToMapContextMenu(map, menuItemAdded, setMenuItemAdded, setShowCoordinatesModal, setShowPoiModal, setPopupCoordinates, openPopupWithCoordinates); addItemsToMapContextMenu(
map,
menuItemAdded,
setMenuItemAdded,
setShowCoordinatesModal,
setShowPoiModal,
setPopupCoordinates,
openPopupWithCoordinates
);
``` ```
## Besonderheiten ## Besonderheiten
@@ -28,3 +36,7 @@ addItemsToMapContextMenu(map, menuItemAdded, setMenuItemAdded, setShowCoordinate
- Modularer Aufbau: `openPopupWithCoordinates` wird extern übergeben - Modularer Aufbau: `openPopupWithCoordinates` wird extern übergeben
🔙 [Zurück zu contextmenu ](./README.md) 🔙 [Zurück zu contextmenu ](./README.md)
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -17,7 +17,7 @@ Wird dynamisch positioniert anhand der Klickkoordinaten (`position.x`, `position
## Props ## Props
| Prop | Typ | Beschreibung | | Prop | Typ | Beschreibung |
|---------------|-----------|----------------------------------------------------| | --------------- | ---------- | ----------------------------------------------------- |
| `position` | `{x, y}` | Position in Pixelkoordinaten (z.B. von Mausereignis) | | `position` | `{x, y}` | Position in Pixelkoordinaten (z.B. von Mausereignis) |
| `onAddPoint` | `function` | Handler für „Stützpunkt hinzufügen“ | | `onAddPoint` | `function` | Handler für „Stützpunkt hinzufügen“ |
| `onRemovePoint` | `function` | Handler für „Stützpunkt entfernen“ | | `onRemovePoint` | `function` | Handler für „Stützpunkt entfernen“ |
@@ -31,4 +31,9 @@ Wird dynamisch positioniert anhand der Klickkoordinaten (`position.x`, `position
## Verwendung ## Verwendung
Eingebettet z.B. in `setupPolylines.js` oder `PolylineLayerManager`, um rechte Mausklicks auf Linien zu behandeln. Eingebettet z.B. in `setupPolylines.js` oder `PolylineLayerManager`, um rechte Mausklicks auf
Linien zu behandeln.
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/components/gisPolylines
- [PolylineContextMenu](PolylineContextMenu.md)

View File

@@ -14,3 +14,6 @@ Ein einfacher, grauer runder Marker als Stützpunkt in einer Polyline.
Wird in Polylinien als Zwischenpunkt gesetzt. Inaktiv, aber sichtbar. Wird in Polylinien als Zwischenpunkt gesetzt. Inaktiv, aber sichtbar.
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -13,3 +13,7 @@ Ein Viereck zur Markierung des Endpunkts einer Polyline.
## Verwendung ## Verwendung
Wird am letzten Punkt einer Linie gesetzt, z.B. `lineData.coordinates[line.length - 1]` Wird am letzten Punkt einer Linie gesetzt, z.B. `lineData.coordinates[line.length - 1]`
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -0,0 +1,6 @@
# 📄 Übersicht: docs/components/gisPolylines/icons
- [CircleIcon](CircleIcon.md)
- [EndIcon](EndIcon.md)
- [StartIcon](StartIcon.md)
- [SupportPointIcons](SupportPointIcons.md)

View File

@@ -13,3 +13,7 @@ Ein SVG-Dreieck zur Markierung des Startpunkts einer Polyline.
## Verwendung ## Verwendung
Wird am ersten Punkt einer Polyline platziert. Wird am ersten Punkt einer Polyline platziert.
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -18,3 +18,7 @@ Definiert zwei Icons für interaktive Stützpunkte in einer Polyline:
- Hinzufügen/Entfernen von Zwischenpunkten in der Bearbeitungsansicht (editMode) - Hinzufügen/Entfernen von Zwischenpunkten in der Bearbeitungsansicht (editMode)
- Marker erscheinen z.B. bei Maus-Hover oder per Kontextmenü - Marker erscheinen z.B. bei Maus-Hover oder per Kontextmenü
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -8,11 +8,11 @@ Wird für zusätzliche UI-Markierungen auf Geräten oder überlappenden Icons ve
## Eigenschaften ## Eigenschaften
| Attribut | Wert | | Attribut | Wert |
|--------------|--------------------| | ------------ | --------------------------------------- |
| `iconUrl` | `/img/plus_round.png` | | `iconUrl` | `/img/plus_round.png` |
| `iconSize` | `[22, 22]` | | `iconSize` | `[22, 22]` |
| `iconAnchor` | `[25, 55]` | | `iconAnchor` | `[25, 55]` |
| `className` | `absolute top-0 left-0 z-10` (Tailwind) | `className` | `absolute top-0 left-0 z-10` (Tailwind) |
## Verwendung ## Verwendung
@@ -24,3 +24,7 @@ Wird für zusätzliche UI-Markierungen auf Geräten oder überlappenden Icons ve
- Die Bilddatei `/img/plus_round.png` muss vorhanden sein - Die Bilddatei `/img/plus_round.png` muss vorhanden sein
- Kann bei Bedarf dynamisch durch ein anderes Icon ersetzt werden - Kann bei Bedarf dynamisch durch ein anderes Icon ersetzt werden
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/components/icons/devices/overlapping
- [PlusRoundIcon](PlusRoundIcon.md)

View File

@@ -69,3 +69,7 @@ Verwendet umfangreiche Redux-Slices zur Steuerung von:
--- ---
📄 Pfad: `/components/mainComponent/MapComponent.js` 📄 Pfad: `/components/mainComponent/MapComponent.js`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/components/mainComponent
- [MapComponent](MapComponent.md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/components/mainComponent/hooks
- [useInitializeMap](useInitializeMap.md)

View File

@@ -3,7 +3,8 @@
# 🪄 useInitializeMap.js # 🪄 useInitializeMap.js
Custom React-Hook zur Initialisierung der Leaflet-Karte. Custom React-Hook zur Initialisierung der Leaflet-Karte.
Ermöglicht die einfache Übergabe aller nötigen Parameter und abstrahiert die `initializeMap(...)`-Logik. Ermöglicht die einfache Übergabe aller nötigen Parameter und abstrahiert die
`initializeMap(...)`-Logik.
--- ---
@@ -17,7 +18,7 @@ Ermöglicht die einfache Übergabe aller nötigen Parameter und abstrahiert die
## 🔧 Parameter ## 🔧 Parameter
| Name | Typ | Beschreibung | | Name | Typ | Beschreibung |
|--------------------------|------------|---------------------------------------------------| | --------------------------- | ---------------------- | ---------------------------------------------------- |
| `map` | `LeafletMap` (Zustand) | Wird initialisiert, wenn `null` | | `map` | `LeafletMap` (Zustand) | Wird initialisiert, wenn `null` |
| `mapRef` | `ref` | Referenz auf `<div id="map">` | | `mapRef` | `ref` | Referenz auf `<div id="map">` |
| `setMap` | `function` | Callback zum Setzen der Karteninstanz | | `setMap` | `function` | Callback zum Setzen der Karteninstanz |
@@ -42,7 +43,7 @@ useInitializeMap(
setMenuItemAdded, setMenuItemAdded,
addItemsToMapContextMenu, addItemsToMapContextMenu,
hasRights, hasRights,
(value) => dispatch(setDisabled(value)) value => dispatch(setDisabled(value))
); );
``` ```
@@ -51,3 +52,7 @@ useInitializeMap(
## 📁 Quelle ## 📁 Quelle
Wrappt `initializeMap()` aus `/utils/initializeMap.js` Wrappt `initializeMap()` aus `/utils/initializeMap.js`
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -16,7 +16,7 @@ Die Koordinaten (`latlng`) werden automatisch übernommen.
## Props ## Props
| Prop | Typ | Beschreibung | | Prop | Typ | Beschreibung |
|----------|-----------|--------------------------------------------------| | --------- | ---------- | --------------------------------------------- |
| `onClose` | `function` | Schließt das Modal | | `onClose` | `function` | Schließt das Modal |
| `map` | `Leaflet` | (optional) zum Schließen evtl. offener Popups | | `map` | `Leaflet` | (optional) zum Schließen evtl. offener Popups |
| `latlng` | `object` | Koordinaten für den neuen POI | | `latlng` | `object` | Koordinaten für den neuen POI |
@@ -26,3 +26,6 @@ Die Koordinaten (`latlng`) werden automatisch übernommen.
- `fetchPoiTypThunk`, `fetchPoiIconsDataThunk` - `fetchPoiTypThunk`, `fetchPoiIconsDataThunk`
- `addPoiThunk`, `resetAddPoiStatus` - `addPoiThunk`, `resetAddPoiStatus`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -14,7 +14,7 @@ Ein Dialog zur Aktualisierung oder Löschung bestehender POIs.
## Props ## Props
| Prop | Typ | Beschreibung | | Prop | Typ | Beschreibung |
|------------|-----------|---------------------------------------| | --------- | ---------- | ------------------------------------ |
| `onClose` | `function` | Schließt das Modal | | `onClose` | `function` | Schließt das Modal |
| `poiData` | `object` | Bestehende POI-Daten zur Bearbeitung | | `poiData` | `object` | Bestehende POI-Daten zur Bearbeitung |
@@ -27,3 +27,7 @@ Ein Dialog zur Aktualisierung oder Löschung bestehender POIs.
- Dynamische Gerätegruppenfilterung basierend auf `mapLayersVisibility` - Dynamische Gerätegruppenfilterung basierend auf `mapLayersVisibility`
- Formfelder mit `react-select` für bessere UX - Formfelder mit `react-select` für bessere UX
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/components/pois
- [AddPOIModal](AddPOIModal.md)
- [PoiUpdateModal](PoiUpdateModal.md)

View File

@@ -2,8 +2,10 @@
# 📍 CoordinateInput.js # 📍 CoordinateInput.js
Die Komponente `CoordinateInput` stellt ein einfaches Eingabefeld für geografische Koordinaten (Latitude, Longitude) bereit. Die Komponente `CoordinateInput` stellt ein einfaches Eingabefeld für geografische Koordinaten
Sie dient typischerweise dazu, einen bestimmten Punkt auf der Karte zu fokussieren bzw. zu markieren. (Latitude, Longitude) bereit.
Sie dient typischerweise dazu, einen bestimmten Punkt auf der Karte zu fokussieren bzw. zu
markieren.
--- ---
@@ -85,7 +87,7 @@ Beispiel in einer Map-Komponente:
```jsx ```jsx
<CoordinateInput <CoordinateInput
onCoordinatesSubmit={(coords) => { onCoordinatesSubmit={coords => {
const [lat, lng] = coords.split(",").map(Number); const [lat, lng] = coords.split(",").map(Number);
map.setView([lat, lng], 16); // Leaflet map.setView([lat, lng], 16); // Leaflet
}} }}
@@ -99,3 +101,7 @@ Beispiel in einer Map-Komponente:
- `MapComponent.js` kann die übergebenen Koordinaten zur Zentrierung oder Marker-Erstellung nutzen - `MapComponent.js` kann die übergebenen Koordinaten zur Zentrierung oder Marker-Erstellung nutzen
--- ---
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/components/uiWidgets
- [CoordinateInput](CoordinateInput.md)
- [VersionInfoModal](VersionInfoModal.md)

View File

@@ -2,7 +2,8 @@
# 🪪 VersionInfoModal.js # 🪪 VersionInfoModal.js
Das `VersionInfoModal` ist ein modales Fenster zur Anzeige von Unternehmensinformationen und der aktuellen App-Version. Das `VersionInfoModal` ist ein modales Fenster zur Anzeige von Unternehmensinformationen und der
aktuellen App-Version.
Es wird meist im Footer oder als Info-Schaltfläche in der Benutzeroberfläche eingeblendet. Es wird meist im Footer oder als Info-Schaltfläche in der Benutzeroberfläche eingeblendet.
--- ---
@@ -38,8 +39,10 @@ Die Komponente informiert Nutzer über:
## 💡 Verhalten ## 💡 Verhalten
- Wird `showVersionInfoModal` auf `true` gesetzt, erscheint das Modal zentriert über einem halbtransparenten Overlay - Wird `showVersionInfoModal` auf `true` gesetzt, erscheint das Modal zentriert über einem
- Klick auf den Hintergrund (schwarzes Overlay) oder auf „Schließen“ führt `closeVersionInfoModal()` aus halbtransparenten Overlay
- Klick auf den Hintergrund (schwarzes Overlay) oder auf „Schließen“ führt `closeVersionInfoModal()`
aus
--- ---
@@ -90,3 +93,7 @@ Die Komponente informiert Nutzer über:
- Automatischer Import von Version via `process.env.NEXT_PUBLIC_APP_VERSION` - Automatischer Import von Version via `process.env.NEXT_PUBLIC_APP_VERSION`
--- ---
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -2,8 +2,10 @@
# ✏️ EditModeToggle.js # ✏️ EditModeToggle.js
Die Komponente `EditModeToggle` stellt einen interaktiven Umschalter für den Bearbeitungsmodus bereit. Die Komponente `EditModeToggle` stellt einen interaktiven Umschalter für den Bearbeitungsmodus
Sie ermöglicht das Ein- und Ausschalten des Modus, in dem POIs, Polylines (Strecken) und Bereiche bearbeitet werden können. bereit.
Sie ermöglicht das Ein- und Ausschalten des Modus, in dem POIs, Polylines (Strecken) und Bereiche
bearbeitet werden können.
--- ---
@@ -79,7 +81,12 @@ const [editMode, setEditMode] = useState(() => localStorage.getItem("editMode")
## 📄 Verwandte Komponenten ## 📄 Verwandte Komponenten
- `MapLayersControlPanel.js`: liest `localStorage.editMode` und deaktiviert Layer-Checkboxen im aktiven Modus - `MapLayersControlPanel.js`: liest `localStorage.editMode` und deaktiviert Layer-Checkboxen im
aktiven Modus
- `PoiUpdateModal`, `AddPOIModal`: nutzen den Bearbeitungsmodus für UI-Freigabe - `PoiUpdateModal`, `AddPOIModal`: nutzen den Bearbeitungsmodus für UI-Freigabe
--- ---
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -2,8 +2,10 @@
# 🧭 MapLayersControlPanel.js # 🧭 MapLayersControlPanel.js
Dieses UI-Widget zeigt eine interaktive Steuereinheit für Layer, POIs und Stationsbereiche auf der rechten Seite der Karte. Dieses UI-Widget zeigt eine interaktive Steuereinheit für Layer, POIs und Stationsbereiche auf der
Es ist vollständig an den Redux-Store angebunden und reagiert auf Änderungen der Layer-Sichtbarkeit, Bearbeitungsmodus und Stationsauswahl. rechten Seite der Karte.
Es ist vollständig an den Redux-Store angebunden und reagiert auf Änderungen der Layer-Sichtbarkeit,
Bearbeitungsmodus und Stationsauswahl.
--- ---
@@ -52,7 +54,8 @@ Das `MapLayersControlPanel` ermöglicht Nutzern:
Sonderfall: `TALAS` erhält ein Untermenü für „Kabelstrecken“ Sonderfall: `TALAS` erhält ein Untermenü für „Kabelstrecken“
- **Lokale Speicherung:** - **Lokale Speicherung:**
Sichtbarkeiten, Bearbeitungsmodus und POI-Zustand werden in `localStorage` geschrieben und bei Initialisierung geladen Sichtbarkeiten, Bearbeitungsmodus und POI-Zustand werden in `localStorage` geschrieben und bei
Initialisierung geladen
- **Bearbeitungsmodus:** - **Bearbeitungsmodus:**
Wenn aktiv (`editMode === true`), sind Layer-Checkboxen deaktiviert Wenn aktiv (`editMode === true`), sind Layer-Checkboxen deaktiviert
@@ -148,3 +151,7 @@ Das `MapLayersControlPanel` ermöglicht Nutzern:
- `redux/slices/database/pois/poiLayerVisibleSlice.js` - `redux/slices/database/pois/poiLayerVisibleSlice.js`
--- ---
---
[Zurück zur Übersicht](../../../README.md)

View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/components/uiWidgets/mapLayersControlPanel
- [EditModeToggle](EditModeToggle.md)
- [MapLayersControlPanel](MapLayersControlPanel.md)

View File

@@ -2,7 +2,8 @@
# 📦 appVersion.js # 📦 appVersion.js
Diese Datei exportiert die aktuelle App-Version, die an mehreren Stellen in der UI angezeigt werden kann z.B. im `VersionInfoModal`. Diese Datei exportiert die aktuelle App-Version, die an mehreren Stellen in der UI angezeigt werden
kann z.B. im `VersionInfoModal`.
## Inhalt ## Inhalt
@@ -14,3 +15,7 @@ export const APP_VERSION = "1.1.193";
- Im Footer oder Info-Fenster - Im Footer oder Info-Fenster
- Vergleich von Client- vs. Serverversion - Vergleich von Client- vs. Serverversion
---
[Zurück zur Übersicht](../README.md)

View File

@@ -31,7 +31,10 @@ Die Konfiguration entscheidet anhand des Modus:
```js ```js
const mode = process.env.NEXT_PUBLIC_API_PORT_MODE; const mode = process.env.NEXT_PUBLIC_API_PORT_MODE;
const serverURL = mode === "dev" ? `${window.location.protocol}//${window.location.hostname}:80` : `${window.location.origin}`; const serverURL =
mode === "dev"
? `${window.location.protocol}//${window.location.hostname}:80`
: `${window.location.origin}`;
``` ```
→ Dadurch funktioniert der Code ohne Anpassung bei IP-/Server-Wechseln oder Portunterschieden. → Dadurch funktioniert der Code ohne Anpassung bei IP-/Server-Wechseln oder Portunterschieden.
@@ -58,3 +61,7 @@ const serverURL = mode === "dev" ? `${window.location.protocol}//${window.locati
--- ---
📄 Pfad: `/docs/frontend/config/config.md` 📄 Pfad: `/docs/frontend/config/config.md`
---
[Zurück zur Übersicht](../README.md)

View File

@@ -3,7 +3,8 @@
# 🗺️ layers.js # 🗺️ layers.js
Diese Datei definiert alle verfügbaren Leaflet-Layergruppen im Projekt. Diese Datei definiert alle verfügbaren Leaflet-Layergruppen im Projekt.
Sie werden global als `MAP_LAYERS` exportiert und enthalten alle Systemtypen (TALAS, GMA, OTDR etc.). Sie werden global als `MAP_LAYERS` exportiert und enthalten alle Systemtypen (TALAS, GMA, OTDR
etc.).
## Struktur ## Struktur
@@ -19,3 +20,7 @@ export const MAP_LAYERS = {
- Initialisierung der Leaflet-Karte - Initialisierung der Leaflet-Karte
- Zuweisung von Markern und Linien - Zuweisung von Markern und Linien
---
[Zurück zur Übersicht](../README.md)

View File

@@ -17,3 +17,7 @@ export const BASE_URL = BASE_PATH ? `/${BASE_PATH}` : "";
## Nutzung ## Nutzung
- Für konsistente Pfadangaben im gesamten Projekt - Für konsistente Pfadangaben im gesamten Projekt
---
[Zurück zur Übersicht](../README.md)

View File

@@ -16,3 +16,7 @@ Alle Endpunkte (API, Tiles, Server) werden ohne Port oder Hardcoding erzeugt.
## Hinweis ## Hinweis
Alle Berechnungen erfolgen nur **clientseitig** (`typeof window !== "undefined"`). Alle Berechnungen erfolgen nur **clientseitig** (`typeof window !== "undefined"`).
---
[Zurück zur Übersicht](../README.md)

View File

@@ -5,3 +5,7 @@
- `NEXT_PUBLIC_API_HOST` → Webservice-DNS oder IP - `NEXT_PUBLIC_API_HOST` → Webservice-DNS oder IP
- `NEXT_PUBLIC_API_BASE_PATH` → z.B. `talas5`, per Deployment steuerbar - `NEXT_PUBLIC_API_BASE_PATH` → z.B. `talas5`, per Deployment steuerbar
- `DB_NAME` → hängt vom Kundenprojekt ab - `DB_NAME` → hängt vom Kundenprojekt ab
---
[Zurück zur Übersicht](README.md)

13
docs/guide/README.md Normal file
View File

@@ -0,0 +1,13 @@
# 📄 Übersicht: docs/guide
- [dependencies](dependencies.md)
- [env](env.md)
- [faq](faq.md)
- [glossar](glossar.md)
- [mock-data](mock-data.md)
- [onboarding-checklist](onboarding-checklist.md)
- [project-structure](project-structure.md)
- [redux-zustand](redux-zustand.md)
- [setup-dev](setup-dev.md)
- [user-guide](user-guide.md)
- [webservices](webservices.md)

View File

@@ -92,3 +92,7 @@ Erklärung, wofür sie im Projekt verwendet werden.
| ---------------- | ------------------------------------------------- | | ---------------- | ------------------------------------------------- |
| **prepare** | Wird durch Husky benötigt zum Setup von Hooks. | | **prepare** | Wird durch Husky benötigt zum Setup von Hooks. |
| **bump-version** | Interner Versionsbump-Script für `appVersion.js`. | | **bump-version** | Interner Versionsbump-Script für `appVersion.js`. |
---
[Zurück zur Übersicht](../README.md)

View File

@@ -37,3 +37,7 @@ NEXT_PUBLIC_USE_MOCKS=false
NEXT_PUBLIC_BASE_PATH=/talas5 NEXT_PUBLIC_BASE_PATH=/talas5
NEXT_PUBLIC_DEBUG=false NEXT_PUBLIC_DEBUG=false
``` ```
---
[Zurück zur Übersicht](../README.md)

View File

@@ -63,3 +63,7 @@
- **Kleines Update:** Nur `.next/` kopieren. - **Kleines Update:** Nur `.next/` kopieren.
- **Größeres Update:** Gesamte App inkl. `node_modules`, `.env.production` und `public/` ersetzen. - **Größeres Update:** Gesamte App inkl. `node_modules`, `.env.production` und `public/` ersetzen.
- Dienst neu starten. - Dienst neu starten.
---
[Zurück zur Übersicht](../README.md)

View File

@@ -26,3 +26,7 @@ Eine Übersicht wichtiger Begriffe rund um NodeMap und die verwendeten Technolog
| **GisSystemStatic** | Eine Webservice-Antwort mit Systeminformationen für die Kartendarstellung. | | **GisSystemStatic** | Eine Webservice-Antwort mit Systeminformationen für die Kartendarstellung. |
| **mapTiles** | Bildkacheln (z.B. `.png`), die die Grundkarte darstellen wie bei Google Maps. | | **mapTiles** | Bildkacheln (z.B. `.png`), die die Grundkarte darstellen wie bei Google Maps. |
| **TALAS.web** | Die bestehende (ältere) Verwaltungssoftware, in die NodeMap eingebettet wird. | | **TALAS.web** | Die bestehende (ältere) Verwaltungssoftware, in die NodeMap eingebettet wird. |
---
[Zurück zur Übersicht](../README.md)

View File

@@ -70,3 +70,7 @@ const url = useMocks
- [📄 Umgebungsvariablen](env.md) - [📄 Umgebungsvariablen](env.md)
- [📄 Webservices im Detail](webservices.md) - [📄 Webservices im Detail](webservices.md)
- [📄 Zustandverwaltung (Redux)](redux-zustand.md) - [📄 Zustandverwaltung (Redux)](redux-zustand.md)
---
[Zurück zur Übersicht](../README.md)

View File

@@ -74,3 +74,7 @@ Projekt.
**Tipp:** Hake jeden Schritt ab, sobald du ihn erledigt hast. **Tipp:** Hake jeden Schritt ab, sobald du ihn erledigt hast.
Viel Erfolg beim Einstieg! 🎉 Viel Erfolg beim Einstieg! 🎉
---
[Zurück zur Übersicht](../README.md)

View File

@@ -134,3 +134,7 @@ services/ → API-Kommunikation, Mock-Logik
┃ ┣ 📜fetchGisSystemStaticService.js ┃ ┣ 📜fetchGisSystemStaticService.js
┃ ┗ 📜fetchUserRightsService.js ┃ ┗ 📜fetchUserRightsService.js
``` ```
---
[Zurück zur Übersicht](../README.md)

View File

@@ -16,3 +16,7 @@ Die Anwendung verwendet vollständig **Redux Toolkit** für die globale Zustandv
- Einheitliche Behandlung von Status, auch bei komplexen Komponenten - Einheitliche Behandlung von Status, auch bei komplexen Komponenten
➡ Neue Features bitte ausschließlich mit Redux umsetzen! ➡ Neue Features bitte ausschließlich mit Redux umsetzen!
---
[Zurück zur Übersicht](../README.md)

View File

@@ -52,3 +52,7 @@ NEXT_PUBLIC_USE_MOCKS=true
- Projektstruktur: [project-structure.md](project-structure.md) - Projektstruktur: [project-structure.md](project-structure.md)
- Webservices: [webservices.md](webservices.md) - Webservices: [webservices.md](webservices.md)
- Zustandverwaltung: [redux-zustand.md](redux-zustand.md) - Zustandverwaltung: [redux-zustand.md](redux-zustand.md)
---
[Zurück zur Übersicht](../README.md)

View File

@@ -13,3 +13,7 @@
- **Station auswählen:** Dropdown oben rechts - **Station auswählen:** Dropdown oben rechts
- **Zentrieren:** Rechtsklick → "Hier zentrieren" - **Zentrieren:** Rechtsklick → "Hier zentrieren"
- **Geräte-Kontextmenü:** Rechtsklick auf Marker → „Station öffnen (Tab)“ - **Geräte-Kontextmenü:** Rechtsklick auf Marker → „Station öffnen (Tab)“
---
[Zurück zur Übersicht](../README.md)

View File

@@ -32,3 +32,7 @@ Die Daten werden verarbeitet, zwischengespeichert und z.T. über Redux in der
- der IIS laufen - der IIS laufen
- der `WebServiceMap.asmx` erreichbar sein - der `WebServiceMap.asmx` erreichbar sein
---
[Zurück zur Übersicht](../README.md)

9
docs/hooks/README.md Normal file
View File

@@ -0,0 +1,9 @@
# 📄 Übersicht: docs/hooks
- [useCreateAndSetDevices](useCreateAndSetDevices.md)
- [useDynamicMarkerLayers](useDynamicMarkerLayers.md)
- [useLayerVisibility](useLayerVisibility.md)
- [useLineData](useLineData.md)
- [useMapComponentState](useMapComponentState.md)
- [useMarkerLayers](useMarkerLayers.md)
- [usePolylineTooltipLayer](usePolylineTooltipLayer.md)

View File

@@ -0,0 +1,20 @@
# 📄 Übersicht: docs/hooks/layers
- [useAreaMarkersLayer](useAreaMarkersLayer.md)
- [useCiscoRouterMarkersLayer](useCiscoRouterMarkersLayer.md)
- [useDauzMarkersLayer](useDauzMarkersLayer.md)
- [useDrawLines](useDrawLines.md)
- [useEciMarkersLayer](useEciMarkersLayer.md)
- [useGmaMarkersLayer](useGmaMarkersLayer.md)
- [useLteModemMarkersLayer](useLteModemMarkersLayer.md)
- [useMessstellenMarkersLayer](useMessstellenMarkersLayer.md)
- [useOtdrMarkersLayer](useOtdrMarkersLayer.md)
- [useSiemensMarkersLayer](useSiemensMarkersLayer.md)
- [useSmsfunkmodemMarkersLayer](useSmsfunkmodemMarkersLayer.md)
- [useSonstigeMarkersLayer](useSonstigeMarkersLayer.md)
- [useTalasMarkersLayer](useTalasMarkersLayer.md)
- [useTalasiclMarkersLayer](useTalasiclMarkersLayer.md)
- [useTkComponentsMarkersLayer](useTkComponentsMarkersLayer.md)
- [useUlafMarkersLayer](useUlafMarkersLayer.md)
- [useWagoMarkersLayer](useWagoMarkersLayer.md)
- [useWdmMarkersLayer](useWdmMarkersLayer.md)

View File

@@ -11,3 +11,7 @@ Lädt Bereichs-/Stationsmarker aus einer API und rendert sie auf der Karte.
- Automatischer API-Fetch mit `fetch(...)` - Automatischer API-Fetch mit `fetch(...)`
- Dynamisches Layer-Handling via localStorage ("mapLayersVisibility") - Dynamisches Layer-Handling via localStorage ("mapLayersVisibility")
- Automatisches Speichern neuer Koordinaten per `updateAreaThunk()` - Automatisches Speichern neuer Koordinaten per `updateAreaThunk()`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -9,3 +9,7 @@ Hook zur Verwaltung aller Cisco-Router-Marker in der Leaflet-Karte.
- Lädt Geräte per `createAndSetDevices(6, ...)` - Lädt Geräte per `createAndSetDevices(6, ...)`
- Fügt Marker hinzu & registriert Popup/Kontextmenü - Fügt Marker hinzu & registriert Popup/Kontextmenü
- Verwendet `checkOverlappingMarkers(...)` - Verwendet `checkOverlappingMarkers(...)`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -9,3 +9,7 @@ Spezialisierter Hook zur Verwaltung von DAUZ-Gerätemarkern (System-ID: 110)
- Marker mit Popup & Kontextmenü - Marker mit Popup & Kontextmenü
- Nutzung von `createAndSetDevices(...)` - Nutzung von `createAndSetDevices(...)`
- Sichtbarkeit direkt über Kartenlayer steuerbar - Sichtbarkeit direkt über Kartenlayer steuerbar
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -9,3 +9,7 @@ Hook zur Konvertierung von GIS-Linien in kartentaugliche Koordinatenpaare.
- Lädt Linien mit `fetchGisLinesThunk()` - Lädt Linien mit `fetchGisLinesThunk()`
- Wandelt `points[x, y]` in Leaflet-Koordinaten `[lat, lng]` um - Wandelt `points[x, y]` in Leaflet-Koordinaten `[lat, lng]` um
- Gibt `setLinePositions([...])` zurück - Gibt `setLinePositions([...])` zurück
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -9,3 +9,7 @@ Verwaltet die Darstellung und Events für ECI-Marker (System-ID: 2)
- Kontextmenü & Popup für jeden Marker - Kontextmenü & Popup für jeden Marker
- Erkennung überlappender Marker (`checkOverlappingMarkers`) - Erkennung überlappender Marker (`checkOverlappingMarkers`)
- Nutzung von `createAndSetDevices(...)` - Nutzung von `createAndSetDevices(...)`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -9,3 +9,7 @@ Spezialhook für GMA-Marker mit Messwertanzeige (LT, FBT, GT, RLF).
- Tooltip enthält Temperatur-/Feuchtigkeitswerte aus Redux - Tooltip enthält Temperatur-/Feuchtigkeitswerte aus Redux
- Eigenes Kontextmenü mit Zoom/Zentrieren - Eigenes Kontextmenü mit Zoom/Zentrieren
- Verwendet `marker.options.areaName` zur Messzuordnung - Verwendet `marker.options.areaName` zur Messzuordnung
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -8,3 +8,7 @@ Steuert Marker vom Typ LTE-Modem (System-ID: 5)
- Standard-Kontextmenü + Popup - Standard-Kontextmenü + Popup
- Integration mit OMS und Overlap-Check - Integration mit OMS und Overlap-Check
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -8,3 +8,7 @@ Für Messstellen-Marker (System-ID: 13)
- Einfache Marker mit Tooltip - Einfache Marker mit Tooltip
- Nutzung von `createAndSetDevices(...)` + Kontextmenü - Nutzung von `createAndSetDevices(...)` + Kontextmenü
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -8,3 +8,7 @@ Darstellung von OTDR-Messpunkten (System-ID: 9)
- Popup-Interaktion beim Hover - Popup-Interaktion beim Hover
- Marker mit Kontextmenü via `addContextMenuToMarker` - Marker mit Kontextmenü via `addContextMenuToMarker`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -5,3 +5,7 @@ Für Siemens-Geräte (System-ID: 8).
- Marker mit Kontextmenü und Overlap-Prüfung - Marker mit Kontextmenü und Overlap-Prüfung
- Integration mit OMS - Integration mit OMS
- Nutzung von `checkOverlappingMarkers(...)` - Nutzung von `checkOverlappingMarkers(...)`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -5,3 +5,7 @@ Filtert `GisSystemStatic` nach SMS Modem (System 111 oder Name).
- Icon: `/img/icons/pois/sms-funkmodem.png` - Icon: `/img/icons/pois/sms-funkmodem.png`
- Kontextmenü & Popup - Kontextmenü & Popup
- Sichtbarkeit über `isVisible` steuerbar - Sichtbarkeit über `isVisible` steuerbar
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -5,3 +5,7 @@ Für alle Geräte mit System-ID 200 (Sonstige).
- Klassische Leaflet-Marker - Klassische Leaflet-Marker
- Kontextmenü und Popup - Kontextmenü und Popup
- Nutzung von `createAndSetDevices(...)` - Nutzung von `createAndSetDevices(...)`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -4,3 +4,7 @@ Für TALAS-Systeme (System-ID: 1).
- Popup + Kontextmenü auf Marker - Popup + Kontextmenü auf Marker
- Fügt Marker zuerst zu OMS, dann zu Karte hinzu - Fügt Marker zuerst zu OMS, dann zu Karte hinzu
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -4,3 +4,7 @@ Spezialhook für Geräte vom Typ TALASICL (System-ID: 100).
- Erstellt Marker mit Standardverhalten - Erstellt Marker mit Standardverhalten
- Kontextmenü, Popup, Overlap-Prüfung - Kontextmenü, Popup, Overlap-Prüfung
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -4,3 +4,7 @@ Für TK-Komponenten (System-ID: 30).
- Lädt Marker via `createAndSetDevices` - Lädt Marker via `createAndSetDevices`
- Marker-Koordinaten können debug-geloggt werden - Marker-Koordinaten können debug-geloggt werden
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -5,3 +5,7 @@ Spezialhook für ULAF-Systeme (System-ID: 0).
- Marker mit ULAF-Icon - Marker mit ULAF-Icon
- Kontextmenü und Popup (statisch) - Kontextmenü und Popup (statisch)
- Dynamisch generierter Popupinhalt - Dynamisch generierter Popupinhalt
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -4,3 +4,7 @@ Für WAGO-Systeme (System-ID: 7).
- Kontextmenü, Popup, Overlapping-Support - Kontextmenü, Popup, Overlapping-Support
- OMS-Integration und Layer-Hinzufügung - OMS-Integration und Layer-Hinzufügung
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -5,3 +5,7 @@ Verwaltet WDM-Marker (System-ID: 10) in Leaflet.
- Marker mit Kontextmenü - Marker mit Kontextmenü
- Mouseover-Popup - Mouseover-Popup
- Nutzung von `createAndSetDevices(...)` - Nutzung von `createAndSetDevices(...)`
---
[Zurück zur Übersicht](../../README.md)

View File

@@ -15,3 +15,7 @@ Bindet `createAndSetDevices(...)` automatisch in einen `useEffect`.
## Redux ## Redux
- Bezieht `polylineEventsDisabled` aus Redux zur Steuerung der Interaktivität - Bezieht `polylineEventsDisabled` aus Redux zur Steuerung der Interaktivität
---
[Zurück zur Übersicht](../README.md)

View File

@@ -15,3 +15,7 @@ Verwaltet alle Marker-Layergruppen dynamisch und modular in einem zentralen Hook
- Karte (`map`) muss bereit sein - Karte (`map`) muss bereit sein
- `GisSystemStatic` + `priorityConfig` + Marker-Setter müssen übergeben werden - `GisSystemStatic` + `priorityConfig` + Marker-Setter müssen übergeben werden
---
[Zurück zur Übersicht](../README.md)

View File

@@ -13,3 +13,7 @@ Custom Hook zur dynamischen Steuerung von Layer-Sichtbarkeit basierend auf Redux
## Intern ## Intern
Verwendet `addContextMenuToMarker()` zur Kontextmenüintegration pro Marker. Verwendet `addContextMenuToMarker()` zur Kontextmenüintegration pro Marker.
---
[Zurück zur Übersicht](../README.md)

View File

@@ -17,3 +17,7 @@ Lädt Linienstatusdaten (Farben, Tooltips) aus zwei Webservices in Redux und ber
## Intern ## Intern
- Nutzt Map `valueMap`, um Messwert, Schleifenwert, Meldungen zu gruppieren - Nutzt Map `valueMap`, um Messwert, Schleifenwert, Meldungen zu gruppieren
---
[Zurück zur Übersicht](../README.md)

View File

@@ -16,3 +16,7 @@ Sammelt zentrale UI-Zustände und Redux-Daten für die `MapComponent`.
## Redux ## Redux
- `fetchPoiTypThunk`, `fetchGisStationsStaticDistrictThunk`, `fetchPriorityConfigThunk` - `fetchPoiTypThunk`, `fetchGisStationsStaticDistrictThunk`, `fetchPriorityConfigThunk`
---
[Zurück zur Übersicht](../README.md)

View File

@@ -14,3 +14,7 @@ useMarkerLayers(map, gmaMarkers, "GMA");
- Liest `mapLayersVisibility` aus dem Store - Liest `mapLayersVisibility` aus dem Store
- Reagiert automatisch auf Änderungen - Reagiert automatisch auf Änderungen
---
[Zurück zur Übersicht](../README.md)

View File

@@ -12,4 +12,9 @@ Initialisiert und steuert Polylinien + Tooltip-Verhalten für Linienmessdaten.
## Parameter (gekürzt) ## Parameter (gekürzt)
- `map`, `markers`, `setMarkers`, `setPolylines`, `linePositions`, `tooltipContents`, `lineColors`, etc. - `map`, `markers`, `setMarkers`, `setPolylines`, `linePositions`, `tooltipContents`, `lineColors`,
etc.
---
[Zurück zur Übersicht](../README.md)

View File

@@ -59,3 +59,7 @@
``` ```
``` ```
---
[Zurück zur Übersicht](README.md)

4
docs/pages/README.md Normal file
View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/pages
- [_app](_app.md)
- [index](index.md)

View File

@@ -1,6 +1,6 @@
<!-- /docs/pages/_app.md --> <!-- /docs/pages/_app.md -->
# 🌐 _app.js # 🌐 \_app.js
Diese Datei stellt die Haupt-Wrap-Komponente der Next.js-App dar. Diese Datei stellt die Haupt-Wrap-Komponente der Next.js-App dar.
Sie initialisiert globale Provider wie den Redux Store. Sie initialisiert globale Provider wie den Redux Store.
@@ -24,3 +24,7 @@ Sie initialisiert globale Provider wie den Redux Store.
```bash ```bash
/pages/_app.js /pages/_app.js
``` ```
---
[Zurück zur Übersicht](../README.md)

3
docs/pages/api/README.md Normal file
View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/pages/api
- [[...path]]([...path].md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/pages/api/talas_v5_DB
- [priorityConfig](priorityConfig.md)

View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/pages/api/talas_v5_DB/area
- [readArea](readArea.md)
- [updateArea](updateArea.md)

View File

@@ -2,7 +2,8 @@
# 📥 readArea.js # 📥 readArea.js
Liest Bereichskoordinaten (`location_coordinates`) aus der Datenbank basierend auf `idMaps` (und optional `idLocation`). Liest Bereichskoordinaten (`location_coordinates`) aus der Datenbank basierend auf `idMaps` (und
optional `idLocation`).
## Methode ## Methode
@@ -11,7 +12,7 @@ Liest Bereichskoordinaten (`location_coordinates`) aus der Datenbank basierend a
## URL-Parameter ## URL-Parameter
| Name | Beschreibung | | Name | Beschreibung |
|-------------|--------------------------------------| | ------------ | --------------------------------------- |
| `m` | Karten-ID (entspricht `idMaps`) | | `m` | Karten-ID (entspricht `idMaps`) |
| `idLocation` | (optional) ID eines bestimmten Bereichs | | `idLocation` | (optional) ID eines bestimmten Bereichs |
@@ -26,3 +27,7 @@ Liest Bereichskoordinaten (`location_coordinates`) aus der Datenbank basierend a
```http ```http
GET /api/talas_v5_DB/area/readArea?m=3 GET /api/talas_v5_DB/area/readArea?m=3
``` ```
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -2,7 +2,8 @@
# 📤 updateArea.js # 📤 updateArea.js
Aktualisiert die Koordinaten eines Bereichs (`location_coordinates`) basierend auf `idLocation` und `idMap`. Aktualisiert die Koordinaten eines Bereichs (`location_coordinates`) basierend auf `idLocation` und
`idMap`.
## Methode ## Methode
@@ -30,3 +31,7 @@ Aktualisiert die Koordinaten eines Bereichs (`location_coordinates`) basierend a
- 400: Fehlende Daten - 400: Fehlende Daten
- 404: Kein Eintrag gefunden - 404: Kein Eintrag gefunden
- 500: Interner Fehler - 500: Interner Fehler
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/pages/api/talas_v5_DB/device
- [getAllStationsNames](getAllStationsNames.md)
- [getDevices](getDevices.md)

View File

@@ -27,3 +27,7 @@ Liefert eine Zuordnungstabelle aller Geräte-IDs (`idLD`) zu ihren Namen (`name`
```bash ```bash
/pages/api/talas_v5_DB/device/getAllStationsNames.js /pages/api/talas_v5_DB/device/getAllStationsNames.js
``` ```
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -32,3 +32,7 @@ API-Route zum Abrufen aller Geräteinformationen aus der `devices`-Tabelle.
```bash ```bash
/pages/api/talas_v5_DB/device/getDevices.js /pages/api/talas_v5_DB/device/getDevices.js
``` ```
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -0,0 +1,4 @@
# 📄 Übersicht: docs/pages/api/talas_v5_DB/gisLines
- [readGisLines](readGisLines.md)
- [updateLineCoordinates](updateLineCoordinates.md)

View File

@@ -23,3 +23,7 @@ Liefert alle Linien aus der Tabelle `gis_lines`.
```http ```http
GET /api/talas_v5_DB/gisLines/readGisLines GET /api/talas_v5_DB/gisLines/readGisLines
``` ```
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -14,7 +14,10 @@ Aktualisiert die `points`-Spalte einer Linie in der Tabelle `gis_lines`.
{ {
"idLD": 7, "idLD": 7,
"idModul": 2, "idModul": 2,
"newCoordinates": [[53.2151, 8.4522], [53.2165, 8.4531]] "newCoordinates": [
[53.2151, 8.4522],
[53.2165, 8.4531]
]
} }
``` ```
@@ -28,3 +31,7 @@ Aktualisiert die `points`-Spalte einer Linie in der Tabelle `gis_lines`.
- 400: Ungültige oder fehlende Felder - 400: Ungültige oder fehlende Felder
- 500: Datenbankfehler - 500: Datenbankfehler
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -0,0 +1,5 @@
# 📄 Übersicht: docs/pages/api/talas_v5_DB/locationDevice
- [getDeviceId](getDeviceId.md)
- [locationDeviceNameById](locationDeviceNameById.md)
- [locationDevices](locationDevices.md)

View File

@@ -11,7 +11,7 @@ Gibt die Geräte-ID (`idLD`) zu einem übergebenen Gerätenamen zurück.
## Parameter ## Parameter
| Name | Beschreibung | | Name | Beschreibung |
|-------------|----------------------| | ------------ | ------------------------------- |
| `deviceName` | Der Gerätename (z.B. "Kue705") | | `deviceName` | Der Gerätename (z.B. "Kue705") |
## Antwort ## Antwort
@@ -24,3 +24,7 @@ Gibt die Geräte-ID (`idLD`) zu einem übergebenen Gerätenamen zurück.
- 400: Wenn `deviceName` fehlt - 400: Wenn `deviceName` fehlt
- 404: Gerät nicht gefunden - 404: Gerät nicht gefunden
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -11,7 +11,7 @@ Gibt den Namen eines Geräts anhand seiner ID zurück.
## Parameter ## Parameter
| Name | Beschreibung | | Name | Beschreibung |
|--------|------------------------| | ------ | -------------------- |
| `idLD` | Geräte-ID (z.B. 27) | | `idLD` | Geräte-ID (z.B. 27) |
## Antwort ## Antwort
@@ -24,3 +24,7 @@ Gibt den Namen eines Geräts anhand seiner ID zurück.
- 400: Fehlender Parameter - 400: Fehlender Parameter
- 404: Gerät mit ID nicht gefunden - 404: Gerät mit ID nicht gefunden
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -25,3 +25,7 @@ Gibt eine vollständige Liste aller Geräte in der Tabelle `location_device` zur
} }
] ]
``` ```
---
[Zurück zur Übersicht](../../../../README.md)

View File

@@ -0,0 +1,3 @@
# 📄 Übersicht: docs/pages/api/talas_v5_DB/poiTyp
- [readPoiTyp](readPoiTyp.md)

View File

@@ -34,3 +34,7 @@ GET /api/talas_v5_DB/poiTyp/readPoiTyp
} }
] ]
``` ```
---
[Zurück zur Übersicht](../../../../README.md)

Some files were not shown because too many files have changed in this diff Show More