Merge pull request #99 from tr1ckydev/main

Optimized validate function and added return types.
This commit is contained in:
Killer069 2021-09-24 15:23:57 +05:30 committed by GitHub
commit aedb2171cc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -43,22 +43,17 @@ export async function stream_from_info(
else return await yt_stream_info(info, { cookie: options.cookie });
}
export async function validate(url: string): Promise<string | boolean> {
export async function validate(url: string): Promise<"so_playlist" | "so_track" | "sp_track" | "sp_album" | "sp_playlist" | "yt_video" | "yt_playlist" | false> {
let check;
if (url.indexOf('spotify') !== -1) {
const check = sp_validate(url);
if (check) {
return 'sp_' + check;
} else return check;
check = sp_validate(url);
return check !== false ? 'sp_' + check as "sp_track" | "sp_album" | "sp_playlist" : false;
} else if (url.indexOf('soundcloud') !== -1) {
const check = await so_validate(url);
if (check) {
return 'so_' + check;
} else return check;
check = await so_validate(url);
return check !== false ? 'so_' + check as "so_playlist" | "so_track" : false;
} else {
const check = yt_validate(url);
if (check) {
return 'yt_' + check;
} else return check;
check = yt_validate(url);
return check !== false ? 'yt_' + check as "yt_video" | "yt_playlist" : false;
}
}