This commit is contained in:
ISA
2025-06-24 15:07:00 +02:00
parent b6c6fad3b3
commit 4070429193
60 changed files with 87 additions and 214 deletions

53
TODO.md
View File

@@ -1,53 +0,0 @@
## 🧪 Hinweise zur Entwicklung
<!-- TODO: Intervall-Aktualisierung mit Mockdaten testen -->
- Mock-Dateien liegen unter `/public/__mocks__/`
- In `.env.local` ist `NEXT_PUBLIC_USE_MOCKS=true` gesetzt
- Diese helfen beim UI-Test der Intervall-Aktualisierung (Charts, Statusanzeigen)
- Manuell bearbeitbar, um gezielt Systemverhalten zu simulieren
## 🔧 Offene Aufgaben
- [ ] TODO: GMA auf 13er ist anders als in der Entwicklungsumgebung, Tooltip wird nicht angezeigt
- [x] TODO: In editMode ohne Rechte kann noch die Linien Stützpunkte positioniert werden, es soll
das nicht!
- [x] TODO: In editMode ohne Rechte kann noch den Bereich positioniert werden, es soll das nicht!
- [ ] TODO: die Messwerte GMA werden nicht angezeigt
- [ ] TODO: der Kunde könnte statt GMA andere Name haben
- [x] TODO: überall durch ein Interval Services aufrufen um die Daten zu aktualisieren , am besten
in eine Zentraler Stelle ---> von ein Hook die alle gebrauchte Slice und thunks holt mit
setInterval, diesen hokk in main component integrieren
- [x] TODO: Möglichkeit bevor in Gitea hochgeladen, .env.local anpassen, vielleicht mit husky Wenn
git push genutzt wird soll für Produktionsumgebung angepasst werden, Vorschlag ---> .env.local
und .env.production für Entwicklungsumgebung und Produktionsumgebung automatische Switch
## 🧹 Memory Leaks prüfen
- [ ] **MapComponent.js** - [ ] `setInterval(...)` (1x) - [ ] `setTimeout(...)` (2x) - [ ]
`window.xyz = ...` (4x) globale Variablen - [ ] `map.on(...)` (2x) - [ ]
`addEventListener(...)` (1x) - 📌 Problematisch, wenn `clearInterval`, `clearTimeout`,
`map.off(...)` oder `removeEventListener(...)` nicht im useEffect-Cleanup gemacht werden. →
Speicher kann anwachsen, besonders bei Hot-Reload oder Navigation im iFrame.
- [ ] **useAreaMarkersLayer.js** - [ ] `setInterval(...)` - [ ] `addEventListener(...)` - 📌 Auch
hier muss geprüft werden, ob beim Unmounting der Komponente `clearInterval()` und
`removeEventListener()` aufgerufen wird.
- [ ] **AddPOIModal.js** - [ ] `setTimeout(...)` - 📌 Prüfen, ob der Timeout vor unmount gecleart
wird (z.B. bei schnellem Öffnen und Schließen des Modals).
- [ ] **MapLayersControlPanel.js** - [ ] `setTimeout(...)`
- [ ] **useDataUpdater.js** - [ ] `setInterval(...)` - 📌 Sehr wahrscheinlich ein regelmäßiger
Polling-Mechanismus → unbedingt prüfen, ob `clearInterval()` im useEffect-Cleanup enthalten
ist.
-[x] TODO: WebSocket für webService erstellen , falls etwas geändert wird dann soll aktualisiert,
optimiert besser als setInterval, zuerst nur für TALAS.web WebServices erstellen, irgendwann soll
die Daten von DB auch mit WebSocket gelöst werden
- [x] TODO: POI bearbeiten funktioniert es nicht
- [ ] TODO: Linien Links noch mit Port 3000
- [ ] TODO: Checkliste für README.md vorbereiten