Redesign login/register with Mento branding and email/mobile OTP.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,20 +1,40 @@
|
||||
import {
|
||||
IsEmail,
|
||||
IsIn,
|
||||
IsOptional,
|
||||
IsString,
|
||||
Matches,
|
||||
MinLength,
|
||||
ValidateIf,
|
||||
} from 'class-validator';
|
||||
import { BUSINESS_FIELDS } from '@mento/shared';
|
||||
|
||||
export class LoginDto {
|
||||
/** ایمیل یا موبایل — کلاینت جدید */
|
||||
@IsOptional()
|
||||
@IsString()
|
||||
@MinLength(3)
|
||||
identifier?: string;
|
||||
|
||||
/** سازگاری با کلاینت قدیمی */
|
||||
@IsOptional()
|
||||
@IsEmail()
|
||||
email!: string;
|
||||
email?: string;
|
||||
|
||||
@IsString()
|
||||
@MinLength(6)
|
||||
password!: string;
|
||||
}
|
||||
|
||||
export class LoginVerifyOtpDto {
|
||||
@IsString()
|
||||
challengeId!: string;
|
||||
|
||||
@IsString()
|
||||
@MinLength(4)
|
||||
code!: string;
|
||||
}
|
||||
|
||||
export class RegisterOrganizationDto {
|
||||
@IsString()
|
||||
@MinLength(2)
|
||||
@@ -27,10 +47,41 @@ export class RegisterOrganizationDto {
|
||||
@IsEmail()
|
||||
email!: string;
|
||||
|
||||
@IsString()
|
||||
@Matches(/^09\d{9}$|^\+98\d{10}$|^98\d{10}$|^9\d{9}$/, {
|
||||
message: 'شماره موبایل معتبر نیست',
|
||||
})
|
||||
mobile!: string;
|
||||
|
||||
@IsString()
|
||||
@MinLength(6)
|
||||
password!: string;
|
||||
|
||||
@IsString()
|
||||
@MinLength(6)
|
||||
passwordConfirm!: string;
|
||||
|
||||
@IsIn([...BUSINESS_FIELDS])
|
||||
businessField!: (typeof BUSINESS_FIELDS)[number];
|
||||
|
||||
@IsOptional()
|
||||
@IsString()
|
||||
referralCode?: string;
|
||||
|
||||
@ValidateIf((_, v) => v !== undefined)
|
||||
@IsOptional()
|
||||
acceptedTerms?: boolean;
|
||||
}
|
||||
|
||||
export class RegisterVerifyOtpDto {
|
||||
@IsString()
|
||||
challengeId!: string;
|
||||
|
||||
@IsString()
|
||||
@MinLength(4)
|
||||
emailCode!: string;
|
||||
|
||||
@IsString()
|
||||
@MinLength(4)
|
||||
mobileCode!: string;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user