diff --git a/package-lock.json b/package-lock.json index 307156c..497555f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "play-dl", - "version": "0.5.3", + "version": "0.5.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "play-dl", - "version": "0.5.2", + "version": "0.5.4", "license": "MIT", "dependencies": { "got": "^11.8.2" diff --git a/package.json b/package.json index 1401277..d772648 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "play-dl", - "version": "0.5.3", + "version": "0.5.4", "description": "YouTube, SoundCloud, Spotify streaming for discord.js bots", "main": "dist/index.js", "typings": "dist/index.d.ts", diff --git a/play-dl/YouTube/utils/extractor.ts b/play-dl/YouTube/utils/extractor.ts index a7ce368..d3fb05d 100644 --- a/play-dl/YouTube/utils/extractor.ts +++ b/play-dl/YouTube/utils/extractor.ts @@ -107,7 +107,7 @@ async function parseM3U8(m3u8_data : string, formats : any[]): Promise{ return formats } -export async function playlist_info(url : string) { +export async function playlist_info(url : string, parseIncomplete : boolean) { if (!url || typeof url !== "string") throw new Error(`Expected playlist url, received ${typeof url}!`); if(url.search('(\\?|\\&)list\\=') === -1) throw new Error('This is not a PlayList URL') @@ -118,7 +118,10 @@ export async function playlist_info(url : string) { let body = await url_get(new_url) let response = JSON.parse(body.split("var ytInitialData = ")[1].split(";")[0]) if(response.alerts){ - if(response.alerts[0].alertWithButtonRenderer?.type === 'INFO') throw new Error(`While parsing playlist url\n ${response.alerts[0].alertWithButtonRenderer.text.simpleText}`) + if(response.alerts[0].alertWithButtonRenderer?.type === 'INFO') { + if(parseIncomplete) console.log(`While parsing playlist url\n ${response.alerts[0].alertWithButtonRenderer.text.simpleText}`) + else throw new Error(`While parsing playlist url\n ${response.alerts[0].alertWithButtonRenderer.text.simpleText}`) + } else if(response.alerts[0].alertRenderer?.type === 'ERROR') throw new Error(`While parsing playlist url\n ${response.alerts[0].alertRenderer.text.runs[0].text}`) else throw new Error('While parsing playlist url\n Unknown Playlist Error') }