diff --git a/db b/db index b826798..d62dab4 160000 --- a/db +++ b/db @@ -1 +1 @@ -Subproject commit b826798c3b8acda84be12604a1c11fef7abdf67c +Subproject commit d62dab4a1d375009345b650518b253d153ceb72e diff --git a/main.ts b/main.ts index 6346bb3..3046143 100644 --- a/main.ts +++ b/main.ts @@ -15,8 +15,9 @@ const VERSION = 'v2' const paths = (await fs.readdir('./endpoints')).filter((f) => f.endsWith('.ts')) console.log('Prefetching pictures') - await fetchRemoteFile(`https://assets.tcgdex.net/data-${lang}.json`) + await fetchRemoteFile(`https://assets.tcgdex.net/datas.json`) + console.log('Let\'s GO !') for (const file of paths) { const path = `./endpoints/${file}` console.log(file, 'Running Init') diff --git a/utils/cardUtil.ts b/utils/cardUtil.ts index 1728b56..c81176f 100644 --- a/utils/cardUtil.ts +++ b/utils/cardUtil.ts @@ -4,11 +4,9 @@ import { Set, SupportedLanguages, Card, Types } from 'db/interfaces' import { Card as CardSingle, CardResume } from '@tcgdex/sdk/interfaces' import translate, { translateType } from './translationUtil' -interface ObjectList { - [key: string]: T -} +type ObjectList = Partial> -type RemoteData = ObjectList>> +type RemoteData = ObjectList>>> export async function cardToCardSimple(id: string, card: Card, lang: SupportedLanguages): Promise { const cardName = card.name[lang] @@ -26,8 +24,9 @@ export async function cardToCardSimple(id: string, card: Card, lang: SupportedLa export async function getCardPictures(cardId: string, card: Card, lang: SupportedLanguages): Promise { try { - const file = await fetchRemoteFile(`https://assets.tcgdex.net/data-${lang}.json`) - if (file[card.set.serie.id][card.set.id][cardId]) { + const file = await fetchRemoteFile(`https://assets.tcgdex.net/datas.json`) + const fileExists = !!file[lang]?.[card.set.serie.code]?.[card.set.code]?.[card.localId] + if (fileExists) { return `https://assets.tcgdex.net/${lang}/${card.set.serie.id}/${card.set.id}/${cardId}` } } catch { @@ -43,9 +42,6 @@ export async function cardToCardSingle(localId: string, card: Card, lang: Suppor throw new Error(`Card (${localId}) dont exist in (${lang})`) } - - - return { id: `${card.set.id}-${localId}`, localId: localId,