UNPKG

@duell10111/youtubei.js

Version:

A JavaScript client for YouTube's private API, known as InnerTube.

41 lines 1.32 kB
import Text from './misc/Text.js'; import { Parser } from '../index.js'; import NavigationEndpoint from './NavigationEndpoint.js'; import { YTNode } from '../helpers.js'; import Button from './Button.js'; import ShelfHeader from './ShelfHeader.js'; export default class Shelf extends YTNode { static type = 'Shelf'; title; endpoint; content; icon_type; menu; play_all_button; subtitle; header; constructor(data) { super(); this.title = new Text(data.title); if (Reflect.has(data, 'endpoint')) { this.endpoint = new NavigationEndpoint(data.endpoint); } this.content = Parser.parseItem(data.content); if (Reflect.has(data, 'icon')) { this.icon_type = data.icon.iconType; } if (Reflect.has(data, 'menu')) { this.menu = Parser.parseItem(data.menu); } if (Reflect.has(data, 'playAllButton')) { this.play_all_button = Parser.parseItem(data.playAllButton, Button); } if (Reflect.has(data, 'subtitle')) { this.subtitle = new Text(data.subtitle); } if (Reflect.has(data, 'headerRenderer')) { this.header = Parser.parseItem(data.headerRenderer, ShelfHeader); } } } //# sourceMappingURL=Shelf.js.map