From dbaed208d0b47b7c228e3e8b0aed1bb3425a6dc9 Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Fri, 2 Jan 2026 20:20:57 -0300 Subject: [PATCH] ui: improve account error display --- frontend/src/views/AccountView.vue | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/frontend/src/views/AccountView.vue b/frontend/src/views/AccountView.vue index 0c280f4..997a9e1 100644 --- a/frontend/src/views/AccountView.vue +++ b/frontend/src/views/AccountView.vue @@ -246,7 +246,10 @@ async function refreshOverview() { headers: { Accept: "application/json" }, cache: "no-store", }); - if (!resp.ok) throw new Error(`status ${resp.status}`); + if (!resp.ok) { + const data = await resp.json().catch(() => ({})); + throw new Error(data?.error || `status ${resp.status}`); + } const data = await resp.json(); mailu.status = data.mailu?.status || "ready"; mailu.username = data.mailu?.username || auth.email || auth.username; @@ -260,8 +263,9 @@ async function refreshOverview() { jellyfin.status = "unavailable"; jellyfin.syncStatus = ""; jellyfin.syncDetail = ""; - mailu.error = "Failed to load account status."; - jellyfin.error = "Failed to load account status."; + const message = err?.message ? `Failed to load account status (${err.message})` : "Failed to load account status."; + mailu.error = message; + jellyfin.error = message; } } @@ -417,7 +421,7 @@ async function copy(key, text) { flex-wrap: wrap; align-items: center; justify-content: flex-end; - gap: 10px; + gap: 14px; } .eyebrow {