From 634ad27302be0b2d840fa82e447a7c688335dc24 Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Thu, 24 Sep 2026 15:35:52 +0200 Subject: [PATCH] strom: Live-Strom baut sich selbst neu auf, Verbindungsanzeige auf jeder Breite - Gibt EventSource endgueltig auf (502/503 vom Proxy, waehrend MC2 neu startet), baut die App den Strom selbst neu auf: Pause 2 s, 4 s, 8 s ... bis 30 s, sofort wenn Netz oder Tab zurueck sind. - Stille-Waechter: Der Strom schickt jede Sekunde einen Messpunkt. Kommt 20 s nichts, gilt die Leitung als tot (Handy im Standby, WLAN-Wechsel, Proxy haelt offen) und wird neu aufgebaut. Im Test mit einer Attrappe: vorher blieb "Box online" stehen. - "Box online / Getrennt" steht jetzt auf jeder Breite in der Kopfzeile (am Handy kleiner, getrennt in Bernstein), nicht mehr nur im Mehr-Menue. - Obere Navigation erst ab 1024 px, darunter die Leiste unten wie am Handy: Zwischen 768 und ~880 px lief die Kopfzeile schon vorher seitlich ueber, mit der Anzeige bis 1023. - metrikEinspeisen (nur fuer Tests gedacht, nie benutzt) entfaellt. Co-Authored-By: Claude Opus 5.5 --- frontend/src/app/MehrMenue.tsx | 10 +-- frontend/src/app/Meldungen.tsx | 4 +- frontend/src/app/Shell.tsx | 35 ++++++---- frontend/src/lib/strom.test.tsx | 72 +++++++++++++++++++ frontend/src/lib/strom.ts | 119 +++++++++++++++++++++++++------- 5 files changed, 193 insertions(+), 47 deletions(-) create mode 100644 frontend/src/lib/strom.test.tsx diff --git a/frontend/src/app/MehrMenue.tsx b/frontend/src/app/MehrMenue.tsx index 826d50b..7a2b5b4 100644 --- a/frontend/src/app/MehrMenue.tsx +++ b/frontend/src/app/MehrMenue.tsx @@ -1,10 +1,11 @@ -import type { ReactNode } from "react" import { ExternalLink, ScrollText, Settings } from "lucide-react" import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from "@/components/ui/sheet" -/** Handy-Menü „Mehr“: Hermes, Dienste, Einstellungen. Eigene Datei, damit es erst beim Öffnen lädt. */ -export function MehrMenue({ verbindung, onDienste, onEinstellungen, onSchliessen }: { - verbindung: ReactNode +/** + * Handy-Menü „Mehr“: Hermes, Dienste, Einstellungen. Eigene Datei, damit es erst beim Öffnen lädt. + * Die Verbindungsanzeige steht seit 09/2026 auf jeder Breite in der Kopfzeile, nicht mehr hier. + */ +export function MehrMenue({ onDienste, onEinstellungen, onSchliessen }: { onDienste: () => void onEinstellungen: () => void onSchliessen: () => void @@ -17,7 +18,6 @@ export function MehrMenue({ verbindung, onDienste, onEinstellungen, onSchliessen Weitere Bereiche
- {verbindung} Hermes-Dashboard öffnen diff --git a/frontend/src/app/Meldungen.tsx b/frontend/src/app/Meldungen.tsx index e94fd2e..7c198e5 100644 --- a/frontend/src/app/Meldungen.tsx +++ b/frontend/src/app/Meldungen.tsx @@ -8,13 +8,13 @@ const FARBE = { info: "border-cyan-rand bg-cyan-grund text-cyan-text", } -/** Rückmeldungen unten rechts (am Handy über der Tab-Leiste), für Screenreader angesagt. */ +/** Rückmeldungen unten rechts (unter 1024 px über der Tab-Leiste), für Screenreader angesagt. */ export function Meldungen() { const liste = useMeldungen() return (
{liste.map((m) => (
+
- {live ? "Box online" : lage === "verbinde" ? "Verbinde" : "Getrennt"} + {live ? "Box online" : lage === "verbinde" ? "Verbinde" : "Getrennt"}
) } @@ -69,10 +77,12 @@ export function Shell() { const zu = () => setSchublade(null) return ( -
-
+
+ {/* Obere Navigation erst ab 1024 px: darunter passen Logo, Navigation, drei Knöpfe, Verbindung + und Uhr nicht nebeneinander — Tablets bekommen die Leiste unten wie das Handy. */} +
-