refacto: error and error codes in services

This commit is contained in:
Julien Froidefond
2025-02-25 06:39:19 +01:00
parent d4871d1afb
commit 4b710cbac2
16 changed files with 389 additions and 125 deletions

View File

@@ -0,0 +1,72 @@
export const ERROR_CODES = {
MONGODB: {
MISSING_URI: "MONGODB_MISSING_URI",
CONNECTION_FAILED: "MONGODB_CONNECTION_FAILED",
},
AUTH: {
UNAUTHENTICATED: "AUTH_UNAUTHENTICATED",
INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS",
PASSWORD_NOT_STRONG: "AUTH_PASSWORD_NOT_STRONG",
EMAIL_EXISTS: "AUTH_EMAIL_EXISTS",
INVALID_USER_DATA: "AUTH_INVALID_USER_DATA",
},
KOMGA: {
MISSING_CONFIG: "KOMGA_MISSING_CONFIG",
MISSING_CREDENTIALS: "KOMGA_MISSING_CREDENTIALS",
CONNECTION_ERROR: "KOMGA_CONNECTION_ERROR",
HTTP_ERROR: "KOMGA_HTTP_ERROR",
SERVER_UNREACHABLE: "KOMGA_SERVER_UNREACHABLE",
},
CONFIG: {
SAVE_ERROR: "CONFIG_SAVE_ERROR",
FETCH_ERROR: "CONFIG_FETCH_ERROR",
TTL_SAVE_ERROR: "CONFIG_TTL_SAVE_ERROR",
TTL_FETCH_ERROR: "CONFIG_TTL_FETCH_ERROR",
},
LIBRARY: {
NOT_FOUND: "LIBRARY_NOT_FOUND",
FETCH_ERROR: "LIBRARY_FETCH_ERROR",
},
SERIES: {
FETCH_ERROR: "SERIES_FETCH_ERROR",
NO_BOOKS_FOUND: "SERIES_NO_BOOKS_FOUND",
},
BOOK: {
NOT_FOUND: "BOOK_NOT_FOUND",
PROGRESS_UPDATE_ERROR: "BOOK_PROGRESS_UPDATE_ERROR",
PROGRESS_DELETE_ERROR: "BOOK_PROGRESS_DELETE_ERROR",
PAGES_FETCH_ERROR: "BOOK_PAGES_FETCH_ERROR",
DOWNLOAD_CANCELLED: "BOOK_DOWNLOAD_CANCELLED",
},
FAVORITE: {
ADD_ERROR: "FAVORITE_ADD_ERROR",
DELETE_ERROR: "FAVORITE_DELETE_ERROR",
FETCH_ERROR: "FAVORITE_FETCH_ERROR",
UPDATE_ERROR: "FAVORITE_UPDATE_ERROR",
},
PREFERENCES: {
FETCH_ERROR: "PREFERENCES_FETCH_ERROR",
UPDATE_ERROR: "PREFERENCES_UPDATE_ERROR",
CONTEXT_ERROR: "PREFERENCES_CONTEXT_ERROR",
},
CACHE: {
DELETE_ERROR: "CACHE_DELETE_ERROR",
},
UI: {
TABS_TRIGGER_ERROR: "UI_TABS_TRIGGER_ERROR",
TABS_CONTENT_ERROR: "UI_TABS_CONTENT_ERROR",
},
IMAGE: {
FETCH_ERROR: "IMAGE_FETCH_ERROR",
},
HOME: {
FETCH_ERROR: "HOME_FETCH_ERROR",
},
} as const;
type ValueOf<T> = T[keyof T];
type ErrorCodeValues = ValueOf<{
[K in keyof typeof ERROR_CODES]: ValueOf<(typeof ERROR_CODES)[K]>;
}>;
export type ErrorCode = ErrorCodeValues;