import { PartialType } from '@nestjs/mapped-types';
import { CreateGroupDto } from './create-group.dto';
import { Transform } from 'class-transformer';
import { IsOptional, Matches } from 'class-validator';

export class UpdateGroupDto extends PartialType(CreateGroupDto) {
  @IsOptional()
  @Transform(({ value }) => value.trim().replace(/\s+/g, ' '))
  name: string;

  @IsOptional()
  @Transform(({ value }) => value.trim().replace(/\s+/g, ' '))
  description: string;

  @IsOptional()
  @Transform(({ value }) => value.trim().replace(/\s+/g, ' '))
  step_goal: string;

  @IsOptional()
  icon: string;

  @IsOptional()
  goal_start_date: Date;

  @IsOptional()
  goal_end_date: Date;

  @IsOptional()
  status: number;

  @IsOptional()
  zipcode?: string;

  @IsOptional()
  is_sharable?: boolean;

  @IsOptional()
  province_id?: string;
}
