refactor(Parser)!: general refactoring of parsers (#344)

* refactor: move common info into MediaInfo

* refactor: better inference on Memo

* refactor: improved typesafety in parser methods

* refactor: remove PlaylistAuthor in favor of Author

* refactor: cleanup live chat parsers

- Replace non standard author type with Author class
- Remove redundant code

* fix: new errors due to changes

* fix: pass actions to FormatUtils#toDash

* refactor!: merge NavigatableText and Text into single class
This commit is contained in:
Daniel Wykerd
2023-03-15 23:25:12 +02:00
committed by GitHub
parent 3d3436472f
commit b13bf6e992
78 changed files with 400 additions and 737 deletions

View File

@@ -1,6 +1,6 @@
import { YTNode } from '../helpers.js';
import Parser, { RawNode } from '../index.js';
import PlaylistAuthor from './misc/PlaylistAuthor.js';
import Author from './misc/Author.js';
import Text from './misc/Text.js';
import Thumbnail from './misc/Thumbnail.js';
import NavigationEndpoint from './NavigationEndpoint.js';
@@ -10,7 +10,7 @@ class GridPlaylist extends YTNode {
id: string;
title: Text;
author?: PlaylistAuthor;
author?: Author;
badges;
endpoint: NavigationEndpoint;
view_playlist: Text;
@@ -26,7 +26,7 @@ class GridPlaylist extends YTNode {
this.title = new Text(data.title);
if (data.shortBylineText) {
this.author = new PlaylistAuthor(data.shortBylineText, data.ownerBadges);
this.author = new Author(data.shortBylineText, data.ownerBadges);
}
this.badges = Parser.parseArray(data.ownerBadges);