fix(design): Farbwelt und Modus bleiben nach dem Neuladen erhalten
requireAuth hat den Benutzer mit einer ausgeschriebenen Spaltenliste geladen, in der theme und theme_mode fehlten. GET /api/auth/me antwortete deshalb mit null, und der ThemeProvider hat das beim Neuladen als "nichts gewaehlt" gelesen: die Anzeige fiel auf perinco/System zurueck und hat den localStorage-Zwischenspeicher gleich mit ueberschrieben. Direkt nach dem Klick und nach dem Anmelden sah es richtig aus, weil PATCH /me den geaenderten Wert selbst zurueckgibt und der Login SELECT * benutzt - nur das Neuladen nicht. Dazu ein Test, der die Spaltenliste mit den Feldern von publicUser() vergleicht, damit ein neues Benutzerfeld nicht wieder still verloren geht. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
71a8c30b23
commit
a50f5cb4a6
@@ -53,7 +53,7 @@ ansehen - siehe *Oberfläche prüfen ohne Datenbank* weiter unten.
|
||||
```bash
|
||||
npm run lint # = tsc --noEmit, das ist die Wahrheit
|
||||
npm run build # muss ohne Fehler durchlaufen
|
||||
cd server && npm test # Postfachanbindung, Berater-Liste, Benutzerfelder, LinkedIn-Foto
|
||||
cd server && npm test # Postfachanbindung, Berater-Liste, Benutzerfelder, LinkedIn-Foto, Sitzungsbenutzer
|
||||
```
|
||||
|
||||
Automatische Tests gibt es für zwei Bereiche, beide ohne Test-Framework, reines
|
||||
@@ -68,6 +68,10 @@ Node und ohne Datenbank:
|
||||
das mehrere Namen kommagetrennt hält. Es steckt im Speichern, im Verlauf, in
|
||||
der Auswertung und in der Übernahme; ein Fehler darin fällt nicht auf, weil
|
||||
die Liste weiter Namen zeigt und nur die Zahlen falsch wären.
|
||||
* `server/test/sessionUser.test.mjs` vergleicht die Spaltenliste in
|
||||
`requireAuth` mit den Feldern, die `publicUser()` ausliefert. Fehlt dort eine
|
||||
Spalte, antwortet die API still mit `null` - so ist die gespeicherte
|
||||
Designwahl beim Neuladen verloren gegangen.
|
||||
|
||||
Für alles andere gilt: `tsc`, ein Build und ein Blick in die Oberfläche - notfalls
|
||||
mit dem Stub aus [Oberfläche prüfen ohne Datenbank](#oberflaeche-pruefen-ohne-datenbank).
|
||||
|
||||
Reference in New Issue
Block a user