mirror of
https://github.com/LuanRT/YouTube.js.git
synced 2026-06-30 09:55:18 +00:00
feat(YouTube Playlist): Add subtitle and fix author optionality (#458)
This commit is contained in:
@@ -8,9 +8,10 @@ export default class PlaylistHeader extends YTNode {
|
||||
|
||||
id: string;
|
||||
title: Text;
|
||||
subtitle: Text | null;
|
||||
stats: Text[];
|
||||
brief_stats: Text[];
|
||||
author: Author;
|
||||
author: Author | null;
|
||||
description: Text;
|
||||
num_videos: Text;
|
||||
view_count: Text;
|
||||
@@ -27,9 +28,10 @@ export default class PlaylistHeader extends YTNode {
|
||||
super();
|
||||
this.id = data.playlistId;
|
||||
this.title = new Text(data.title);
|
||||
this.subtitle = data.subtitle ? new Text(data.subtitle) : null;
|
||||
this.stats = data.stats.map((stat: RawNode) => new Text(stat));
|
||||
this.brief_stats = data.briefStats.map((stat: RawNode) => new Text(stat));
|
||||
this.author = new Author({ ...data.ownerText, navigationEndpoint: data.ownerEndpoint }, data.ownerBadges, null);
|
||||
this.author = data.ownerText || data.ownerEndpoint ? new Author({ ...data.ownerText, navigationEndpoint: data.ownerEndpoint }, data.ownerBadges, null) : null;
|
||||
this.description = new Text(data.descriptionText);
|
||||
this.num_videos = new Text(data.numVideosText);
|
||||
this.view_count = new Text(data.viewCountText);
|
||||
|
||||
@@ -36,6 +36,7 @@ class Playlist extends Feed<IBrowseResponse> {
|
||||
this.info = {
|
||||
...this.page.metadata?.item().as(PlaylistMetadata),
|
||||
...{
|
||||
subtitle: header.subtitle,
|
||||
author: secondary_info?.owner?.as(VideoOwner).author ?? header?.author,
|
||||
thumbnails: primary_info?.thumbnail_renderer?.as(PlaylistVideoThumbnail, PlaylistCustomThumbnail).thumbnail as Thumbnail[],
|
||||
total_items: this.#getStat(0, primary_info),
|
||||
|
||||
Reference in New Issue
Block a user