From 6c6334759daa19a38076d488600799a691354e1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9luchu?= Date: Sun, 17 Jan 2021 21:32:30 +0100 Subject: [PATCH] v3.3.7 - Refactor MoreInfo and GetEpisodes --- README.md | 2 +- package-lock.json | 2 +- package.json | 2 +- src/api/api.js | 59 +++++++++++------------------------------ src/api/routes/index.js | 8 +++--- src/utils/index.js | 8 +++--- 6 files changed, 25 insertions(+), 56 deletions(-) diff --git a/README.md b/README.md index 57738b5..c22413f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# **Aruppi API** (v3.3.6) +# **Aruppi API** (v3.3.7) > This API has everything about Japan, from anime, music, radio, images, videos ... to japanese culture > diff --git a/package-lock.json b/package-lock.json index 607830d..b5debba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "aruppi", - "version": "3.3.6", + "version": "3.3.7", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 69f29d2..7ecea89 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "aruppi", - "version": "3.3.6", + "version": "3.3.7", "description": "Aruppi is a custom API to obtain data from the Japanese culture for the mobile app", "main": "./src/api/api.js", "scripts": { diff --git a/src/api/api.js b/src/api/api.js index 02fbec5..b62ce86 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -238,43 +238,22 @@ const getMoreInfo = async (title) =>{ try { - const promises = [] - let data = JSON.parse(JSON.stringify(require('../assets/directory.json'))); - const res = data.filter(x => x.title === title || x.mal_title === title)[0]; - - if (!res.jkanime) { - promises.push({ - title: res.title || null, - poster: res.poster || null, - synopsis: res.description || null, - status: res.state || null, - type: res.type || null, - rating: res.score || null, - genres: res.genres || null, - episodes: await animeflvInfo(res.id).then(episodes => episodes || null), - moreInfo: await animeExtraInfo(res.mal_title).then(info => info || null), - promo: await getAnimeVideoPromo(res.mal_title).then(promo => promo || null), - characters: await getAnimeCharacters(res.mal_title).then(characters => characters || null) - }); - } else { - promises.push({ - title: res.title || null, - poster: res.poster || null, - synopsis: res.description || null, - status: res.state || null, - type: res.type || null, - rating: res.score || null, - genres: res.genres || null, - episodes: await jkanimeInfo(res.id).then(episodes => episodes || null), - moreInfo: await animeExtraInfo(res.mal_title).then(info => info || null), - promo: await getAnimeVideoPromo(res.mal_title).then(promo => promo || null), - characters: await getAnimeCharacters(res.mal_title).then(characters => characters || null) - }); + let result = data.filter(anime => anime.title === title)[0]; + + return { + title: result.title || null, + poster: result.poster || null, + synopsis: result.description || null, + status: result.state || null, + type: result.type || null, + rating: result.score || null, + genres: result.genres || null, + moreInfo: await animeExtraInfo(result.mal_title).then(info => info || null), + promo: await getAnimeVideoPromo(result.mal_title).then(promo => promo || null), + characters: await getAnimeCharacters(result.mal_title).then(characters => characters || null) } - return promises; - } catch (e) { console.log(e) } @@ -285,23 +264,15 @@ const getEpisodes = async (title) =>{ try { - const promises = [] - let data = JSON.parse(JSON.stringify(require('../assets/directory.json'))); const res = data.filter(x => x.title === title || x.mal_title === title)[0]; if (!res.jkanime) { - promises.push({ - episodes: await animeflvInfo(res.id).then(episodes => episodes || null), - }); + return await animeflvInfo(res.id).then(episodes => episodes || null) } else { - promises.push({ - episodes: await jkanimeInfo(res.id).then(episodes => episodes || null), - }); + return await jkanimeInfo(res.id).then(episodes => episodes || null) } - return promises; - } catch (e) { console.log(e) } diff --git a/src/api/routes/index.js b/src/api/routes/index.js index 7b0170e..efb4035 100644 --- a/src/api/routes/index.js +++ b/src/api/routes/index.js @@ -270,10 +270,8 @@ router.get('/moreInfo/:title' , (req, res) =>{ api.getMoreInfo(title) .then(info =>{ - if (info.length > 0) { - res.status(200).json({ - info - }); + if (info !== undefined) { + res.status(200).json(info); } else ( res.status(500).json({ message: 'Aruppi lost in the shell'}) ) @@ -290,7 +288,7 @@ router.get('/getEpisodes/:title' , (req, res) =>{ api.getEpisodes(title) .then(episodes =>{ if (episodes.length > 0) { - res.status(200).json(episodes); + res.status(200).json({episodes}); } else ( res.status(500).json({ message: 'Aruppi lost in the shell'}) ) diff --git a/src/utils/index.js b/src/utils/index.js index c61d447..3d09fc2 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -168,8 +168,8 @@ const animeflvInfo = async (id) => { amimeTempList.push(episode, episodeId); } const animeListEps = [{ nextEpisodeDate: nextEpisodeDate }]; - Array.from({ length: amimeTempList[1].length }, (v, k) => { - let data = amimeTempList.map(x => x[k]); + for (let i = 0; i < amimeTempList[1].length; i++){ + let data = amimeTempList.map(x => x[i]); let episode = data[0]; let id = data[1]; let link = `${id}/${animeId}-${episode}` @@ -178,7 +178,7 @@ const animeflvInfo = async (id) => { episode: episode, id: link, }) - }) + } return animeListEps @@ -260,7 +260,7 @@ const animeExtraInfo = async (title) => { } else { broadcast = airDay[doc.broadcast.split('at')[0].replace(" ", "").toLowerCase()] } - + promises.push({ titleJapanese: doc.title_japanese, source: doc.source,