Files
play-dl-test/play-dl/YouTube/utils/cookie.ts

32 lines
868 B
TypeScript
Raw Normal View History

2021-10-08 14:58:06 +05:30
import fs from 'fs';
let youtubeData: youtubeDataOptions;
if (fs.existsSync('.data/youtube.data')) {
youtubeData = JSON.parse(fs.readFileSync('.data/youtube.data').toString());
}
interface youtubeDataOptions {
cookie?: Object;
}
export function getCookies(): undefined | string {
2021-10-09 16:18:05 +05:30
let result = '';
if (!youtubeData?.cookie) return undefined;
for (const [key, value] of Object.entries(youtubeData.cookie)) {
result += `${key}=${value};`;
2021-10-08 14:58:06 +05:30
}
return result;
}
export function setCookie(key: string, value: string): boolean {
if (!youtubeData?.cookie) return false;
2021-10-09 16:18:05 +05:30
key = key.trim();
value = value.trim();
Object.assign(youtubeData.cookie, { [key]: value });
return true;
2021-10-08 14:58:06 +05:30
}
export function uploadCookie() {
2021-10-09 16:18:05 +05:30
if (youtubeData) fs.writeFileSync('.data/youtube.data', JSON.stringify(youtubeData, undefined, 4));
2021-10-08 14:58:06 +05:30
}