Files
3dp-manager/server/src/subscriptions/dto/create-subscription.dto.ts
T

39 lines
611 B
TypeScript

import {
IsString,
IsArray,
ValidateNested,
IsOptional,
ArrayMinSize,
ArrayMaxSize,
} from 'class-validator';
import { Type } from 'class-transformer';
export class InboundConfigDto {
@IsString()
type: string;
@IsOptional()
port?: number | string;
@IsString()
@IsOptional()
sni?: string;
@IsString()
@IsOptional()
link?: string;
}
export class CreateSubscriptionDto {
@IsString()
name: string;
@IsArray()
@ValidateNested({ each: true })
@Type(() => InboundConfigDto)
@ArrayMinSize(1)
@ArrayMaxSize(20)
@IsOptional()
inboundsConfig?: InboundConfigDto[];
}