mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-23 23:31:47 +00:00
fix(dashboard): show an error instead of a blank trip list when the server is unreachable (#1283)
When the backend or identity provider was unreachable, a returning user with a persisted session landed on the dashboard with an empty trip grid and no error. That looks identical to a logged-in user who simply has no trips, so people assumed their data had been lost. Three client-side layers were quietly swallowing the failure: the auth check only cleared state on a 401, so a 5xx or a network error left the stale session in place and kept rendering the protected route; the offline-first trip repo turned a failed fetch into the empty cache without throwing; and the dashboard had neither an error nor an empty state, so a blank grid meant both "outage" and "no trips". The auth check now tells genuine offline (keep serving the cache silently, the PWA happy path) apart from a server outage while online (keep the session but flag it). The dashboard shows a reassuring "couldn't reach the server, your trips are safe" banner with a retry, and a real zero-trip account finally gets a proper empty state so the two cases never look alike. New strings added across all locales.
This commit is contained in:
@@ -42,6 +42,8 @@ const dashboard: TranslationStrings = {
|
||||
'dashboard.status.past': 'Proběhlé',
|
||||
'dashboard.status.daysLeft': 'zbývá {count} dní',
|
||||
'dashboard.toast.loadError': 'Nepodařilo se načíst cesty',
|
||||
'dashboard.loadErrorBanner': 'Server nebyl dostupný. Vaše cesty jsou v bezpečí — zkuste to prosím znovu.',
|
||||
'dashboard.retry': 'Zkusit znovu',
|
||||
'dashboard.toast.created': 'Cesta byla úspěšně vytvořena!',
|
||||
'dashboard.toast.createError': 'Nepodařilo se vytvořit cestu',
|
||||
'dashboard.toast.updated': 'Cesta byla aktualizována!',
|
||||
|
||||
Reference in New Issue
Block a user