import { IsNotEmpty, IsString, IsOptional, IsArray, ValidateNested, ArrayMinSize } from 'class-validator';
import { Type } from 'class-transformer';
import { validationMessages } from '../../../messages/validation-messages';
import { ApiProperty } from '@nestjs/swagger';
import { TranslationDto } from './create.dto';

export class UpdateDto {
    @ApiProperty({ 
        example: [
            {
                language_code: 'en',
                keyword: 'English Keyword'
            },
            {
                language_code: 'cn',
                keyword: 'Chinese Keyword'
            }
        ], 
        required: true, 
        type: [TranslationDto] 
    })
    @IsArray()
    @ArrayMinSize(1, { message: validationMessages.keywords.translations_required })
    @ValidateNested({ each: true })
    @Type(() => TranslationDto)
    translations: TranslationDto[];
}

