//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Moonlight.ApiServer.Database;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
#nullable disable
namespace Moonlight.ApiServer.Database.Migrations
{
[DbContext(typeof(CoreDataContext))]
partial class CoreDataContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "9.0.7")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
modelBuilder.Entity("Moonlight.ApiServer.Database.Entities.ApiKey", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("CreatedAt")
.HasColumnType("timestamp with time zone");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("ExpiresAt")
.HasColumnType("timestamp with time zone");
b.PrimitiveCollection("Permissions")
.IsRequired()
.HasColumnType("text[]");
b.HasKey("Id");
b.ToTable("Core_ApiKeys", (string)null);
});
modelBuilder.Entity("Moonlight.ApiServer.Database.Entities.Theme", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Author")
.IsRequired()
.HasColumnType("text");
b.Property("DonateUrl")
.HasColumnType("text");
b.Property("IsEnabled")
.HasColumnType("boolean");
b.Property("Name")
.IsRequired()
.HasColumnType("text");
b.Property("UpdateUrl")
.HasColumnType("text");
b.Property("Version")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.ToTable("Core_Themes", (string)null);
});
modelBuilder.Entity("Moonlight.ApiServer.Database.Entities.User", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Email")
.IsRequired()
.HasColumnType("text");
b.Property("Password")
.IsRequired()
.HasColumnType("text");
b.PrimitiveCollection("Permissions")
.IsRequired()
.HasColumnType("text[]");
b.Property("TokenValidTimestamp")
.HasColumnType("timestamp with time zone");
b.Property("Username")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.ToTable("Core_Users", (string)null);
});
modelBuilder.Entity("Moonlight.ApiServer.Database.Entities.Theme", b =>
{
b.OwnsOne("Moonlight.ApiServer.Models.ApplicationTheme", "Content", b1 =>
{
b1.Property("ThemeId")
.HasColumnType("integer");
b1.Property("Border")
.HasColumnType("real");
b1.Property("ColorAccent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorAccentContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBackground")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBase100")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBase150")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBase200")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBase250")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBase300")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorBaseContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorError")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorErrorContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorInfo")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorInfoContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorNeutral")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorNeutralContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorPrimary")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorPrimaryContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorSecondary")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorSecondaryContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorSuccess")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorSuccessContent")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorWarning")
.IsRequired()
.HasColumnType("text");
b1.Property("ColorWarningContent")
.IsRequired()
.HasColumnType("text");
b1.Property("Depth")
.HasColumnType("integer");
b1.Property("Noise")
.HasColumnType("integer");
b1.Property("RadiusBox")
.HasColumnType("real");
b1.Property("RadiusField")
.HasColumnType("real");
b1.Property("RadiusSelector")
.HasColumnType("real");
b1.Property("SizeField")
.HasColumnType("real");
b1.Property("SizeSelector")
.HasColumnType("real");
b1.HasKey("ThemeId");
b1.ToTable("Core_Themes");
b1.ToJson("Content");
b1.WithOwner()
.HasForeignKey("ThemeId");
});
b.Navigation("Content")
.IsRequired();
});
#pragma warning restore 612, 618
}
}
}