refactor(web/api): errCode + errMessage helpers; 41 sites migrated (W1)

This commit is contained in:
2026-05-07 22:17:45 -04:00
parent 965df28127
commit 9c91a342e2
16 changed files with 138 additions and 70 deletions
@@ -19,6 +19,7 @@
type SMTPConfig
} from '$lib/api/admin';
import { qk } from '$lib/api/queries';
import { errCode } from '$lib/api/errors';
import type { LidarrConfig, LidarrTestResult } from '$lib/api/types';
// Lidarr connection panel. The "saved api key" is masked as "***" on GET —
@@ -112,7 +113,8 @@
]);
apiKeyInput = '';
} catch (e) {
saveError = (e as { code?: string }).code ?? 'save_failed';
const code = errCode(e);
saveError = code === 'unknown' ? 'save_failed' : code;
} finally {
isSaving = false;
}
@@ -160,7 +162,8 @@
modalOpen = false;
disconnectInput = '';
} catch (e) {
disconnectError = (e as { code?: string }).code ?? 'disconnect_failed';
const code = errCode(e);
disconnectError = code === 'unknown' ? 'disconnect_failed' : code;
}
}
@@ -270,9 +273,9 @@
smtpPasswordInput = '';
showToast('SMTP config saved.');
} catch (e: unknown) {
const code = (e as { code?: string })?.code;
const code = errCode(e);
if (code === 'missing_fields') showToast('Host and from address are required when enabled.');
else showToast(`Save failed: ${code ?? 'unknown'}`);
else showToast(`Save failed: ${code}`);
} finally {
smtpSaving = false;
}
@@ -284,12 +287,12 @@
await testSMTPConfig();
showToast('Test email sent. Check your inbox.');
} catch (e: unknown) {
const code = (e as { code?: string })?.code;
const code = errCode(e);
const message = (e as { message?: string })?.message;
if (code === 'no_email_on_file') showToast('Set your email in /settings before testing.');
else if (code === 'not_configured') showToast('Save the SMTP config first.');
else if (code === 'send_failed') showToast(`Send failed: ${message || 'see server logs'}`);
else showToast(`Test failed: ${code ?? 'unknown'}`);
else showToast(`Test failed: ${code}`);
} finally {
smtpTesting = false;
}