File

src/posts/dtos/get-post-filter.dto.ts

Description

Data Transfer Object (DTO) for filtering and sorting posts

Index

Properties

Properties

Optional search
Type : string
Decorators :
@IsOptional()
@IsString()

Optional search query field with validation rules:

  • Must be a string
Optional searchField
Type : string
Decorators :
@IsOptional()
@IsString()

Optional search field with validation rules:

  • Must be a string
Optional sortField
Type : string
Decorators :
@IsOptional()
@IsString()

Optional sort field with validation rules:

  • Must be a string
Optional sortOrder
Type : SortOrder
Decorators :
@IsOptional()
@IsEnum(SortOrder)

Optional sort order field with validation rules:

  • Must be a valid enum value (SortOrder)
import { IsEnum, IsOptional, IsString } from 'class-validator';

enum SortOrder {
  ASC = 'asc',
  DESC = 'desc',
}

/**
 * Data Transfer Object (DTO) for filtering and sorting posts
 */
export class GetPostFilterDto {
  /**
   * Optional search query field with validation rules:
   * - Must be a string
   */
  @IsOptional()
  @IsString()
  search?: string;

  /**
   * Optional search field with validation rules:
   * - Must be a string
   */
  @IsOptional()
  @IsString()
  searchField?: string;

  /**
   * Optional sort order field with validation rules:
   * - Must be a valid enum value (SortOrder)
   */
  @IsOptional()
  @IsEnum(SortOrder)
  sortOrder?: SortOrder;

  /**
   * Optional sort field with validation rules:
   * - Must be a string
   */
  @IsOptional()
  @IsString()
  sortField?: string;
}

export default GetPostFilterDto;

results matching ""

    No results matching ""