First commit

This commit is contained in:
2026-03-15 22:15:34 -05:00
commit 0858a8a751
79 changed files with 6010 additions and 0 deletions
+67
View File
@@ -0,0 +1,67 @@
using System.Text.Json.Serialization;
namespace Tesses.YouTubeDownloader2025Companion;
public class AlbumSongQuery {
[JsonPropertyName("artist-credit")]
public List<AlbumSongQueryMedia.AlbumSongQueryMediaTrack.AlbumSongQueryMediaTrackRecording.AlbumSongQueryMediaTrackRecordingArtists> Artists {get;set;}=new List<AlbumSongQueryMedia.AlbumSongQueryMediaTrack.AlbumSongQueryMediaTrackRecording.AlbumSongQueryMediaTrackRecordingArtists>();
[JsonPropertyName("title")]
public string Title {get;set;}="";
[JsonPropertyName("date")]
public string Date {get;set;}="";
[JsonPropertyName("media")]
public List<AlbumSongQueryMedia> Media {get;set;}=new List<AlbumSongQueryMedia>();
public class AlbumSongQueryMedia {
[JsonPropertyName("tracks")]
public List<AlbumSongQueryMediaTrack> Tracks {get;set;}=new List<AlbumSongQueryMediaTrack>();
public class AlbumSongQueryMediaTrack
{
[JsonPropertyName("position")]
public int Track {get;set;} = 1;
[JsonPropertyName("recording")]
public AlbumSongQueryMediaTrackRecording Recording {get;set;}=new AlbumSongQueryMediaTrackRecording();
[JsonPropertyName("length")]
public long Length {get;set;} = 0;
public class AlbumSongQueryMediaTrackRecording
{
[JsonPropertyName("title")]
public string Name {get;set;}="";
[JsonPropertyName("id")]
public Guid Id {get;set;}
[JsonPropertyName("artist-credit")]
public List<AlbumSongQueryMediaTrackRecordingArtists> ContributingArtists {get;set;}=new List<AlbumSongQueryMediaTrackRecordingArtists>();
public class AlbumSongQueryMediaTrackRecordingArtists
{
[JsonPropertyName("joinphrase")]
public string JoinPhrase {get;set;}="";
[JsonPropertyName("artist")]
public AlbumSongQueryMediaTrackRecordingArtistsArtist Artist {get;set;}=new AlbumSongQueryMediaTrackRecordingArtistsArtist();
public class AlbumSongQueryMediaTrackRecordingArtistsArtist
{
[JsonPropertyName("name")]
public string Name {get;set;}="";
[JsonPropertyName("id")]
public Guid Id {get;set;}
[JsonPropertyName("disambiguation")]
public string Disambiguation {get;set;}="";
}
}
}
}
}
}