UI/UX: Adiciona campo opcional para colagem manual de transcrição no VideoMind

This commit is contained in:
2026-06-05 22:19:33 +00:00
parent 281005a8bc
commit 3781c848da
2395 changed files with 242184 additions and 20 deletions
+10
View File
@@ -0,0 +1,10 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import AboutChannelView from './AboutChannelView.js';
import Button from './Button.js';
export default class AboutChannel extends YTNode {
static type: string;
metadata: AboutChannelView | null;
share_channel: Button | null;
constructor(data: RawNode);
}
+15
View File
@@ -0,0 +1,15 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import AboutChannelView from './AboutChannelView.js';
import Button from './Button.js';
export default class AboutChannel extends YTNode {
static type = 'AboutChannel';
metadata;
share_channel;
constructor(data) {
super();
this.metadata = Parser.parseItem(data.metadata, AboutChannelView);
this.share_channel = Parser.parseItem(data.shareChannel, Button);
}
}
//# sourceMappingURL=AboutChannel.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"AboutChannel.js","sourceRoot":"","sources":["../../../../src/parser/classes/AboutChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AACrD,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,MAAM;IAC9C,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC;IAE7B,QAAQ,CAA0B;IAClC,aAAa,CAAgB;IAE7B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC"}
+24
View File
@@ -0,0 +1,24 @@
import type { ObservedArray } from '../helpers.js';
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import ChannelExternalLinkView from './ChannelExternalLinkView.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import Text from './misc/Text.js';
export default class AboutChannelView extends YTNode {
static type: string;
description?: string;
description_label?: Text;
country?: string;
custom_links_label?: Text;
subscriber_count?: string;
view_count?: string;
joined_date?: Text;
canonical_channel_url?: string;
channel_id?: string;
additional_info_label?: Text;
custom_url_on_tap?: NavigationEndpoint;
video_count?: string;
sign_in_for_business_email?: Text;
links: ObservedArray<ChannelExternalLinkView>;
constructor(data: RawNode);
}
+71
View File
@@ -0,0 +1,71 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import ChannelExternalLinkView from './ChannelExternalLinkView.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import Text from './misc/Text.js';
export default class AboutChannelView extends YTNode {
static type = 'AboutChannelView';
description;
description_label;
country;
custom_links_label;
subscriber_count;
view_count;
joined_date;
canonical_channel_url;
channel_id;
additional_info_label;
custom_url_on_tap;
video_count;
sign_in_for_business_email;
links;
constructor(data) {
super();
if (Reflect.has(data, 'description')) {
this.description = data.description;
}
if (Reflect.has(data, 'descriptionLabel')) {
this.description_label = Text.fromAttributed(data.descriptionLabel);
}
if (Reflect.has(data, 'country')) {
this.country = data.country;
}
if (Reflect.has(data, 'customLinksLabel')) {
this.custom_links_label = Text.fromAttributed(data.customLinksLabel);
}
if (Reflect.has(data, 'subscriberCountText')) {
this.subscriber_count = data.subscriberCountText;
}
if (Reflect.has(data, 'viewCountText')) {
this.view_count = data.viewCountText;
}
if (Reflect.has(data, 'joinedDateText')) {
this.joined_date = Text.fromAttributed(data.joinedDateText);
}
if (Reflect.has(data, 'canonicalChannelUrl')) {
this.canonical_channel_url = data.canonicalChannelUrl;
}
if (Reflect.has(data, 'channelId')) {
this.channel_id = data.channelId;
}
if (Reflect.has(data, 'additionalInfoLabel')) {
this.additional_info_label = Text.fromAttributed(data.additionalInfoLabel);
}
if (Reflect.has(data, 'customUrlOnTap')) {
this.custom_url_on_tap = new NavigationEndpoint(data.customUrlOnTap);
}
if (Reflect.has(data, 'videoCountText')) {
this.video_count = data.videoCountText;
}
if (Reflect.has(data, 'signInForBusinessEmail')) {
this.sign_in_for_business_email = Text.fromAttributed(data.signInForBusinessEmail);
}
if (Reflect.has(data, 'links')) {
this.links = Parser.parseArray(data.links, ChannelExternalLinkView);
}
else {
this.links = [];
}
}
}
//# sourceMappingURL=AboutChannelView.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AboutChannelView.js","sourceRoot":"","sources":["../../../../src/parser/classes/AboutChannelView.ts"],"names":[],"mappings":"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"}
+10
View File
@@ -0,0 +1,10 @@
import Text from './misc/Text.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export default class AccountChannel extends YTNode {
static type: string;
title: Text;
endpoint: NavigationEndpoint;
constructor(data: RawNode);
}
+14
View File
@@ -0,0 +1,14 @@
import Text from './misc/Text.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import { YTNode } from '../helpers.js';
export default class AccountChannel extends YTNode {
static type = 'AccountChannel';
title;
endpoint;
constructor(data) {
super();
this.title = new Text(data.title);
this.endpoint = new NavigationEndpoint(data.navigationEndpoint);
}
}
//# sourceMappingURL=AccountChannel.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AccountChannel.js","sourceRoot":"","sources":["../../../../src/parser/classes/AccountChannel.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAChD,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAE/B,KAAK,CAAO;IACZ,QAAQ,CAAqB;IAE7B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClE,CAAC"}
+20
View File
@@ -0,0 +1,20 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
/**
* Not a real renderer but we treat it as one to keep things organized.
*/
export default class AccountItem extends YTNode {
static type: string;
account_name: Text;
account_photo: Thumbnail[];
is_selected: boolean;
is_disabled: boolean;
has_channel: boolean;
endpoint: NavigationEndpoint;
account_byline: Text;
channel_handle: Text;
constructor(data: RawNode);
}
+30
View File
@@ -0,0 +1,30 @@
import { YTNode } from '../helpers.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
/**
* Not a real renderer but we treat it as one to keep things organized.
*/
export default class AccountItem extends YTNode {
static type = 'AccountItem';
account_name;
account_photo;
is_selected;
is_disabled;
has_channel;
endpoint;
account_byline;
channel_handle;
constructor(data) {
super();
this.account_name = new Text(data.accountName);
this.account_photo = Thumbnail.fromResponse(data.accountPhoto);
this.is_selected = !!data.isSelected;
this.is_disabled = !!data.isDisabled;
this.has_channel = !!data.hasChannel;
this.endpoint = new NavigationEndpoint(data.serviceEndpoint);
this.account_byline = new Text(data.accountByline);
this.channel_handle = new Text(data.channelHandle);
}
}
//# sourceMappingURL=AccountItem.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"AccountItem.js","sourceRoot":"","sources":["../../../../src/parser/classes/AccountItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,MAAM;IAC7C,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC;IAE5B,YAAY,CAAO;IACnB,aAAa,CAAc;IAC3B,WAAW,CAAU;IACrB,WAAW,CAAU;IACrB,WAAW,CAAU;IACrB,QAAQ,CAAqB;IAC7B,cAAc,CAAO;IACrB,cAAc,CAAO;IAErB,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC7D,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC"}
@@ -0,0 +1,11 @@
import AccountItem from './AccountItem.js';
import AccountItemSectionHeader from './AccountItemSectionHeader.js';
import { YTNode, type ObservedArray } from '../helpers.js';
import type { RawNode } from '../index.js';
import CompactLink from './CompactLink.js';
export default class AccountItemSection extends YTNode {
static type: string;
contents: ObservedArray<AccountItem | CompactLink>;
header: AccountItemSectionHeader | null;
constructor(data: RawNode);
}
+16
View File
@@ -0,0 +1,16 @@
import { Parser } from '../index.js';
import AccountItem from './AccountItem.js';
import AccountItemSectionHeader from './AccountItemSectionHeader.js';
import { YTNode } from '../helpers.js';
import CompactLink from './CompactLink.js';
export default class AccountItemSection extends YTNode {
static type = 'AccountItemSection';
contents;
header;
constructor(data) {
super();
this.contents = Parser.parseArray(data.contents, [AccountItem, CompactLink]);
this.header = Parser.parseItem(data.header, AccountItemSectionHeader);
}
}
//# sourceMappingURL=AccountItemSection.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AccountItemSection.js","sourceRoot":"","sources":["../../../../src/parser/classes/AccountItemSection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,MAAM,EAAsB,MAAM,eAAe,CAAC;AAE3D,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,MAAM;IACpD,MAAM,CAAC,IAAI,GAAG,oBAAoB,CAAC;IAE5B,QAAQ,CAA2C;IACnD,MAAM,CAAkC;IAE/C,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAE,WAAW,EAAE,WAAW,CAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACxE,CAAC"}
@@ -0,0 +1,8 @@
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export default class AccountItemSectionHeader extends YTNode {
static type: string;
title: Text;
constructor(data: RawNode);
}
@@ -0,0 +1,11 @@
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
export default class AccountItemSectionHeader extends YTNode {
static type = 'AccountItemSectionHeader';
title;
constructor(data) {
super();
this.title = new Text(data.title);
}
}
//# sourceMappingURL=AccountItemSectionHeader.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AccountItemSectionHeader.js","sourceRoot":"","sources":["../../../../src/parser/classes/AccountItemSectionHeader.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,MAAM;IAC1D,MAAM,CAAC,IAAI,GAAG,0BAA0B,CAAC;IAEzC,KAAK,CAAO;IAEZ,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC"}
@@ -0,0 +1,11 @@
import AccountChannel from './AccountChannel.js';
import AccountItemSection from './AccountItemSection.js';
import type { RawNode } from '../index.js';
import type { ObservedArray } from '../helpers.js';
import { YTNode } from '../helpers.js';
export default class AccountSectionList extends YTNode {
static type: string;
contents: ObservedArray<AccountItemSection>;
footers: ObservedArray<AccountChannel>;
constructor(data: RawNode);
}
+15
View File
@@ -0,0 +1,15 @@
import { Parser } from '../index.js';
import AccountChannel from './AccountChannel.js';
import AccountItemSection from './AccountItemSection.js';
import { YTNode } from '../helpers.js';
export default class AccountSectionList extends YTNode {
static type = 'AccountSectionList';
contents;
footers;
constructor(data) {
super();
this.contents = Parser.parseArray(data.contents, AccountItemSection);
this.footers = Parser.parseArray(data.footers, AccountChannel);
}
}
//# sourceMappingURL=AccountSectionList.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AccountSectionList.js","sourceRoot":"","sources":["../../../../src/parser/classes/AccountSectionList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAIzD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,MAAM;IACpD,MAAM,CAAC,IAAI,GAAG,oBAAoB,CAAC;IAE5B,QAAQ,CAAoC;IAC5C,OAAO,CAAgC;IAE9C,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACrE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IACjE,CAAC"}
@@ -0,0 +1,14 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
import NavigationEndpoint from './NavigationEndpoint.js';
export default class ActiveAccountHeader extends YTNode {
static type: string;
account_name: Text;
account_photo: Thumbnail[];
endpoint: NavigationEndpoint;
manage_account_title: Text;
channel_handle: Text;
constructor(data: RawNode);
}
@@ -0,0 +1,21 @@
import { YTNode } from '../helpers.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
import NavigationEndpoint from './NavigationEndpoint.js';
export default class ActiveAccountHeader extends YTNode {
static type = 'ActiveAccountHeader';
account_name;
account_photo;
endpoint;
manage_account_title;
channel_handle;
constructor(data) {
super();
this.account_name = new Text(data.accountName);
this.account_photo = Thumbnail.fromResponse(data.accountPhoto);
this.endpoint = new NavigationEndpoint(data.serviceEndpoint);
this.manage_account_title = new Text(data.manageAccountTitle);
this.channel_handle = new Text(data.channelHandle);
}
}
//# sourceMappingURL=ActiveAccountHeader.js.map
@@ -0,0 +1 @@
{"version":3,"file":"ActiveAccountHeader.js","sourceRoot":"","sources":["../../../../src/parser/classes/ActiveAccountHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,MAAM;IACrD,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAC;IAE7B,YAAY,CAAO;IACnB,aAAa,CAAc;IAC3B,QAAQ,CAAqB;IAC7B,oBAAoB,CAAO;IAC3B,cAAc,CAAO;IAE5B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC7D,IAAI,CAAC,oBAAoB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC"}
+11
View File
@@ -0,0 +1,11 @@
import { type ObservedArray, YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import Button from './Button.js';
import MenuTitle from './MenuTitle.js';
import PlaylistAddToOption from './PlaylistAddToOption.js';
export default class AddToPlaylist extends YTNode {
static type: string;
actions: ObservedArray<MenuTitle | Button>;
playlists: ObservedArray<PlaylistAddToOption>;
constructor(data: RawNode);
}
+16
View File
@@ -0,0 +1,16 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import Button from './Button.js';
import MenuTitle from './MenuTitle.js';
import PlaylistAddToOption from './PlaylistAddToOption.js';
export default class AddToPlaylist extends YTNode {
static type = 'AddToPlaylist';
actions;
playlists;
constructor(data) {
super();
this.actions = Parser.parseArray(data.actions, [MenuTitle, Button]);
this.playlists = Parser.parseArray(data.playlists, PlaylistAddToOption);
}
}
//# sourceMappingURL=AddToPlaylist.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AddToPlaylist.js","sourceRoot":"","sources":["../../../../src/parser/classes/AddToPlaylist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,MAAM;IAC/C,MAAM,CAAC,IAAI,GAAG,eAAe,CAAC;IAEvB,OAAO,CAAoC;IAC3C,SAAS,CAAqC;IAErD,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAE,SAAS,EAAE,MAAM,CAAE,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC1E,CAAC"}
+10
View File
@@ -0,0 +1,10 @@
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export type AlertType = 'UNKNOWN' | 'WARNING' | 'ERROR' | 'SUCCESS' | 'INFO';
export default class Alert extends YTNode {
static type: string;
text: Text;
alert_type: AlertType;
constructor(data: RawNode);
}
+13
View File
@@ -0,0 +1,13 @@
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
export default class Alert extends YTNode {
static type = 'Alert';
text;
alert_type;
constructor(data) {
super();
this.text = new Text(data.text);
this.alert_type = data.type;
}
}
//# sourceMappingURL=Alert.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../src/parser/classes/Alert.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAKvC,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,MAAM;IACvC,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC;IAEtB,IAAI,CAAO;IACX,UAAU,CAAY;IAEtB,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,CAAC"}
+11
View File
@@ -0,0 +1,11 @@
import Button from './Button.js';
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
export default class AlertWithButton extends YTNode {
static type: string;
text: Text;
alert_type: string;
dismiss_button: Button | null;
constructor(data: RawNode);
}
+17
View File
@@ -0,0 +1,17 @@
import Button from './Button.js';
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
export default class AlertWithButton extends YTNode {
static type = 'AlertWithButton';
text;
alert_type;
dismiss_button;
constructor(data) {
super();
this.text = new Text(data.text);
this.alert_type = data.type;
this.dismiss_button = Parser.parseItem(data.dismissButton, Button);
}
}
//# sourceMappingURL=AlertWithButton.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AlertWithButton.js","sourceRoot":"","sources":["../../../../src/parser/classes/AlertWithButton.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,MAAM;IACjD,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAEhC,IAAI,CAAO;IACX,UAAU,CAAS;IACnB,cAAc,CAAgB;IAE9B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC"}
@@ -0,0 +1,8 @@
import { YTNode } from '../helpers.js';
import type { RawNode } from '../types/index.js';
import Thumbnail from './misc/Thumbnail.js';
export default class AnimatedThumbnailOverlayView extends YTNode {
static type: string;
thumbnail: Thumbnail[];
constructor(data: RawNode);
}
@@ -0,0 +1,11 @@
import { YTNode } from '../helpers.js';
import Thumbnail from './misc/Thumbnail.js';
export default class AnimatedThumbnailOverlayView extends YTNode {
static type = 'AnimatedThumbnailOverlayView';
thumbnail;
constructor(data) {
super();
this.thumbnail = Thumbnail.fromResponse(data.thumbnail);
}
}
//# sourceMappingURL=AnimatedThumbnailOverlayView.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AnimatedThumbnailOverlayView.js","sourceRoot":"","sources":["../../../../src/parser/classes/AnimatedThumbnailOverlayView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,4BAA6B,SAAQ,MAAM;IAC9D,MAAM,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAEtC,SAAS,CAAc;IAE9B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC"}
@@ -0,0 +1,9 @@
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
import Text from './misc/Text.js';
export default class AttributionView extends YTNode {
static type: string;
text: Text;
suffix: Text;
constructor(data: RawNode);
}
+13
View File
@@ -0,0 +1,13 @@
import { YTNode } from '../helpers.js';
import Text from './misc/Text.js';
export default class AttributionView extends YTNode {
static type = 'AttributionView';
text;
suffix;
constructor(data) {
super();
this.text = Text.fromAttributed(data.text);
this.suffix = Text.fromAttributed(data.suffix);
}
}
//# sourceMappingURL=AttributionView.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AttributionView.js","sourceRoot":"","sources":["../../../../src/parser/classes/AttributionView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,MAAM;IACjD,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAEhC,IAAI,CAAO;IACX,MAAM,CAAO;IAEb,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC"}
@@ -0,0 +1,7 @@
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export default class AudioOnlyPlayability extends YTNode {
static type: string;
audio_only_availability: string;
constructor(data: RawNode);
}
@@ -0,0 +1,10 @@
import { YTNode } from '../helpers.js';
export default class AudioOnlyPlayability extends YTNode {
static type = 'AudioOnlyPlayability';
audio_only_availability;
constructor(data) {
super();
this.audio_only_availability = data.audioOnlyAvailability;
}
}
//# sourceMappingURL=AudioOnlyPlayability.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AudioOnlyPlayability.js","sourceRoot":"","sources":["../../../../src/parser/classes/AudioOnlyPlayability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,MAAM;IACtD,MAAM,CAAC,IAAI,GAAG,sBAAsB,CAAC;IAErC,uBAAuB,CAAS;IAEhC,YAAa,IAAa;QACxB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,qBAAqB,CAAC;IAC5D,CAAC"}
@@ -0,0 +1,10 @@
import { YTNode } from '../helpers.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import type { RawNode } from '../index.js';
export default class AutomixPreviewVideo extends YTNode {
static type: string;
playlist_video?: {
endpoint: NavigationEndpoint;
};
constructor(data: RawNode);
}
@@ -0,0 +1,15 @@
import { YTNode } from '../helpers.js';
import NavigationEndpoint from './NavigationEndpoint.js';
export default class AutomixPreviewVideo extends YTNode {
static type = 'AutomixPreviewVideo';
playlist_video;
constructor(data) {
super();
if (data?.content?.automixPlaylistVideoRenderer?.navigationEndpoint) {
this.playlist_video = {
endpoint: new NavigationEndpoint(data.content.automixPlaylistVideoRenderer.navigationEndpoint)
};
}
}
}
//# sourceMappingURL=AutomixPreviewVideo.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AutomixPreviewVideo.js","sourceRoot":"","sources":["../../../../src/parser/classes/AutomixPreviewVideo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAGzD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,MAAM;IACrD,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAC;IAEpC,cAAc,CAAoC;IAElD,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,IAAI,EAAE,OAAO,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,CAAC;YACpE,IAAI,CAAC,cAAc,GAAG;gBACpB,QAAQ,EAAE,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,kBAAkB,CAAC;aAC/F,CAAC;QACJ,CAAC;IACH,CAAC"}
+12
View File
@@ -0,0 +1,12 @@
import { type ObservedArray, YTNode } from '../helpers.js';
import type { RawNode } from '../types/index.js';
import Text from './misc/Text.js';
import AvatarView from './AvatarView.js';
import RendererContext from './misc/RendererContext.js';
export default class AvatarStackView extends YTNode {
static type: string;
avatars: ObservedArray<AvatarView>;
text?: Text;
renderer_context: RendererContext;
constructor(data: RawNode);
}
+19
View File
@@ -0,0 +1,19 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import Text from './misc/Text.js';
import AvatarView from './AvatarView.js';
import RendererContext from './misc/RendererContext.js';
export default class AvatarStackView extends YTNode {
static type = 'AvatarStackView';
avatars;
text;
renderer_context;
constructor(data) {
super();
this.avatars = Parser.parseArray(data.avatars, AvatarView);
if (Reflect.has(data, 'text'))
this.text = Text.fromAttributed(data.text);
this.renderer_context = new RendererContext(data.rendererContext);
}
}
//# sourceMappingURL=AvatarStackView.js.map
@@ -0,0 +1 @@
{"version":3,"file":"AvatarStackView.js","sourceRoot":"","sources":["../../../../src/parser/classes/AvatarStackView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,EAAE,MAAM,eAAe,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAExD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,MAAM;IACjD,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAEzB,OAAO,CAA4B;IACnC,IAAI,CAAQ;IACZ,gBAAgB,CAAkB;IAEzC,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAE3D,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpE,CAAC"}
+14
View File
@@ -0,0 +1,14 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import { Thumbnail } from '../misc.js';
export default class AvatarView extends YTNode {
static type: string;
image: Thumbnail[];
image_processor: {
border_image_processor: {
circular: boolean;
};
} | undefined;
avatar_image_size: string;
constructor(data: RawNode);
}
+21
View File
@@ -0,0 +1,21 @@
import { YTNode } from '../helpers.js';
import { Thumbnail } from '../misc.js';
export default class AvatarView extends YTNode {
static type = 'AvatarView';
image;
image_processor;
avatar_image_size;
constructor(data) {
super();
this.image = Thumbnail.fromResponse(data.image);
this.avatar_image_size = data.avatarImageSize;
if (data.image.processor) {
this.image_processor = {
border_image_processor: {
circular: data.image.processor.borderImageProcessor.circular
}
};
}
}
}
//# sourceMappingURL=AvatarView.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"AvatarView.js","sourceRoot":"","sources":["../../../../src/parser/classes/AvatarView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAC5C,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC;IAE3B,KAAK,CAAc;IACnB,eAAe,CAID;IACd,iBAAiB,CAAS;IAE1B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC;QAE9C,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,GAAG;gBACrB,sBAAsB,EAAE;oBACtB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,QAAQ;iBAC7D;aACF,CAAC;QACJ,CAAC;IACH,CAAC"}
+13
View File
@@ -0,0 +1,13 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import Text from './misc/Text.js';
import Button from './Button.js';
import ButtonView from './ButtonView.js';
export default class BackgroundPromo extends YTNode {
static type: string;
body_text?: Text;
cta_button?: Button | ButtonView | null;
icon_type?: string;
title?: Text;
constructor(data: RawNode);
}
+21
View File
@@ -0,0 +1,21 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import Text from './misc/Text.js';
import Button from './Button.js';
import ButtonView from './ButtonView.js';
export default class BackgroundPromo extends YTNode {
static type = 'BackgroundPromo';
body_text;
cta_button;
icon_type;
title;
constructor(data) {
super();
this.body_text = new Text(data.bodyText);
this.cta_button = Parser.parseItem(data.ctaButton, [Button, ButtonView]);
if (Reflect.has(data, 'icon'))
this.icon_type = data.icon.iconType;
this.title = new Text(data.title);
}
}
//# sourceMappingURL=BackgroundPromo.js.map
@@ -0,0 +1 @@
{"version":3,"file":"BackgroundPromo.js","sourceRoot":"","sources":["../../../../src/parser/classes/BackgroundPromo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAEzC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,MAAM;IACjD,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAEzB,SAAS,CAAQ;IACjB,UAAU,CAA8B;IACxC,SAAS,CAAU;IACnB,KAAK,CAAQ;IAEpB,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAE,MAAM,EAAE,UAAU,CAAE,CAAC,CAAC;QAE3E,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEtC,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC"}
+10
View File
@@ -0,0 +1,10 @@
import Thumbnail from './misc/Thumbnail.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export default class BackstageImage extends YTNode {
static type: string;
image: Thumbnail[];
endpoint: NavigationEndpoint;
constructor(data: RawNode);
}
+14
View File
@@ -0,0 +1,14 @@
import Thumbnail from './misc/Thumbnail.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import { YTNode } from '../helpers.js';
export default class BackstageImage extends YTNode {
static type = 'BackstageImage';
image;
endpoint;
constructor(data) {
super();
this.image = Thumbnail.fromResponse(data.image);
this.endpoint = new NavigationEndpoint(data.command);
}
}
//# sourceMappingURL=BackstageImage.js.map
@@ -0,0 +1 @@
{"version":3,"file":"BackstageImage.js","sourceRoot":"","sources":["../../../../src/parser/classes/BackstageImage.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAChD,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAE/B,KAAK,CAAc;IACnB,QAAQ,CAAqB;IAE7B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC"}
+25
View File
@@ -0,0 +1,25 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import Button from './Button.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import CommentActionButtons from './comments/CommentActionButtons.js';
import Menu from './menus/Menu.js';
import Author from './misc/Author.js';
import Text from './misc/Text.js';
export default class BackstagePost extends YTNode {
static type: string;
id: string;
author: Author;
content: Text;
published: Text;
poll_status?: string;
vote_status?: string;
vote_count?: Text;
menu?: Menu | null;
action_buttons?: CommentActionButtons | null;
vote_button?: Button | null;
surface: string;
endpoint?: NavigationEndpoint;
attachment: YTNode | undefined;
constructor(data: RawNode);
}
+60
View File
@@ -0,0 +1,60 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import Button from './Button.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import CommentActionButtons from './comments/CommentActionButtons.js';
import Menu from './menus/Menu.js';
import Author from './misc/Author.js';
import Text from './misc/Text.js';
export default class BackstagePost extends YTNode {
static type = 'BackstagePost';
id;
author;
content;
published;
poll_status;
vote_status;
vote_count;
menu;
action_buttons;
vote_button;
surface;
endpoint;
attachment;
constructor(data) {
super();
this.id = data.postId;
this.author = new Author({
...data.authorText,
navigationEndpoint: data.authorEndpoint
}, null, data.authorThumbnail);
this.content = new Text(data.contentText);
this.published = new Text(data.publishedTimeText);
if (Reflect.has(data, 'pollStatus')) {
this.poll_status = data.pollStatus;
}
if (Reflect.has(data, 'voteStatus')) {
this.vote_status = data.voteStatus;
}
if (Reflect.has(data, 'voteCount')) {
this.vote_count = new Text(data.voteCount);
}
if (Reflect.has(data, 'actionMenu')) {
this.menu = Parser.parseItem(data.actionMenu, Menu);
}
if (Reflect.has(data, 'actionButtons')) {
this.action_buttons = Parser.parseItem(data.actionButtons, CommentActionButtons);
}
if (Reflect.has(data, 'voteButton')) {
this.vote_button = Parser.parseItem(data.voteButton, Button);
}
if (Reflect.has(data, 'navigationEndpoint')) {
this.endpoint = new NavigationEndpoint(data.navigationEndpoint);
}
if (Reflect.has(data, 'backstageAttachment')) {
this.attachment = Parser.parseItem(data.backstageAttachment);
}
this.surface = data.surface;
}
}
//# sourceMappingURL=BackstagePost.js.map
@@ -0,0 +1 @@
{"version":3,"file":"BackstagePost.js","sourceRoot":"","sources":["../../../../src/parser/classes/BackstagePost.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
import { type RawNode } from '../index.js';
import { YTNode } from '../helpers.js';
export default class BackstagePostThread extends YTNode {
static type: string;
post: YTNode;
constructor(data: RawNode);
}
@@ -0,0 +1,11 @@
import { Parser } from '../index.js';
import { YTNode } from '../helpers.js';
export default class BackstagePostThread extends YTNode {
static type = 'BackstagePostThread';
post;
constructor(data) {
super();
this.post = Parser.parseItem(data.post);
}
}
//# sourceMappingURL=BackstagePostThread.js.map
@@ -0,0 +1 @@
{"version":3,"file":"BackstagePostThread.js","sourceRoot":"","sources":["../../../../src/parser/classes/BackstagePostThread.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,MAAM;IACrD,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAC;IAEpC,IAAI,CAAS;IAEb,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC"}
+8
View File
@@ -0,0 +1,8 @@
import { YTNode } from '../helpers.js';
import type { RawNode } from '../types/index.js';
export default class BadgeView extends YTNode {
text: string;
style: string;
accessibility_label: string;
constructor(data: RawNode);
}
+13
View File
@@ -0,0 +1,13 @@
import { YTNode } from '../helpers.js';
export default class BadgeView extends YTNode {
text;
style;
accessibility_label;
constructor(data) {
super();
this.text = data.badgeText;
this.style = data.badgeStyle;
this.accessibility_label = data.accessibilityLabel;
}
}
//# sourceMappingURL=BadgeView.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"BadgeView.js","sourceRoot":"","sources":["../../../../src/parser/classes/BadgeView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IAC3C,IAAI,CAAS;IACb,KAAK,CAAS;IACd,mBAAmB,CAAS;IAE5B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACrD,CAAC;CACF"}
@@ -0,0 +1,13 @@
import { type RawNode } from '../index.js';
import { type ObservedArray, YTNode } from '../helpers.js';
import SubFeedSelector from './SubFeedSelector.js';
import EomSettingsDisclaimer from './EomSettingsDisclaimer.js';
import ToggleButton from './ToggleButton.js';
import CompactLink from './CompactLink.js';
import SearchBox from './SearchBox.js';
import Button from './Button.js';
export default class BrowseFeedActions extends YTNode {
static type: string;
contents: ObservedArray<SubFeedSelector | EomSettingsDisclaimer | ToggleButton | CompactLink | SearchBox | Button>;
constructor(data: RawNode);
}
+17
View File
@@ -0,0 +1,17 @@
import { Parser } from '../index.js';
import { YTNode } from '../helpers.js';
import SubFeedSelector from './SubFeedSelector.js';
import EomSettingsDisclaimer from './EomSettingsDisclaimer.js';
import ToggleButton from './ToggleButton.js';
import CompactLink from './CompactLink.js';
import SearchBox from './SearchBox.js';
import Button from './Button.js';
export default class BrowseFeedActions extends YTNode {
static type = 'BrowseFeedActions';
contents;
constructor(data) {
super();
this.contents = Parser.parseArray(data.contents, [SubFeedSelector, EomSettingsDisclaimer, ToggleButton, CompactLink, SearchBox, Button]);
}
}
//# sourceMappingURL=BrowseFeedActions.js.map
@@ -0,0 +1 @@
{"version":3,"file":"BrowseFeedActions.js","sourceRoot":"","sources":["../../../../src/parser/classes/BrowseFeedActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,EAAsB,MAAM,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,qBAAqB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,MAAM;IACnD,MAAM,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAE3B,QAAQ,CAA2G;IAE1H,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAE,CAAC,CAAC;IAC7I,CAAC"}
@@ -0,0 +1,10 @@
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export default class BrowserMediaSession extends YTNode {
static type: string;
album: Text;
thumbnails: Thumbnail[];
constructor(data: RawNode);
}
@@ -0,0 +1,14 @@
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
import { YTNode } from '../helpers.js';
export default class BrowserMediaSession extends YTNode {
static type = 'BrowserMediaSession';
album;
thumbnails;
constructor(data) {
super();
this.album = new Text(data.album);
this.thumbnails = Thumbnail.fromResponse(data.thumbnailDetails);
}
}
//# sourceMappingURL=BrowserMediaSession.js.map
@@ -0,0 +1 @@
{"version":3,"file":"BrowserMediaSession.js","sourceRoot":"","sources":["../../../../src/parser/classes/BrowserMediaSession.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,MAAM;IACrD,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAC;IAEpC,KAAK,CAAO;IACZ,UAAU,CAAc;IAExB,YAAa,IAAa;QACxB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAClE,CAAC"}
+18
View File
@@ -0,0 +1,18 @@
import NavigationEndpoint from './NavigationEndpoint.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
import { type AccessibilitySupportedDatas } from './misc/AccessibilityData.js';
export default class Button extends YTNode {
static type: string;
text?: string;
label?: string;
tooltip?: string;
style?: string;
size?: string;
icon_type?: string;
is_disabled?: boolean;
target_id?: string;
endpoint: NavigationEndpoint;
accessibility?: AccessibilitySupportedDatas;
constructor(data: RawNode);
}
+45
View File
@@ -0,0 +1,45 @@
import Text from './misc/Text.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import { YTNode } from '../helpers.js';
import AccessibilityData from './misc/AccessibilityData.js';
export default class Button extends YTNode {
static type = 'Button';
text;
label;
tooltip;
style;
size;
icon_type;
is_disabled;
target_id;
endpoint;
accessibility;
constructor(data) {
super();
if (Reflect.has(data, 'text'))
this.text = new Text(data.text).toString();
if (Reflect.has(data, 'accessibility') && Reflect.has(data.accessibility, 'label')) {
this.label = data.accessibility.label;
}
if ('accessibilityData' in data
&& 'accessibilityData' in data.accessibilityData) {
this.accessibility = {
accessibility_data: new AccessibilityData(data.accessibilityData.accessibilityData)
};
}
if (Reflect.has(data, 'tooltip'))
this.tooltip = data.tooltip;
if (Reflect.has(data, 'style'))
this.style = data.style;
if (Reflect.has(data, 'size'))
this.size = data.size;
if (Reflect.has(data, 'icon') && Reflect.has(data.icon, 'iconType'))
this.icon_type = data.icon.iconType;
if (Reflect.has(data, 'isDisabled'))
this.is_disabled = data.isDisabled;
if (Reflect.has(data, 'targetId'))
this.target_id = data.targetId;
this.endpoint = new NavigationEndpoint(data.navigationEndpoint || data.serviceEndpoint || data.command);
}
}
//# sourceMappingURL=Button.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/parser/classes/Button.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,iBAAuD,MAAM,6BAA6B,CAAC;AAElG,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,MAAM;IACxC,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC;IAEhB,IAAI,CAAU;IACd,KAAK,CAAU;IACf,OAAO,CAAU;IACjB,KAAK,CAAU;IACf,IAAI,CAAU;IACd,SAAS,CAAU;IACnB,WAAW,CAAW;IACtB,SAAS,CAAU;IACnB,QAAQ,CAAqB;IAC7B,aAAa,CAA+B;IAEnD,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QAE7C,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,CAAC;YACnF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QACxC,CAAC;QAED,IAAI,mBAAmB,IAAI,IAAI;eAC1B,mBAAmB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACnD,IAAI,CAAC,aAAa,GAAG;gBACnB,kBAAkB,EAAE,IAAI,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC;aACpF,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE9B,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE1B,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAExB,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;YACjE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEtC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC;YACjC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;QAErC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC;YAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEjC,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1G,CAAC"}
+10
View File
@@ -0,0 +1,10 @@
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
import RendererContext from './misc/RendererContext.js';
export default class ButtonCardView extends YTNode {
static type: string;
title: string;
icon_name: string;
renderer_context: RendererContext;
constructor(data: RawNode);
}
+15
View File
@@ -0,0 +1,15 @@
import { YTNode } from '../helpers.js';
import RendererContext from './misc/RendererContext.js';
export default class ButtonCardView extends YTNode {
static type = 'ButtonCardView';
title;
icon_name;
renderer_context;
constructor(data) {
super();
this.title = data.title;
this.icon_name = data.image.sources[0].clientResource.imageName;
this.renderer_context = new RendererContext(data.rendererContext);
}
}
//# sourceMappingURL=ButtonCardView.js.map
@@ -0,0 +1 @@
{"version":3,"file":"ButtonCardView.js","sourceRoot":"","sources":["../../../../src/parser/classes/ButtonCardView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAExD,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAChD,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAExB,KAAK,CAAS;IACd,SAAS,CAAS;IAClB,gBAAgB,CAAkB;IAEzC,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC;QAChE,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpE,CAAC"}
+36
View File
@@ -0,0 +1,36 @@
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import Thumbnail from './misc/Thumbnail.js';
export default class ButtonView extends YTNode {
static type: string;
secondary_icon_image?: Thumbnail[];
icon_name?: string;
enable_icon_button?: boolean;
tooltip?: string;
icon_image_flip_for_rtl?: boolean;
button_size?: 'BUTTON_VIEW_MODEL_SIZE_UNKNOWN' | 'BUTTON_VIEW_MODEL_SIZE_DEFAULT' | 'BUTTON_VIEW_MODEL_SIZE_COMPACT' | 'BUTTON_VIEW_MODEL_SIZE_XSMALL' | 'BUTTON_VIEW_MODEL_SIZE_LARGE' | 'BUTTON_VIEW_MODEL_SIZE_XLARGE' | 'BUTTON_VIEW_MODEL_SIZE_XXLARGE';
icon_position?: 'BUTTON_VIEW_MODEL_ICON_POSITION_UNKNOWN' | 'BUTTON_VIEW_MODEL_ICON_POSITION_TRAILING' | 'BUTTON_VIEW_MODEL_ICON_POSITION_LEADING' | 'BUTTON_VIEW_MODEL_ICON_POSITION_ABOVE' | 'BUTTON_VIEW_MODEL_ICON_POSITION_LEADING_TRAILING';
is_full_width?: boolean;
state?: 'BUTTON_VIEW_MODEL_STATE_UNKNOWN' | 'BUTTON_VIEW_MODEL_STATE_ACTIVE' | 'BUTTON_VIEW_MODEL_STATE_INACTIVE' | 'BUTTON_VIEW_MODEL_STATE_DISABLED';
on_disabled_tap?: NavigationEndpoint;
custom_border_color?: number;
on_tap?: NavigationEndpoint;
style?: 'BUTTON_VIEW_MODEL_STYLE_UNKNOWN' | 'BUTTON_VIEW_MODEL_STYLE_CTA' | 'BUTTON_VIEW_MODEL_STYLE_BRAND' | 'BUTTON_VIEW_MODEL_STYLE_ADS_CTA' | 'BUTTON_VIEW_MODEL_STYLE_OVERLAY' | 'BUTTON_VIEW_MODEL_STYLE_CTA_THEMED' | 'BUTTON_VIEW_MODEL_STYLE_BLACK_CTA' | 'BUTTON_VIEW_MODEL_STYLE_CUSTOM' | 'BUTTON_VIEW_MODEL_STYLE_MONO' | 'BUTTON_VIEW_MODEL_STYLE_OVERLAY_DARK' | 'BUTTON_VIEW_MODEL_STYLE_CTA_OVERLAY' | 'BUTTON_VIEW_MODEL_STYLE_BRAND_AI' | 'BUTTON_VIEW_MODEL_STYLE_YT_GRADIENT' | 'BUTTON_VIEW_MODEL_STYLE_BRAND_GRADIENT';
icon_image?: object;
custom_dark_theme_border_color?: number;
title?: string;
target_id?: string;
enable_full_width_margins?: boolean;
custom_font_color?: number;
button_type?: 'BUTTON_VIEW_MODEL_TYPE_UNKNOWN' | 'BUTTON_VIEW_MODEL_TYPE_FILLED' | 'BUTTON_VIEW_MODEL_TYPE_OUTLINE' | 'BUTTON_VIEW_MODEL_TYPE_TEXT' | 'BUTTON_VIEW_MODEL_TYPE_TONAL';
enabled?: boolean;
accessibility_id?: string;
custom_background_color?: number;
on_long_press?: NavigationEndpoint;
title_formatted?: object;
on_visible?: object;
icon_trailing?: boolean;
accessibility_text?: string;
constructor(data: RawNode);
}
+94
View File
@@ -0,0 +1,94 @@
import { YTNode } from '../helpers.js';
import NavigationEndpoint from './NavigationEndpoint.js';
import Thumbnail from './misc/Thumbnail.js';
export default class ButtonView extends YTNode {
static type = 'ButtonView';
secondary_icon_image;
icon_name;
enable_icon_button;
tooltip;
icon_image_flip_for_rtl;
button_size;
icon_position;
is_full_width;
state;
on_disabled_tap;
custom_border_color;
on_tap;
style;
icon_image;
custom_dark_theme_border_color;
title;
target_id;
enable_full_width_margins;
custom_font_color;
button_type;
enabled;
accessibility_id;
custom_background_color;
on_long_press;
title_formatted;
on_visible;
icon_trailing;
accessibility_text;
constructor(data) {
super();
if ('secondaryIconImage' in data)
this.secondary_icon_image = Thumbnail.fromResponse(data.secondaryIconImage);
if ('iconName' in data)
this.icon_name = data.iconName;
if ('enableIconButton' in data)
this.enable_icon_button = data.enableIconButton;
if ('tooltip' in data)
this.tooltip = data.tooltip;
if ('iconImageFlipForRtl' in data)
this.icon_image_flip_for_rtl = data.iconImageFlipForRtl;
if ('buttonSize' in data)
this.button_size = data.buttonSize;
if ('iconPosition' in data)
this.icon_position = data.iconPosition;
if ('isFullWidth' in data)
this.is_full_width = data.isFullWidth;
if ('state' in data)
this.state = data.state;
if ('onDisabledTap' in data)
this.on_disabled_tap = new NavigationEndpoint(data.onDisabledTap);
if ('customBorderColor' in data)
this.custom_border_color = data.customBorderColor;
if ('onTap' in data)
this.on_tap = new NavigationEndpoint(data.onTap);
if ('style' in data)
this.style = data.style;
if ('iconImage' in data)
this.icon_image = data.iconImage;
if ('customDarkThemeBorderColor' in data)
this.custom_dark_theme_border_color = data.customDarkThemeBorderColor;
if ('title' in data)
this.title = data.title;
if ('targetId' in data)
this.target_id = data.targetId;
if ('enableFullWidthMargins' in data)
this.enable_full_width_margins = data.enableFullWidthMargins;
if ('customFontColor' in data)
this.custom_font_color = data.customFontColor;
if ('type' in data)
this.button_type = data.type;
if ('enabled' in data)
this.enabled = data.enabled;
if ('accessibilityId' in data)
this.accessibility_id = data.accessibilityId;
if ('customBackgroundColor' in data)
this.custom_background_color = data.customBackgroundColor;
if ('onLongPress' in data)
this.on_long_press = new NavigationEndpoint(data.onLongPress);
if ('titleFormatted' in data)
this.title_formatted = data.titleFormatted;
if ('onVisible' in data)
this.on_visible = data.onVisible;
if ('iconTrailing' in data)
this.icon_trailing = data.iconTrailing;
if ('accessibilityText' in data)
this.accessibility_text = data.accessibilityText;
}
}
//# sourceMappingURL=ButtonView.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"ButtonView.js","sourceRoot":"","sources":["../../../../src/parser/classes/ButtonView.ts"],"names":[],"mappings":"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"}
+26
View File
@@ -0,0 +1,26 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import Button from './Button.js';
import ChannelHeaderLinks from './ChannelHeaderLinks.js';
import ChannelHeaderLinksView from './ChannelHeaderLinksView.js';
import ChannelTagline from './ChannelTagline.js';
import SubscribeButton from './SubscribeButton.js';
import Author from './misc/Author.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
export default class C4TabbedHeader extends YTNode {
static type: string;
author: Author;
banner?: Thumbnail[];
tv_banner?: Thumbnail[];
mobile_banner?: Thumbnail[];
subscribers?: Text;
videos_count?: Text;
sponsor_button?: Button | null;
subscribe_button?: SubscribeButton | Button | null;
header_links?: ChannelHeaderLinks | ChannelHeaderLinksView | null;
channel_handle?: Text;
channel_id?: string;
tagline?: ChannelTagline | null;
constructor(data: RawNode);
}
+66
View File
@@ -0,0 +1,66 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import Button from './Button.js';
import ChannelHeaderLinks from './ChannelHeaderLinks.js';
import ChannelHeaderLinksView from './ChannelHeaderLinksView.js';
import ChannelTagline from './ChannelTagline.js';
import SubscribeButton from './SubscribeButton.js';
import Author from './misc/Author.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
export default class C4TabbedHeader extends YTNode {
static type = 'C4TabbedHeader';
author;
banner;
tv_banner;
mobile_banner;
subscribers;
videos_count;
sponsor_button;
subscribe_button;
header_links;
channel_handle;
channel_id;
tagline;
constructor(data) {
super();
this.author = new Author({
simpleText: data.title,
navigationEndpoint: data.navigationEndpoint
}, data.badges, data.avatar);
if (Reflect.has(data, 'banner')) {
this.banner = Thumbnail.fromResponse(data.banner);
}
if (Reflect.has(data, 'tv_banner')) {
this.tv_banner = Thumbnail.fromResponse(data.tvBanner);
}
if (Reflect.has(data, 'mobile_banner')) {
this.mobile_banner = Thumbnail.fromResponse(data.mobileBanner);
}
if (Reflect.has(data, 'subscriberCountText')) {
this.subscribers = new Text(data.subscriberCountText);
}
if (Reflect.has(data, 'videosCountText')) {
this.videos_count = new Text(data.videosCountText);
}
if (Reflect.has(data, 'sponsorButton')) {
this.sponsor_button = Parser.parseItem(data.sponsorButton, Button);
}
if (Reflect.has(data, 'subscribeButton')) {
this.subscribe_button = Parser.parseItem(data.subscribeButton, [SubscribeButton, Button]);
}
if (Reflect.has(data, 'headerLinks')) {
this.header_links = Parser.parseItem(data.headerLinks, [ChannelHeaderLinks, ChannelHeaderLinksView]);
}
if (Reflect.has(data, 'channelHandleText')) {
this.channel_handle = new Text(data.channelHandleText);
}
if (Reflect.has(data, 'channelId')) {
this.channel_id = data.channelId;
}
if (Reflect.has(data, 'tagline')) {
this.tagline = Parser.parseItem(data.tagline, ChannelTagline);
}
}
}
//# sourceMappingURL=C4TabbedHeader.js.map
@@ -0,0 +1 @@
{"version":3,"file":"C4TabbedHeader.js","sourceRoot":"","sources":["../../../../src/parser/classes/C4TabbedHeader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
import type { RawNode } from '../index.js';
export default class CallToActionButton extends YTNode {
static type: string;
label: Text;
icon_type: string;
style: string;
constructor(data: RawNode);
}
+15
View File
@@ -0,0 +1,15 @@
import Text from './misc/Text.js';
import { YTNode } from '../helpers.js';
export default class CallToActionButton extends YTNode {
static type = 'CallToActionButton';
label;
icon_type;
style;
constructor(data) {
super();
this.label = new Text(data.label);
this.icon_type = data.icon.iconType;
this.style = data.style;
}
}
//# sourceMappingURL=CallToActionButton.js.map
@@ -0,0 +1 @@
{"version":3,"file":"CallToActionButton.js","sourceRoot":"","sources":["../../../../src/parser/classes/CallToActionButton.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,MAAM;IACpD,MAAM,CAAC,IAAI,GAAG,oBAAoB,CAAC;IAEnC,KAAK,CAAO;IACZ,SAAS,CAAS;IAClB,KAAK,CAAS;IAEd,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC"}
+16
View File
@@ -0,0 +1,16 @@
import { type RawNode } from '../index.js';
import { YTNode } from '../helpers.js';
export default class Card extends YTNode {
static type: string;
teaser: YTNode;
content: YTNode;
card_id?: string;
feature?: string;
cue_ranges: {
start_card_active_ms: string;
end_card_active_ms: string;
teaser_duration_ms: string;
icon_after_teaser_ms: string;
}[];
constructor(data: RawNode);
}
+28
View File
@@ -0,0 +1,28 @@
import { Parser } from '../index.js';
import { YTNode } from '../helpers.js';
export default class Card extends YTNode {
static type = 'Card';
teaser;
content;
card_id;
feature;
cue_ranges;
constructor(data) {
super();
this.teaser = Parser.parseItem(data.teaser);
this.content = Parser.parseItem(data.content);
if (Reflect.has(data, 'cardId')) {
this.card_id = data.cardId;
}
if (Reflect.has(data, 'feature')) {
this.feature = data.feature;
}
this.cue_ranges = data.cueRanges.map((cr) => ({
start_card_active_ms: cr.startCardActiveMs,
end_card_active_ms: cr.endCardActiveMs,
teaser_duration_ms: cr.teaserDurationMs,
icon_after_teaser_ms: cr.iconAfterTeaserMs
}));
}
}
//# sourceMappingURL=Card.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../../src/parser/classes/Card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,MAAM;IACtC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC;IAErB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,OAAO,CAAU;IACjB,OAAO,CAAU;IAEjB,UAAU,CAKN;IAEJ,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE9C,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;YACjD,oBAAoB,EAAE,EAAE,CAAC,iBAAiB;YAC1C,kBAAkB,EAAE,EAAE,CAAC,eAAe;YACtC,kBAAkB,EAAE,EAAE,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,EAAE,CAAC,iBAAiB;SAC3C,CAAC,CAAC,CAAC;IACN,CAAC"}
+10
View File
@@ -0,0 +1,10 @@
import { YTNode, type ObservedArray } from '../helpers.js';
import { type RawNode } from '../index.js';
import Text from './misc/Text.js';
export default class CardCollection extends YTNode {
static type: string;
cards: ObservedArray<YTNode>;
header: Text;
allow_teaser_dismiss: boolean;
constructor(data: RawNode);
}
+16
View File
@@ -0,0 +1,16 @@
import { YTNode } from '../helpers.js';
import { Parser } from '../index.js';
import Text from './misc/Text.js';
export default class CardCollection extends YTNode {
static type = 'CardCollection';
cards;
header;
allow_teaser_dismiss;
constructor(data) {
super();
this.cards = Parser.parseArray(data.cards);
this.header = new Text(data.headerText);
this.allow_teaser_dismiss = data.allowTeaserDismiss;
}
}
//# sourceMappingURL=CardCollection.js.map
@@ -0,0 +1 @@
{"version":3,"file":"CardCollection.js","sourceRoot":"","sources":["../../../../src/parser/classes/CardCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAsB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAChD,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAE/B,KAAK,CAAwB;IAC7B,MAAM,CAAO;IACb,oBAAoB,CAAU;IAE9B,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACtD,CAAC"}
+7
View File
@@ -0,0 +1,7 @@
import { type RawNode } from '../index.js';
import { type ObservedArray, YTNode } from '../helpers.js';
export default class CarouselHeader extends YTNode {
static type: string;
contents: ObservedArray<YTNode>;
constructor(data: RawNode);
}
+11
View File
@@ -0,0 +1,11 @@
import { Parser } from '../index.js';
import { YTNode } from '../helpers.js';
export default class CarouselHeader extends YTNode {
static type = 'CarouselHeader';
contents;
constructor(data) {
super();
this.contents = Parser.parseArray(data.contents);
}
}
//# sourceMappingURL=CarouselHeader.js.map
@@ -0,0 +1 @@
{"version":3,"file":"CarouselHeader.js","sourceRoot":"","sources":["../../../../src/parser/classes/CarouselHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,EAAsB,MAAM,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAChD,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAE/B,QAAQ,CAAwB;IAEhC,YAAY,IAAa;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC"}
+13
View File
@@ -0,0 +1,13 @@
import { type RawNode } from '../index.js';
import { type ObservedArray, YTNode } from '../helpers.js';
import Thumbnail from './misc/Thumbnail.js';
export default class CarouselItem extends YTNode {
static type: string;
items: ObservedArray<YTNode>;
background_color: string;
layout_style: string;
pagination_thumbnails: Thumbnail[];
paginator_alignment: string;
constructor(data: RawNode);
get contents(): ObservedArray<YTNode>;
}
+24
View File
@@ -0,0 +1,24 @@
import { Parser } from '../index.js';
import { YTNode } from '../helpers.js';
import Thumbnail from './misc/Thumbnail.js';
export default class CarouselItem extends YTNode {
static type = 'CarouselItem';
items;
background_color;
layout_style;
pagination_thumbnails;
paginator_alignment;
constructor(data) {
super();
this.items = Parser.parseArray(data.carouselItems);
this.background_color = data.backgroundColor;
this.layout_style = data.layoutStyle;
this.pagination_thumbnails = Thumbnail.fromResponse(data.paginationThumbnails);
this.paginator_alignment = data.paginatorAlignment;
}
// XXX: For consistency.
get contents() {
return this.items;
}
}
//# sourceMappingURL=CarouselItem.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"CarouselItem.js","sourceRoot":"","sources":["../../../../src/parser/classes/CarouselItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AACnD,OAAO,EAAsB,MAAM,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,MAAM;IAC9C,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC;IAE7B,KAAK,CAAwB;IAC7B,gBAAgB,CAAS;IACzB,YAAY,CAAS;IACrB,qBAAqB,CAAc;IACnC,mBAAmB,CAAS;IAE5B,YAAa,IAAa;QACxB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC/E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACrD,CAAC;IAED,wBAAwB;IACxB,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC"}
@@ -0,0 +1,9 @@
import { YTNode } from '../helpers.js';
import { type RawNode } from '../index.js';
import TextCarouselItemView from './TextCarouselItemView.js';
export default class CarouselItemView extends YTNode {
static type: string;
item_type: string;
carousel_item: TextCarouselItemView | null;
constructor(data: RawNode);
}

Some files were not shown because too many files have changed in this diff Show More