feat(frontend): add API error state management
Add centralized error state system: - New ApiError interface (service, message, statusCode, canRetry) - apiError writable store for current error state - isApiDown writable store for API availability status - setApiError() helper to set error states - clearApiError() helper to reset error states Provides reactive error state across entire application.
This commit is contained in:
@@ -77,6 +77,33 @@
|
|||||||
aniListAnime.subscribe((value) => (currentAniListAnime = value));
|
aniListAnime.subscribe((value) => (currentAniListAnime = value));
|
||||||
aniListSort.subscribe((value) => (sort = value));
|
aniListSort.subscribe((value) => (sort = value));
|
||||||
|
|
||||||
|
export interface ApiError {
|
||||||
|
service: string;
|
||||||
|
message: string;
|
||||||
|
statusCode?: string;
|
||||||
|
canRetry: boolean;
|
||||||
|
}
|
||||||
|
export const apiError = writable<ApiError | null>(null);
|
||||||
|
export const isApiDown = writable(false);
|
||||||
|
export function setApiError(
|
||||||
|
service: string,
|
||||||
|
message: string,
|
||||||
|
statusCode?: string,
|
||||||
|
canRetry: boolean = true,
|
||||||
|
) {
|
||||||
|
apiError.set({
|
||||||
|
service,
|
||||||
|
message,
|
||||||
|
statusCode,
|
||||||
|
canRetry,
|
||||||
|
});
|
||||||
|
isApiDown.set(true);
|
||||||
|
}
|
||||||
|
export function clearApiError() {
|
||||||
|
apiError.set(null);
|
||||||
|
isApiDown.set(false);
|
||||||
|
}
|
||||||
|
|
||||||
export async function GetAnimeSingleItem(
|
export async function GetAnimeSingleItem(
|
||||||
aniId: number,
|
aniId: number,
|
||||||
login: boolean,
|
login: boolean,
|
||||||
|
|||||||
Reference in New Issue
Block a user