- Fix Next.js build failure: remove duplicate route at (dashboard)/listings/[id] that conflicted with (public)/listings/[id] (same URL path in two route groups) - Fix 772 ESLint errors: auto-fix import ordering (import-x/order), remove unused imports/variables, convert empty interfaces to type aliases, replace require() with ESM imports, fix consistent-type-imports violations - Add CLAUDE.md for developer onboarding documentation - All checks pass: 0 lint errors, typecheck clean, 230 tests passing, build success Co-Authored-By: Paperclip <noreply@paperclip.ing>
25 lines
754 B
TypeScript
25 lines
754 B
TypeScript
import { ApiProperty } from '@nestjs/swagger';
|
|
import { PropertyType } from '@prisma/client';
|
|
import { Transform } from 'class-transformer';
|
|
import { IsArray, IsEnum, IsString } from 'class-validator';
|
|
|
|
export class GetPriceTrendDto {
|
|
@ApiProperty({ description: 'District name' })
|
|
@IsString()
|
|
district!: string;
|
|
|
|
@ApiProperty({ description: 'City name' })
|
|
@IsString()
|
|
city!: string;
|
|
|
|
@ApiProperty({ enum: PropertyType, description: 'Property type' })
|
|
@IsEnum(PropertyType)
|
|
propertyType!: PropertyType;
|
|
|
|
@ApiProperty({ description: 'Comma-separated list of periods', type: [String] })
|
|
@IsArray()
|
|
@IsString({ each: true })
|
|
@Transform(({ value }) => (typeof value === 'string' ? value.split(',') : value))
|
|
periods!: string[];
|
|
}
|