29 lines
490 B
TypeScript
29 lines
490 B
TypeScript
import {
|
|
IsOptional,
|
|
IsString,
|
|
Matches,
|
|
MaxLength,
|
|
MinLength,
|
|
} from 'class-validator';
|
|
|
|
export class LocalSignInDto {
|
|
@IsString()
|
|
@MinLength(3)
|
|
@MaxLength(40)
|
|
@Matches(/^[a-zA-Z0-9_.-]+$/)
|
|
username: string;
|
|
|
|
@IsString()
|
|
@MinLength(12)
|
|
@MaxLength(256)
|
|
password: string;
|
|
}
|
|
|
|
export class LocalSetupAdminDto extends LocalSignInDto {}
|
|
|
|
export class CreateLocalUserDto extends LocalSignInDto {
|
|
@IsOptional()
|
|
@IsString()
|
|
@MaxLength(80)
|
|
displayName?: string;
|
|
}
|