File

src/module/settings/model/MailingConfiguration.ts

Implements

IMailingAuthConfiguration

Index

Properties

Properties

Readonly pass
Type : string
Decorators :
@IsString()
Readonly user
Type : string
Decorators :
@IsString()
@IsNotEmpty()
import { Type } from 'class-transformer';
import { IsNotEmpty, IsNumber, IsObject, IsString, ValidateNested } from 'class-validator';
import { IMailingAuthConfiguration, IMailingSettings } from 'shared/model/Settings';
import { IsValidMailSender } from '../../../helpers/validators/nodemailer.validator';

export class MailingAuthConfiguration implements IMailingAuthConfiguration {
    @IsString()
    @IsNotEmpty()
    readonly user!: string;

    @IsString()
    readonly pass!: string;
}

export class MailingConfiguration implements IMailingSettings {
    @IsString()
    @IsNotEmpty()
    readonly host!: string;

    @IsNumber()
    readonly port!: number;

    @IsString()
    @IsValidMailSender()
    readonly from!: string;

    @IsString()
    @IsNotEmpty()
    readonly subject!: string;

    @IsObject()
    @ValidateNested()
    @Type(() => MailingAuthConfiguration)
    readonly auth!: MailingAuthConfiguration;
}

results matching ""

    No results matching ""