diff --git a/src/pages/api/extension/episode/[releaseId].ts b/src/pages/api/extension/episode/[releaseId].ts index e3aa4e0..69b4ee3 100644 --- a/src/pages/api/extension/episode/[releaseId].ts +++ b/src/pages/api/extension/episode/[releaseId].ts @@ -3,33 +3,37 @@ import axios from 'axios'; interface EpisodeResponse { code: number; - types?: Array<{ + sources?: Array<{ '@id': number; id: number; + type: { + '@id': number; + id: number; + name: string; + icon: string | null; + workers: string; + is_sub: boolean; + episodes_count: number; + view_count: number; + pinned: boolean; + }; name: string; - icon: string | null; - workers: string | null; - is_sub: boolean; episodes_count: number; - view_count: number; - pinned: boolean; }>; } export default async function handler(req: NextApiRequest, res: NextApiResponse) { - const { releaseId } = req.query; - const anixartAPI = `https://api.anixart.tv/episode/${releaseId}`; - const seeleAPI = `https://seeleme.github.io/anixart/extension/api/episode/${releaseId}.json`; + const { releaseId, typeId } = req.query; + const anixartAPI = `https://api.anixart.tv/episode/${releaseId}/${typeId}`; + const seeleAPI = `https://seeleme.github.io/anixart/extension/api/${releaseId}/${typeId}.json`; try { const anixartRes = await axios.get(anixartAPI); const anixartResData = anixartRes.data; - const modifyedData = modifyData(anixartRes.data); - if (!modifyedData.types || modifyedData.types.length === 0) { - const seeleRes = await axios.get(seeleAPI); - - res.json({ is_blocked: true, ...modifyData(seeleRes.data) }); + if (anixartResData.code === 0 && (!anixartResData.sources || anixartResData.sources.length === 0)) { + const seeleRes = await axios.get(seeleAPI); + res.json({ is_blocked: true, ...seeleRes.data }); } else { res.json(anixartResData); } @@ -38,16 +42,3 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse) res.status(500).json({ message: 'Internal Server Error' }); } } - -function modifyData(data: EpisodeResponse): EpisodeResponse { - if (data.types && data.types.length) { - data.types = data.types.map(type => { - return { - ...type, - workers: 'Отображается благодаря расширению «MD Seele»' // Изменение значения workers на 'MD Sele' - } - }); - } - - return data; -}