64 KiB
[1.6.662] – 2025-07-31
- Feat: KVz Bereich in EinstellungsModal in KÜs Modal
[1.6.661] – 2025-07-31
- feat: TDR starten Button in KÜ Chart
[1.6.660] – 2025-07-31
- fix: Schleifenwiderstand (TDR) Messung starten Button auf der Produktion
[1.6.659] – 2025-07-31
- feat: Display und Chart für KÜs
[1.6.658] – 2025-07-31
- feat; in KÜ Chart RSL und ISO start button
[1.6.657] – 2025-07-28
- deat: KVz anzeigen
[1.6.656] – 2025-07-28
- fix: Chart Titel Isolationsmessung zu schleifenmessung
[1.6.655] – 2025-07-28
- cleanup: Kue705FO
[1.6.654] – 2025-07-28
- feat: ISO, RSL und TDR separate Charts ohne den Switcher
[1.6.653] – 2025-07-28
- fix: KÜ slotnummer in der Messkurven Modal
[1.6.652] – 2025-07-28
-
fix(Kue705FO): maintain consistent 3-line display layout
-
Keep alarm status line with empty space when no alarm is present
-
Use non-breaking space (\u00A0) to preserve line height and layout
-
Remove green "Status: OK" text for cleaner display
-
Ensure consistent 3-line structure: Alarm/Empty, ISO, RSL
[1.6.651] – 2025-07-25
-
refactor(Kue705FO): integrate chart functionality into detail view buttons
-
Remove separate TDR/Schleife Messkurve buttons section
-
Add direct chart opening to ISO, RSL, and TDR buttons in detail view
-
ISO and RSL buttons now open Schleife chart with proper state setup
-
TDR button opens TDR chart with distance calculation
-
Remove unused button container but keep structure for future use
-
Clean up unused imports and variables needed
[1.6.650] – 2025-07-25
-
feat(Kue705FO): replace switch buttons with direct chart access buttons
-
Remove Schleife/TDR switch buttons and separate Messkurve button
-
Add "TDR Messkurve" and "Schleife Messkurve" buttons for direct chart access
-
Each button opens the corresponding chart type directly
-
Improve user experience by reducing clicks needed to access specific charts
-
Clean up unused imports (handleButtonClick, tdrLocation, tdrActive)
[1.6.649] – 2025-07-25
- TDR und Schleife Button in KÜs wieder für die Funktionen
[1.6.648] – 2025-07-24
- TDR und Schleife Button in KÜs wieder für die Funktionen
[1.6.647] – 2025-07-24
- feat: Anzeige KÜ-Display:
-
Zeile Alarm: Isolationsfehler, Schleifenfehler, Aderbruch, Erdschluß, Messpannung: Immer in Rot; wenn kein Alarm, bleibt die Zeile leer
-
Zeile: Isowert: xx MOhm (großes M)
in Rot, wenn Iso-Fehler ansteht
Beispiel: ISO: 100 MOHm der beim Abliech: ISO: Abgleich
- Zeile: Schleifenwert, xx kOhm (kleines k)
in Rot, wenn Schleifenfehler ansteht
Beispiel:: RSL: 1,7 kOhm oder wenn Schleifenmessung aktiv: RSL: Messung
[1.6.646] – 2025-07-24
- feat: Anzeige KÜ-Display:
-
Zeile Alarm: Isolationsfehler, Schleifenfehler, Aderbruch, Erdschluß, Messpannung: Immer in Rot; wenn kein Alarm, bleibt die Zeile leer
-
Zeile: Isowert: xx MOhm (großes M)
in Rot, wenn Iso-Fehler ansteht
Beispiel: ISO: 100 MOHm der beim Abliech: ISO: Abgleich
- Zeile: Schleifenwert, xx kOhm (kleines k)
in Rot, wenn Schleifenfehler ansteht
Beispiel:: RSL: 1,7 kOhm oder wenn Schleifenmessung aktiv: RSL: Messung
[1.6.645] – 2025-07-24
- Feat: Fenster nicht schließen für Firmware Update
[1.6.644] – 2025-07-24
- Firmware Update Bestätigung in Littwin blau
[1.6.643] – 2025-07-24
- feat Schleifeund TDR in sepaterate Bereiche in KÜ
[1.6.642] – 2025-07-24
- feat: Isowert und Schleifenwiderstanf in schwarzen Display zusammen
[1.6.641] – 2025-07-24
- Hide fallsensors
[1.6.640] – 2025-07-23
- feat: Fallsensors
[1.6.639] – 2025-07-23
-
feat: Add cursor wait state to AnalogInputsTable rows during data loading
-
Applied
cursor-waitstyle to table rows (<tr>) in AnalogInputsTable when loading is true. -
Ensured consistent cursor behavior across the entire table and rows
[1.6.638] – 2025-07-23
-
feat: Add cursor wait during chart data loading
-
Implemented cursor wait state while chart data is being loaded in
AnalogInputsChart.tsx. -
Fixed missing dependencies in
useEffectand definedloadingstate. -
Updated
handleFetchDatato manage
[1.6.637] – 2025-07-23
-
feat: Add cursor wait during chart data loading
-
Implemented cursor wait state while chart data is being loaded in
AnalogInputsChart.tsx. -
Fixed missing dependencies in
useEffectand definedloadingstate. -
Updated
handleFetchDatato manage
[1.6.636] – 2025-07-23
- Isolationsfehler in Display anzeigen -> aktuell Zahl ist rot ohne Beschrifftung , es soll Zahl ISO MOhm und Isolationsfehler
[1.6.635] – 2025-07-23
- Isolationsfehler in Display anzeigen -> aktuell Zahl ist rot ohne Beschrifftung , es soll Zahl ISO MOhm und Isolationsfehler
[1.6.634] – 2025-07-23
- Isolationsfehler in Display anzeigen -> aktuell Zahl ist rot ohne Beschrifftung , es soll Zahl ISO MOhm und Isolationsfehler
[1.6.633] – 2025-07-23
- refactor: order Minimum, Messwert und Maximum, sowie Durchschnitt
[1.6.632] – 2025-07-23
-
feat(analogInputs): auto-load chart data when table row is selected
-
Added useEffect to AnalogInputsChart to automatically trigger "Daten laden" when a row is selected and selectedAnalogInput.id is not 0.
-
Improves UX by syncing table selection with chart data fetch, no manual
[1.6.631] – 2025-07-22
-
Fix: Always show vonDatum and bisDatum in fetch URL for analog inputs chart
-
Ensure local date state is never empty by falling back to default date if Redux is empty
-
Prevent missing date values in fetch URL after multiple dropdown or button interactions
-
Improves reliability of
[1.6.630] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.629] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.628] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.627] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.626] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.625] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.624] – 2025-07-22
-
Fix: Preserve chart state during zoom, pan, and date changes
-
Added React.useMemo to memoize chartData and chartOptions to prevent unnecessary re-renders.
-
Ensured chart zoom and pan states are maintained during interactions.
-
Improved performance and user experience by avoiding chart
[1.6.623] – 2025-07-22
-
feat(AnalogInputsChart): Zeitraum im DatePicker und Redux initialisieren und synchronisieren
-
Initialwert für Zeitraum (letzte 30 Tage) im Redux-Store gesetzt
-
DatePicker-Änderungen werden im Redux gespeichert
-
Fetch-Button verwendet Zeitraum aus Redux und loggt die Fetch-URL
-
Chart zeigt Daten entsprechend ausgewähltem Zeitraum
[1.6.622] – 2025-07-22
-
feat(AnalogInputsChart): Zeitraum im DatePicker und Redux initialisieren und synchronisieren
-
Initialwert für Zeitraum (letzte 30 Tage) im Redux-Store gesetzt
-
DatePicker-Änderungen werden im Redux gespeichert
-
Fetch-Button verwendet Zeitraum aus Redux und loggt die Fetch-URL
-
Chart zeigt Daten entsprechend ausgewähltem Zeitraum
[1.6.621] – 2025-07-22
-
feat(AnalogInputsChart): Zeitraum im DatePicker und Redux initialisieren und synchronisieren
-
Initialwert für Zeitraum (letzte 30 Tage) im Redux-Store gesetzt
-
DatePicker-Änderungen werden im Redux gespeichert
-
Fetch-Button verwendet Zeitraum aus Redux und loggt die Fetch-URL
-
Chart zeigt Daten entsprechend ausgewähltem Zeitraum
[1.6.620] – 2025-07-22
-
feat(AnalogInputsChart): Zeitraum im DatePicker und Redux initialisieren und synchronisieren
-
Initialwert für Zeitraum (letzte 30 Tage) im Redux-Store gesetzt
-
DatePicker-Änderungen werden im Redux gespeichert
-
Fetch-Button verwendet Zeitraum aus Redux und loggt die Fetch-URL
-
Chart zeigt Daten entsprechend ausgewähltem Zeitraum
[1.6.619] – 2025-07-22
-
feat(AnalogInputsChart): Zeitraum im DatePicker und Redux initialisieren und synchronisieren
-
Initialwert für Zeitraum (letzte 30 Tage) im Redux-Store gesetzt
-
DatePicker-Änderungen werden im Redux gespeichert
-
Fetch-Button verwendet Zeitraum aus Redux und loggt die Fetch-URL
-
Chart zeigt Daten entsprechend ausgewähltem Zeitraum
[1.6.618] – 2025-07-21
- feat(mock): Script fetchAnalogInputsData auf ES-Module (.mjs) umgestellt, Datum automatisch gesetzt
[1.6.617] – 2025-07-21
- feat(service): CPL-Request verwendet DIA0, DIA1 oder DIA2 je nach Zeitraum für analoge Eingänge
[1.6.616] – 2025-07-21
- feat(service): Produktions-URL für CPL angepasst, erkennt Umgebung und baut Anfrage dynamisch
[1.6.615] – 2025-07-21
- feat(chart): Zeitauswahl im Listbox nur lokal speichern, Daten-Fetch erst beim Button-Klick
[1.6.614] – 2025-07-21
- feat(ui): Hinweis-Icon und Meldung angezeigt, wenn kein Eingang ausgewählt ist
[1.6.613] – 2025-07-21
- fix: Linien Littwin blau und anderen grau für die Chart Linien
[1.6.612] – 2025-07-21
-
feat(analogInputsChart): dynamische Linien je Zeitraum (m/i/a/g)
-
Chart zeigt für 'Alle Messwerte' (DIA0) Messwert (m), Minimum (i), Maximum (a)
-
Für 'Stündlich' und 'Täglich' (DIA1/DIA2) werden Minimum (i), Maximum (a), Durchschnitt (g) angezeigt
-
Farben und Legende entsprechend
[1.6.611] – 2025-07-21
-
feat(analogInputsChart): dynamische Linien je Zeitraum (m/i/a/g)
-
Chart zeigt für 'Alle Messwerte' (DIA0) Messwert (m), Minimum (i), Maximum (a)
-
Für 'Stündlich' und 'Täglich' (DIA1/DIA2) werden Minimum (i), Maximum (a), Durchschnitt (g) angezeigt
-
Farben und Legende entsprechend
[1.6.610] – 2025-07-21
-
feat(analogInputsChart): zeige Minimum (i) und Maximum (a) als zusätzliche Linien im Chart
-
Chart zeigt jetzt Messwert (m), Minimum (i, grün) und Maximum (a, rot) für ausgewählten Zeitraum
-
Tooltip und Legende angepasst
-
Typdefinitionen für Chart
[1.6.609] – 2025-07-21
-
feat(analogInputsChart): zeige Minimum (i) und Maximum (a) als zusätzliche Linien im Chart
-
Chart zeigt jetzt Messwert (m), Minimum (i, grün) und Maximum (a, rot) für ausgewählten Zeitraum
-
Tooltip und Legende angepasst
-
Typdefinitionen für Chart
[1.6.608] – 2025-07-21
-
feat(analogInputsChart): zeige Minimum (i) und Maximum (a) als zusätzliche Linien im Chart
-
Chart zeigt jetzt Messwert (m), Minimum (i, grün) und Maximum (a, rot) für ausgewählten Zeitraum
-
Tooltip und Legende angepasst
-
Typdefinitionen für Chart
[1.6.607] – 2025-07-21
- Nach Betriebsferien einmal sichern
[1.6.606] – 2025-07-21
- Nach Betriebsferien einmal sichern
[1.6.605] – 2025-07-21
- Nach Betriebsferien einmal sichern
[1.6.604] – 2025-07-21
-
feat(analogInputs): automatisches Laden der Chart-Daten bei Tabellenklick via Redux
-
analogInputsHistorySlice um
autoLoaderweitert, um automatisches Laden zu triggern -
handleSelect in AnalogInputsTable dispatcht jetzt
setAutoLoad(true) -
AnalogInputsChart lauscht auf
autoLoad+selectedIdund lädt Daten automatisch -
autoLoadwird nach dem Laden wieder auf false zurückgesetzt
[1.6.603] – 2025-07-21
-
feat(analogInputs): automatisches Laden der Chart-Daten bei Tabellenklick via Redux
-
analogInputsHistorySlice um
autoLoaderweitert, um automatisches Laden zu triggern -
handleSelect in AnalogInputsTable dispatcht jetzt
setAutoLoad(true) -
AnalogInputsChart lauscht auf
autoLoad+selectedIdund lädt Daten automatisch -
autoLoadwird nach dem Laden wieder auf false zurückgesetzt
[1.6.602] – 2025-07-15
-
feat(analogInputs): automatisches Laden der Chart-Daten bei Tabellenklick via Redux
-
analogInputsHistorySlice um
autoLoaderweitert, um automatisches Laden zu triggern -
handleSelect in AnalogInputsTable dispatcht jetzt
setAutoLoad(true) -
AnalogInputsChart lauscht auf
autoLoad+selectedIdund lädt Daten automatisch -
autoLoadwird nach dem Laden wieder auf false zurückgesetzt
[1.6.601] – 2025-07-15
- uninstall redux-persist, weil nimmt viel Performance weg
[1.6.600] – 2025-07-15
- uninstall redux-persist, weil nimmt viel Performance weg
[1.6.599] – 2025-07-14
-
feat: AnalogInputsChart mit DateRangePicker und vollständiger Redux-Integration erweitert
-
analogInputsHistorySlice angepasst: zeitraum, vonDatum, bisDatum und data hinzugefügt
-
Typdefinitionen im Slice und Thunk korrigiert
-
getAnalogInputsHistoryThunk erweitert, um vonDatum und bisDatum zu akzeptieren
-
DateRangePicker korrekt in AnalogInputsChart.tsx integriert
-
Fehler bei Selector-Zugriffen und Dispatch behoben
[1.6.598] – 2025-07-11
-
feat: AnalogInputsChart mit DateRangePicker und vollständiger Redux-Integration erweitert
-
analogInputsHistorySlice angepasst: zeitraum, vonDatum, bisDatum und data hinzugefügt
-
Typdefinitionen im Slice und Thunk korrigiert
-
getAnalogInputsHistoryThunk erweitert, um vonDatum und bisDatum zu akzeptieren
-
DateRangePicker korrekt in AnalogInputsChart.tsx integriert
-
Fehler bei Selector-Zugriffen und Dispatch behoben
[1.6.597] – 2025-07-11
-
feat(api): Zeitraum und Eingang als Pflichtparameter für AnalogInputs-API eingeführt
-
API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet
-
zeitraum(DIA0, DIA1, DIA2) undeingang(1–8) sind jetzt Pflichtfelder -
Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen
-
Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1)
-
Bessere Fehlerbehandlung bei nicht vorhandenen Dateien
[1.6.596] – 2025-07-11
-
feat(api): Zeitraum und Eingang als Pflichtparameter für AnalogInputs-API eingeführt
-
API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet
-
zeitraum(DIA0, DIA1, DIA2) undeingang(1–8) sind jetzt Pflichtfelder -
Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen
-
Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1)
-
Bessere Fehlerbehandlung bei nicht vorhandenen Dateien
[1.6.595] – 2025-07-11
-
feat(api): Zeitraum und Eingang als Pflichtparameter für AnalogInputs-API eingeführt
-
API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet
-
zeitraum(DIA0, DIA1, DIA2) undeingang(1–8) sind jetzt Pflichtfelder -
Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen
-
Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1)
-
Bessere Fehlerbehandlung bei nicht vorhandenen Dateien
[1.6.594] – 2025-07-11
-
feat(api): Zeitraum und Eingang als Pflichtparameter für AnalogInputs-API eingeführt
-
API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet
-
zeitraum(DIA0, DIA1, DIA2) undeingang(1–8) sind jetzt Pflichtfelder -
Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen
-
Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1)
-
Bessere Fehlerbehandlung bei nicht vorhandenen Dateien
[1.6.593] – 2025-07-11
-
fix: Von/Bis-Datum beim Schließen des DetailModals zurücksetzen
-
Redux-State für vonDatum und bisDatum wird bei handleClose geleert
-
verhindert unerwünschtes Vorfiltern bei erneutem Öffnen des Modals
[1.6.592] – 2025-07-11
-
fix: Von/Bis-Datum beim Schließen des DetailModals zurücksetzen
-
Redux-State für vonDatum und bisDatum wird bei handleClose geleert
-
verhindert unerwünschtes Vorfiltern bei erneutem Öffnen des Modals
[1.6.591] – 2025-07-11
-
fix: Von/Bis-Datum beim Schließen des DetailModals zurücksetzen
-
Redux-State für vonDatum und bisDatum wird bei handleClose geleert
-
verhindert unerwünschtes Vorfiltern bei erneutem Öffnen des Modals
[1.6.590] – 2025-07-11
-
fix: Von/Bis-Datum beim Schließen des DetailModals zurücksetzen
-
Redux-State für vonDatum und bisDatum wird bei handleClose geleert
-
verhindert unerwünschtes Vorfiltern bei erneutem Öffnen des Modals
[1.6.589] – 2025-07-11
-
feat: Zeitspanne-Funktion mit Von/Bis und Button-Trigger im DetailModal eingebaut
-
Chart-Daten werden jetzt erst bei Klick auf „Daten laden“ geladen
-
Von/Bis-Zeitauswahl über Redux-State korrekt eingebunden
-
Styling der Eingabefelder und Dropdowns vereinheitlicht (eine Zeile)
-
Lokalen State für Zeitspanne entfernt und durch Redux ersetzt
[1.6.588] – 2025-07-11
- fix: Messwertlinie (m) im DIA0-Modus in DetailModal sichtbar gemacht
[1.6.587] – 2025-07-11
-
fix: Anzeige der Messwertlinie (m) im DIA0-Modus in DetailModal korrigiert
-
Unterscheidung zwischen Durchschnitt (g) und Einzelwert (m) je nach Modus eingebaut
-
Fehler behoben, bei dem im DIA0-Modus keine blaue Linie angezeigt wurde
[1.6.586] – 2025-07-11
-
feat: DetailModal um Min/Max/Durchschnitt ergänzt
-
Chart zeigt jetzt zusätzlich zu Messwert auch Minimal-, Maximal- und Durchschnittswerte an
-
Datenstruktur an Redux angepasst (i, a, g)
-
Darstellung entspricht jetzt LoopMeasurementChart
[1.6.585] – 2025-07-10
-
feat: DetailModal um Min/Max/Durchschnitt ergänzt
-
Chart zeigt jetzt zusätzlich zu Messwert auch Minimal-, Maximal- und Durchschnittswerte an
-
Datenstruktur an Redux angepasst (i, a, g)
-
Darstellung entspricht jetzt LoopMeasurementChart
[1.6.584] – 2025-07-10
-
feat: DetailModal um Min/Max/Durchschnitt ergänzt
-
Chart zeigt jetzt zusätzlich zu Messwert auch Minimal-, Maximal- und Durchschnittswerte an
-
Datenstruktur an Redux angepasst (i, a, g)
-
Darstellung entspricht jetzt LoopMeasurementChart
[1.6.583] – 2025-07-10
- eslintrc.json : "@typescript-eslint/no-unused-vars": "warn"
[1.6.582] – 2025-07-10
- eslintrc.json : "@typescript-eslint/no-unused-vars": "warn"
[1.6.581] – 2025-07-10
- fix: Bei System: Detailansicht: Zeitraum von bis fehlt. Ganzseitenansicht fehlt noch. gelöst mit zoom und pan
[1.6.580] – 2025-07-10
- eslint any type only warn no error
[1.6.579] – 2025-07-10
- eslint any type only warn no error
[1.6.578] – 2025-07-10
- feat: Zoom wird beim Wechsel des Zeitraums im Detail-Chart automatisch zurückgesetzt
[1.6.577] – 2025-07-10
- fix(detail-chart): X-Achse zeigt jetzt Datum und Uhrzeit ohne Sekunden (z. B. 10.07.2025 14:32)
[1.6.576] – 2025-07-10
- fix(detail-chart): X-Achse zeigt jetzt Datum und Uhrzeit ohne Sekunden (z. B. 10.07.2025 14:32)
[1.6.575] – 2025-07-10
- fix(detail-chart): X-Achse zeigt jetzt Datum und Uhrzeit ohne Sekunden (z. B. 10.07.2025 14:32)
[1.6.574] – 2025-07-10
- fix(system-charts): Zeitachse angepasst – aktuelle Daten jetzt rechts wie bei Kabelüberwachung
[1.6.573] – 2025-07-10
- fix(system-charts): Y-Achse mit Einheiten ergänzt (V und °C) für bessere Lesbarkeit
[1.6.572] – 2025-07-10
- feat: Speicherintervall-Feld als Zahleneingabe mit Einheit 'Minuten' angepasst
[1.6.571] – 2025-07-10
- fix: KÜ ISO Wert 200 in Display mit Einheit
[1.6.570] – 2025-07-10
- fix: KÜ ISO Wert 200 in Display mit Einheit
[1.6.569] – 2025-07-10
- WIP: JSON
[1.6.568] – 2025-07-09
-
feat: Modus-Erkennung über window.location.hostname implementiert
-
Automatische Umschaltung zwischen Entwicklungs- und Produktionsmodus
-
Hostname-basierte Erkennung: localhost/127.0.0.1 → "dev", sonst → "production"
-
fetchDigitalInputsService.ts entsprechend angepasst
-
Erleichtert Entwicklung und reduziert manuelle .env-Konfiguration
[1.6.567] – 2025-07-09
-
feat: CGI-kompatiblen CSV-Parser für digitale Eingänge implementiert
-
digitaleInputsMockData.json angepasst: CGI-nahe Simulation mit CSV-Strings und Stringwerten
-
fetchDigitalInputsService.ts erweitert:
- CSV-Zeilen werden automatisch in Arrays umgewandelt
- Labels wie "'DE1','DE2'" werden korrekt aufgeteilt
- Daten aus 4 CGI-Blöcken zu 32 Eingängen gemappt
-
ermöglicht realitätsnahe Tests in Entwicklungsumgebung ohne Produktion
[1.6.566] – 2025-07-09
-
feat: Umstellung von CGI-Daten für analoge Eingänge von JS auf JSON
-
CGI-Platzhalter in
analogInputs.jsoneingeführt (z. B. <%=AAV01%>) -
Alte JS-Datei ersetzt durch reine JSON-Struktur
-
Anpassung des Service-Handlers (
getAnalogInputsHandler.ts) auf JSON-Parsing -
Reduziert Ladezeit, vereinfacht Code und entfernt unnötige Script-Einbindung
-
Mock-Daten weiterhin in
analogInputsMockData.jsonfür Entwicklungsmodus verfügbar
[1.6.565] – 2025-07-08
- Bei den Kabelüberwachung kann neben den Button “Firmware Update” noch zwei Button “Konfiguration sichern” und “Konfiguration zurücksichern” im Admin-Modus hinzukommen.
Store: Befehl KSB%i=%i z.B. KSB03=1 sichert die Konfiguration der KÜ 4
Restore: Befehl KSR%i=%i z.B. KSR03=1 sichert die Konfiguration der KÜ 4 zurück
[1.6.564] – 2025-07-08
- refactor: extract Kabelueberwachung logic into KabelueberwachungView for better structure
[1.6.563] – 2025-07-08
-
refactor: move analog inputs logic to AnalogInputsView component
-
Verschiebt die gesamte UI-Logik aus pages/analogInputs.tsx in eine eigene Komponente AnalogInputsView.tsx
-
pages/analogInputs.tsx dient jetzt nur noch als Router-Einstiegspunkt
-
Vereinheitlicht die Struktur wie bei MeldungenView und DashboardView
[1.6.562] – 2025-07-08
- fix: call digitalOutputs from _app.tsx to show immediately without delay
[1.6.561] – 2025-07-08
-
fix: sofortige visuelle Aktivierung der Navigationsbuttons beim Klick
-
activeLink direkt beim Klick auf Link setzen, statt auf usePathname zu warten
-
verbessert visuelles Feedback bei Navigation
-
behebt kurze Verzögerung beim Wechsel der aktiven Navigation
[1.6.560] – 2025-07-08
- feat: Verwende fetch statt window.location.href für Digitalausgang-Schalteraktionen
[1.6.559] – 2025-07-08
- circle Button
[1.6.558] – 2025-07-08
- feat: ersetzt Einheit-Select durch Listbox mit littwin-blue Design in AnalogInputsSettingsModal
[1.6.557] – 2025-07-08
-
refactor: Zeitraum-Dropdown in DetailModal auf Listbox mit Littwin-Design umgestellt
-
durch Headless UI Listbox ersetzt Optionen DIA0, DIA1, DIA2 mit deutschem Label dargestellt Einheitliches Styling mit littwin-blue wie in anderen Komponenten [1.6.556] – 2025-07-08 refactor: LoopChartActionBar Dropdowns auf Listbox mit Littwin-Design umgestellt selectedMode (DIA0/DIA1/DIA2) ersetzt durch Headless UI Listbox selectedSlotType (Schleifen-/Isolationswiderstand) ebenfalls als Listbox Einheitliches Dropdown-Design mit MeldungenView und TDRChartActionBar Littwin-blue Stil für ausgewählte Optionen integriert [1.6.555] – 2025-07-08 refactor: LoopChartActionBar Dropdowns auf Listbox mit Littwin-Design umgestellt selectedMode (DIA0/DIA1/DIA2) ersetzt durch Headless UI Listbox selectedSlotType (Schleifen-/Isolationswiderstand) ebenfalls als Listbox Einheitliches Dropdown-Design mit MeldungenView und TDRChartActionBar Littwin-blue Stil für ausgewählte Optionen integriert [1.6.554] – 2025-07-08 fix: TDR select List mouseover gray 200 [1.6.553] – 2025-07-08 fix: TDR select List mouseover gray 200 [1.6.552] – 2025-07-07 fix: TDR select List mouseover gray 200 [1.6.551] – 2025-07-07 fix: TDR select List mouseover gray 200 [1.6.550] – 2025-07-07 fix: List mouseover -> hover:bg-gray-200 [1.6.549] – 2025-07-07 fix: List mouseover -> hover:bg-gray-200 [1.6.548] – 2025-07-07 fix: es soll dann nur wenn der Button Anziegen geklickt wird anzeigenund nicht automatisch nach ein Datumauswahl [1.6.547] – 2025-07-07 refactor: API-Handler umbenannt zu messages.ts für klare REST-Struktur getMessagesAPIHandler.ts in messages.ts umbenannt API ist nun unter /api/cpl/messages erreichbar Dateiname entspricht Next.js- und REST-Konventionen [1.6.546] – 2025-07-07 style: UI-Filterzeile visuell vereinheitlicht – vertikale Ausrichtung und Höhe angepasst 'items-end' durch 'items-center' ersetzt für mittige Ausrichtung der Filterzeile Button- und Listbox-Komponenten optisch auf gleiche Höhe gebracht Einheitliches Erscheinungsbild von DatePicker, Anzeigen-Button und Quellen-Dropdown [1.6.545] – 2025-07-07 fix: Listbox-Filter "Alle Quellen" zeigt nun korrekt alle Meldungen an Initialwert von sourceFilter auf "Alle Quellen" gesetzt Filterbedingung angepasst, um mit Listbox-Einträgen übereinzustimmen Dropdown-UX verbessert durch Icon und Scrollfunktion [1.6.544] – 2025-07-07 fix: Zeitstempel in Meldungstabelle inkl. Uhrzeit im deutschen Format (TT.MM.JJJJ, HH:MM:SS) msg.t wird jetzt per toLocaleString('de-DE') mit Zeitformatierung angezeigt Beispiel: 26.06.2025, 19:26:07 [1.6.543] – 2025-07-07 fix: DatePicker über Tabellenkopf anzeigen durch z-index und Portal-Lösung react-datepicker auf portalId 'root-portal' umgestellt CSS-Klasse 'custom-datepicker-popper' mit z-index: 9999 in globals.css ergänzt Problem behoben, dass DatePicker hinter dem sticky Tabellen-Header verborgen war Tailwind-Konfiguration um z-[60,70] erweitert, wenn nötig [1.6.542] – 2025-07-07 feat: lade nur spezifischen Spannungs-/Temperatur-Thunk beim Öffnen des Detailmodals Entfernt globale Thunk-Aufrufe für alle Systemwerte bei Zeitraumwechsel Detailansicht lädt nun nur den benötigten Redux-Thunk (z. B. +15V → Channel 108) Zeitraumwechsel im Modal löst gezielt nur den zugehörigen Thunk aus Reduziert unnötige Datenlast und verbessert Performance bei Embedded-Geräten [1.6.541] – 2025-07-07 system [1.6.540] – 2025-07-07 refactor: Seitenkomponenten ausgelagert in View-Komponenten meldungen.tsx → MeldungenView.tsx erstellt → beinhaltet Filterleiste, Tabellenansicht und Datenabruf system.tsx → SystemView.tsx ausgelagert → verbessert Lesbarkeit und Trennung von Routing und Inhalt View-Suffix verwendet für klare Struktur (Page = Entry, View = Inhalt) [1.6.539] – 2025-07-07 feat: fetch-Services für Spannung und Temperatur für Dev- und Prod-Modus angepasst fetchSystemspannung5VplusService: Channel 110 (+5V), prod = /cpl?/dashboard.html fetchSystemspannung15VplusService: Channel 108 (+15V) fetchSystemspannung15VminusService: Channel 114 (-15V) fetchSystemspannung98VminusService: Channel 115 (-98V) fetchTemperaturAdWandlerService: Channel 116 (Temperatur AD-Wandler) fetchTemperaturProzessorService: Channel 117 (Temperatur Prozessor) → Dev-Mode verwendet API-Handler (/api/cpl/...) → Production-Mode nutzt CGI-kompatible URLs (/cpl?/dashboard.html&...) Fehlerbehandlung integriert, Struktur für Wiederverwendung vereinheitlicht [1.6.538] – 2025-07-03 feat: Detailansicht auf dynamische Redux-Datenquellen umgestellt DetailModal.tsx überarbeitet, um Redux-Daten je nach ausgewähltem Key (+5V, +15V, -15V, -98V, ADC Temp, CPU Temp) anzuzeigen Zeitraum-Auswahl (DIA0, DIA1, DIA2) wird berücksichtigt und löst passenden Thunk aus Redux-State-Struktur vollständig integriert für Systemspannungen und Temperaturen Chart-Anzeige jetzt dynamisch und erweiterbar [1.6.537] – 2025-07-03 feat: APIs erstellt für Systemspannungen [1.6.536] – 2025-07-03 feat: APIs erstellt für Systemspannungen [1.6.535] – 2025-07-03 feat: in System 5 Volt DIA0, DIA1 und DIA2 in dropdown anzeigen [1.6.534] – 2025-07-03 feat: in System 5 Volt DIA0, DIA1 und DIA2 in dropdown anzeigen [1.6.533] – 2025-07-03 feat: API für Systemspannung +5V erfolgreich implementiert API-Handler getSystemspannung5VplusHandler.ts erstellt JSON-Daten werden aus dem Verzeichnis mocks/device-cgi-simulator/chartsData/systemspannung5Vplus/ geladen unterstützt die Parameter DIA0, DIA1, DIA2 für unterschiedliche Datenfrequenzen Fehlerbehandlung bei ungültigen Typen und fehlenden Dateien eingebaut API getestet unter /api/cpl/getSystemspannung5VplusHandler?typ=DIA0 [1.6.532] – 2025-07-03 feat: API für Systemspannung +5V erfolgreich implementiert API-Handler getSystemspannung5VplusHandler.ts erstellt JSON-Daten werden aus dem Verzeichnis mocks/device-cgi-simulator/chartsData/systemspannung5Vplus/ geladen unterstützt die Parameter DIA0, DIA1, DIA2 für unterschiedliche Datenfrequenzen Fehlerbehandlung bei ungültigen Typen und fehlenden Dateien eingebaut API getestet unter /api/cpl/getSystemspannung5VplusHandler?typ=DIA0 [1.6.531] – 2025-07-03 feat: API für Systemspannung +5V erfolgreich implementiert API-Handler getSystemspannung5VplusHandler.ts erstellt JSON-Daten werden aus dem Verzeichnis mocks/device-cgi-simulator/chartsData/systemspannung5Vplus/ geladen unterstützt die Parameter DIA0, DIA1, DIA2 für unterschiedliche Datenfrequenzen Fehlerbehandlung bei ungültigen Typen und fehlenden Dateien eingebaut API getestet unter /api/cpl/getSystemspannung5VplusHandler?typ=DIA0 [1.6.530] – 2025-07-03 fix: KÜ Firmwareupdate [1.6.529] – 2025-07-03 fix: KÜ Firmwareupdate [1.6.528] – 2025-07-03 fix: KÜ Firmwareupdate [1.6.527] – 2025-07-03 fix: Firmware-Update läuft nun exakt 5 Minuten bis 100 % Fortschritt Fehler behoben, bei dem das Firmware-Update nach wenigen Sekunden vorzeitig beendet wurde Fortschrittsanzeige über Redux-Slice firmwareProgressSlice korrekt umgesetzt Thunk startFirmwareUpdateThunk korrekt eingebunden und verwendet UI zeigt stabile 5-minütige Progressbar wie erwartet [1.6.526] – 2025-07-02 fix: Firmware-Update läuft nun exakt 5 Minuten bis 100 % Fortschritt Fehler behoben, bei dem das Firmware-Update nach wenigen Sekunden vorzeitig beendet wurde Fortschrittsanzeige über Redux-Slice firmwareProgressSlice korrekt umgesetzt Thunk startFirmwareUpdateThunk korrekt eingebunden und verwendet UI zeigt stabile 5-minütige Progressbar wie erwartet [1.6.525] – 2025-07-02 fix: Toast-Benachrichtigungen wiederhergestellt durch Einbindung von ToastContainer in _app.tsx hinzugefügt react-toastify funktioniert jetzt wie vorgesehen (z. B. Firmware-Update Feedback) autoClose-Zeit für bessere Sichtbarkeit ggf. angepasst [1.6.524] – 2025-07-02 fix: Toast-Benachrichtigungen wiederhergestellt durch Einbindung von ToastContainer in _app.tsx hinzugefügt react-toastify funktioniert jetzt wie vorgesehen (z. B. Firmware-Update Feedback) autoClose-Zeit für bessere Sichtbarkeit ggf. angepasst [1.6.523] – 2025-07-02 fix: ConfirmModal-Zustand in Redux ausgelagert zur Stabilisierung Neuen confirmModalSlice erstellt für globale Steuerung des Bestätigungsdialogs Zustand wird nun nicht mehr durch Re-Renders oder Komponentenneuaufbau zurückgesetzt ConfirmModal in KueEinstellung.tsx vollständig an Redux angebunden Flackern und automatisches Schließen nach 10–15 Sekunden dauerhaft behoben [1.6.522] – 2025-07-02 feat: Auth-Status bei App-Start aus localStorage laden und in Redux speichern fetchAuthService erstellt zum Auslesen von isAdminLoggedIn aus localStorage getAuthThunks Thunk implementiert zur Initialisierung von authSlice authSlice erweitert um setIsAdminLoggedIn Reducer dispatch(getAuthThunks()) in _app.tsx integriert für automatische Initialisierung bei App-Start Flackern und falscher Admin-Status nach Reload dauerhaft behoben [1.6.521] – 2025-07-02 refactor: Admin-Status direkt aus Redux ausgelesen und Props entfernt isAdminLoggedIn wird jetzt direkt aus authSlice im Redux-Store gelesen useAdminAuth und Prop-Weitergabe entfernt Flackern des Firmware-Buttons dauerhaft behoben Codestruktur vereinfacht und stabilisiert [1.6.520] – 2025-07-02 refactor: Admin-Status direkt aus Redux ausgelesen und Props entfernt isAdminLoggedIn wird jetzt direkt aus authSlice im Redux-Store gelesen useAdminAuth und Prop-Weitergabe entfernt Flackern des Firmware-Buttons dauerhaft behoben Codestruktur vereinfacht und stabilisiert [1.6.519] – 2025-07-02 fix: Firmware-Update-Button stabilisiert und Flackern entfernt useAdminAuth aus KueEinstellung entfernt und einmalig in SettingsModalWrapper ausgelagert isAdminLoggedIn als Prop übergeben, um ständige Aktualisierungen zu vermeiden Button wird jetzt stabil angezeigt ohne console-Logs oder Intervall-Aufrufe [1.6.518] – 2025-07-02 fix: Firmware-Update-Button stabilisiert und Flackern entfernt useAdminAuth aus KueEinstellung entfernt und einmalig in SettingsModalWrapper ausgelagert isAdminLoggedIn als Prop übergeben, um ständige Aktualisierungen zu vermeiden Button wird jetzt stabil angezeigt ohne console-Logs oder Intervall-Aufrufe [1.6.517] – 2025-07-02 fix: Firmware-Update-Button stabilisiert und Flackern entfernt useAdminAuth aus KueEinstellung entfernt und einmalig in SettingsModalWrapper ausgelagert isAdminLoggedIn als Prop übergeben, um ständige Aktualisierungen zu vermeiden Button wird jetzt stabil angezeigt ohne console-Logs oder Intervall-Aufrufe [1.6.516] – 2025-07-02 fix: Firmware-Update-Button stabilisiert und Flackern entfernt useAdminAuth aus KueEinstellung entfernt und einmalig in SettingsModalWrapper ausgelagert isAdminLoggedIn als Prop übergeben, um ständige Aktualisierungen zu vermeiden Button wird jetzt stabil angezeigt ohne console-Logs oder Intervall-Aufrufe [1.6.515] – 2025-07-02 feat: Firmwareupdate für alle KÜ-Module mit Fortschrittsanzeige und Abschlussmeldung ProgressModal-Komponente implementiert, die während des Updates angezeigt wird Firmwareupdate dauert 5 Minuten (Mock-Simulation) Nach Abschluss erscheint automatisch ein Toast-Hinweis Verbesserte Benutzerführung durch blockierendes Modal während Update Logging in kueFirmwareUpdateLog.json integriert (Mock) [1.6.514] – 2025-07-02 feat: Firmwareupdate für alle KÜ-Module mit Fortschrittsanzeige und Abschlussmeldung ProgressModal-Komponente implementiert, die während des Updates angezeigt wird Firmwareupdate dauert 5 Minuten (Mock-Simulation) Nach Abschluss erscheint automatisch ein Toast-Hinweis Verbesserte Benutzerführung durch blockierendes Modal während Update Logging in kueFirmwareUpdateLog.json integriert (Mock) [1.6.513] – 2025-07-01 feat: alle KÜs Firmware update confirm [1.6.512] – 2025-07-01 fix: hide Firmware update button if admin not loged in [1.6.511] – 2025-07-01 feat: alle KÜs Firmware update [1.6.510] – 2025-06-30 feat: handleKueFirmwareUpdate [1.6.509] – 2025-06-30 feat: 1und 0 in Status in dashboard [1.6.508] – 2025-06-30 feat: 1und 0 in Status in dashboard [1.6.507] – 2025-06-30 feat: Dashboard Meldungen Status 1 oder 0 [1.6.506] – 2025-06-30 feat: Redux-Integration für Meldungen, Anzeige von 'v' statt 's' in UI [1.6.505] – 2025-06-30 feat: Redux-Integration für Meldungen, Anzeige von 'v' statt 's' in UI [1.6.504] – 2025-06-30 feat: Redux-Integration für Meldungen, Anzeige von 'v' statt 's' in UI [1.6.503] – 2025-06-30 feat: Redux-Integration für Meldungen, Anzeige von 'v' statt 's' in UI [1.6.502] – 2025-06-30 feat: implement date in analog inputs chart [1.6.501] – 2025-06-30 feat: implement date in analog inputs chart [1.6.500] – 2025-06-27 feat: implement Date in anlog inputs chart [1.6.499] – 2025-06-27 cleanup: delete old analog inputs mock data [1.6.498] – 2025-06-27 cleanup: delete old analog inputs mock data [1.6.497] – 2025-06-27 fix: show history digital input [1.6.496] – 2025-06-27 fix es lint ignore [1.6.495] – 2025-06-27 Mock daten [1.6.494] – 2025-06-27 Mock Daten hinzugefügt [1.6.493] – 2025-06-27 Mock Daten hinzugefügt [1.6.492] – 2025-06-27 Mock Daten hinzugefügt [1.6.491] – 2025-06-27 mock Daten für Charts hinzugefügt [1.6.490] – 2025-06-27 fix: fix: einheitliche Höhe für Header/Footer auf Berichte-Seite gesetzt Layout von meldungen.tsx angepasst, um Hüpfen und Größenunterschied zu vermeiden Container-Höhe auf h-[calc(100vh-13vh-8vh)] angepasst wie auf den anderen Seiten Einheitliches Verhalten von Header, Footer und Navigation gewährleistet [1.6.489] – 2025-06-27 fix: nur 8 Analoge Eingänge [1.6.488] – 2025-06-27 refactorring dashboard [1.6.487] – 2025-06-27 refactor [1.6.486] – 2025-06-27 refactor: rename einausgange to digitalOtputs and digitalInputs [1.6.485] – 2025-06-27 esLint [1.6.484] – 2025-06-27 esLint [1.6.483] – 2025-06-26 EsLint [1.6.482] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.481] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.480] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.479] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.478] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.477] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.476] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.475] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.474] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.473] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.472] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.470] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.469] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.468] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.467] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.466] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.465] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.464] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.463] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.462] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.461] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.460] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.459] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.458] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.457] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.456] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.455] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.454] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.453] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.452] – 2025-06-26 feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert thead mit sticky top-0 versehen für festen Header beim Scrollen vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.) Pagination entfernt für besseres Nutzererlebnis beim Scrollen [1.6.451] – 2025-06-26 feat: zeige die neuesten 20 Meldungen in Last20MessagesTable Daten aus API chronologisch absteigend sortiert (neueste zuerst) Anzeige auf die ersten 20 Einträge begrenzt Verhalten nun konsistent mit Seite /meldungen [1.6.450] – 2025-06-26 feat: Filter für Quelle [1.6.449] – 2025-06-25 refactor: alle Feature-Flags entfernt wegen Aufwand und Zeit [1.6.448] – 2025-06-25 Add: SERVICE JSON Files [1.6.447] – 2025-06-25 feat: Zeitraum einstellbar in AnalogInputsChart mit Zoom- und Pan-Funktion umgesetzt [1.6.446] – 2025-06-25 docs: Zusatzfunktionen (Kai, 25.06.2025) in TODO.md ergänzt [1.6.445] – 2025-06-25 docs: README [1.6.444] – 2025-06-23 feat: digitalOutputs separate jsSimulatedProd mode [1.6.443] – 2025-06-22 feat: jsSimulatedProd-Modus für analoge & digitale Eingänge implementiert neuen Modus jsSimulatedProd eingeführt für realitätsnahe Simulation auf Basis echter Produktionsdaten analoge Eingänge: analogInputsMockData.js eingebunden und dynamisch per Script geladen digitale Eingänge: digitalInputsMockData.js eingebunden mit window-Variablen (z. B. win_de_state, win_de_label etc.) fetchAnalogInputsService.ts und fetchDigitalInputsService.ts angepasst zur Modusprüfung und Script-Auswertung getAnalogInputsHandler.ts und getDigitalInputsHandler.ts geben im jsSimulatedProd-Modus JavaScript-Dateien aus .env.development setzt NEXT_PUBLIC_CPL_MODE=jsSimulatedProd [1.6.442] – 2025-06-22 docs: add full architecture diagram and data flow for json, jsmock and production modes [1.6.441] – 2025-06-21 docs: add analog inputs architecture diagram and flow description [1.6.440] – 2025-06-21 docs: move user documentation to docs/user-guide as single source of truth [1.6.439] – 2025-06-21 chore: fetch to get in redux thunks files name [1.6.438] – 2025-06-21 chore(tsconfig): fix moduleResolution and path aliases for Next.js project [1.6.437] – 2025-06-21 chore: rename service/thunk files to follow get/fetch naming convention [1.6.436] – 2025-06-20 Mocks erstellt für API für Entwicklungsumgebung [1.6.435] – 2025-06-20 auto CHANGELOG.md [1.6.434] – 2025-06-20 pre-commit [1.6.433] – 2025-06-20 CHANGELOG auto [1.6.432] – 2025-06-20 feat: Statusanzeige für Eingänge implementiert [1.6.431] – 2025-06-20 feat: Digitale & analoge Eingänge in allen Modi (json/jsSimulatedProd/production) vollständig implementiert 📦 CHANGELOG – CPLv4.0 Alle Änderungen und Versionen des CPLv4.0 Frontends chronologisch dokumentiert. [1.6.429] – 2025-06-20 Feature: Digitale & Analoge Eingänge – Alle Modi unterstützt Digitale Eingänge (Meldungseingänge) sind jetzt vollständig implementiert: json: Mock-Daten werden editierbar über eine JSON-Datei verwaltet jsSimulatedProd: JavaScript-basierte Simulation mit window.win_di_state, win_di_label, etc. production: Kommunikation über CGI-Befehle wie DEN1=..., DEI1=... Analoge Eingänge ebenfalls vollständig in allen Modi (json/jsSimulatedProd/production) nutzbar Die Statusanzeige für digitale Eingänge wird korrekt aus Redux gelesen (input.status) Redux-Struktur überarbeitet: invert, status, counterActive, value werden sauber getrennt Die Modi-Erkennung erfolgt automatisch über NEXT_PUBLIC_CPL_MODE UI-Logik trennt initiale Redux-Werte und lokale States in InputModal.tsx, um ungewolltes Überschreiben zu verhindern DigitalInputs.tsx, DigitalOutputs.tsx und AnalogInputs.tsx greifen auf dieselbe modulare Datenstruktur zurück [1.6.418] – 2025-06-19 Feature: Digitale Ausgänge vollständig implementiert (Lesen & Schreiben in 3 Modi) Die Schaltausgänge (digitale Ausgänge) sind jetzt in allen Modi vollständig funktionsfähig: json (lokale Entwicklung mit editierbaren Mock-Daten) jsSimulatedProd (Simulation durch JavaScript-Variablen im window-Objekt) production (Platzhalterersetzung über CGI durch das echte CPL-Gerät) Die API /api/cpl/updateDigitalOutputsHandler verarbeitet POST-Daten je nach Modus: In json: Speicherung in digitalOutputsMockData.json In jsSimulatedProd: Live-Änderung in digitalOutputsMockData.js per Regex In production: Statusänderung über Redirect zu /CPL?digitalOutputs.html&DAS0X=1 Die Datei fetchDigitalOutputsService.ts erkennt den aktiven Modus und lädt Daten kontextsensitiv Alle Werte werden über Redux bereitgestellt, die UI nutzt useSelector() zur Anzeige in DigitalOutputsWidget.tsx Mermaid-Dokumentation zur Architektur im Projekt ergänzt (README_digitalOutputs_final.md)- json und jsSimulatedProd wurden zu einer gemeinsamen API /api/cpl/getDigitalOutputsHandler.ts zusammengeführt Die API erkennt den Modus automatisch über NEXT_PUBLIC_CPL_MODE In json wird eine editierbare JSON-Datei gelesen und zurückgegeben In jsSimulatedProd wird eine JavaScript-Datei per Regex analysiert und verarbeitet Die Logik in fetchDigitalOutputsService.ts wurde vereinfacht: Für beide Modi wird dieselbe API aufgerufen Nur in production wird das Script /CPL?/CPL/SERVICE/digitalOutputs.js dynamisch eingebunden Die Mermaid-Diagramme im README_digitalOutputs.md wurden angepasst und beschriften nun explizit den Diagrammtyp („flowchart“ / Datenflussdiagramm) Alle Änderungen und Versionen des CPLv4.0 Frontends chronologisch dokumentiert. [1.6.417] – 2025-06-19 Feature: Digitale Ausgänge vollständig implementiert (Lesen & Schreiben in 3 Modi) Die Schaltausgänge (digitale Ausgänge) sind jetzt in allen Modi vollständig funktionsfähig: json (lokale Entwicklung mit editierbaren Mock-Daten) jsSimulatedProd (Simulation durch JavaScript-Variablen im window-Objekt) production (Platzhalterersetzung über CGI durch das echte CPL-Gerät) Die API /api/cpl/updateDigitalOutputsHandler verarbeitet POST-Daten je nach Modus: In json: Speicherung in digitalOutputsMockData.json In jsSimulatedProd: Live-Änderung in digitalOutputsMockData.js per Regex In production: Statusänderung über Redirect zu /CPL?digitalOutputs.html&DAS0X=1 Die Datei fetchDigitalOutputsService.ts erkennt den aktiven Modus und lädt Daten kontextsensitiv Alle Werte werden über Redux bereitgestellt, die UI nutzt useSelector() zur Anzeige in DigitalOutputsWidget.tsx Mermaid-Dokumentation zur Architektur im Projekt ergänzt (README_digitalOutputs_final.md) Alle Änderungen und Versionen des CPLv4.0 Frontends chronologisch dokumentiert. [1.6.407] – 2025-06-16 Feature: Kabelname statt Bezeichnung In Kue705FO.tsx wird jetzt der Kabelname (kueName) unterhalb jedes Moduls angezeigt, statt der bisherigen Kabelbezeichnung (kueID) Im Einstellungsmodal (KueEinstellung.tsx) wurde: kueID als readOnly markiert (nicht mehr beschreibbar) Ein neues editierbares Feld für kueName hinzugefügt Hochkommas ' werden automatisch entfernt Änderungen werden dauerhaft per &KIA${slot}=${name} an das CPL-Gerät gesendet State & window.win_kueName werden synchronisiert, damit Änderungen sofort und dauerhaft angezeigt werden Debug-Funktion für fetch-Monitoring entfernt [1.6.403] – 2025-05-13 Sicherheit & UI Der Umschalter für die TDR-Aktivierung in TdrEinstellung.tsx wird jetzt nur noch angezeigt, wenn ein Admin eingeloggt ist. Damit wird verhindert, dass Standardnutzer oder Gäste versehentlich TDR-Funktionen aktivieren oder deaktivieren. Gleiche Logik wie beim „Firmware Update“-Button in KueEinstellung.tsx (useAdminAuth). [1.6.402] – 2025-05-13 Fix Die Bezeichnung für Schaltausgänge/digitale Ausgänge können geändert werden, aber der Scahlter für Ein/Aus muss noch im Backend programmiert werden [1.6.400] – 2025-05-13 Feature In _app.tsx wurde ein zentrales Redux-Update-System implementiert: Die aktuelle Seite wird automatisch erkannt (window.location.pathname) Abhängig von der Seite werden die passenden Thunks geladen (z. B. getKueDataThunk, getDigitalOutputsThunk usw.) Die Daten werden alle 10 Sekunden erneut geladen Dadurch muss auf den Unterseiten kein separater Redux-Aufruf mehr erfolgen Unterstützt alle Slices: digitale/analoge Ein- und Ausgänge, Meldungen, Systemstatus, Einstellungen, TDR/Loop-Daten Reduziert Hardwarelast durch seitenbezogene API-Calls [1.6.399] – 2025-05-12 fix Bei den Messkurven der Kabelüberwachungen ist noch ein Fehler: Du übergibst für die erste Kabelüberwachung den Wert 1 anstatt 0. Im Lastenheft steht 0 bis 31 für Kabelüberwachungen (Wert q): [1.6.340] – 2025-05-02 Verbesserungen Das Modal für analoge Eingänge unterstützt jetzt auch die Produktion: In der Entwicklungsumgebung wird wie bisher die Mock-Datei (analogeEingaengeMockData.js) über die API gespeichert In der Produktionsumgebung werden die Einstellungen direkt per CGI-Aufruf an das CPL gesendet (/CPL?/Service/ae.ACP&...) Die Erkennung der Umgebung (DEV/PROD) erfolgt automatisch über window.location.hostname Die Speicherung per CGI-Link wurde erfolgreich getestet mit ACN1=..., ACO1=..., ACF1=..., ACL1=... [1.6.339] – 2025-05-02 Hinzugefügt Modal für analoge Eingänge: Einstellungen für Offset, Faktor, Bezeichnung und Loggerintervall jetzt verfügbar Änderungen werden in der Entwicklungsumgebung über die zentrale Mock-API /api/cpl/updateAnalogInputsSettingsAPIHandler gespeichert Unterstützt Speichern im Format var xyz = [ ... ]; mit Kommentaren vor und nach dem Block Speichern löst automatischen Reload aus zur Anzeige der neuen Werte [1.6.338] – 2025-05-02 Verbesserungen TDR-Modul: Beim Umschalten der TDR-Funktion erscheint nun ein Hinweisdialog („TDR wurde aktiviert/deaktiviert“) und die Seite wird nach Bestätigung automatisch neu geladen [1.6.329] – 2025-05-02 Hinzugefügt Auf der Seite /analogeEingaenge wird nun nur der ausgewählte Eingang im Chart angezeigt Der Titel des Charts enthält die Angabe „letzte 24 Stunden“ Die Zeitachse (X-Achse) ist im deutschen Format (HH:mm Uhr DD.MM.) [1.6.328] – 2025-05-02 Hinzugefügt Systemseite: Darstellung von Spannungen und Temperaturen in zwei separaten Charts (nebeneinander) Spannungswerte werden auf zwei Dezimalstellen gerundet dargestellt [1.6.327] – 2025-05-02 Hinzugefügt Einheitliche POST-API /api/cpl/updateTdrSettingsDataAPIHandler verarbeitet jetzt: win_tdrAtten win_tdrSpeed win_tdrTrigger win_tdrActive Unterstützt gleichzeitige Speicherung mehrerer TDR-Werte pro Slot (Mock-Daten) TDR-Werte werden lokal gecached, UI wird nicht mehr durch Redux überschrieben Modal wird nach erfolgreicher Speicherung automatisch geschlossen API bereinigt kaputte Dateizeilen am Ende (z. B. ) oder 12h)) [1.6.320] 2025-04-29 Hinzugefügt (dev) Lokaler API-Endpunkt /api/cpl/updateKueSettingsDataAPIHandler für KUE-Einstellungen Änderungen an Mock-Daten in /apiMockData/SERVICE/kabelueberwachungMockData.js möglich Unterstützung für Strings mit korrekter Formatierung (Anführungszeichen) Fehlerhafte Kommas und doppelte Semikolons im Array-Format behoben Frontend kann vollständig ohne CPL-Hardware getestet werden [1.6.318] – 2025-04-29 Fix Anzeige aller KUE-Werte (Grenzwerte, Verzögerung, Intervalle) nach dem Speichern sofort im UI aktualisiert Lokale Eingabewerte (formData) werden direkt nach erfolgreichem Speichern neu gesetzt Keine Navigation mehr nötig, um gespeicherte Werte zu sehen [1.6.314] – 2025-04-29 Verbesserungen Digitale Eingänge und Ausgänge (DigitalInputs, DigitalOutputs) vollständig responsive gemacht Icons und Textgrößen an Breakpoints laptop, xl, 2xl angepasst Einheitliche Darstellung der Meldungseingänge und Schaltausgänge auf allen Bildschirmgrößen Alle Icons lokal eingebunden für vollständige Offline-Unterstützung [1.6.308] – 2025-04-29 Fix Anzeige der KÜ705-FO Modulversionen korrigiert (z.B. 4.20 statt 4.2) Korrekte Formatierung in der Hook useKueVersion implementiert [1.6.307] – 2025-04-28 Hinzugefügt Chart.js-basierte Visualisierung für alle 8 analogen Eingänge Historische Messwerte der letzten 24 Stunden werden dargestellt Nutzer kann Linien für einzelne Eingänge über die Legende ein- und ausblenden Mock-Daten werden in der Entwicklungsumgebung automatisch über API-Handler geladen (/api/cpl/fetchAnalogInputsHistory) Nutzung von Redux-Slice analogInputsHistory für zentrales Datenmanagement [1.6.194] – 2025-03-31 Hinzugefügt TDR-Dropdown zeigt nun Zeitstempel im deutschen Format (TT.MM.JJJJ, HH:MM:SS) Anzeige der Fehlerstelle (d) direkt im Dropdown Intern wird weiterhin die ID verwendet [1.6.190] – 2025-03-29 Dokumentation Vollständige README.md erstellt mit Seitenstruktur, Technologie-Stack und Installationsanleitung [1.6.189] – 2025-03-28 Verbesserungen Referenzkurve wird sofort nach dem Setzen im Chart aktualisiert Legendenbeschriftung im TDR-Chart überarbeitet [1.6.155] – 2025-03-26 Hinzugefügt Dropdown-Funktion für letzte TDR-Messungen pro Slot (ID-Auswahl) [1.6.146] – 2025-03-19 Hinzugefügt Referenzkurvenanzeige im TDR-Chart integriert [1.6.145] – 2025-03-18 Hinzugefügt Erste Version des TDR-Charts mit Live-Datenanzeige [1.6.137] – 2025-03-15 Hinzugefügt Redux-Thunk-Struktur für analoge & digitale Eingänge implementiert [1.6.123] – 2025-03-10 Release Allgemeine Optimierungen [1.6.122] – 2025-03-09 Fixes Reihenfolge der Legenden-Einträge im Chart korrigiert [1.6.121] – 2025-03-08 Verbesserung Chart-Bereich mit Kalenderfunktion synchronisiert [1.6.110] – 2025-03-04 Interne Updates ohne spezielle Notiz [1.6.106] – 2025-03-02 Fix Typfehler in useLoopDisplay & Kue705FO behoben [1.6.105] – 2025-03-01 UI Responsive Design überarbeitet (Tailwind) [1.6.86] – 2025-02-22 Fix API-URL für Produktionsumgebung dynamisch + Datumsfix [1.6.82] – 2025-02-20 Fix window is not defined-Fehler in Charts behoben Schleifenanzeige korrigiert Build erfolgreich möglich [1.6.44] – 2024-12-19 Refactor Dashboard-Komponenten modularisiert und importiert [1.0.6.1] – 2024-11-10 Hinzugefügt Erste Version mit GeneralSettings-Integration [1.0.6.0] – 2024-11-05 Migration Umstellung des Projekts von JavaScript auf TypeScript [1.0.5.3] – 2024-10-28 Hinzugefügt Digitale Ein- und Ausgänge hinzugefügt [1.0.5.1] – 2024-10-26 UI Tailwind Responsiveness (xl, 2xl) im Chrome Mobile Emulator angepasst [1.0.5] – 2024-10-25 Sicherheit Admin-Login mit Passwort-Hashing implementiert [1.0.4] – 2024-10-20 Feature NTP-Synchronisation für Systemzeit getestet und bestätigt [1.0.2] – 2024-10-15 Hinzugefügt Neues Einstellungs-Modal Verbesserte NTP-Konfiguration & Netzwerk-Reboot-Handling [1.0.1] – 2024-10-10 Refactor kueModal und settingsModal modularisiert und mit Handlern versehen [1.0.0] – 2024-10-01 Initial Release Erste produktionsreife Version veröffentlicht