diff --git a/src/api/api.js b/src/api/api.js index 7165fb6..e167fc5 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -1,10 +1,8 @@ const rss = require('rss-to-json'); const fuzzball = require('fuzzball'); - const { homgot } = require('../api/apiCall'); - const { jkanimeInfo, animeflvInfo, @@ -18,7 +16,11 @@ const { videoServersJK, getThemes, getRelatedAnimesFLV, - getRelatedAnimesMAL + getRelatedAnimesMAL, + directoryAnimes, + radioStations, + animeGenres, + animeThemes } = require('../utils/index'); const ThemeParser = require('../utils/animetheme'); @@ -75,7 +77,7 @@ const getAllDirectory = async (genres) => { let data; if (genres === 'sfw') { - data = JSON.parse(JSON.stringify(require('../assets/directory.json'))).filter(function (item) { + data = directoryAnimes.filter(function (item) { return !item.genres.includes("Ecchi") && !item.genres.includes("ecchi"); }); } else { @@ -137,7 +139,6 @@ const getNews = async (pageRss) =>{ let promises = []; for(let i = 0; i <= pageRss.length -1; i++) { - await rss.load(pageRss[i].url).then(rss => { const body = JSON.parse(JSON.stringify(rss, null, 3)).items @@ -150,11 +151,8 @@ const getNews = async (pageRss) =>{ thumbnail: obtainPreviewNews(doc[pageRss[i].content]), content: doc[pageRss[i].content] }); - }); - }); - } return promises; @@ -222,7 +220,7 @@ const getSpecials = async (data) =>{ const getMoreInfo = async (title) =>{ try { - let data = JSON.parse(JSON.stringify(require('../assets/directory.json'))); + let data = directoryAnimes; let result = data.filter(anime => fuzzball.ratio(anime.title, title) > 90)[0]; if (!result.jkanime) { @@ -261,7 +259,7 @@ const getMoreInfo = async (title) =>{ const getEpisodes = async (title) =>{ try { - let data = JSON.parse(JSON.stringify(require('../assets/directory.json'))); + let data = directoryAnimes; const result = data.filter(x => x.title === title)[0]; if (!result.jkanime) { @@ -349,7 +347,7 @@ const getSectionYoutubeVideos = async (type) => { }; -const getRadioStations = async () => require('../assets/radiostations.json'); +const getRadioStations = async () => radioStations; const getOpAndEd = async (title) => await structureThemes(await parserThemes.serie(title), true); @@ -388,7 +386,7 @@ const getAnimeGenres = async(genres) => { let promises = []; if (genres.genre === undefined && genres.page === undefined && genres.order === undefined) { - return require('../assets/genres.json'); + return animeGenres; } else { if (genres.page !== undefined) { @@ -418,7 +416,7 @@ const getAnimeGenres = async(genres) => { } }; -const getAllThemes = async () => require('../assets/themes.json'); +const getAllThemes = async () => animeThemes; const getDestAnimePlatforms = async () => { let data = await homgot(`${BASE_ARUPPI}res/documents/animelegal/top.json`, { parse: true }); @@ -504,10 +502,10 @@ const getProfilePlatform = async (id) => { }; async function getRandomAnime() { - let directory = JSON.parse(JSON.stringify(require('../assets/directory.json'))); + let data = directoryAnimes; - const randomNumber = Math.floor(Math.random() * directory.length); - let result = directory[randomNumber]; + const randomNumber = Math.floor(Math.random() * data.length); + let result = data[randomNumber]; if (!result.jkanime) { return { diff --git a/src/assets/directory.json b/src/assets/directory.json index 036db25..10aaa27 100644 --- a/src/assets/directory.json +++ b/src/assets/directory.json @@ -57159,5 +57159,20 @@ "score": "4.4", "jkanime": false, "description": "\"Los magos curadores no pueden luchar solos\".\n\nKeare, que estaba obligado por este conocimiento común, fue explotado una y otra vez por otros. Un día, se dio cuenta de lo que había más allá de la magia curativa y se convenció de que un mago curativo era la clase más fuerte. Sin embargo, cuando se dio cuenta de ese potencial, se vio privado de todo. Por lo tanto, usó magia curativa en el mundo mismo para retroceder cuatro años, decidiendo rehacer todo.\n\nEsta es una historia heroica de un mago curativo que se convirtió en el más fuerte al usar el conocimiento de su vida pasada y la magia curativa." + }, + { + "id": "dr-stone-stone-wars", + "title": "Dr. Stone: Stone Wars", + "mal_id": 40852, + "poster": "https://aruppi.jeluchu.xyz/res/directory/3380.jpg", + "type": "Anime", + "genres": [ + "Aventuras", + "Ciencia Ficción", + "Shounen" + ], + "state": "En emision", + "jkanime": false, + "description": "Un fatídico día, toda la humanidad quedó petrificada por un destello de luz cegadora. Después de varios milenios, el estudiante de instituto Taiju se despierta y se encuentra perdido en un mundo de estatuas. Sin embargo, no está solo; su amigo, amante de la ciencia, ha estado trabajando durante unos meses y tiene un gran plan en mente: ¡poner en marcha la civilización con el poder de la ciencia!" } ] \ No newline at end of file diff --git a/src/index.js b/src/index.js index 2187fe4..e57e57b 100644 --- a/src/index.js +++ b/src/index.js @@ -13,8 +13,6 @@ function shutdown() { process.exit(); } -// @TESTING - process.on('SIGINT', shutdown); process.on('SIGQUIT', shutdown); process.on('SIGTERM', shutdown); diff --git a/src/utils/index.js b/src/utils/index.js index 4dcafb2..3ffe51e 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -1,10 +1,13 @@ const { BASE_ANIMEFLV, BASE_JIKAN, BASE_ARUPPI, BASE_JKANIME } = require('../api/urls'); - const { homgot } = require('../api/apiCall'); +const directoryAnimes = JSON.parse(JSON.stringify(require('../assets/directory.json'))); +const radioStations = require('../assets/radiostations.json'); +const animeGenres = require('../assets/genres.json'); +const animeThemes = require('../assets/themes.json'); function btoa(str) { let buffer; @@ -137,7 +140,7 @@ const jkanimeInfo = async (id) => { }; function getPosterAndType(id, mal_id) { - let data = JSON.parse(JSON.stringify(require('../assets/directory.json'))); + let data = directoryAnimes; if (id) { for (let anime of data) { @@ -398,7 +401,7 @@ const imageUrlToBase64 = async (url) => { }; const searchAnime = async (query) => { - let data = JSON.parse(JSON.stringify(require('../assets/directory.json'))); + let data = directoryAnimes; let queryLowerCase = query.toLowerCase(); const res = data.filter(x => x.title.toLowerCase().includes(queryLowerCase)); @@ -545,5 +548,9 @@ module.exports = { obtainPreviewNews, structureThemes, getThemes, - videoServersJK + videoServersJK, + directoryAnimes, + radioStations, + animeGenres, + animeThemes }