mirror of
https://github.com/LuanRT/YouTube.js.git
synced 2026-06-26 08:08:54 +00:00
feat(ytmusic): implement music#Library (#136)
* feat: add ItemSectionTab and related parsers * feat: add `continuation` to `Grid`parser class * feat (ytmusic): implement music#getLibrary() * Improve album fetch in `MusicResponsiveListItem` * music#Library: return [] for empty results * feat: add `Dropdown` & `DropdownItem` parsers * feat: add `CreatePlaylistDialog` parser * feat: add `create_playlist` to NavigationEndpoint * feat: add `AutomixPreviewVideo` parser * feat: improve parsing of items * fix: `PlaylistPanel` continuation * feat: more args in `Actions#next` * feat: add `PlaylistPanelContinuation` to `Parser` * chore: update parser-map * music#Library: refactor + add shuffle songs opt * feat: add `endpoint` to `DropdownItem` * feat: add `end_items` to `ItemSectionTabbedHeader` * feat(ytmusic): add `sort_by` to `music#Library`
This commit is contained in:
23
src/parser/classes/ItemSectionTabbedHeader.ts
Normal file
23
src/parser/classes/ItemSectionTabbedHeader.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import Text from './misc/Text';
|
||||
import { ObservedArray, YTNode } from '../helpers';
|
||||
import ItemSectionTab from './ItemSectionTab';
|
||||
import Parser from '..';
|
||||
|
||||
class ItemSectionTabbedHeader extends YTNode {
|
||||
static type = 'ItemSectionTabbedHeader';
|
||||
|
||||
title: Text;
|
||||
tabs: Array<ItemSectionTab>;
|
||||
end_items?: ObservedArray<YTNode>;
|
||||
|
||||
constructor(data: any) {
|
||||
super();
|
||||
this.title = new Text(data.title);
|
||||
this.tabs = Parser.parseArray<ItemSectionTab>(data.tabs, ItemSectionTab);
|
||||
if (data.endItems) {
|
||||
this.end_items = Parser.parseArray(data.endItems);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default ItemSectionTabbedHeader;
|
||||
Reference in New Issue
Block a user