File

src/common/dtos/page.dto.ts

Index

Properties

Constructor

constructor(data: T[], meta: PageMetaDto)
Parameters :
Name Type Optional
data T[] No
meta PageMetaDto No

Properties

Readonly data
Type : T[]
Decorators :
@IsArray()
@ApiProperty({isArray: true})
@ValidateNested({each: true})
@Type(undefined)
Readonly meta
Type : PageMetaDto
Decorators :
@ApiProperty({type: () => PageMetaDto})
@ValidateNested()
@Type(undefined)
import { ApiProperty } from "@nestjs/swagger";
import { IsArray, ValidateNested } from "class-validator";
import { Type } from "class-transformer";
import { PageMetaDto } from "./page-meta.dto";

export class PageDto<T> {
  @IsArray()
  @ApiProperty({ isArray: true })
  @ValidateNested({ each: true })
  @Type(() => Array)
  readonly data: T[];

  @ApiProperty({ type: () => PageMetaDto })
  @ValidateNested()
  @Type(() => PageMetaDto)
  readonly meta: PageMetaDto;

  constructor(data: T[], meta: PageMetaDto) {
    this.data = data;
    this.meta = meta;
  }
}

results matching ""

    No results matching ""