import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
import { SpatialUnitType } from '@prisma/client';
import { IsEnum, IsOptional, IsString, IsUUID } from 'class-validator';

export class CreateSpatialUnitDto {
  @ApiPropertyOptional() @IsOptional() @IsUUID() parentId?: string;

  @ApiProperty({ enum: SpatialUnitType })
  @IsEnum(SpatialUnitType)
  type!: SpatialUnitType;

  @ApiProperty({ example: 'A' }) @IsString() code!: string;
  @ApiPropertyOptional() @IsOptional() @IsString() label?: string;
}
