Files
YouTube.js/src/parser/classes/ReelPlayerOverlay.ts
Konstantin a32aa8c633 feat: Add Shorts endpoint (#512)
* chore: first try for shorts endpoints

* chore: add shorts to index

* fix: fix code style

* chore: fix suggestions

* fix: fix code style with spaces on curly brackets

* chore: add curly rule to eslint

* chore: run request in parallel

* chore: remove console.logs and add other expect tests

* chore: apply eslint suggestions

* Update ReelPlayerOverlay.ts

* Update VideoInfo.ts

* chore: remove console.log from tests

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
Co-authored-by: LuanRT <luan.lrt4@gmail.com>
2023-11-30 22:58:11 -03:00

39 lines
1.7 KiB
TypeScript

import { Parser, type RawNode } from '../index.js';
import { YTNode } from '../helpers.js';
import Button from './Button.js';
import Menu from './menus/Menu.js';
import InfoPanelContainer from './InfoPanelContainer.js';
import LikeButton from './LikeButton.js';
import ReelPlayerHeader from './ReelPlayerHeader.js';
import PivotButton from './PivotButton.js';
export default class ReelPlayerOverlay extends YTNode {
static type = 'ReelPlayerOverlay';
like_button: LikeButton | null;
reel_player_header_supported_renderers: ReelPlayerHeader | null;
menu: Menu | null;
next_item_button: Button | null;
prev_item_button: Button | null;
subscribe_button_renderer: Button | null;
style: string;
view_comments_button: Button | null;
share_button: Button | null;
pivot_button: PivotButton | null;
info_panel: InfoPanelContainer | null;
constructor(data: RawNode) {
super();
this.like_button = Parser.parseItem(data.likeButton, LikeButton);
this.reel_player_header_supported_renderers = Parser.parseItem(data.reelPlayerHeaderSupportedRenderers, ReelPlayerHeader);
this.menu = Parser.parseItem(data.menu, Menu);
this.next_item_button = Parser.parseItem(data.nextItemButton, Button);
this.prev_item_button = Parser.parseItem(data.prevItemButton, Button);
this.subscribe_button_renderer = Parser.parseItem(data.subscribeButtonRenderer, Button);
this.style = data.style;
this.view_comments_button = Parser.parseItem(data.viewCommentsButton, Button);
this.share_button = Parser.parseItem(data.shareButton, Button);
this.pivot_button = Parser.parseItem(data.pivotButton, PivotButton);
this.info_panel = Parser.parseItem(data.infoPanel, InfoPanelContainer);
}
}