//
using System;
using Kyoo;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
namespace Kyoo.Models.DatabaseMigrations.Internal
{
[DbContext(typeof(DatabaseContext))]
partial class DatabaseContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "3.1.3");
modelBuilder.Entity("Kyoo.Models.Collection", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("ImgPrimary")
.HasColumnType("TEXT");
b.Property("Name")
.HasColumnType("TEXT");
b.Property("Overview")
.HasColumnType("TEXT");
b.Property("Poster")
.HasColumnType("TEXT");
b.Property("Slug")
.HasColumnType("TEXT");
b.HasKey("ID");
b.ToTable("Collections");
});
modelBuilder.Entity("Kyoo.Models.CollectionLink", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("CollectionID")
.HasColumnType("INTEGER");
b.Property("ShowID")
.HasColumnType("INTEGER");
b.HasKey("ID");
b.HasIndex("CollectionID");
b.HasIndex("ShowID");
b.ToTable("CollectionLinks");
});
modelBuilder.Entity("Kyoo.Models.Episode", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("AbsoluteNumber")
.HasColumnType("INTEGER");
b.Property("EpisodeNumber")
.HasColumnType("INTEGER");
b.Property("ExternalIDs")
.HasColumnType("TEXT");
b.Property("ImgPrimary")
.HasColumnType("TEXT");
b.Property("Overview")
.HasColumnType("TEXT");
b.Property("Path")
.HasColumnType("TEXT");
b.Property("ReleaseDate")
.HasColumnType("TEXT");
b.Property("Runtime")
.HasColumnType("INTEGER");
b.Property("SeasonID")
.HasColumnType("INTEGER");
b.Property("SeasonNumber")
.HasColumnType("INTEGER");
b.Property("ShowID")
.HasColumnType("INTEGER");
b.Property("Title")
.HasColumnType("TEXT");
b.HasKey("ID");
b.HasIndex("SeasonID");
b.HasIndex("ShowID");
b.ToTable("Episodes");
});
modelBuilder.Entity("Kyoo.Models.Genre", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("Name")
.HasColumnType("TEXT");
b.Property("Slug")
.HasColumnType("TEXT");
b.HasKey("ID");
b.ToTable("Genres");
});
modelBuilder.Entity("Kyoo.Models.GenreLink", b =>
{
b.Property("ShowID")
.HasColumnType("INTEGER");
b.Property("GenreID")
.HasColumnType("INTEGER");
b.HasKey("ShowID", "GenreID");
b.HasIndex("GenreID");
b.ToTable("GenreLinks");
});
modelBuilder.Entity("Kyoo.Models.Library", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("Name")
.HasColumnType("TEXT");
b.Property("Paths")
.HasColumnType("TEXT");
b.Property("Providers")
.HasColumnType("TEXT");
b.Property("Slug")
.HasColumnType("TEXT");
b.HasKey("ID");
b.ToTable("Libraries");
});
modelBuilder.Entity("Kyoo.Models.LibraryLink", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("CollectionID")
.HasColumnType("INTEGER");
b.Property("LibraryID")
.HasColumnType("INTEGER");
b.Property("ShowID")
.HasColumnType("INTEGER");
b.HasKey("ID");
b.HasIndex("CollectionID");
b.HasIndex("LibraryID");
b.HasIndex("ShowID");
b.ToTable("LibraryLinks");
});
modelBuilder.Entity("Kyoo.Models.People", b =>
{
b.Property("Slug")
.HasColumnType("TEXT");
b.Property("ExternalIDs")
.HasColumnType("TEXT");
b.Property("ImgPrimary")
.HasColumnType("TEXT");
b.Property("Name")
.HasColumnType("TEXT");
b.HasKey("Slug");
b.ToTable("Peoples");
});
modelBuilder.Entity("Kyoo.Models.PeopleLink", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("PeopleID")
.HasColumnType("TEXT");
b.Property("Role")
.HasColumnType("TEXT");
b.Property("ShowID")
.HasColumnType("INTEGER");
b.Property("Type")
.HasColumnType("TEXT");
b.HasKey("ID");
b.HasIndex("PeopleID");
b.HasIndex("ShowID");
b.ToTable("PeopleLinks");
});
modelBuilder.Entity("Kyoo.Models.Season", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("ExternalIDs")
.HasColumnType("TEXT");
b.Property("ImgPrimary")
.HasColumnType("TEXT");
b.Property("Overview")
.HasColumnType("TEXT");
b.Property("SeasonNumber")
.HasColumnType("INTEGER");
b.Property("ShowID")
.HasColumnType("INTEGER");
b.Property("Title")
.HasColumnType("TEXT");
b.Property("Year")
.HasColumnType("INTEGER");
b.HasKey("ID");
b.HasIndex("ShowID");
b.ToTable("Seasons");
});
modelBuilder.Entity("Kyoo.Models.Show", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("Aliases")
.HasColumnType("TEXT");
b.Property("EndYear")
.HasColumnType("INTEGER");
b.Property("ExternalIDs")
.HasColumnType("TEXT");
b.Property("ImgBackdrop")
.HasColumnType("TEXT");
b.Property("ImgLogo")
.HasColumnType("TEXT");
b.Property("ImgPrimary")
.HasColumnType("TEXT");
b.Property("ImgThumb")
.HasColumnType("TEXT");
b.Property("IsMovie")
.HasColumnType("INTEGER");
b.Property("Overview")
.HasColumnType("TEXT");
b.Property("Path")
.HasColumnType("TEXT");
b.Property("Slug")
.HasColumnType("TEXT");
b.Property("StartYear")
.HasColumnType("INTEGER");
b.Property("Status")
.HasColumnType("INTEGER");
b.Property("StudioID")
.HasColumnType("INTEGER");
b.Property("Title")
.HasColumnType("TEXT");
b.Property("TrailerUrl")
.HasColumnType("TEXT");
b.HasKey("ID");
b.HasIndex("StudioID");
b.ToTable("Shows");
});
modelBuilder.Entity("Kyoo.Models.Studio", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("Name")
.HasColumnType("TEXT");
b.Property("Slug")
.HasColumnType("TEXT");
b.HasKey("ID");
b.ToTable("Studios");
});
modelBuilder.Entity("Kyoo.Models.Track", b =>
{
b.Property("ID")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("Codec")
.HasColumnType("TEXT");
b.Property("EpisodeID")
.HasColumnType("INTEGER");
b.Property("IsDefault")
.HasColumnType("INTEGER");
b.Property("IsExternal")
.HasColumnType("INTEGER");
b.Property("IsForced")
.HasColumnType("INTEGER");
b.Property("Language")
.HasColumnType("TEXT");
b.Property("Path")
.HasColumnType("TEXT");
b.Property("Title")
.HasColumnType("TEXT");
b.Property("Type")
.HasColumnType("INTEGER");
b.HasKey("ID");
b.HasIndex("EpisodeID");
b.ToTable("Tracks");
});
modelBuilder.Entity("Kyoo.Models.CollectionLink", b =>
{
b.HasOne("Kyoo.Models.Collection", "Collection")
.WithMany()
.HasForeignKey("CollectionID");
b.HasOne("Kyoo.Models.Show", "Show")
.WithMany()
.HasForeignKey("ShowID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Kyoo.Models.Episode", b =>
{
b.HasOne("Kyoo.Models.Season", "Season")
.WithMany("Episodes")
.HasForeignKey("SeasonID");
b.HasOne("Kyoo.Models.Show", "Show")
.WithMany("Episodes")
.HasForeignKey("ShowID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Kyoo.Models.GenreLink", b =>
{
b.HasOne("Kyoo.Models.Genre", "Genre")
.WithMany()
.HasForeignKey("GenreID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kyoo.Models.Show", "Show")
.WithMany("GenreLinks")
.HasForeignKey("ShowID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Kyoo.Models.LibraryLink", b =>
{
b.HasOne("Kyoo.Models.Collection", "Collection")
.WithMany()
.HasForeignKey("CollectionID");
b.HasOne("Kyoo.Models.Library", "Library")
.WithMany()
.HasForeignKey("LibraryID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Kyoo.Models.Show", "Show")
.WithMany()
.HasForeignKey("ShowID");
});
modelBuilder.Entity("Kyoo.Models.PeopleLink", b =>
{
b.HasOne("Kyoo.Models.People", "People")
.WithMany("Roles")
.HasForeignKey("PeopleID");
b.HasOne("Kyoo.Models.Show", "Show")
.WithMany("People")
.HasForeignKey("ShowID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Kyoo.Models.Season", b =>
{
b.HasOne("Kyoo.Models.Show", "Show")
.WithMany("Seasons")
.HasForeignKey("ShowID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Kyoo.Models.Show", b =>
{
b.HasOne("Kyoo.Models.Studio", "Studio")
.WithMany()
.HasForeignKey("StudioID");
});
modelBuilder.Entity("Kyoo.Models.Track", b =>
{
b.HasOne("Kyoo.Models.Episode", "Episode")
.WithMany("Tracks")
.HasForeignKey("EpisodeID")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
#pragma warning restore 612, 618
}
}
}