File

src/core/domain/dtos/es-query.dto.ts

Description

Elasticsearch query DTO

Index

Properties

Properties

pit
Type : object

Object, that stores Point-In-Time ID and time alive

query
Type : object
Decorators :
@IsDefined()
@IsObject()
@ApiProperty({description: 'Search query object passed to Elasticsearch', example: false})

The search query object passed to Elasticsearch

size
Type : number
Decorators :
@IsDefined()
@IsNumber()
@IsInt()
@ApiProperty({description: 'Maximum number of elements returned by Elasticsearch', example: 30})

Maximum number of elements returned by Elasticsearch

sort
Type : object

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;
 }

results matching ""

    No results matching ""