From 49d1432b5a5bdd1196dd782110e6db519dbcb63c Mon Sep 17 00:00:00 2001 From: LuanRT Date: Wed, 30 Nov 2022 19:02:49 -0300 Subject: [PATCH] chore: fix a few inconsistencies --- src/parser/classes/CarouselHeader.ts | 6 ++++-- src/parser/classes/CarouselItem.ts | 6 ++++-- src/parser/classes/CompactStation.ts | 6 ++++-- src/parser/classes/DefaultPromoPanel.ts | 6 ++++-- src/parser/classes/FeedFilterChipBar.ts | 6 ++++-- src/parser/classes/GameCard.ts | 6 ++++-- src/parser/classes/GameDetails.ts | 6 ++++-- src/parser/classes/HighlightsCarousel.ts | 18 ++++++++++-------- src/parser/classes/InteractiveTabbedHeader.ts | 6 ++++-- src/parser/classes/PlaylistCustomThumbnail.ts | 6 ++++-- src/parser/classes/RecognitionShelf.ts | 6 ++++-- src/parser/classes/RichListHeader.ts | 6 ++++-- .../classes/ThumbnailLandscapePortrait.ts | 6 ++++-- src/parser/classes/TopicChannelDetails.ts | 6 ++++-- src/parser/classes/UniversalWatchCard.ts | 6 ++++-- src/parser/classes/VerticalWatchCardList.ts | 6 ++++-- src/parser/classes/Video.ts | 6 ++++-- src/parser/classes/VideoCard.ts | 6 ++++-- src/parser/classes/WatchCardHeroVideo.ts | 6 ++++-- src/parser/classes/WatchCardRichHeader.ts | 6 ++++-- src/parser/classes/WatchCardSectionSequence.ts | 6 ++++-- src/utils/Constants.ts | 2 +- 22 files changed, 91 insertions(+), 49 deletions(-) diff --git a/src/parser/classes/CarouselHeader.ts b/src/parser/classes/CarouselHeader.ts index e73362e9..863edc0e 100644 --- a/src/parser/classes/CarouselHeader.ts +++ b/src/parser/classes/CarouselHeader.ts @@ -1,7 +1,7 @@ import Parser from '..'; import { YTNode } from '../helpers'; -export default class CarouselHeader extends YTNode { +class CarouselHeader extends YTNode { static type = 'CarouselHeader'; contents: YTNode[]; @@ -10,4 +10,6 @@ export default class CarouselHeader extends YTNode { super(); this.contents = Parser.parseArray(data.contents); } -} \ No newline at end of file +} + +export default CarouselHeader; \ No newline at end of file diff --git a/src/parser/classes/CarouselItem.ts b/src/parser/classes/CarouselItem.ts index 417cff8f..7a4dbe9e 100644 --- a/src/parser/classes/CarouselItem.ts +++ b/src/parser/classes/CarouselItem.ts @@ -3,7 +3,7 @@ import { YTNode } from '../helpers'; import Thumbnail from './misc/Thumbnail'; -export default class CarouselItem extends YTNode { +class CarouselItem extends YTNode { static type = 'CarouselItem'; items: YTNode[]; @@ -20,4 +20,6 @@ export default class CarouselItem extends YTNode { this.pagination_thumbnails = Thumbnail.fromResponse(data.paginationThumbnails); this.paginator_alignment = data.paginatorAlignment; } -} \ No newline at end of file +} + +export default CarouselItem; \ No newline at end of file diff --git a/src/parser/classes/CompactStation.ts b/src/parser/classes/CompactStation.ts index 20afbe44..15f14983 100644 --- a/src/parser/classes/CompactStation.ts +++ b/src/parser/classes/CompactStation.ts @@ -4,7 +4,7 @@ import Text from './misc/Text'; import Thumbnail from './misc/Thumbnail'; import NavigationEndpoint from './NavigationEndpoint'; -export default class CompactStation extends YTNode { +class CompactStation extends YTNode { static type = 'CompactStation'; title: Text; @@ -22,4 +22,6 @@ export default class CompactStation extends YTNode { this.endpoint = new NavigationEndpoint(data.navigationEndpoint); this.thumbnail = Thumbnail.fromResponse(data.thumbnail); } -} \ No newline at end of file +} + +export default CompactStation; \ No newline at end of file diff --git a/src/parser/classes/DefaultPromoPanel.ts b/src/parser/classes/DefaultPromoPanel.ts index 8e513dc4..12ae2b85 100644 --- a/src/parser/classes/DefaultPromoPanel.ts +++ b/src/parser/classes/DefaultPromoPanel.ts @@ -4,7 +4,7 @@ import { YTNode } from '../helpers'; import Text from './misc/Text'; import NavigationEndpoint from './NavigationEndpoint'; -export default class DefaultPromoPanel extends YTNode { +class DefaultPromoPanel extends YTNode { static type = 'DefaultPromoPanel'; title: Text; @@ -33,4 +33,6 @@ export default class DefaultPromoPanel extends YTNode { this.metadata_order = data.metadataOrder; this.panel_layout = data.panelLayout; } -} \ No newline at end of file +} + +export default DefaultPromoPanel; \ No newline at end of file diff --git a/src/parser/classes/FeedFilterChipBar.ts b/src/parser/classes/FeedFilterChipBar.ts index 2f315c04..cd324087 100644 --- a/src/parser/classes/FeedFilterChipBar.ts +++ b/src/parser/classes/FeedFilterChipBar.ts @@ -2,7 +2,7 @@ import Parser from '../index'; import { YTNode } from '../helpers'; import ChipCloudChip from './ChipCloudChip'; -export default class FeedFilterChipBar extends YTNode { +class FeedFilterChipBar extends YTNode { static type = 'FeedFilterChipBar'; contents; @@ -11,4 +11,6 @@ export default class FeedFilterChipBar extends YTNode { super(); this.contents = Parser.parseArray(data.contents, ChipCloudChip); } -} \ No newline at end of file +} + +export default FeedFilterChipBar; \ No newline at end of file diff --git a/src/parser/classes/GameCard.ts b/src/parser/classes/GameCard.ts index 47b7778a..dd7c6dc9 100644 --- a/src/parser/classes/GameCard.ts +++ b/src/parser/classes/GameCard.ts @@ -1,7 +1,7 @@ import Parser from '..'; import { YTNode } from '../helpers'; -export default class GameCard extends YTNode { +class GameCard extends YTNode { static type = 'GameCard'; game; @@ -10,4 +10,6 @@ export default class GameCard extends YTNode { super(); this.game = Parser.parseItem(data.game); } -} \ No newline at end of file +} + +export default GameCard; \ No newline at end of file diff --git a/src/parser/classes/GameDetails.ts b/src/parser/classes/GameDetails.ts index 4ee4fe96..2345a6b8 100644 --- a/src/parser/classes/GameDetails.ts +++ b/src/parser/classes/GameDetails.ts @@ -4,7 +4,7 @@ import Text from './misc/Text'; import Thumbnail from './misc/Thumbnail'; import NavigationEndpoint from './NavigationEndpoint'; -export default class GameDetails extends YTNode { +class GameDetails extends YTNode { static type = 'GameDetails'; title: Text; @@ -21,4 +21,6 @@ export default class GameDetails extends YTNode { this.endpoint = new NavigationEndpoint(data.endpoint); this.is_official_box_art = data.isOfficialBoxArt; } -} \ No newline at end of file +} + +export default GameDetails; \ No newline at end of file diff --git a/src/parser/classes/HighlightsCarousel.ts b/src/parser/classes/HighlightsCarousel.ts index 067f5106..1b816224 100644 --- a/src/parser/classes/HighlightsCarousel.ts +++ b/src/parser/classes/HighlightsCarousel.ts @@ -4,7 +4,7 @@ import { YTNode } from '../helpers'; class Panel { static type = 'Panel'; - thumbnail: { + thumbnail?: { image: { url: string; width: number; @@ -43,13 +43,15 @@ class Panel { }; constructor(data: any) { - this.thumbnail = { - image: data.thumbnail.image.sources, - endpoint: new NavigationEndpoint(data.thumbnail.onTap), - on_long_press_endpoint: new NavigationEndpoint(data.thumbnail.onLongPress), - content_mode: data.thumbnail.contentMode, - crop_options: data.thumbnail.cropOptions - }; + if (data.thumbnail) { + this.thumbnail = { + image: data.thumbnail.image.sources, + endpoint: new NavigationEndpoint(data.thumbnail.onTap), + on_long_press_endpoint: new NavigationEndpoint(data.thumbnail.onLongPress), + content_mode: data.thumbnail.contentMode, + crop_options: data.thumbnail.cropOptions + }; + } this.background_image = { image: data.backgroundImage.image.sources, diff --git a/src/parser/classes/InteractiveTabbedHeader.ts b/src/parser/classes/InteractiveTabbedHeader.ts index d7e6d11d..c7a6fe90 100644 --- a/src/parser/classes/InteractiveTabbedHeader.ts +++ b/src/parser/classes/InteractiveTabbedHeader.ts @@ -7,7 +7,7 @@ import SubscribeButton from './SubscribeButton'; import MetadataBadge from './MetadataBadge'; import Button from './Button'; -export default class InteractiveTabbedHeader extends YTNode { +class InteractiveTabbedHeader extends YTNode { static type = 'InteractiveTabbedHeader'; header_type: string; @@ -33,4 +33,6 @@ export default class InteractiveTabbedHeader extends YTNode { this.buttons = Parser.parseArray(data.buttons, [ SubscribeButton, Button ]); this.auto_generated = new Text(data.autoGenerated); } -} \ No newline at end of file +} + +export default InteractiveTabbedHeader; \ No newline at end of file diff --git a/src/parser/classes/PlaylistCustomThumbnail.ts b/src/parser/classes/PlaylistCustomThumbnail.ts index 6b3baee8..f22270d0 100644 --- a/src/parser/classes/PlaylistCustomThumbnail.ts +++ b/src/parser/classes/PlaylistCustomThumbnail.ts @@ -1,7 +1,7 @@ import { YTNode } from '../helpers'; import Thumbnail from './misc/Thumbnail'; -export default class PlaylistCustomThumbnail extends YTNode { +class PlaylistCustomThumbnail extends YTNode { static type = 'PlaylistCustomThumbnail'; thumbnail: Thumbnail[]; @@ -10,4 +10,6 @@ export default class PlaylistCustomThumbnail extends YTNode { super(); this.thumbnail = Thumbnail.fromResponse(data.thumbnail); } -} \ No newline at end of file +} + +export default PlaylistCustomThumbnail; \ No newline at end of file diff --git a/src/parser/classes/RecognitionShelf.ts b/src/parser/classes/RecognitionShelf.ts index 97539dfa..473a30fe 100644 --- a/src/parser/classes/RecognitionShelf.ts +++ b/src/parser/classes/RecognitionShelf.ts @@ -5,7 +5,7 @@ import Button from './Button'; import Text from './misc/Text'; import Thumbnail from './misc/Thumbnail'; -export default class RecognitionShelf extends YTNode { +class RecognitionShelf extends YTNode { static type = 'RecognitionShelf'; title: Text; @@ -23,4 +23,6 @@ export default class RecognitionShelf extends YTNode { this.button = Parser.parseItem