mirror of
https://github.com/LuanRT/YouTube.js.git
synced 2026-06-17 11:32:27 +00:00
25 lines
1.1 KiB
TypeScript
25 lines
1.1 KiB
TypeScript
import { YTNode } from '../helpers.js';
|
|
import { Parser, type RawNode } from '../index.js';
|
|
import CollectionThumbnailView from './CollectionThumbnailView.js';
|
|
import LockupMetadataView from './LockupMetadataView.js';
|
|
import NavigationEndpoint from './NavigationEndpoint.js';
|
|
|
|
export default class LockupView extends YTNode {
|
|
static type = 'LockupView';
|
|
|
|
content_image: CollectionThumbnailView | null;
|
|
metadata: LockupMetadataView | null;
|
|
content_id: string;
|
|
content_type: 'VIDEO' | 'MOVIE' | 'CHANNEL' | 'CLIP' | 'SOURCE' | 'PLAYLIST' | 'ALBUM' | 'PODCAST' | 'SHOPPING_COLLECTION' | 'SHORT' | 'GAME' | 'PRODUCT';
|
|
on_tap_endpoint: NavigationEndpoint;
|
|
|
|
constructor(data: RawNode) {
|
|
super();
|
|
|
|
this.content_image = Parser.parseItem(data.contentImage, CollectionThumbnailView);
|
|
this.metadata = Parser.parseItem(data.metadata, LockupMetadataView);
|
|
this.content_id = data.contentId;
|
|
this.content_type = data.contentType.replace('LOCKUP_CONTENT_TYPE_', '');
|
|
this.on_tap_endpoint = new NavigationEndpoint(data.rendererContext.commandContext.onTap);
|
|
}
|
|
} |