import { MigrationInterface, QueryRunner } from "typeorm"

export class AlterRoleEntityAddParentRolesColumn1744268618943 implements MigrationInterface {
  name = "AlterRoleEntityAddParentRolesColumn1744268618943"

  public async up(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(`ALTER TABLE "roles" ADD "parent_role_id" integer`)
    await queryRunner.query(
      `ALTER TABLE "roles" ADD CONSTRAINT "FK_2c6e71b96bff7b9230de9dda83b" FOREIGN KEY ("parent_role_id") REFERENCES "roles"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`,
    )
  }

  public async down(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(
      `ALTER TABLE "roles" DROP CONSTRAINT "FK_2c6e71b96bff7b9230de9dda83b"`,
    )
    await queryRunner.query(`ALTER TABLE "roles" DROP COLUMN "parent_role_id"`)
  }
}
