#pragma warning disable CS1591 // using System; using Jellyfin.Server.Implementations; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; namespace Jellyfin.Server.Implementations.Migrations { [DbContext(typeof(JellyfinDbContext))] [Migration("20201204223655_AddCustomDisplayPreferences")] partial class AddCustomDisplayPreferences { protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasDefaultSchema("jellyfin") .HasAnnotation("ProductVersion", "5.0.0"); modelBuilder.Entity("Jellyfin.Data.Entities.AccessSchedule", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("DayOfWeek") .HasColumnType("INTEGER"); b.Property("EndHour") .HasColumnType("REAL"); b.Property("StartHour") .HasColumnType("REAL"); b.Property("UserId") .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("AccessSchedules"); }); modelBuilder.Entity("Jellyfin.Data.Entities.ActivityLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("DateCreated") .HasColumnType("TEXT"); b.Property("ItemId") .HasMaxLength(256) .HasColumnType("TEXT"); b.Property("LogSeverity") .HasColumnType("INTEGER"); b.Property("Name") .IsRequired() .HasMaxLength(512) .HasColumnType("TEXT"); b.Property("Overview") .HasMaxLength(512) .HasColumnType("TEXT"); b.Property("RowVersion") .IsConcurrencyToken() .HasColumnType("INTEGER"); b.Property("ShortOverview") .HasMaxLength(512) .HasColumnType("TEXT"); b.Property("Type") .IsRequired() .HasMaxLength(256) .HasColumnType("TEXT"); b.Property("UserId") .HasColumnType("TEXT"); b.HasKey("Id"); b.ToTable("ActivityLogs"); }); modelBuilder.Entity("Jellyfin.Data.Entities.CustomItemDisplayPreferences", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Client") .IsRequired() .HasMaxLength(32) .HasColumnType("TEXT"); b.Property("ItemId") .HasColumnType("TEXT"); b.Property("Key") .IsRequired() .HasColumnType("TEXT"); b.Property("UserId") .HasColumnType("TEXT"); b.Property("Value") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("UserId"); b.HasIndex("UserId", "ItemId", "Client", "Key") .IsUnique(); b.ToTable("CustomItemDisplayPreferences"); }); modelBuilder.Entity("Jellyfin.Data.Entities.DisplayPreferences", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("ChromecastVersion") .HasColumnType("INTEGER"); b.Property("Client") .IsRequired() .HasMaxLength(32) .HasColumnType("TEXT"); b.Property("DashboardTheme") .HasMaxLength(32) .HasColumnType("TEXT"); b.Property("EnableNextVideoInfoOverlay") .HasColumnType("INTEGER"); b.Property("IndexBy") .HasColumnType("INTEGER"); b.Property("ItemId") .HasColumnType("TEXT"); b.Property("ScrollDirection") .HasColumnType("INTEGER"); b.Property("ShowBackdrop") .HasColumnType("INTEGER"); b.Property("ShowSidebar") .HasColumnType("INTEGER"); b.Property("SkipBackwardLength") .HasColumnType("INTEGER"); b.Property("SkipForwardLength") .HasColumnType("INTEGER"); b.Property("TvHome") .HasMaxLength(32) .HasColumnType("TEXT"); b.Property("UserId") .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("UserId"); b.HasIndex("UserId", "ItemId", "Client") .IsUnique(); b.ToTable("DisplayPreferences"); }); modelBuilder.Entity("Jellyfin.Data.Entities.HomeSection", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("DisplayPreferencesId") .HasColumnType("INTEGER"); b.Property("Order") .HasColumnType("INTEGER"); b.Property("Type") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex("DisplayPreferencesId"); b.ToTable("HomeSection"); }); modelBuilder.Entity("Jellyfin.Data.Entities.ImageInfo", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("LastModified") .HasColumnType("TEXT"); b.Property("Path") .IsRequired() .HasMaxLength(512) .HasColumnType("TEXT"); b.Property("UserId") .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("UserId") .IsUnique(); b.ToTable("ImageInfos"); }); modelBuilder.Entity("Jellyfin.Data.Entities.ItemDisplayPreferences", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Client") .IsRequired() .HasMaxLength(32) .HasColumnType("TEXT"); b.Property("IndexBy") .HasColumnType("INTEGER"); b.Property("ItemId") .HasColumnType("TEXT"); b.Property("RememberIndexing") .HasColumnType("INTEGER"); b.Property("RememberSorting") .HasColumnType("INTEGER"); b.Property("SortBy") .IsRequired() .HasMaxLength(64) .HasColumnType("TEXT"); b.Property("SortOrder") .HasColumnType("INTEGER"); b.Property("UserId") .HasColumnType("TEXT"); b.Property("ViewType") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("ItemDisplayPreferences"); }); modelBuilder.Entity("Jellyfin.Data.Entities.Permission", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Kind") .HasColumnType("INTEGER"); b.Property("Permission_Permissions_Guid") .HasColumnType("TEXT"); b.Property("RowVersion") .IsConcurrencyToken() .HasColumnType("INTEGER"); b.Property("Value") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex("Permission_Permissions_Guid"); b.ToTable("Permissions"); }); modelBuilder.Entity("Jellyfin.Data.Entities.Preference", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Kind") .HasColumnType("INTEGER"); b.Property("Preference_Preferences_Guid") .HasColumnType("TEXT"); b.Property("RowVersion") .IsConcurrencyToken() .HasColumnType("INTEGER"); b.Property("Value") .IsRequired() .HasMaxLength(65535) .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("Preference_Preferences_Guid"); b.ToTable("Preferences"); }); modelBuilder.Entity("Jellyfin.Data.Entities.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("TEXT"); b.Property("AudioLanguagePreference") .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("AuthenticationProviderId") .IsRequired() .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("DisplayCollectionsView") .HasColumnType("INTEGER"); b.Property("DisplayMissingEpisodes") .HasColumnType("INTEGER"); b.Property("EasyPassword") .HasMaxLength(65535) .HasColumnType("TEXT"); b.Property("EnableAutoLogin") .HasColumnType("INTEGER"); b.Property("EnableLocalPassword") .HasColumnType("INTEGER"); b.Property("EnableNextEpisodeAutoPlay") .HasColumnType("INTEGER"); b.Property("EnableUserPreferenceAccess") .HasColumnType("INTEGER"); b.Property("HidePlayedInLatest") .HasColumnType("INTEGER"); b.Property("InternalId") .HasColumnType("INTEGER"); b.Property("InvalidLoginAttemptCount") .HasColumnType("INTEGER"); b.Property("LastActivityDate") .HasColumnType("TEXT"); b.Property("LastLoginDate") .HasColumnType("TEXT"); b.Property("LoginAttemptsBeforeLockout") .HasColumnType("INTEGER"); b.Property("MaxActiveSessions") .HasColumnType("INTEGER"); b.Property("MaxParentalAgeRating") .HasColumnType("INTEGER"); b.Property("MustUpdatePassword") .HasColumnType("INTEGER"); b.Property("Password") .HasMaxLength(65535) .HasColumnType("TEXT"); b.Property("PasswordResetProviderId") .IsRequired() .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("PlayDefaultAudioTrack") .HasColumnType("INTEGER"); b.Property("RememberAudioSelections") .HasColumnType("INTEGER"); b.Property("RememberSubtitleSelections") .HasColumnType("INTEGER"); b.Property("RemoteClientBitrateLimit") .HasColumnType("INTEGER"); b.Property("RowVersion") .IsConcurrencyToken() .HasColumnType("INTEGER"); b.Property("SubtitleLanguagePreference") .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("SubtitleMode") .HasColumnType("INTEGER"); b.Property("SyncPlayAccess") .HasColumnType("INTEGER"); b.Property("Username") .IsRequired() .HasMaxLength(255) .HasColumnType("TEXT"); b.HasKey("Id"); b.ToTable("Users"); }); modelBuilder.Entity("Jellyfin.Data.Entities.AccessSchedule", b => { b.HasOne("Jellyfin.Data.Entities.User", null) .WithMany("AccessSchedules") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Jellyfin.Data.Entities.DisplayPreferences", b => { b.HasOne("Jellyfin.Data.Entities.User", null) .WithOne("DisplayPreferences") .HasForeignKey("Jellyfin.Data.Entities.DisplayPreferences", "UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Jellyfin.Data.Entities.HomeSection", b => { b.HasOne("Jellyfin.Data.Entities.DisplayPreferences", null) .WithMany("HomeSections") .HasForeignKey("DisplayPreferencesId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Jellyfin.Data.Entities.ImageInfo", b => { b.HasOne("Jellyfin.Data.Entities.User", null) .WithOne("ProfileImage") .HasForeignKey("Jellyfin.Data.Entities.ImageInfo", "UserId"); }); modelBuilder.Entity("Jellyfin.Data.Entities.ItemDisplayPreferences", b => { b.HasOne("Jellyfin.Data.Entities.User", null) .WithMany("ItemDisplayPreferences") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Jellyfin.Data.Entities.Permission", b => { b.HasOne("Jellyfin.Data.Entities.User", null) .WithMany("Permissions") .HasForeignKey("Permission_Permissions_Guid"); }); modelBuilder.Entity("Jellyfin.Data.Entities.Preference", b => { b.HasOne("Jellyfin.Data.Entities.User", null) .WithMany("Preferences") .HasForeignKey("Preference_Preferences_Guid"); }); modelBuilder.Entity("Jellyfin.Data.Entities.DisplayPreferences", b => { b.Navigation("HomeSections"); }); modelBuilder.Entity("Jellyfin.Data.Entities.User", b => { b.Navigation("AccessSchedules"); b.Navigation("DisplayPreferences") .IsRequired(); b.Navigation("ItemDisplayPreferences"); b.Navigation("Permissions"); b.Navigation("Preferences"); b.Navigation("ProfileImage"); }); #pragma warning restore 612, 618 } } }