using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Jellyfin.Server.Implementations.Migrations
{
///
public partial class ExpandedBaseItemFields : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "Images",
table: "BaseItems");
migrationBuilder.DropColumn(
name: "LockedFields",
table: "BaseItems");
migrationBuilder.DropColumn(
name: "TrailerTypes",
table: "BaseItems");
migrationBuilder.AlterColumn(
name: "ExtraType",
table: "BaseItems",
type: "INTEGER",
nullable: true,
oldClrType: typeof(string),
oldType: "TEXT",
oldNullable: true);
migrationBuilder.AlterColumn(
name: "Audio",
table: "BaseItems",
type: "INTEGER",
nullable: true,
oldClrType: typeof(string),
oldType: "TEXT",
oldNullable: true);
migrationBuilder.CreateTable(
name: "BaseItemImageInfos",
columns: table => new
{
Id = table.Column(type: "TEXT", nullable: false),
Path = table.Column(type: "TEXT", nullable: false),
DateModified = table.Column(type: "TEXT", nullable: false),
ImageType = table.Column(type: "INTEGER", nullable: false),
Width = table.Column(type: "INTEGER", nullable: false),
Height = table.Column(type: "INTEGER", nullable: false),
Blurhash = table.Column(type: "BLOB", nullable: true),
ItemId = table.Column(type: "TEXT", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_BaseItemImageInfos", x => x.Id);
table.ForeignKey(
name: "FK_BaseItemImageInfos_BaseItems_ItemId",
column: x => x.ItemId,
principalTable: "BaseItems",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "BaseItemMetadataFields",
columns: table => new
{
Id = table.Column(type: "INTEGER", nullable: false),
ItemId = table.Column(type: "TEXT", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_BaseItemMetadataFields", x => new { x.Id, x.ItemId });
table.ForeignKey(
name: "FK_BaseItemMetadataFields_BaseItems_ItemId",
column: x => x.ItemId,
principalTable: "BaseItems",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "BaseItemTrailerTypes",
columns: table => new
{
Id = table.Column(type: "INTEGER", nullable: false),
ItemId = table.Column(type: "TEXT", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_BaseItemTrailerTypes", x => new { x.Id, x.ItemId });
table.ForeignKey(
name: "FK_BaseItemTrailerTypes_BaseItems_ItemId",
column: x => x.ItemId,
principalTable: "BaseItems",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateIndex(
name: "IX_BaseItemImageInfos_ItemId",
table: "BaseItemImageInfos",
column: "ItemId");
migrationBuilder.CreateIndex(
name: "IX_BaseItemMetadataFields_ItemId",
table: "BaseItemMetadataFields",
column: "ItemId");
migrationBuilder.CreateIndex(
name: "IX_BaseItemTrailerTypes_ItemId",
table: "BaseItemTrailerTypes",
column: "ItemId");
}
///
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "BaseItemImageInfos");
migrationBuilder.DropTable(
name: "BaseItemMetadataFields");
migrationBuilder.DropTable(
name: "BaseItemTrailerTypes");
migrationBuilder.AlterColumn(
name: "ExtraType",
table: "BaseItems",
type: "TEXT",
nullable: true,
oldClrType: typeof(int),
oldType: "INTEGER",
oldNullable: true);
migrationBuilder.AlterColumn(
name: "Audio",
table: "BaseItems",
type: "TEXT",
nullable: true,
oldClrType: typeof(int),
oldType: "INTEGER",
oldNullable: true);
migrationBuilder.AddColumn(
name: "Images",
table: "BaseItems",
type: "TEXT",
nullable: true);
migrationBuilder.AddColumn(
name: "LockedFields",
table: "BaseItems",
type: "TEXT",
nullable: true);
migrationBuilder.AddColumn(
name: "TrailerTypes",
table: "BaseItems",
type: "TEXT",
nullable: true);
}
}
}