Docs + Pretty code

This commit is contained in:
killer069
2021-10-12 14:09:14 +05:30
parent 229bbc7a11
commit bd4afbe82a
11 changed files with 118 additions and 89 deletions

View File

@@ -5,7 +5,7 @@ import fs from 'fs';
let spotifyData: SpotifyDataOptions;
if (fs.existsSync('.data/spotify.data')) {
spotifyData = JSON.parse(fs.readFileSync('.data/spotify.data').toString());
spotifyData.file = true
spotifyData.file = true;
}
/**
* Spotify Data options that are stored in spotify.data file.
@@ -21,7 +21,7 @@ export interface SpotifyDataOptions {
expires_in?: number;
expiry?: number;
market?: string;
file? : boolean
file?: boolean;
}
const pattern = /^((https:)?\/\/)?open.spotify.com\/(track|album|playlist)\//;
@@ -91,7 +91,7 @@ export function sp_validate(url: string): 'track' | 'playlist' | 'album' | 'sear
* @param data Sportify Data options to validate
* @returns boolean.
*/
export async function SpotifyAuthorize(data: SpotifyDataOptions, file : boolean): Promise<boolean> {
export async function SpotifyAuthorize(data: SpotifyDataOptions, file: boolean): Promise<boolean> {
const response = await request(`https://accounts.spotify.com/api/token`, {
headers: {
'Authorization': `Basic ${Buffer.from(`${data.client_id}:${data.client_secret}`).toString('base64')}`,
@@ -117,13 +117,13 @@ export async function SpotifyAuthorize(data: SpotifyDataOptions, file : boolean)
token_type: resp_json.token_type,
market: data.market
};
if(file) fs.writeFileSync('.data/spotify.data', JSON.stringify(spotifyData, undefined, 4));
if (file) fs.writeFileSync('.data/spotify.data', JSON.stringify(spotifyData, undefined, 4));
else {
console.log(`Client ID : ${spotifyData.client_id}`)
console.log(`Client Secret : ${spotifyData.client_secret}`)
console.log(`Refresh Token : ${spotifyData.refresh_token}`)
console.log(`Market : ${spotifyData.market}`)
console.log(`\nPaste above info in setToken function.`)
console.log(`Client ID : ${spotifyData.client_id}`);
console.log(`Client Secret : ${spotifyData.client_secret}`);
console.log(`Refresh Token : ${spotifyData.refresh_token}`);
console.log(`Market : ${spotifyData.market}`);
console.log(`\nPaste above info in setToken function.`);
}
return true;
}
@@ -207,12 +207,12 @@ export async function refreshToken(): Promise<boolean> {
spotifyData.expires_in = Number(resp_json.expires_in);
spotifyData.expiry = Date.now() + (resp_json.expires_in - 1) * 1000;
spotifyData.token_type = resp_json.token_type;
if(spotifyData.file) fs.writeFileSync('.data/spotify.data', JSON.stringify(spotifyData, undefined, 4));
if (spotifyData.file) fs.writeFileSync('.data/spotify.data', JSON.stringify(spotifyData, undefined, 4));
return true;
}
export function setSpotifyToken(options: SpotifyDataOptions) {
spotifyData = options
spotifyData.file = false
refreshToken()
}
spotifyData = options;
spotifyData.file = false;
refreshToken();
}