import { IsNotEmpty, ValidateIf, MaxLength, Matches, IsArray } from "class-validator"
import { validationMessages } from "../../../messages/validation-messages"
import { ApiProperty } from "@nestjs/swagger"

export class InfluencerUpdateDto {
    @ApiProperty({ example: "Test", required: false, type: "string" })
    // @IsNotEmpty({ message: validationMessages.user.first_name_required  })
    first_name: string

    @ApiProperty({ example: "User", required: false, type: "string" })
    // @IsNotEmpty({ message: validationMessages.user.last_name_required  })
    last_name: string

    @ApiProperty({ example: "+91", required: false, type: "string" })
    // @IsNotEmpty({ message: validationMessages.user.country_code_required  })
    country_code: string

    @ApiProperty({ example: "1234567890", required: false, type: "string" })
    // @IsNotEmpty({ message: validationMessages.user.phone_number_required  })
    phone_number: string

    @ApiProperty({ example: "IM developer", required: false, type: "string" })
    about_me: string

    @ApiProperty({ example: [], required: false, type: "array" })
    // @ArrayUnique({ message: validationMessages.influencer.category.category_notsame })
    // @IsArrayWithAtLeastOneNonNullElement({ message: validationMessages.influencer.category.selected_category_required_atleastone })
    // @ArrayMinSize(1, { message: validationMessages.influencer.category.selected_category_required_atleastone })
    // @IsArray()
    category_ids: string[]

    @ApiProperty({ example: [], required: true, type: "array" })
    @IsArray()
    keywords: string[]

    is_updated_by_cron: boolean;
    country: string;
    gender: string;
    currency: string;
    display_name: string;
}
