413 lines
15 KiB
C#
413 lines
15 KiB
C#
// <auto-generated />
|
|
using System;
|
|
using Manager.Data.Contexts;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Infrastructure;
|
|
using Microsoft.EntityFrameworkCore.Migrations;
|
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
|
|
|
#nullable disable
|
|
|
|
namespace Manager.Data.Migrations
|
|
{
|
|
[DbContext(typeof(LibraryDbContext))]
|
|
[Migration("20250902133345_InitialLibrary")]
|
|
partial class InitialLibrary
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|
{
|
|
#pragma warning disable 612, 618
|
|
modelBuilder.HasAnnotation("ProductVersion", "8.0.19");
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.CaptionEntity", b =>
|
|
{
|
|
b.Property<string>("MediaId")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("LanguageCode")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Name")
|
|
.IsRequired()
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("MediaId", "LanguageCode");
|
|
|
|
b.ToTable("captions", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.ChannelEntity", b =>
|
|
{
|
|
b.Property<string>("Id")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("CreatedAtUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Description")
|
|
.HasMaxLength(500)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("JoinedDate")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("LastModifiedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Name")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<long>("Subscribers")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<long>("TotalVideos")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<long>("TotalViews")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.ToTable("channels", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.ClientAccountEntity", b =>
|
|
{
|
|
b.Property<string>("Id")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("CreatedAtUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("LastModifiedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("UserAgent")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.ToTable("client_accounts", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.HttpCookieEntity", b =>
|
|
{
|
|
b.Property<string>("Name")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("ClientId")
|
|
.IsRequired()
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("CreatedAtUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Domain")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTimeOffset?>("ExpiresUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<bool>("HttpOnly")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<DateTime>("LastModifiedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Path")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("SameSite")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<bool>("Secure")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<string>("Value")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("Name");
|
|
|
|
b.HasIndex("ClientId");
|
|
|
|
b.ToTable("http_cookies", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.Join.PlaylistMedia", b =>
|
|
{
|
|
b.Property<string>("PlaylistId")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("MediaId")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("DateAddedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("DateModifiedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("PlaylistId", "MediaId");
|
|
|
|
b.HasIndex("MediaId");
|
|
|
|
b.ToTable("join_playlist_media", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.MediaEntity", b =>
|
|
{
|
|
b.Property<string>("Id")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("ChannelId")
|
|
.IsRequired()
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("CreatedAtUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Description")
|
|
.HasMaxLength(500)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("ExternalState")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<bool>("IsDownloaded")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<DateTime>("LastModifiedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("State")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<string>("Title")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("UploadDateUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.HasIndex("ChannelId");
|
|
|
|
b.ToTable("media", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.MediaFormatEntity", b =>
|
|
{
|
|
b.Property<string>("MediaId")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int>("Itag")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<long>("ApproxDurationMs")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<int?>("AudioChannels")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<string>("AudioSampleRate")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<long>("AverageBitrate")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<long>("Bitrate")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<long>("ContentLengthBytes")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<double?>("Framerate")
|
|
.HasColumnType("REAL");
|
|
|
|
b.Property<int?>("Height")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<bool>("IsAdaptive")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<long>("LastModifiedUnixEpoch")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.Property<double?>("LoudnessDb")
|
|
.HasColumnType("REAL");
|
|
|
|
b.Property<string>("MimeType")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Quality")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("QualityLabel")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<int?>("Width")
|
|
.HasColumnType("INTEGER");
|
|
|
|
b.HasKey("MediaId", "Itag");
|
|
|
|
b.ToTable("media_formats", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.PlaylistEntity", b =>
|
|
{
|
|
b.Property<string>("Id")
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("ChannelId")
|
|
.IsRequired()
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("CreatedAtUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Description")
|
|
.HasMaxLength(500)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<DateTime>("LastModifiedUtc")
|
|
.HasColumnType("TEXT");
|
|
|
|
b.Property<string>("Name")
|
|
.IsRequired()
|
|
.HasMaxLength(100)
|
|
.HasColumnType("TEXT");
|
|
|
|
b.HasKey("Id");
|
|
|
|
b.HasIndex("ChannelId");
|
|
|
|
b.ToTable("playlists", (string)null);
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.CaptionEntity", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.MediaEntity", null)
|
|
.WithMany("Captions")
|
|
.HasForeignKey("MediaId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.ClientAccountEntity", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.ChannelEntity", null)
|
|
.WithOne("ClientAccount")
|
|
.HasForeignKey("Manager.Data.Entities.LibraryContext.ClientAccountEntity", "Id")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.HttpCookieEntity", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.ClientAccountEntity", null)
|
|
.WithMany("HttpCookies")
|
|
.HasForeignKey("ClientId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.Join.PlaylistMedia", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.MediaEntity", null)
|
|
.WithMany("PlaylistMedias")
|
|
.HasForeignKey("MediaId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.PlaylistEntity", null)
|
|
.WithMany("PlaylistMedias")
|
|
.HasForeignKey("PlaylistId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.MediaEntity", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.ChannelEntity", null)
|
|
.WithMany("Media")
|
|
.HasForeignKey("ChannelId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.MediaFormatEntity", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.MediaEntity", null)
|
|
.WithMany("Formats")
|
|
.HasForeignKey("MediaId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.PlaylistEntity", b =>
|
|
{
|
|
b.HasOne("Manager.Data.Entities.LibraryContext.ChannelEntity", null)
|
|
.WithMany("Playlists")
|
|
.HasForeignKey("ChannelId")
|
|
.OnDelete(DeleteBehavior.Cascade)
|
|
.IsRequired();
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.ChannelEntity", b =>
|
|
{
|
|
b.Navigation("ClientAccount");
|
|
|
|
b.Navigation("Media");
|
|
|
|
b.Navigation("Playlists");
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.ClientAccountEntity", b =>
|
|
{
|
|
b.Navigation("HttpCookies");
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.MediaEntity", b =>
|
|
{
|
|
b.Navigation("Captions");
|
|
|
|
b.Navigation("Formats");
|
|
|
|
b.Navigation("PlaylistMedias");
|
|
});
|
|
|
|
modelBuilder.Entity("Manager.Data.Entities.LibraryContext.PlaylistEntity", b =>
|
|
{
|
|
b.Navigation("PlaylistMedias");
|
|
});
|
|
#pragma warning restore 612, 618
|
|
}
|
|
}
|
|
}
|