import { In, MigrationInterface, QueryRunner } from 'typeorm';
import { Configuration } from '../configuration/configuration.entity';
import { EConfigurationProperty } from '../configuration/helpers/configuration-type.helper';

export class AddMotdConfigurationProperty1628767349344
  implements MigrationInterface {
  public async up(queryRunner: QueryRunner): Promise<void> {
    const motdTimeConfiguration = new Configuration();
    motdTimeConfiguration.name = EConfigurationProperty.MOTD_TIME;
    motdTimeConfiguration.value = '|';
    await queryRunner.manager.save(motdTimeConfiguration);

    const motdBodyConfiguration = new Configuration();
    motdBodyConfiguration.name = EConfigurationProperty.MOTD_BODY;
    motdBodyConfiguration.value = null;
    await queryRunner.manager.save(motdBodyConfiguration);
  }

  public async down(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.manager.delete(Configuration, {
      name: In([
        EConfigurationProperty.MOTD_TIME,
        EConfigurationProperty.MOTD_BODY,
      ]),
    });
  }
}
