- Neuer Name beschreibt die Funktion als dynamischer Modal-Wrapper für KUE-, TDR- und Knotenpunkte-Einstellungen
- Verbesserte Lesbarkeit und Struktur im Projekt
- Keine Änderung an Funktionalität, nur Umbenennung der Datei
- Minor-Version immer zweistellig mit führender Null
- Verbesserung der UI-Darstellung der Modulversion
- Beispiel: 420 wird jetzt als V4.20 angezeigt statt V4.2
- Historische Messdaten von analogInput1 bis analogInput8 im Verzeichnis /apiMockData/analogInputsHistoryData angelegt
- Namensschema analogInputX gewählt für bessere Lesbarkeit und Klarheit
- Daten wurden per CPL-Endpunkt (DIA0) vom Webinterface geladen und lokal gespeichert
- Grundlage für Entwicklung, Tests und Offline-Visualisierung im Chart
- Lokale States beim ersten Öffnen des Modals gesetzt
- Redux-Änderungen während der Bearbeitung blockiert, um Fokusverlust zu verhindern
- Benutzerfreundlichkeit bei der Bearbeitung von Kabelüberwachungen verbessert
- useDigitalInputsData.ts und useDigitalOutputsData.ts entfernt
- Veraltete direkte Laden von window-Variablen aus Mock-Skripten entfernt
- Alle Daten werden jetzt ausschließlich über Services und Redux Thunks verwaltet
- Projektstruktur aufgeräumt und optimiert
- Lokale useState-Variablen für alle Eingabefelder in KueEinstellung.tsx eingeführt
- Fokusverlust beim Tippen verhindert, Redux-Update erfolgt erst bei onBlur
- handleSave.ts angepasst: Jede Änderung wird einzeln als CGI-Request gesendet
- Fehlerhafte Namensspeicherung ("Test;KL_0=13") korrigiert
- Zuverlässigkeit der Bedienung und Speicherung auf CPL-Webserver verbessert
- Fehler behoben: Speicherintervall wurde nicht an CGI gesendet, wenn Schleifenintervall unverändert blieb
- Redux-Dispatch korrigiert: speicherintervall → memoryInterval angepasst
- Inhalte in GeneralSettings und OPCUAInterfaceSettings nicht mehr zentriert
- Layout konsistent mit anderen Seiten (rechts oben durch max-w-5xl + mr-auto)
- Bessere Ausrichtung für Desktop-Auflösung und altes Laptop-Design
- TDR-Einstellung liest TDR-Status direkt aus kueDataX.js via window.win_tdrActive
- Schalter (Switch) zeigt Zustand korrekt an (aktiviert/deaktiviert)
- TypeScript-Typen für window-Objekt erweitert (declare global)
- Verzicht auf fetch → statisches Einlesen optimiert für Produktionsumgebung
- Build läuft erfolgreich mit `npm run build`
- Knotenpunkte.tsx angepasst: <script>-basierte Einbindung von kueDataX.js über CGI-Endpoint (/CPL?/CPL/Service/kueDataKnoten/kueDataX.js)
- Verwendung von window.kueNodeID zur Anzeige der dynamisch geladenen Daten
- Files in Browser DevTools > Sources sichtbar dank echter Script-Einbindung
- Platzhalterlose kueDataX.js-Dateien erstellt und eingebunden
- Produktionsbuild erfolgreich getestet und in /out-Verzeichnis übertragen
- Tab-Zustand wird in window.__lastKueTab gespeichert
- Verhindert automatische Rücksetzung bei Re-Render oder showModal-Änderung
- Nutzer bleibt auf dem zuletzt aktiven Tab (TDR, Knotenpunkte etc.)
- CGI-Endpunkte der CPL-Hardware werden jetzt per fetch im Hintergrund aufgerufen
- Kein Tab-Wechsel oder Seitenreload mehr bei "Speichern"
- Entwicklung nutzt weiterhin Next.js API-Routen
- Nutzer erhält einheitliches Feedback per alert
- output: "export" wird jetzt automatisch bei EXPORT_STATIC=true aktiviert
- Entwicklungsmodus (npm run dev) nutzt weiterhin API-Routen für Mock-Tests
- Neues npm-Skript nutzt cross-env für Umgebungsunabhängigkeit bei Windows/Linux
- cross-env als devDependency hinzugefügt
- Originalwerte werden jetzt direkt aus window.win_kueXYZ geladen
- Vergleiche in handleSave.ts angepasst für stabile Zahl/String-Auswertung
- Fehlerhafte Meldung „Keine Änderungen vorgenommen“ behoben
- Nur geänderte Werte werden per GET-API gesendet
- Lokale Zustände durch direkten Zugriff auf Redux-Arrays ersetzt
- updateArray-Funktion korrigiert: kein Thunk mehr, stattdessen direkte Übergabe des aktuellen Arrays
- Fehler bei Typkonflikt in dispatch() behoben
- Eingaben schreiben nun sofort in den Store → Änderungen werden korrekt erkannt und gespeichert
- Änderungen in Dev-Umgebung werden per /api/cpl/updateKueDataAPIHandler gespeichert
- Production weiterhin GET-Request mit Parametern
- Fehlerbehandlung optimiert
- überflüssiger fetch auf /CPL?KTR... in Development entfernt
- Fehler-Alert durch 404-Seite bei Embedded-Link im Dev gefixt
- Referenzkurve wird jetzt in Dev nur lokal gespeichert und per API aktualisiert
- In Development wurde noch /api/cpl/slotData verwendet
- Korrekt ist jetzt /api/cpl/slotDataAPIHandler
- Fehler beim Laden der Chart-Daten behoben (Unexpected token '<')
- Dev und Prod Zugriff wieder sauber getrennt
- Datum auf letzten 30 Tage zurückgesetzt
- Dropdowns auf "Alle Messwerte" und "Isolationswiderstand" zurückgesetzt
- Chart-Titel ebenfalls zurückgesetzt
- Während Daten geladen werden, wird PulseLoader angezeigt
- Chart wird erst gerendert, wenn isLoading === false
- Canvas wird mit display:none ausgeblendet, solange geladen wird
- vonDatum wird beim ersten Laden auf 30 Tage zurück gesetzt
- bisDatum ist standardmäßig auf das heutige Datum gesetzt
- Auswahlbereich begrenzt auf maximal 6 Monate zurück
- Heutiger Tag ist das maximale auswählbare Datum
- Datum wird im Format YYYY-MM-DD im Redux gespeichert
- toISOString() durch toLocaleDateString("sv-SE") ersetzt, um lokale Zeit zu berücksichtigen
- Datum im Redux nun korrekt im Format YYYY-MM-DD gespeichert
- Kein UTC-Verschiebungsproblem mehr beim Auswählen von vonDatum und bisDatum
- Neue Route /api/cpl/slotData erstellt
- Lädt Daten aus /public/CPLmockData/kuesChartData/... basierend auf slot, messart und dia
- Optionales Filtern über vonDatum und bisDatum hinzugefügt
- 404-Fehler bei fehlender Datei wird abgefangen