src/core/domain/dtos/es-query.dto.ts
Elasticsearch query DTO
Properties |
pit |
Type : object
|
Defined in src/core/domain/dtos/es-query.dto.ts:39
|
Object, that stores Point-In-Time ID and time alive |
query |
Type : object
|
Decorators :
@IsDefined()
|
Defined in src/core/domain/dtos/es-query.dto.ts:34
|
The search query object passed to Elasticsearch |
size |
Type : number
|
Decorators :
@IsDefined()
|
Defined in src/core/domain/dtos/es-query.dto.ts:23
|
Maximum number of elements returned by Elasticsearch |
sort |
Type : object
|
Defined in src/core/domain/dtos/es-query.dto.ts:44
|
Object, that stores |
import { ApiProperty } from "@nestjs/swagger";
import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-validator";
/**
* List of allowed properties in this DTO
*/
const allowedProperties = ['size', 'query', 'pit', 'sort'];
/**
* Elasticsearch query DTO
*/
export class EsQueryDto {
/**
* Maximum number of elements returned by Elasticsearch
*/
@IsDefined()
@IsNumber()
@IsInt()
@ApiProperty({
description: 'Maximum number of elements returned by Elasticsearch',
example: 30
})
size: number;
/**
* The search query object passed to Elasticsearch
*/
@IsDefined()
@IsObject()
@ApiProperty({
description: 'Search query object passed to Elasticsearch',
example: false,
})
query: object;
/**
* Object, that stores Point-In-Time ID and time alive
*/
pit: object;
/**
* Object, that stores
*/
sort: object;
}