feat: add more error handling

This commit is contained in:
2024-06-07 23:13:30 -04:00
parent 6fd2cc4feb
commit c35c9b9e09
9 changed files with 71 additions and 66 deletions

View File

@@ -11,52 +11,38 @@ export async function fetchTitleFromAmvstrm(
console.error("Failed to get missing information from Anify", err);
return null;
}),
]).then(
async ([
{
id,
idMal,
title: { english: englishTitle, userPreferred: userPreferredTitle },
description,
episodes,
genres,
status,
bannerImage,
coverImage: {
extraLarge: extraLargeCoverImage,
large: largeCoverImage,
medium: mediumCoverImage,
},
countryOfOrigin,
nextair: nextAiringEpisode,
score: { averageScore },
]).then(async ([amvstrmInfo, anifyInfo]) => {
if (amvstrmInfo.code >= 400) {
console.error(
`Error trying to load title from amvstrm; aniListId: ${aniListId}, code: ${amvstrmInfo.code}, message: ${amvstrmInfo.message}`,
);
return undefined;
}
return {
id: amvstrmInfo.id,
idMal: amvstrmInfo.idMal,
title: {
userPreferred: amvstrmInfo.title.userPreferred,
english: amvstrmInfo.title.english,
},
anifyInfo,
]) => {
return {
id,
idMal,
title: {
userPreferred: userPreferredTitle,
english: englishTitle,
},
description,
episodes,
genres,
status,
averageScore,
bannerImage: bannerImage ?? anifyInfo?.bannerImage,
coverImage: {
extraLarge: extraLargeCoverImage,
large: largeCoverImage,
medium: mediumCoverImage,
},
countryOfOrigin: countryOfOrigin ?? anifyInfo?.countryOfOrigin,
nextAiringEpisode,
mediaListEntry: null,
};
},
);
description: amvstrmInfo.description,
episodes: amvstrmInfo.episodes,
genres: amvstrmInfo.genres,
status: amvstrmInfo.status,
averageScore: amvstrmInfo.score.averageScore,
bannerImage: amvstrmInfo.bannerImage ?? anifyInfo?.bannerImage,
coverImage: {
extraLarge: amvstrmInfo.coverImage.extraLarge,
large: amvstrmInfo.coverImage.large,
medium: amvstrmInfo.coverImage.medium,
},
countryOfOrigin:
amvstrmInfo.countryOfOrigin ?? anifyInfo?.countryOfOrigin,
nextAiringEpisode: amvstrmInfo.nextair,
mediaListEntry: null,
};
});
}
type AnifyInformation = {