#pragma warning disable CS1591 // using System; using Microsoft.EntityFrameworkCore.Migrations; namespace Jellyfin.Server.Implementations.Migrations { public partial class AddCustomDisplayPreferences : Migration { protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.DropIndex( name: "IX_DisplayPreferences_UserId_Client", schema: "jellyfin", table: "DisplayPreferences"); migrationBuilder.AlterColumn( name: "MaxActiveSessions", schema: "jellyfin", table: "Users", type: "INTEGER", nullable: false, defaultValue: 0, oldClrType: typeof(int), oldType: "INTEGER", oldNullable: true); migrationBuilder.AddColumn( name: "ItemId", schema: "jellyfin", table: "DisplayPreferences", type: "TEXT", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000")); migrationBuilder.CreateTable( name: "CustomItemDisplayPreferences", schema: "jellyfin", columns: table => new { Id = table.Column(type: "INTEGER", nullable: false) .Annotation("Sqlite:Autoincrement", true), UserId = table.Column(type: "TEXT", nullable: false), ItemId = table.Column(type: "TEXT", nullable: false), Client = table.Column(type: "TEXT", maxLength: 32, nullable: false), Key = table.Column(type: "TEXT", nullable: false), Value = table.Column(type: "TEXT", nullable: false) }, constraints: table => { table.PrimaryKey("PK_CustomItemDisplayPreferences", x => x.Id); }); migrationBuilder.CreateIndex( name: "IX_DisplayPreferences_UserId_ItemId_Client", schema: "jellyfin", table: "DisplayPreferences", columns: new[] { "UserId", "ItemId", "Client" }, unique: true); migrationBuilder.CreateIndex( name: "IX_CustomItemDisplayPreferences_UserId", schema: "jellyfin", table: "CustomItemDisplayPreferences", column: "UserId"); migrationBuilder.CreateIndex( name: "IX_CustomItemDisplayPreferences_UserId_ItemId_Client_Key", schema: "jellyfin", table: "CustomItemDisplayPreferences", columns: new[] { "UserId", "ItemId", "Client", "Key" }, unique: true); } protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable( name: "CustomItemDisplayPreferences", schema: "jellyfin"); migrationBuilder.DropIndex( name: "IX_DisplayPreferences_UserId_ItemId_Client", schema: "jellyfin", table: "DisplayPreferences"); migrationBuilder.DropColumn( name: "ItemId", schema: "jellyfin", table: "DisplayPreferences"); migrationBuilder.AlterColumn( name: "MaxActiveSessions", schema: "jellyfin", table: "Users", type: "INTEGER", nullable: true, oldClrType: typeof(int), oldType: "INTEGER"); migrationBuilder.CreateIndex( name: "IX_DisplayPreferences_UserId_Client", schema: "jellyfin", table: "DisplayPreferences", columns: new[] { "UserId", "Client" }, unique: true); } } }