diff --git a/package-lock.json b/package-lock.json index 4cc785a..b8c3c63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@babel/runtime": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.1.tgz", - "integrity": "sha512-nQbbCbQc9u/rpg1XCxoMYQTbSMVZjCDxErQ1ClCn9Pvcmv1lGads19ep0a2VsEiIJeHqjZley6EQGEC3Yo1xMA==", + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.2.tgz", + "integrity": "sha512-6sF3uQw2ivImfVIl62RZ7MXhO2tap69WeWK57vAaimT6AZbE4FbqjdEJIN1UqoD6wI6B+1n9UiagafH1sxjOtg==", "requires": { "regenerator-runtime": "^0.13.4" } @@ -386,14 +386,6 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, - "encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "requires": { - "iconv-lite": "~0.4.13" - } - }, "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", @@ -713,25 +705,6 @@ "resolved": "https://registry.npmjs.org/ienoopen/-/ienoopen-1.1.0.tgz", "integrity": "sha512-MFs36e/ca6ohEKtinTJ5VvAJ6oDRAYFdYXweUnGY9L9vcoqFOU4n2ZhmJ0C4z/cwGZ3YIQRSB3XZ1+ghZkY5NQ==" }, - "image-to-base64": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/image-to-base64/-/image-to-base64-2.1.0.tgz", - "integrity": "sha512-Qlm5F5EJUkxMEY0uPVwbfEkirv4WowHGRj9LBPYU3bAuFucwhvIJiH9g3aJZ91A89jVq9GzmayiNvE2sEjQ9YQ==", - "requires": { - "node-fetch": "^1.7.3" - }, - "dependencies": { - "node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "requires": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" - } - } - } - }, "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", @@ -742,11 +715,6 @@ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", diff --git a/src/api/api.js b/src/api/api.js index 1429100..e97827f 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -337,6 +337,24 @@ const getMoreInfo = async (title) =>{ return Promise.all(promises); }; +const getAnimeServers = async (id) => { + + const data = await cloudscraper.get(`${BASE_ANIMEFLV_JELU}GetAnimeServers/${id}`); + let body = JSON.parse(data).servers; + const promises = [] + + body.map(doc =>{ + + promises.push({ + id: doc.title.toLowerCase(), + url: doc.code + }); + }); + + return Promise.all(promises); + +}; + module.exports = { schedule, top, @@ -349,5 +367,6 @@ module.exports = { getOvas, getSpecials, getTv, - getMoreInfo + getMoreInfo, + getAnimeServers }; diff --git a/src/api/index.js b/src/api/index.js index a757782..be19197 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -22,7 +22,8 @@ router.get('/', (req, res) => { 'Ovas': '/api/v2/ovas/:type/:page', 'Specials': '/api/v2/specials/:type/:page', 'Tv': '/api/v2/tv/:type/:page', - 'MoreInfo': '/api/v2/moreInfo/:title' + 'MoreInfo': '/api/v2/moreInfo/:title', + 'GetAnimeServers': '/api/v2/getAnimeServers/:id' } ] }); diff --git a/src/api/routes/index.js b/src/api/routes/index.js index 4679e3e..40f68d4 100644 --- a/src/api/routes/index.js +++ b/src/api/routes/index.js @@ -181,4 +181,19 @@ router.get('/moreInfo/:title' , (req, res) =>{ }); +router.get('/getAnimeServers/:id([^/]+/[^/]+)' , (req, res) =>{ + + let id = req.params.id; + + api.getAnimeServers(id) + .then(servers =>{ + res.status(200).json({ + servers + }); + }).catch((err) =>{ + console.error(err); + }); + +}); + module.exports = router;