feat(ytmusic): add music#getPlaylist() (#131)

* add music#getPlaylist()
* fix: lint errors
This commit is contained in:
patrickkfkan
2022-08-11 01:11:31 +08:00
committed by GitHub
parent dc79b19d56
commit 9b4d86b81f
6 changed files with 136 additions and 23 deletions

View File

@@ -1,22 +0,0 @@
import Parser from '../index';
import { YTNode } from '../helpers';
class MusicPlaylistShelf extends YTNode {
static type = 'MusicPlaylistShelf';
#continuations;
constructor(data) {
super();
this.playlist_id = data.playlistId;
this.contents = Parser.parse(data.contents);
this.collapsed_item_count = data.collapsedItemCount;
this.#continuations = data.continuations;
}
get continuation() {
return this.#continuations?.[0]?.nextContinuationData;
}
}
export default MusicPlaylistShelf;

View File

@@ -0,0 +1,24 @@
import Parser from '../index';
import MusicResponsiveListItem from './MusicResponsiveListItem';
import { YTNode } from '../helpers';
class MusicPlaylistShelf extends YTNode {
static type = 'MusicPlaylistShelf';
playlist_id: string;
contents;
collapsed_item_count: number;
continuation: string | null;
constructor(data: any) {
super();
this.playlist_id = data.playlistId;
this.contents = Parser.parseArray<MusicResponsiveListItem>(data.contents, MusicResponsiveListItem);
this.collapsed_item_count = data.collapsedItemCount;
this.continuation = data.continuations?.[0]?.nextContinuationData?.continuation || null;
}
}
export default MusicPlaylistShelf;