+ {/* KÜ number left, controls right, like IsoChartActionBar */}
KÜ
@@ -162,141 +163,145 @@ const TDRChartActionBar: React.FC = () => {
{selectedSlot !== null ? selectedSlot + 1 : "-"}
- {/* Date range only in Meldungen (requirement) */}
- {isMeldungen &&
}
- {isMeldungen ? (
-
- ) : (
- <>
- {selectedId !== null && (
+
+ {isMeldungen ? (
+ <>
+
- )}
-
-
-
{
- setSelectedId(id);
- if (id !== null) dispatch(getTDRChartDataByIdThunk(id));
- }}
- disabled={idsForSlot.length === 0}
+ >
+ ) : (
+ <>
+ {selectedId !== null && (
+
+ )}
+
+ {tdrRunning
+ ? `TDR läuft... (${Math.min(
+ 100,
+ Math.round((tdrProgress / TDR_TOTAL_DURATION) * 100)
+ )}%)`
+ : "TDR-Messung starten"}
+
+
+
{
+ setSelectedId(id);
+ if (id !== null) dispatch(getTDRChartDataByIdThunk(id));
+ }}
+ disabled={idsForSlot.length === 0}
+ >
+
+
+
+ {selectedId
+ ? (() => {
+ const selected = idsForSlot.find(
+ (e) => e.id === selectedId
+ );
+ return selected
+ ? `${new Date(selected.t).toLocaleString(
+ "de-DE",
+ {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ hour: "2-digit",
+ minute: "2-digit",
+ second: "2-digit",
+ }
+ )} – Fehlerstelle: ${selected.d} m`
+ : "Wähle Messung";
+ })()
+ : "Wähle Messung"}
+
+
+
+
+ {idsForSlot.map((entry) => {
+ const dateLabel = new Date(entry.t).toLocaleString(
+ "de-DE",
+ {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ hour: "2-digit",
+ minute: "2-digit",
+ second: "2-digit",
+ }
+ );
+ const fullText = `${dateLabel} – Fehlerstelle: ${entry.d} m`;
+ return (
+ {
+ const base =
+ "px-3 h-8 cursor-pointer rounded-sm m-0.5 flex items-center justify-start transition-colors text-[13px]";
+ if (selected)
+ return `${base} dropdown-option-active font-medium`;
+ if (active) return `${base} dropdown-option-hover`;
+ return `${base}`;
+ }}
+ >
+ {fullText}
+
+ );
+ })}
+
+
+
+
+ >
+ )}
+
+ {/* Progress Overlay */}
+ {tdrRunning && (
+
+
+
+ TDR Messung läuft... kann bis zu zwei Minuten dauern
+
+
+ Bitte warten…{" "}
+ {Math.min(
+ 100,
+ Math.round((tdrProgress / TDR_TOTAL_DURATION) * 100)
+ )}
+ %
+
- >
+
+
)}
- {tdrRunning && (
-
-
-
- TDR Messung läuft... kann bis zu zwei Minuten dauern
-
-
- Bitte warten…{" "}
- {Math.min(
- 100,
- Math.round((tdrProgress / TDR_TOTAL_DURATION) * 100)
- )}
- %
-
-
-
-
- )}
>
);
};
diff --git a/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartView.tsx b/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartView.tsx
index 4012ed8..8c7dcb9 100644
--- a/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartView.tsx
+++ b/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartView.tsx
@@ -3,6 +3,7 @@
import React, { useEffect } from "react";
import ReactModal from "react-modal";
import TDRChart from "./TDRChart";
+import TDRChartActionBar from "./TDRChartActionBar";
import { useSelector, useDispatch } from "react-redux";
import { AppDispatch, RootState } from "@/redux/store";
import {
@@ -166,6 +167,8 @@ const TDRChartView: React.FC
= ({
+ {/* Action Bar (wie bei ISO / Loop) */}
+
{chartTitle === "Messkurve" ? (
diff --git a/package-lock.json b/package-lock.json
index 69c35ff..bbf9f45 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "cpl-v4",
- "version": "1.6.886",
+ "version": "1.6.887",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "cpl-v4",
- "version": "1.6.886",
+ "version": "1.6.887",
"dependencies": {
"@emotion/react": "^11.13.0",
"@emotion/styled": "^11.13.0",
diff --git a/package.json b/package.json
index e3938a6..25fb42d 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "cpl-v4",
- "version": "1.6.886",
+ "version": "1.6.887",
"private": true,
"scripts": {
"dev": "next dev -p 3000",