import { ApiProperty } from "@nestjs/swagger"
import { CreateTripIntermediateStopDto } from "./create-trip-intermediate-stop.dto"
import { IsArray, IsNotEmpty, IsNumber, ValidateNested } from "class-validator"
import { Type } from "class-transformer"

export class UpdateTripIntermediateStopDto {
  @ApiProperty({
    example: 1,
    description: "ID of the associated trip",
  })
  @IsNumber()
  @IsNotEmpty()
  trip_id: number

  @ApiProperty({
    type: [CreateTripIntermediateStopDto],
    description: "List of intermediate stops",
  })
  @IsArray()
  @ValidateNested({ each: true })
  @Type(() => CreateTripIntermediateStopDto)
  stops: CreateTripIntermediateStopDto[]
}
