import { ApiProperty } from "@nestjs/swagger";
import { IsBoolean, IsEmail, IsObject, IsOptional, IsString, MinLength } from "class-validator";

class CreateOrganizationUserNameDto {
  @ApiProperty()
  @IsString()
  @MinLength(1)
  en!: string;

  @ApiProperty({ required: false })
  @IsOptional()
  @IsString()
  am?: string;
}

export class CreateOrganizationUserDto {
  @ApiProperty()
  @IsEmail()
  email!: string;

  @ApiProperty()
  @IsString()
  @MinLength(1)
  username!: string;

  @ApiProperty({ required: false })
  @IsOptional()
  @IsString()
  phoneNumber?: string;

  @ApiProperty({ type: CreateOrganizationUserNameDto })
  @IsObject()
  name!: CreateOrganizationUserNameDto;

  @ApiProperty({ required: false, default: false })
  @IsOptional()
  @IsBoolean()
  assignOrganizationAdmin?: boolean;
}
