diff options
| author | Thongrapee Panyapatiphan <[email protected]> | 2021-12-18 14:53:00 +0700 |
|---|---|---|
| committer | Thongrapee Panyapatiphan <[email protected]> | 2021-12-18 14:53:00 +0700 |
| commit | 5ce3f92023d56b16c8b15e584084fe90e7ab9b55 (patch) | |
| tree | 82a604cb5b64ccf55842b544d99e67d0b59ebbac /src/services | |
| parent | d8086be5cf1ab7152a6dc27ada78b3d186d85220 (diff) | |
| download | muse-5ce3f92023d56b16c8b15e584084fe90e7ab9b55.tar.xz muse-5ce3f92023d56b16c8b15e584084fe90e7ab9b55.zip | |
Revert incorrect changes
Diffstat (limited to 'src/services')
| -rw-r--r-- | src/services/get-songs.ts | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/services/get-songs.ts b/src/services/get-songs.ts index 38a2b61..ebf779a 100644 --- a/src/services/get-songs.ts +++ b/src/services/get-songs.ts @@ -97,7 +97,7 @@ export default class { } } - async youtubePlaylist(listId: string, limit: number): Promise<QueuedSongWithoutChannel[]> { + async youtubePlaylist(listId: string): Promise<QueuedSongWithoutChannel[]> { // YouTube playlist const playlist = await this.cache.wrap( this.youtube.playlists.get, @@ -126,7 +126,7 @@ export default class { const {items, nextPageToken} = await this.cache.wrap( this.youtube.playlists.items, listId, - {maxResults: limit, pageToken: nextToken}, + {maxResults: '50', pageToken: nextToken}, { expiresIn: ONE_MINUTE_IN_SECONDS, }, @@ -188,7 +188,7 @@ export default class { return songsToReturn; } - async spotifySource(url: string, limit: number): Promise<[QueuedSongWithoutChannel[], number, number]> { + async spotifySource(url: string, playlistLimit: number): Promise<[QueuedSongWithoutChannel[], number, number]> { const parsed = spotifyURI.parse(url); let tracks: SpotifyApi.TrackObjectSimplified[] = []; @@ -199,7 +199,7 @@ export default class { case 'album': { const uri = parsed as spotifyURI.Album; - const [{body: album}, {body: {items}}] = await Promise.all([this.spotify.getAlbum(uri.id), this.spotify.getAlbumTracks(uri.id, {limit})]); + const [{body: album}, {body: {items}}] = await Promise.all([this.spotify.getAlbum(uri.id), this.spotify.getAlbumTracks(uri.id, {limit: 50})]); tracks.push(...items); @@ -210,7 +210,7 @@ export default class { case 'playlist': { const uri = parsed as spotifyURI.Playlist; - let [{body: playlistResponse}, {body: tracksResponse}] = await Promise.all([this.spotify.getPlaylist(uri.id), this.spotify.getPlaylistTracks(uri.id, {limit})]); + let [{body: playlistResponse}, {body: tracksResponse}] = await Promise.all([this.spotify.getPlaylist(uri.id), this.spotify.getPlaylistTracks(uri.id, {limit: 50})]); playlist = {title: playlistResponse.name, source: playlistResponse.href}; @@ -219,7 +219,7 @@ export default class { while (tracksResponse.next) { // eslint-disable-next-line no-await-in-loop ({body: tracksResponse} = await this.spotify.getPlaylistTracks(uri.id, { - limit, + limit: parseInt(new URL(tracksResponse.next).searchParams.get('limit') ?? '50', 10), offset: parseInt(new URL(tracksResponse.next).searchParams.get('offset') ?? '0', 10), })); @@ -255,10 +255,10 @@ export default class { // Get random songs if the playlist is larger than limit const originalNSongs = tracks.length; - if (tracks.length > limit) { + if (tracks.length > playlistLimit) { const shuffled = shuffle(tracks); - tracks = shuffled.slice(0, limit); + tracks = shuffled.slice(0, playlistLimit); } let songs = await Promise.all(tracks.map(async track => this.spotifyToYouTube(track, playlist))); |
