Files
audi-app/companion-app/src/screens/zugang.ts
T
Paul Nothaft 4dbf3cb173 Phase 7a: Uebersicht, Fahrzeugstatus und Mein Audi
Erste drei Screens auf der fertigen Datenschicht. Uebersicht mit Fahrzeugbild,
Sicherungsstatus, Reichweite und Tankfuellstand, Kilometerstand samt
Service-Faelligkeit und Vorschau auf letzte Fahrt und Tankung. Fahrzeugstatus
zeigt die 16 Einzelpruefungen, wobei ein unbekannter Sensor als hohler Ring
erscheint statt als gruen geratener Punkt - dieselbe Vorsicht, die schon das
Backend walten laesst. Mein Audi buendelt Fotogalerie und Wege zu den
Unterseiten.

Dazu die geteilte Rechenlogik der Statistik portiert (Zeitraeume,
Langzeitverbrauch mit Plausibilitaetsfenster, Gruppierung nach Jahr und
Monat) und Formatierung im deutschen Format.

Bild-Komponente kapselt eine Reibung zwischen App und Bibliothek: die App
laeuft mit exactOptionalPropertyTypes, ein undefined an einem optionalen Prop
waere sonst an jeder Aufrufstelle einzeln zu behandeln.
2026-08-11 11:07:03 +02:00

24 lines
597 B
TypeScript

/**
* Synchroner Zugriff auf die Basis-Adresse.
*
* Die Datenschicht liest Zugangsdaten bewusst asynchron (die native Ablage
* unter iOS/Android ist es auch). Für Bild-URLs im Rendern wird die Adresse
* aber synchron gebraucht — deshalb wird sie einmal beim Start gemerkt.
*/
import { zugangLesen, type Zugang } from "../api"
let gemerkt: Zugang | null = null
export async function zugangMerken(): Promise<void> {
gemerkt = await zugangLesen()
}
export function zugangLesenSynchron(): Zugang | null {
return gemerkt
}
export function zugangVergessen(): void {
gemerkt = null
}