From d611c95edb491bcbb13cdf9eb6ac8e8d6dd465d4 Mon Sep 17 00:00:00 2001
From: moeidtopcoder
Date: Thu, 28 Jul 2022 16:24:53 +0000
Subject: [PATCH 01/23] Add 'scripts/run.sh'
---
scripts/run.sh | 186 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 186 insertions(+)
create mode 100644 scripts/run.sh
diff --git a/scripts/run.sh b/scripts/run.sh
new file mode 100644
index 0000000..b3759ee
--- /dev/null
+++ b/scripts/run.sh
@@ -0,0 +1,186 @@
+#!/bin/bash
+
+set -Eeuo pipefail
+trap cleanup SIGINT SIGTERM ERR EXIT
+
+script_dir=$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd -P)
+
+usage() {
+ cat << EOF # remove the space between << and EOF, this is due to web plugin issue
+Usage: $(basename "${BASH_SOURCE[0]}") [-h] [-build_docker] [-build_and_run_docker] [-stop_docker] [-run_app] [-run_test] [-run_lint] [-deploy_on_kubernetes]
+This script helps you to runn the application in different forms. below you can get the full list of available options.
+Available options:
+-h, --help Print this help and exit
+-build_docker Build the docker image called "freeland:latest"
+-build_and_run_docker Build the docker image and run on local machine
+-stop_docker Stop running docker container named "freeland"
+-run_app Run application with npm in usual way for development
+-run_test Run npm test
+-run_lint Run npm lint
+-generate_doc Generate the code documentation
+-deploy_on_kubernetes you need to have a kubernetes cluster already up and running on the machine.
+EOF
+ exit
+}
+#=============================================================================================================================================================================
+cleanup() {
+ trap - SIGINT SIGTERM ERR EXIT
+ # script cleanup here
+}
+#=============================================================================================================================================================================
+setup_colors() {
+ if [[ -t 2 ]] && [[ -z "${NO_COLOR-}" ]] && [[ "${TERM-}" != "dumb" ]]; then
+ NOFORMAT='\033[0m' RED='\033[0;31m' GREEN='\033[0;32m' ORANGE='\033[0;33m' BLUE='\033[0;34m' PURPLE='\033[0;35m' CYAN='\033[0;36m' YELLOW='\033[1;33m'
+ else
+ NOFORMAT='' RED='' GREEN='' ORANGE='' BLUE='' PURPLE='' CYAN='' YELLOW=''
+ fi
+}
+#=============================================================================================================================================================================
+msg() {
+ echo >&2 -e "${1-}"
+}
+#=============================================================================================================================================================================
+die() {
+ local msg=$1
+ local code=${2-1} # default exit status 1
+ msg "$msg"
+ exit "$code"
+}
+#=============================================================================================================================================================================
+checkIfHelmIsInstalled()
+{
+ echo "Checking Helm ..."
+if command which helm > /dev/null; then
+ echo "Helm is not installed! :("
+ echo "Installing Helm ..."
+ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
+ sudo chmod 700 get_helm.sh
+ ./get_helm.sh
+ echo "Checking secrets helm plugin..."
+ helm plugin install https://github.com/jkroepke/helm-secrets --version v3.12.0 || true
+ echo "helm is installed, skipping..."
+ else
+ echo "Helm is installed :) ..."
+ sleep 1
+fi
+}
+checkIfSkaffoldIsInstalled()
+{
+ echo "Checking Skaffold ..."
+if command which helm > /dev; then
+ echo "Skaffold is not installed! :("
+ echo "Installing Skaffold ..."
+ curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/latest/skaffold-linux-amd64 && \
+ sudo install skaffold /usr/local/bin/
+ echo "Skaffold is installed, skipping..."
+ else
+ echo "Helm is installed :) ..."
+ sleep 1
+fi
+}
+#=============================================================================================================================================================================
+runOnKubernetes(){
+ checkIfHelmIsInstalled
+ checkIfSkaffoldIsInstalled
+ cd ..
+ make
+}
+#=============================================================================================================================================================================
+runTheApp()
+{
+ cd ..
+ npm install
+ npm start
+}
+#=============================================================================================================================================================================
+runTheTests()
+{
+ cd ..
+ npm install
+ npm test
+}
+#=============================================================================================================================================================================
+runtheLint()
+{
+ cd ..
+ npm install
+ npm run lint
+}
+#=============================================================================================================================================================================
+runDockerImage(){
+ cd ..
+ docker-compose up -d
+}
+#=============================================================================================================================================================================
+stopDockerImage(){
+ cd ..
+ docker-compose down
+}
+#=============================================================================================================================================================================
+generateDoc(){
+ cd ..
+ npm install
+ npm run doc
+}
+#=============================================================================================================================================================================
+buildDockerImage()
+{
+ echo "Checking Docker ..."
+if [[ $(which docker) && $(docker --version) ]]; then
+ echo "Docker is installed :) ..."
+ sleep 1
+
+ else
+ echo "Docker is not installed! :("
+ echo "Installing Docker ..."
+ sudo apt install docker.io || true
+ sudo usermod -aG docker $USER
+ newgrp docker
+fi
+
+ echo "Checking docker-compose ..."
+if [[ $(which docker-compose) && $(docker-compose --version) ]]; then
+ echo "docker-compose is installed :) ..."
+ sleep 1
+ else
+ echo "docker-compose is not installed! :("
+ echo "Installing Docker ..."
+ sudo apt install docker-compose || true
+fi
+}
+init(){
+ sudo chmod 666 /var/run/docker.sock
+}
+#=============================================================================================================================================================================
+parse_params() {
+ # default values of variables set from params
+
+ while :; do
+ case "${1-}" in
+ -h | --help) usage ;;
+ -build_docker) buildDockerImage ;;
+ -build_and_run_docker) runDockerImage ;;
+ -stop_docker) stopDockerImage ;;
+ -run_app) runTheApp ;;
+ -run_test) runTheTests ;;
+ -run_lint) runtheLint ;;
+ -generate_doc) generateDoc;;
+ -deploy_on_kubernetes) runOnKubernetes ;;
+ -v | --verbose) set -x ;;
+ --no-color) NO_COLOR=1 ;;
+ -?*) die "Unknown option: $1" ;;
+ *) break ;;
+ esac
+ shift
+ done
+
+ args=("$@")
+
+ return 0
+}
+#=============================================================================================================================================================================
+clear
+setup_colors
+init
+parse_params "$@"
+#=============================================================================================================================================================================
--
2.39.5
From 0fae87c4c8f79a7155d40f7b64d90a7446964066 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Thu, 11 Aug 2022 20:02:53 +0300
Subject: [PATCH 02/23] Added Elastic PIT features and tested.
---
documentation/classes/EsQueryDto.html | 396 ++++++++++++++++++
documentation/classes/SearchQueryDto.html | 100 +++++
documentation/classes/SearchResultDto.html | 12 +-
.../controllers/PapersController.html | 19 +-
documentation/coverage.html | 30 +-
documentation/graph/dependencies.svg | 174 ++++----
.../injectables/PageInterceptor.html | 16 +-
documentation/injectables/SearchService.html | 241 ++++++++++-
documentation/interfaces/PageMeta.html | 50 +++
documentation/js/menu-wc.js | 37 +-
documentation/js/menu-wc_es5.js | 2 +-
documentation/js/search/search_index.js | 4 +-
documentation/miscellaneous/variables.html | 112 +++--
documentation/modules/AppModule.html | 12 +-
.../modules/CommonModule/dependencies.svg | 8 +-
documentation/modules/SearchModule.html | 17 +-
documentation/overview.html | 2 +-
src/core/domain/dtos/es-query.dto.ts | 45 ++
src/core/domain/dtos/search-q.dto.ts | 7 +
src/core/services/common/search.service.ts | 49 ++-
src/infrastructure/modules/app.module.ts | 1 -
src/infrastructure/modules/search.module.ts | 5 +-
src/test/search.service.spec.ts | 103 +++++
23 files changed, 1230 insertions(+), 212 deletions(-)
create mode 100644 documentation/classes/EsQueryDto.html
create mode 100644 src/core/domain/dtos/es-query.dto.ts
create mode 100644 src/test/search.service.spec.ts
diff --git a/documentation/classes/EsQueryDto.html b/documentation/classes/EsQueryDto.html
new file mode 100644
index 0000000..1a26a78
--- /dev/null
+++ b/documentation/classes/EsQueryDto.html
@@ -0,0 +1,396 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ EsQueryDto
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Elasticsearch query DTO
+
+
+
+
+
+
+
+ Index
+
+
+
+
+ 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
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 " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/SearchQueryDto.html b/documentation/classes/SearchQueryDto.html
index 048aaa5..16bb309 100644
--- a/documentation/classes/SearchQueryDto.html
+++ b/documentation/classes/SearchQueryDto.html
@@ -115,6 +115,92 @@
+
+ Constructor
+
+
+
+
+constructor(query: string , page: number , limit: number , order: string )
+
+
+
+
+
+
+
+
+
+
+ Constructs an object with provided parameters
+
+
+
Parameters :
+
+
+
+ Name
+ Type
+ Optional
+
+
+
+
+ query
+
+
+ string
+
+
+
+ No
+
+
+
+
+ page
+
+
+ number
+
+
+
+ No
+
+
+
+
+ limit
+
+
+ number
+
+
+
+ No
+
+
+
+
+ order
+
+
+ string
+
+
+
+ No
+
+
+
+
+
+
+
+
+
+
+
@@ -356,6 +442,20 @@ export class SearchQueryDto {
example: 'asc',
})
order: string;
+
+ /**
+ * Constructs an object with provided parameters
+ * @param query
+ * @param page
+ * @param limit
+ * @param order
+ */
+ constructor(query: string, page: number, limit: number, order: string) {
+ this.query = query;
+ this.page = page;
+ this.limit = limit;
+ this.order = order;
+ }
}
diff --git a/documentation/classes/SearchResultDto.html b/documentation/classes/SearchResultDto.html
index 37f35ca..6797141 100644
--- a/documentation/classes/SearchResultDto.html
+++ b/documentation/classes/SearchResultDto.html
@@ -94,7 +94,7 @@
data
- status
+ statusCode
@@ -222,10 +222,10 @@
-
+
- status
-
+ statusCode
+
@@ -293,7 +293,7 @@ export class SearchResultDto {
description: 'Status code',
example: 200,
})
- status: number;
+ statusCode: number;
/**
* All the data acquired.
@@ -315,7 +315,7 @@ export class SearchResultDto {
* @param data
*/
constructor(code: number, data: object) {
- this.status = code;
+ this.statusCode = code;
this.data = data;
}
}
diff --git a/documentation/controllers/PapersController.html b/documentation/controllers/PapersController.html
index e667872..ed5a6ff 100644
--- a/documentation/controllers/PapersController.html
+++ b/documentation/controllers/PapersController.html
@@ -141,8 +141,8 @@
-
+
@@ -210,14 +210,14 @@
Decorators :
- @ApiOperation({summary: 'Finds paper by its UUID.'}) @ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto}) @Get(':uuid')
+ @ApiOperation({summary: 'Finds paper by its UUID.'}) @ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto}) @Get(':uuid') @UseInterceptors(PageInterceptor) @HttpCode(200)
-
+
@@ -279,6 +279,7 @@ import { PageInterceptor } from "src/core/interceptors/page.interceptor&quo
import { LoggerInterceptor } from "src/core/interceptors";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
import { ApiOperation, ApiResponse } from "@nestjs/swagger";
+import { SearchQueryDto } from "src/core/domain/dtos";
/**
* /papers/ route controller
@@ -305,11 +306,10 @@ export class PapersController {
getByContext(@Query() query): object {
return this.searchService.findByContext(query.query).then(
(response: SearchResultDto) => {
- // console.log(JSON.stringify(response.data, null, 2));
return response.data;
},
(error: SearchResultDto) => {
- throw new HttpException(error.data, error.status);
+ throw new HttpException(error.data, error.statusCode);
}
);
}
@@ -326,11 +326,12 @@ export class PapersController {
description: 'Returns back acquired paper.',
type: SearchResultDto,
})
- @Get(':uuid')
+ @Get(':uuid')
+ @UseInterceptors(PageInterceptor)
+ @HttpCode(200)
getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {
return this.searchService.findByID(uuid).then(
(response) => {
- // console.log(JSON.stringify(response.data, null, 2));
return response.data;
},
(error) => {
diff --git a/documentation/coverage.html b/documentation/coverage.html
index f168902..6e9bc69 100644
--- a/documentation/coverage.html
+++ b/documentation/coverage.html
@@ -140,6 +140,30 @@
(1/1)
+
+
+
+ src/core/domain/dtos/es-query.dto.ts
+
+ class
+ EsQueryDto
+
+ 100 %
+ (5/5)
+
+
+
+
+
+ src/core/domain/dtos/es-query.dto.ts
+
+ variable
+ allowedProperties
+
+ 100 %
+ (1/1)
+
+
@@ -197,7 +221,7 @@
SearchQueryDto
100 %
- (5/5)
+ (6/6)
@@ -257,7 +281,7 @@
PageMeta
100 %
- (6/6)
+ (7/7)
@@ -425,7 +449,7 @@
SearchService
100 %
- (5/5)
+ (7/7)
diff --git a/documentation/graph/dependencies.svg b/documentation/graph/dependencies.svg
index c2b88aa..7660ee6 100644
--- a/documentation/graph/dependencies.svg
+++ b/documentation/graph/dependencies.svg
@@ -4,217 +4,217 @@
-
-
+
+
dependencies
-
-dependencies
-
-cluster_LoggerModule
-
-
-
-cluster_LoggerModule_exports
-
-
-
-cluster_LoggerModule_providers
-
-
-
-cluster_CommonModule
-
-
-
-cluster_CommonModule_imports
-
-
-
-cluster_CommonModule_exports
-
-
+
+dependencies
cluster_AppModule
-
+
cluster_AppModule_imports
-
+
cluster_HttpResponseModule
-
+
cluster_HttpResponseModule_exports
-
+
cluster_HttpResponseModule_providers
-
+
+
+
+cluster_CommonModule
+
+
+
+cluster_CommonModule_imports
+
+
+
+cluster_CommonModule_exports
+
+
+
+cluster_LoggerModule
+
+
+
+cluster_LoggerModule_exports
+
+
+
+cluster_LoggerModule_providers
+
cluster_SearchModule
-
+
cluster_SearchModule_exports
-
+
cluster_SearchModule_providers
-
+
CommonModule
-
-CommonModule
+
+CommonModule
AppModule
-
-AppModule
+
+AppModule
CommonModule->AppModule
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
CommonModule->HttpResponseModule
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
CommonModule->LoggerModule
-
-
+
+
SearchModule
-
-SearchModule
+
+SearchModule
SearchModule->AppModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchModule->SearchService
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
HttpResponseModule->CommonModule
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseModule->HttpResponseService
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
LoggerModule->CommonModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerModule->LoggerService
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseService->HttpResponseModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerService->LoggerModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchService->SearchModule
-
-
+
+
diff --git a/documentation/injectables/PageInterceptor.html b/documentation/injectables/PageInterceptor.html
index 7d68907..5120434 100644
--- a/documentation/injectables/PageInterceptor.html
+++ b/documentation/injectables/PageInterceptor.html
@@ -127,8 +127,8 @@
-
+
@@ -180,7 +180,7 @@
@@ -202,6 +202,7 @@ import { MetadataScanner } from "@nestjs/core";
import { Observable, map } from "rxjs";
import { PageDto } from "../domain/dtos";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
+import { SearchResultDto } from "../domain/dtos/search-result.dto";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
@@ -216,20 +217,19 @@ export class PageInterceptor implements NestInterceptor {
* @param next
* @returns Page with content and metadata
*/
- intercept(context: ExecutionContext, next: CallHandler<any>): Observable<any> | Promise<Observable<any>> {
+ intercept(context: ExecutionContext, next: CallHandler<any>): Observable<PageDto<object>> {
const request = context.switchToHttp().getRequest();
const query: SearchQueryDto = request.query;
return next.handle().pipe(
map((res) => {
- if (!res.hits) return res;
-
let meta: PageMeta = {
- pagenum: +query?.page,
+ total: res.total.value,
+ pagenum: !query?.page ? 1 : query.page,
order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
hasNext: false,
hasPrev: false,
- pagesize: !query?.limit ? 1 : query.limit,
+ pagesize: !query?.limit ? 10 : query.limit,
};
meta.hasNext = res.hits[meta.pagenum * meta.pagesize] ? true : false;
diff --git a/documentation/injectables/SearchService.html b/documentation/injectables/SearchService.html
index 5ee35c5..927d5f6 100644
--- a/documentation/injectables/SearchService.html
+++ b/documentation/injectables/SearchService.html
@@ -102,6 +102,10 @@
@@ -179,6 +187,85 @@ HTTPService instance
Methods
+
+
+
+
+
+
+ Async
+ deletePIT
+
+
+
+
+
+
+
+ deletePIT(pitID: string )
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deletes the PIT specified by provided ID
+
+
+
+
Parameters :
+
+
+
+
+ Name
+ Type
+ Optional
+ Description
+
+
+
+
+ pitID
+
+ string
+
+
+
+ No
+
+
+
+
+ , ID of the PIT, that would be deleted
+
+
+
+
+
+
+
+
+
+ Returns : Promise<boolean>
+
+
+
+
true/false, depending on the result of deletion of the PIT
+
+
+
+
+
+
@@ -201,8 +288,8 @@ HTTPService instance
-
+
@@ -327,6 +414,89 @@ HTTPService instance
+
+
+
+
+
+
+ Async
+ getPIT
+
+
+
+
+
+
+
+ getPIT(alive: number )
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Acquires a PIT ID from Elasticsearch, needed for a request
+
+
+
+
Parameters :
+
+
+
+
+ Name
+ Type
+ Optional
+ Default value
+ Description
+
+
+
+
+ alive
+
+ number
+
+
+
+ No
+
+
+
+ 1
+
+
+
+ , amount of time in minutes (defaults to 1)
+
+
+
+
+
+
+
+
+
+ Returns : Promise<string>
+
+
+
+
+
+
+
@@ -406,25 +576,21 @@ export class SearchService {
query_string: {
query: 'id:' + uuid
}
- }
+ },
}
return new Promise((resolve, reject) => {
try {
- (this.httpService.get<EsResponseDto>('http://localhost:' + this.ES_PORT + '/_search', {
+ (this.httpService.get<EsResponseDto>(`http://localhost:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
.pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res: any) => {
+ .subscribe((res: EsResponseDto) => {
if (res.timed_out) {
reject(new SearchResultDto(504, {message: 'Timed Out'}));
}
- if (!res.hits.hits.length) {
- reject(new SearchResultDto(404, {message: 'Not Found'}));
- }
-
resolve(new SearchResultDto(200, res.hits));
});
} catch (error) {
@@ -445,25 +611,23 @@ export class SearchService {
query: query_str,
default_field: "content"
}
- }
+ },
}
+ let pitID = this.getPIT(1);
+
return new Promise((resolve, reject) => {
try {
- (this.httpService.get<EsResponseDto>('http://localhost:'+ this.ES_PORT + '/_search', {
+ (this.httpService.get<EsResponseDto>(`http://localhost:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
.pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res: any) => {
+ .subscribe((res: EsResponseDto) => {
if (res.timed_out) {
reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
- }
-
- if (!res.hits.hits.length) {
- reject(new SearchResultDto(404, {status: 404, message: 'Not Found'}));
- }
-
+ }
+
resolve(new SearchResultDto(200, res.hits));
});
} catch (error) {
@@ -471,6 +635,47 @@ export class SearchService {
}
});
}
+
+ /**
+ * Acquires a PIT ID from Elasticsearch, needed for a request
+ * @param alive, amount of time in minutes (defaults to 1)
+ * @returns Point-In-Time ID
+ */
+ async getPIT(alive: number = 1): Promise<string> {
+ return new Promise((resolve, reject) => {
+ try {
+ (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive}m`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.id);
+ }));
+ } catch (error) {
+ reject(error);
+ }
+ });
+ }
+
+ /**
+ * Deletes the PIT specified by provided ID
+ * @param pitID, ID of the PIT, that would be deleted
+ * @returns true/false, depending on the result of deletion of the PIT
+ */
+ async deletePIT(pitID: string): Promise<boolean> {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://localhost:${this.ES_PORT}/papers/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
+ }
}
diff --git a/documentation/interfaces/PageMeta.html b/documentation/interfaces/PageMeta.html
index eeb55c2..3495c3d 100644
--- a/documentation/interfaces/PageMeta.html
+++ b/documentation/interfaces/PageMeta.html
@@ -121,6 +121,12 @@
pagesize
+
+
+ total
+
+
@@ -322,6 +328,45 @@
Number of elements on the page
+
+
+
+
+
+
+
+
+
+
+ total
+
+
+
+
+
+
+
+
+ total: number
+
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+
+
+
+
+
+
@@ -338,6 +383,11 @@
* Structure of page metadata
*/
export interface PageMeta {
+ /**
+ * Total search results
+ */
+ total: number;
+
/**
* Number of the page
*/
diff --git a/documentation/js/menu-wc.js b/documentation/js/menu-wc.js
index 6a8b651..62f04bc 100644
--- a/documentation/js/menu-wc.js
+++ b/documentation/js/menu-wc.js
@@ -62,20 +62,6 @@ customElements.define('compodoc-menu', class extends HTMLElement {
AppModule
-
-
-
-
CommonModule
@@ -133,15 +119,29 @@ customElements.define('compodoc-menu', class extends HTMLElement {
SearchModule
+
+
+
+
-
+
SearchService
@@ -174,6 +174,9 @@ customElements.define('compodoc-menu', class extends HTMLElement {
EnvironmentVariables
+
+ EsQueryDto
+
EsResponseDto
diff --git a/documentation/js/menu-wc_es5.js b/documentation/js/menu-wc_es5.js
index b1649a1..0f35aac 100644
--- a/documentation/js/menu-wc_es5.js
+++ b/documentation/js/menu-wc_es5.js
@@ -51,7 +51,7 @@ customElements.define('compodoc-menu', /*#__PURE__*/function (_HTMLElement) {
}, {
key: "render",
value: function render(isNormalMode) {
- var tp = lithtml.html("\n \n \n \n HttpResponseModule \n \n \n \n Injectables \n \n
\n \n \n \n \n LoggerModule \n \n \n \n Injectables \n \n
\n \n \n \n \n SearchModule \n \n \n \n Injectables \n \n
\n \n \n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
+ var tp = lithtml.html("\n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
this.innerHTML = tp.strings;
}
}]);
diff --git a/documentation/js/search/search_index.js b/documentation/js/search/search_index.js
index 4fb8306..a848c63 100644
--- a/documentation/js/search/search_index.js
+++ b/documentation/js/search/search_index.js
@@ -1,4 +1,4 @@
var COMPODOC_SEARCH_INDEX = {
- "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.019,1,2.16]],["body/modules/AppModule.html",[0,1.733,1,4.075,2,2.177,3,2.13,4,2.961,5,2.961,6,3.552,7,0.03,8,3.552,9,2.526,10,1.742,11,1.479,12,0.427,13,0.34,14,0.34,15,2.588,16,0.474,17,2.837,18,2.526,19,3.447,20,3.069,21,0.777,22,4.69,23,3.528,24,0.866,25,5.268,26,2.309,27,2.961,28,2.588,29,2.773,30,3.528,31,3.44,32,3.528,33,2.773,34,3.528,35,2.961,36,3.528,37,3.528,38,2.961,39,2.961,40,3.528,41,3.528,42,1.742,43,1.267,44,3.44,45,2.961,46,2.961,47,2.588,48,2.588,49,3.528,50,3.528,51,3.528,52,3.528,53,3.528,54,2.393,55,2.961,56,3.528,57,2.309,58,3.936,59,4.69,60,0.427,61,0.184,62,0.021,63,0.021]],["title/modules/CommonModule.html",[0,1.019,6,1.951]],["body/modules/CommonModule.html",[0,1.636,2,1.654,3,2.407,6,3.885,7,0.029,9,2.854,10,2.106,11,1.789,12,0.517,13,0.411,14,0.411,20,3.467,21,0.698,24,1.047,35,4.448,60,0.517,61,0.223,62,0.023,63,0.023,64,3.581,65,3.581,66,3.581,67,3.924,68,3.924,69,4.267,70,3.467]],["title/classes/EnvironmentVariables.html",[61,0.172,71,2.421]],["body/classes/EnvironmentVariables.html",[7,0.03,12,0.477,13,0.38,14,0.38,16,0.529,21,0.61,43,1.81,54,1.79,60,0.477,61,0.29,62,0.022,63,0.022,71,3.697,72,1.945,73,2.89,74,3.697,75,5.041,76,3.941,77,3.307,78,3.941,79,3.833,80,1.945,81,2.89,82,2.89,83,3.941,84,2.579,85,3.307,86,2.579,87,5.041,88,2.579,89,2.579,90,3.941,91,3.307,92,4.296,93,1.312,94,3.307,95,1.415,96,3.941,97,2.33,98,3.307,99,3.307,100,5.041,101,3.941,102,3.941,103,3.307,104,3.941,105,3.941,106,2.579,107,3.941,108,3.307,109,3.307,110,1.79,111,3.941,112,1.528]],["title/classes/EsResponseDto.html",[61,0.172,113,2.16]],["body/classes/EsResponseDto.html",[7,0.03,11,1.732,12,0.355,13,0.283,14,0.283,16,0.735,21,0.5,42,1.448,43,1.053,54,1.877,60,0.355,61,0.216,62,0.018,63,0.018,72,1.448,79,3.131,80,1.448,106,2.704,108,3.468,113,2.704,114,4.016,115,2.151,116,3.717,117,1.484,118,2.362,119,0.52,120,1.369,121,4.768,122,4.281,123,4.768,124,5.003,125,0.92,126,2.564,127,2.564,128,4.133,129,3.21,130,3.468,131,1.179,132,2.933,133,4.36,134,2.203,135,4.133,136,2.704,137,3.21,138,2.933,139,3.031,140,3.468,141,2.443,142,2.704,143,2.933,144,2.933,145,1.732,146,3.468,147,4.133,148,4.133,149,2.933,150,2.704,151,2.933,152,4.133,153,4.133,154,3.583,155,1.58,156,4.133,157,3.509,158,3.509,159,4.133,160,4.785,161,1.448,162,1.58,163,4.133,164,2.443,165,2.933,166,2.933,167,2.462,168,1.332,169,2.151,170,2.933,171,2.933,172,2.933,173,4.133,174,2.933,175,2.462,176,2.933,177,2.933,178,2.933,179,2.933,180,2.151]],["title/controllers/HealthController.html",[181,1.951,182,2.16]],["body/controllers/HealthController.html",[7,0.03,12,0.648,13,0.351,14,0.351,16,0.489,18,1.963,21,0.58,24,0.895,60,0.441,61,0.297,62,0.021,63,0.021,93,1.595,95,1.721,112,1.413,117,1.922,119,0.646,127,1.799,131,0.827,145,2.542,181,3.362,182,3.135,183,3.059,184,3.059,185,5.188,186,2.177,187,5.089,188,3.645,189,3.645,190,4.022,191,4.792,192,4.792,193,1.922,194,5.687,195,2.177,196,4.792,197,2.683,198,4.792,199,4.792,200,4.792,201,2.673,202,3.645,203,1.799,204,1.309,205,2.385,206,2.155,207,3.059,208,4.022]],["title/modules/HealthModule.html",[0,1.019,209,2.421]],["body/modules/HealthModule.html",[0,1.733,2,1.819,7,0.03,12,0.568,13,0.452,14,0.452,18,3.024,20,3.069,21,0.754,24,1.152,60,0.568,61,0.245,62,0.025,63,0.025,182,3.932,201,3.44,209,4.118,210,4.691,211,4.712,212,3.069,213,5.615,214,4.691]],["title/interfaces/HttpResponse.html",[215,1.28,216,1.951]],["body/interfaces/HttpResponse.html",[7,0.03,12,0.448,13,0.357,14,0.357,16,0.833,60,0.448,62,0.021,63,0.021,81,4.709,117,2.285,119,0.656,120,1.385,125,1.146,134,2.091,139,3.55,145,2.638,193,2.285,197,2.45,215,1.877,216,2.862,217,1.994,218,3.107,219,3.107,220,3.702,221,2.766,222,3.6,223,3.55,224,4.841,225,4.841,226,5.721,227,4.063,228,4.841,229,4.841,230,4.841,231,2.862,232,4.841]],["title/classes/HttpResponseException.html",[61,0.172,233,2.421]],["body/classes/HttpResponseException.html",[0,1.6,7,0.03,12,0.499,13,0.397,14,0.397,16,0.696,21,0.628,24,1.011,60,0.499,61,0.215,62,0.023,63,0.023,72,2.032,93,1.371,117,2.249,125,0.73,131,0.935,197,2.921,203,2.032,204,1.861,216,3.519,221,2.354,233,3.801,234,4.35,235,3.456,236,3.064,237,4.366,238,4.35,239,4.35,240,4.76,241,4.35,242,4.118,243,5.183,244,1.479,245,1.371,246,1.371,247,3.02,248,4.118,249,4.118,250,5.183]],["title/modules/HttpResponseModule.html",[0,1.019,67,1.951]],["body/modules/HttpResponseModule.html",[0,1.69,2,1.744,3,2.487,7,0.029,9,2.949,10,2.221,11,1.886,12,0.545,13,0.434,14,0.434,21,0.663,24,1.104,57,3.582,60,0.545,61,0.235,62,0.024,63,0.024,67,3.83,70,3.582,251,3.776,252,3.776,253,3.776,254,3.951,255,4.499,256,4.499,257,3.3]],["title/injectables/HttpResponseService.html",[254,1.951,258,1.099]],["body/injectables/HttpResponseService.html",[7,0.03,12,0.321,13,0.256,14,0.256,16,0.856,21,0.548,24,0.652,43,0.953,47,3.32,48,3.32,60,0.321,61,0.139,62,0.017,63,0.017,93,1.887,95,2.085,112,1.925,117,2.085,119,0.47,125,1.049,131,1.127,134,2.386,145,2.699,168,1.206,186,1.748,193,2.21,197,2.795,204,1.382,206,3.498,216,2.935,221,2.637,222,3.638,244,1.783,245,1.652,246,1.652,247,1.947,254,2.275,258,1.281,259,1.43,260,4.423,261,2.228,262,3.799,263,3.848,264,3.848,265,3.848,266,2.655,267,2.655,268,3.848,269,1.43,270,3.848,271,4.964,272,3.848,273,3.848,274,2.655,275,5.496,276,3.848,277,2.655,278,3.848,279,2.655,280,2.655,281,2.228,282,3.799,283,3.799,284,2.228,285,2.228,286,2.655,287,2.655,288,2.655,289,2.655,290,2.655,291,2.655]],["title/injectables/LoggerInterceptor.html",[33,1.951,258,1.099]],["body/injectables/LoggerInterceptor.html",[7,0.03,12,0.332,13,0.264,14,0.264,16,0.618,21,0.646,24,0.672,33,2.327,43,2.173,60,0.332,61,0.143,62,0.017,63,0.017,93,1.676,95,1.808,110,1.788,112,1.526,117,1.654,119,0.485,120,1.126,125,0.816,131,1.046,134,1.786,137,2.481,168,1.244,186,1.788,195,1.788,197,2.523,204,1.413,206,3.283,236,1.619,244,1.413,245,1.31,246,1.31,257,2.008,258,1.31,259,1.475,269,1.475,292,2.298,293,4.661,294,4.661,295,3.014,296,3.379,297,4.227,298,3.936,299,3.303,300,4.197,301,3.283,302,4.227,303,2.739,304,4.227,305,3.154,306,3.936,307,3.866,308,3.936,309,5.963,310,2.739,311,3.936,312,3.303,313,2.008,314,3.303,315,2.481,316,3.936,317,2.739,318,3.303,319,1.792,320,3.936,321,2.739,322,1.792,323,4.607,324,4.607,325,3.936,326,2.298,327,3.936,328,3.936,329,2.739,330,2.739,331,3.936,332,2.739,333,2.739,334,2.739,335,2.739,336,2.008,337,2.739,338,3.936,339,1.792,340,3.936,341,2.739,342,2.739,343,2.739]],["title/modules/LoggerModule.html",[0,1.019,68,1.951]],["body/modules/LoggerModule.html",[0,1.69,2,1.744,3,2.487,7,0.029,9,2.949,10,2.221,11,1.886,12,0.545,13,0.434,14,0.434,21,0.663,24,1.104,57,3.582,60,0.545,61,0.235,62,0.024,63,0.024,68,3.83,70,3.582,193,1.616,257,3.3,315,3.6,344,3.776,345,3.776,346,3.776,347,4.499]],["title/injectables/LoggerService.html",[258,1.099,315,1.778]],["body/injectables/LoggerService.html",[7,0.03,12,0.247,13,0.196,14,0.196,16,0.719,21,0.382,24,0.5,54,0.925,60,0.247,61,0.106,62,0.014,63,0.014,93,2.002,95,1.976,110,1.433,112,1.497,119,0.361,120,0.902,125,0.996,131,1.276,150,1.332,186,1.433,193,2.333,195,2.756,203,1.905,204,1.133,206,3.254,222,3.896,236,1.204,244,1.925,245,1.784,246,1.872,258,1.05,259,1.097,293,4.719,295,3.255,296,4.368,305,3.131,313,3.449,315,2.533,348,1.709,349,3.154,350,3.86,351,3.154,352,3.936,353,3.648,354,2.313,355,3.154,356,4.347,357,3.154,358,3.154,359,3.154,360,3.154,361,2.036,362,3.154,363,3.154,364,6.483,365,2.036,366,5.813,367,3.154,368,2.036,369,3.154,370,3.154,371,2.036,372,3.154,373,3.154,374,3.154,375,2.036,376,3.154,377,2.036,378,3.154,379,2.036,380,3.154,381,2.036,382,3.154,383,3.154,384,2.036,385,2.036,386,2.036,387,2.036,388,2.036,389,2.036,390,2.036,391,2.036,392,2.036,393,2.036,394,2.036,395,2.036,396,2.036,397,2.036,398,2.036]],["title/classes/PageDto.html",[61,0.172,399,2.16]],["body/classes/PageDto.html",[7,0.03,12,0.416,13,0.331,14,0.331,16,0.697,21,0.629,42,1.694,43,1.233,54,2.092,60,0.416,61,0.24,62,0.02,63,0.02,72,1.694,80,1.694,93,1.533,118,1.694,119,0.608,120,1.487,125,0.921,126,2.273,127,2.273,129,1.849,131,1.179,133,3.865,141,3.283,154,3.4,155,1.849,161,1.694,162,1.849,203,1.694,221,2.902,241,3.865,244,1.866,245,1.143,246,1.143,295,3.901,399,3.013,400,2.518,401,3.745,402,4.605,403,3.865,404,4.598,405,5.791,406,3.524,407,4.605,408,3.377,409,2.722,410,3.433,411,4.66,412,3.433,413,4.605,414,3.433,415,3.433,416,3.433,417,2.881,418,3.433]],["title/injectables/PageInterceptor.html",[258,1.099,419,2.16]],["body/injectables/PageInterceptor.html",[7,0.03,12,0.347,13,0.276,14,0.276,16,0.384,21,0.702,24,0.703,26,1.873,43,2.024,54,1.845,60,0.347,61,0.149,62,0.018,63,0.018,93,1.352,95,1.458,106,3.362,110,1.3,112,2.104,119,0.507,125,0.507,126,1.413,131,0.65,137,1.541,141,2.401,164,3.208,168,1.845,186,1.845,193,1.845,215,1.575,221,1.3,236,1.692,244,1.845,245,0.953,246,0.953,247,2.099,258,1.352,259,1.541,297,4.312,299,3.409,300,3.768,301,3.038,302,4.312,305,2.188,307,3.962,318,4.312,319,1.873,326,2.402,336,2.099,339,2.657,399,1.873,401,2.401,403,3.409,404,2.979,406,2.401,419,2.657,420,2.402,421,4.061,422,4.061,423,2.862,424,4.061,425,3.409,426,2.979,427,2.657,428,2.862,429,2.402,430,2.862,431,2.657,432,2.862,433,2.862,434,2.401,435,2.862,436,2.402,437,1.692,438,2.862,439,2.862,440,2.402,441,2.402,442,2.402,443,2.862,444,2.862,445,4.061,446,2.862,447,2.402,448,2.402,449,2.402,450,2.862,451,2.862,452,2.862,453,2.862,454,5.138,455,2.862,456,2.862,457,2.862,458,2.862,459,2.862,460,2.862,461,4.061,462,2.862,463,2.862,464,4.061,465,2.862,466,2.862,467,2.862,468,2.402,469,2.862,470,2.862,471,2.862,472,2.862]],["title/interfaces/PageMeta.html",[215,1.28,406,1.951]],["body/interfaces/PageMeta.html",[7,0.03,12,0.454,13,0.362,14,0.362,16,0.504,21,0.454,60,0.454,62,0.021,63,0.021,119,0.665,120,1.398,125,1.056,134,2.495,141,2.887,142,3.999,215,1.455,217,2.021,301,2.887,401,3.856,406,2.887,434,3.805,436,3.15,442,4.827,447,4.827,448,4.827,449,4.827,473,3.15,474,3.15,475,4.884,476,5.751,477,4.827,478,5.751,479,4.884,480,4.827,481,3.753]],["title/controllers/PapersController.html",[19,2.16,181,1.951]],["body/controllers/PapersController.html",[7,0.03,12,0.337,13,0.268,14,0.268,16,0.72,18,1.497,19,2.603,21,0.696,24,0.682,33,1.643,60,0.337,61,0.145,62,0.018,63,0.022,93,1.786,95,2.111,109,3.339,110,1.807,112,1.966,117,2.149,119,0.493,125,0.951,126,2.755,127,1.964,131,0.903,137,2.731,145,1.668,155,1.497,175,5.022,181,2.746,184,2.333,186,1.807,193,1.668,195,1.807,205,1.819,240,2.333,244,1.429,245,1.324,246,1.324,301,1.643,304,4.256,305,2.143,322,1.819,419,1.819,437,3.172,441,2.333,482,2.333,483,3.978,484,3.978,485,3.978,486,2.78,487,3.978,488,4.256,489,2.918,490,2.78,491,4.256,492,4.256,493,4.256,494,2.78,495,2.78,496,3.978,497,2.918,498,2.78,499,4.256,500,2.78,501,2.78,502,2.78,503,3.978,504,4.256,505,3.339,506,2.78,507,3.978,508,2.78,509,2.78,510,2.78,511,2.502,512,2.333,513,2.78,514,2.78,515,3.172,516,1.497,517,2.333,518,4.646,519,4.646,520,2.78,521,3.978,522,2.78,523,2.78,524,2.78,525,2.78,526,2.78,527,3.978,528,3.978,529,2.603,530,3.978,531,3.978,532,3.978,533,2.78,534,2.78,535,2.78]],["title/guards/RolesGuard.html",[536,2.16,537,2.421]],["body/guards/RolesGuard.html",[7,0.03,12,0.416,13,0.331,14,0.331,16,0.697,21,0.672,24,0.843,26,2.246,43,1.654,54,2.36,60,0.416,61,0.179,62,0.02,63,0.02,93,1.533,95,1.994,112,1.785,119,0.608,125,0.816,127,1.694,131,1.045,142,3.013,161,2.273,186,2.092,190,3.865,203,1.694,204,1.654,205,2.246,223,3.377,236,2.03,244,1.654,245,1.533,246,1.533,258,1.533,285,2.881,300,4.072,305,2.991,336,2.518,536,4.05,537,3.377,538,3.433,539,2.881,540,3.4,541,5.553,542,3.433,543,6.27,544,3.433,545,4.605,546,5.195,547,4.605,548,3.433,549,4.247,550,3.865,551,3.013,552,3.865,553,2.518,554,4.605,555,3.433,556,3.433,557,3.433,558,3.433,559,3.433]],["title/modules/SearchModule.html",[0,1.019,8,1.951]],["body/modules/SearchModule.html",[0,1.859,2,1.65,3,2.403,7,0.03,8,3.786,9,2.85,10,2.101,11,1.784,12,0.515,13,0.41,14,0.41,16,0.571,18,2.292,20,2.785,21,0.729,24,1.045,27,3.572,28,3.121,57,3.462,60,0.515,61,0.222,62,0.023,63,0.023,70,3.462,211,4.441,212,2.785,511,3.574,512,3.572,560,3.572,561,3.572,562,3.572,563,4.256,564,3.88]],["title/classes/SearchQueryDto.html",[61,0.172,431,2.16]],["body/classes/SearchQueryDto.html",[7,0.03,12,0.39,13,0.31,14,0.31,16,0.76,21,0.534,42,1.589,43,1.156,60,0.39,61,0.23,62,0.019,63,0.019,72,1.589,79,3.29,80,1.589,116,2.884,117,1.583,118,2.481,119,0.57,120,1.439,125,0.958,127,2.669,129,3.285,131,1.227,134,2.426,154,3.706,155,1.734,157,3.687,158,3.687,161,1.589,162,1.734,169,3.233,193,2.1,401,3.54,431,2.884,434,3.458,437,3.605,480,4.538,516,3.051,564,3.233,565,2.361,566,4.909,567,3.219,568,4.408,569,3.219,570,5.407,571,5.407,572,3.219,573,3.7,574,3.219,575,2.702,576,3.219,577,3.7,578,3.219,579,4.408,580,4.408,581,3.219,582,3.233,583,3.7,584,3.219,585,4.219,586,4.219,587,2.702]],["title/classes/SearchResultDto.html",[61,0.172,515,1.951]],["body/classes/SearchResultDto.html",[7,0.03,12,0.414,13,0.33,14,0.33,16,0.696,21,0.556,42,1.687,43,1.228,60,0.414,61,0.24,62,0.02,63,0.02,72,1.687,79,2.237,80,1.687,93,1.528,116,3.627,117,1.649,118,2.559,119,0.606,120,1.484,125,0.919,126,3.003,127,2.267,129,2.986,130,2.869,131,1.177,134,2.242,145,2.592,154,3.393,155,1.841,157,3.803,158,3.803,161,1.687,162,1.841,203,1.687,221,2.939,231,3.596,244,1.862,245,1.138,246,1.138,408,3.368,409,2.715,411,3.854,417,2.869,491,3.854,493,4.652,515,2.715,516,2.986,575,2.869,585,3.854,586,2.869,588,2.507,589,4.592,590,4.592,591,3.419,592,3.419,593,3.419]],["title/injectables/SearchService.html",[258,1.099,511,1.778]],["body/injectables/SearchService.html",[7,0.03,11,1.513,12,0.295,13,0.234,14,0.234,16,0.326,21,0.616,24,0.597,60,0.295,61,0.127,62,0.016,63,0.016,93,1.432,95,1.709,110,1.639,112,1.399,113,1.591,116,3.115,118,1.2,119,0.431,120,1.033,122,3.491,125,0.901,126,2.51,131,1.08,134,1.399,140,3.029,145,1.513,146,3.029,168,1.105,186,1.639,193,2.034,195,2.573,203,1.2,204,1.709,205,1.591,206,2.544,212,1.591,221,1.639,222,2.814,244,1.545,245,1.432,246,1.432,258,1.201,259,1.31,269,1.31,295,3.115,305,1.944,319,1.591,408,2.647,426,3.491,427,2.815,429,2.041,437,3.149,440,3.029,488,3.995,499,3.029,504,3.611,511,1.944,515,1.438,516,1.31,517,2.041,564,2.647,582,2.647,594,2.041,595,3.609,596,4.303,597,4.471,598,3.609,599,3.609,600,2.432,601,5.786,602,2.432,603,3.609,604,3.609,605,3.609,606,2.432,607,3.609,608,2.361,609,4.303,610,3.609,611,2.432,612,4.303,613,3.609,614,2.432,615,3.609,616,2.647,617,3.029,618,2.432,619,2.432,620,2.041,621,1.784,622,4.76,623,3.609,624,3.609,625,3.609,626,3.609,627,3.609,628,3.609,629,3.609,630,3.029,631,3.609,632,3.609,633,3.609,634,3.609,635,3.609,636,3.609,637,5.327,638,3.609,639,3.609,640,3.609,641,3.029,642,3.609,643,3.609,644,3.609,645,3.609,646,2.432,647,2.432,648,2.432]],["title/interfaces/ValidationPipeOptions.html",[215,1.28,649,2.421]],["body/interfaces/ValidationPipeOptions.html",[7,0.03,12,0.493,13,0.392,14,0.392,16,0.546,21,0.493,60,0.493,61,0.212,62,0.023,63,0.023,74,3.772,80,2.007,97,3.04,103,3.413,119,0.721,120,1.472,125,0.999,142,4.085,195,2.336,215,1.577,217,2.191,237,3.772,239,4.316,246,2.078,649,3.772,650,3.413,651,3.365,652,5.143,653,5.143,654,5.64,655,5.926,656,5.926,657,5.926,658,5.143,659,5.143,660,5.143,661,5.143,662,5.143]],["title/interfaces/VirtualBankOptions.html",[215,1.28,663,1.951]],["body/interfaces/VirtualBankOptions.html",[7,0.03,12,0.429,13,0.342,14,0.342,16,0.476,21,0.429,29,3.121,43,1.272,60,0.639,62,0.021,63,0.021,74,2.599,81,4.412,82,3.449,84,3.936,85,3.947,86,3.936,88,3.936,89,3.936,95,1.272,97,2.095,119,0.628,120,1.346,125,0.935,131,1.068,134,2.446,215,1.374,217,1.909,663,3.556,664,2.319,665,4.703,666,3.872,667,3.947,668,4.703,669,3.449,670,4.703,671,4.703,672,5.624,673,4.703,674,4.703,675,4.703,676,4.703,677,4.703,678,3.449,679,3.544,680,3.947,681,2.974,682,3.544,683,2.974,684,2.974,685,2.974]],["title/coverage.html",[686,3.764]],["body/coverage.html",[7,0.03,14,0.29,15,2.21,19,1.972,29,1.781,31,2.21,33,1.781,44,2.21,61,0.299,62,0.019,63,0.019,71,2.21,73,3.089,97,3.548,110,1.369,113,1.972,114,3.089,115,3.089,125,0.534,162,2.831,181,2.49,182,1.972,183,2.529,215,2.038,216,1.781,218,2.529,219,2.529,233,2.21,234,2.529,235,2.529,254,1.781,258,1.841,260,2.529,261,2.529,292,2.529,315,1.623,348,2.529,352,1.972,399,1.972,400,3.089,406,1.781,419,1.972,420,2.529,431,1.972,473,2.529,474,2.529,482,2.529,511,1.623,515,1.781,516,2.831,536,1.972,537,2.21,539,2.529,540,1.972,553,2.21,565,3.089,588,3.089,594,2.529,649,2.21,650,2.529,663,1.781,664,2.756,678,2.21,686,2.529,687,2.21,688,3.013,689,3.013,690,6.744,691,4.855,692,4.212,693,3.535,694,6.176,695,2.529,696,6.537,697,3.535,698,5.257,699,5.531,700,4.212,701,2.529,702,4.642,703,2.529,704,2.529,705,2.529,706,2.529,707,2.529,708,3.013,709,2.529,710,2.529,711,3.013,712,2.529]],["title/dependencies.html",[3,1.801,713,2.029]],["body/dependencies.html",[3,1.903,7,0.03,24,1.029,26,2.742,28,3.074,38,3.517,39,3.517,55,3.517,61,0.273,62,0.023,63,0.023,77,3.517,80,2.069,141,2.478,155,2.257,201,3.074,212,2.742,319,2.742,322,2.742,597,3.517,714,4.191,715,4.191,716,4.191,717,4.191,718,4.191,719,4.191,720,4.191,721,4.191,722,5.718,723,4.191,724,4.191,725,4.191,726,4.191,727,4.191,728,4.191,729,4.191,730,4.191,731,4.191,732,4.191,733,4.191,734,5.241,735,4.191,736,5.241,737,4.191,738,4.191,739,4.191,740,4.191,741,4.191,742,4.191,743,3.517,744,4.191,745,4.191,746,4.191,747,4.191,748,4.191,749,4.191]],["title/miscellaneous/enumerations.html",[750,1.49,751,3.327]],["body/miscellaneous/enumerations.html",[7,0.03,10,1.072,17,0.693,62,0.01,63,0.012,82,0.943,84,0.842,86,0.842,88,0.842,89,0.842,106,0.842,110,0.987,112,1.094,117,1.443,119,0.228,125,0.5,131,0.493,136,1.846,137,3.464,139,1.593,145,1.885,150,0.842,161,1.392,164,0.76,167,3.109,168,3.051,169,0.943,180,0.943,195,1.281,197,1.506,204,1.013,207,2.367,222,1.284,223,0.943,231,2.945,281,1.823,282,1.823,283,1.823,284,1.823,294,2.367,301,0.76,312,1.823,339,2.424,352,1.422,354,0.943,409,0.76,425,1.823,427,2.63,434,1.284,477,1.823,497,1.593,505,3.931,529,0.842,540,1.422,549,3.139,551,1.422,573,1.823,582,2.069,608,1.422,616,4.579,620,1.079,621,0.943,630,1.079,641,3.374,663,1.668,664,0.842,666,0.943,669,0.943,680,1.079,681,1.823,743,3.374,750,0.693,751,1.079,752,1.079,753,1.286,754,1.286,755,1.286,756,1.286,757,1.286,758,2.173,759,1.286,760,1.286,761,3.315,762,2.173,763,2.173,764,2.821,765,1.286,766,1.286,767,1.286,768,1.286,769,4.02,770,3.705,771,2.821,772,2.821,773,1.286,774,4.02,775,1.286,776,1.286,777,1.286,778,3.705,779,2.173,780,2.821,781,1.286,782,2.782,783,3.315,784,1.286,785,5.396,786,2.173,787,2.173,788,3.931,789,1.286,790,1.422,791,1.079,792,1.286,793,1.079,794,1.079,795,1.079,796,1.079,797,2.173,798,1.286,799,1.286,800,1.079,801,1.286,802,2.173,803,2.821,804,1.823,805,1.286,806,1.286,807,2.367,808,2.173,809,2.173,810,2.173,811,1.286,812,2.782,813,1.286,814,2.173,815,1.286,816,1.286,817,1.823,818,1.286,819,1.286,820,1.079,821,1.286,822,2.821,823,2.173,824,1.286,825,2.173,826,4.843,827,2.821,828,1.286,829,1.593,830,1.286,831,2.173,832,2.173,833,2.367,834,2.069,835,2.173,836,1.286,837,2.173,838,2.173,839,1.286,840,1.823,841,1.823,842,1.286,843,2.173,844,2.173,845,1.286,846,2.173,847,2.173,848,2.173,849,2.821,850,1.286,851,1.823,852,3.315,853,1.286,854,2.173,855,2.173,856,1.286,857,2.821,858,3.315,859,2.821,860,2.173,861,1.286,862,2.173,863,1.286,864,2.173,865,2.173,866,1.286,867,1.286,868,1.079,869,1.286,870,2.173,871,1.286,872,2.173,873,2.173,874,1.286,875,1.286,876,1.286,877,1.286,878,1.286,879,3.705,880,2.173,881,1.286,882,1.079,883,1.286,884,1.286,885,3.315,886,2.173,887,0.943,888,2.821,889,2.173,890,1.286,891,1.286,892,1.286,893,2.173,894,2.173,895,1.079,896,2.173,897,2.173,898,2.173,899,1.286,900,1.286,901,2.173,902,2.821,903,1.286,904,2.173,905,1.286,906,2.173,907,2.173,908,2.173,909,1.079,910,3.315,911,1.286,912,1.286,913,1.286,914,1.286,915,1.286,916,1.286,917,1.286,918,1.079,919,2.173,920,2.173,921,1.286,922,2.173,923,1.286,924,1.286,925,1.286,926,2.173,927,1.286,928,1.286,929,1.286,930,1.286,931,1.286,932,1.286,933,1.286,934,1.286,935,1.286,936,1.079,937,1.286,938,1.286,939,1.079,940,1.286,941,2.173,942,1.286,943,2.173,944,1.286,945,2.173,946,1.593,947,1.286,948,1.286,949,1.823,950,2.173,951,1.286,952,1.286,953,1.286,954,2.367,955,2.173,956,1.079,957,1.286,958,2.173,959,1.286,960,2.173,961,2.821,962,1.286,963,2.173,964,1.286,965,2.173,966,1.286,967,1.286,968,2.173,969,1.286,970,1.286,971,1.286,972,1.286,973,1.286,974,2.173,975,2.069,976,1.286,977,2.782,978,2.173,979,1.823,980,3.315,981,1.079,982,1.286,983,2.173,984,1.286,985,2.173,986,2.173,987,1.286,988,1.286,989,2.173,990,1.286,991,1.286,992,2.173,993,1.286,994,1.286,995,2.173,996,1.286,997,1.286,998,1.286,999,1.286,1000,1.286,1001,2.173,1002,1.593,1003,1.286,1004,1.286,1005,1.286,1006,1.079,1007,1.286,1008,1.286,1009,1.286,1010,1.286,1011,1.286,1012,0.943,1013,1.286,1014,2.173,1015,1.286,1016,1.286,1017,1.286,1018,1.286,1019,1.286,1020,1.286,1021,1.286,1022,1.286,1023,1.286,1024,2.367,1025,2.821,1026,2.821,1027,2.173,1028,2.173,1029,1.286,1030,1.079,1031,1.286,1032,2.173,1033,1.286,1034,2.173,1035,2.173]],["title/miscellaneous/functions.html",[750,1.49,1036,3.327]],["body/miscellaneous/functions.html",[7,0.028,16,0.8,17,1.849,31,3.377,62,0.02,63,0.02,73,2.518,91,4.361,92,3.377,94,2.881,95,1.994,98,2.881,99,3.865,117,1.233,118,2.943,119,0.608,125,1.056,134,2.4,137,1.849,168,1.559,193,1.654,195,2.766,197,2.36,204,2.141,237,3.377,244,2.141,245,1.984,246,1.984,269,1.849,296,4.598,313,2.518,426,3.377,529,2.246,651,2.246,678,3.811,701,2.881,702,2.881,703,3.865,704,3.865,705,3.865,706,3.865,707,3.865,709,2.881,710,4.361,750,1.849,954,2.881,1036,2.881,1037,3.433,1038,3.433,1039,5.791,1040,3.433,1041,3.433,1042,3.433,1043,3.433,1044,3.433,1045,3.433,1046,3.433,1047,4.605,1048,3.433,1049,3.433,1050,3.433,1051,3.433,1052,3.433,1053,3.433,1054,2.881,1055,3.433,1056,4.605,1057,4.605,1058,3.433,1059,3.433,1060,4.605,1061,4.605,1062,3.433,1063,2.881,1064,3.433]],["title/index.html",[119,0.49,1065,2.322,1066,2.322]],["body/index.html",[7,0.027,13,0.377,17,3.147,42,2.263,62,0.017,63,0.017,92,2.869,129,1.463,136,1.777,185,3.283,187,3.283,204,1.647,208,3.283,227,3.283,231,3.274,262,3.283,269,1.463,353,2.279,409,1.606,489,1.992,492,2.279,497,1.992,549,3.68,551,3,608,1.777,617,3.283,666,2.869,687,3.9,712,2.279,713,1.992,782,3.848,790,3,793,2.279,800,2.279,829,1.992,834,3.363,840,2.279,946,1.992,1012,1.992,1063,2.279,1067,3.912,1068,5.318,1069,2.279,1070,2.869,1071,5.539,1072,3.912,1073,2.716,1074,2.716,1075,5.539,1076,4.586,1077,3.912,1078,2.716,1079,3.912,1080,4.586,1081,3.912,1082,3.912,1083,3.912,1084,2.716,1085,2.716,1086,3.283,1087,2.716,1088,2.716,1089,2.716,1090,2.716,1091,2.716,1092,3.912,1093,2.716,1094,2.716,1095,3.912,1096,3.912,1097,2.716,1098,2.716,1099,2.716,1100,2.716,1101,2.716,1102,2.716,1103,2.716,1104,2.716,1105,1.992,1106,5.017,1107,2.716,1108,2.716,1109,2.716,1110,3.912,1111,3.912,1112,2.716,1113,4.791,1114,4.586,1115,5.539,1116,4.586,1117,5.539,1118,2.716,1119,2.716,1120,2.716,1121,2.716,1122,2.716,1123,2.716,1124,4.586,1125,2.716,1126,2.716,1127,2.716,1128,2.716,1129,3.912,1130,3.912,1131,3.912,1132,3.912,1133,3.912,1134,2.716,1135,2.716,1136,2.716,1137,2.279,1138,2.716,1139,2.716,1140,3.912,1141,3.912,1142,2.716,1143,2.716,1144,2.716,1145,2.716,1146,2.716,1147,2.716,1148,2.716,1149,2.716,1150,2.716,1151,5.017,1152,3.912,1153,2.716,1154,2.716,1155,5.539,1156,2.716,1157,2.716,1158,2.716,1159,2.279,1160,2.716,1161,2.716,1162,2.279,1163,2.716,1164,2.716,1165,2.716,1166,2.716,1167,2.716,1168,2.279,1169,2.716,1170,2.716,1171,2.716,1172,2.716,1173,2.716,1174,3.912,1175,4.586,1176,1.992,1177,2.716,1178,2.716,1179,2.716,1180,2.716,1181,2.716,1182,2.279,1183,2.716,1184,2.716,1185,2.716,1186,2.716,1187,2.716,1188,2.716,1189,2.716,1190,2.716,1191,2.716,1192,2.716,1193,2.716,1194,2.716,1195,2.279,1196,2.716,1197,2.716,1198,2.279,1199,2.716,1200,2.716]],["title/license.html",[1065,2.322,1066,2.322,1201,2.029]],["body/license.html",[7,0.013,11,0.572,13,0.502,14,0.445,16,0.183,21,0.165,29,0.807,58,1.145,61,0.071,62,0.01,63,0.01,84,2.253,126,2.045,129,0.735,131,0.31,164,0.807,180,1.001,204,0.49,217,0.735,231,1.741,238,1.145,245,0.98,314,1.145,322,1.494,354,1.001,401,0.807,409,2.265,427,0.893,489,1.001,550,1.145,551,0.893,552,1.145,577,1.917,583,1.145,608,0.893,621,1.001,667,1.145,669,1.001,687,2.16,788,4.155,790,0.893,791,1.145,794,1.917,795,1.917,796,2.472,804,1.145,807,1.145,812,1.145,817,1.145,820,1.145,829,3.631,833,4.024,834,1.001,841,1.145,851,1.145,868,1.145,882,3.872,887,1.001,895,3.216,909,1.917,918,2.472,936,2.89,939,2.89,946,1.675,949,1.145,956,1.145,975,1.001,977,2.89,979,1.145,981,1.145,1002,2.16,1006,2.472,1012,1.001,1024,1.145,1054,1.145,1069,1.145,1086,1.917,1105,1.001,1113,2.472,1137,1.145,1159,2.472,1162,1.917,1168,1.145,1176,1.001,1182,1.145,1195,1.145,1198,1.917,1201,4.573,1202,2.89,1203,2.945,1204,1.365,1205,1.365,1206,1.365,1207,4.795,1208,5.308,1209,3.443,1210,3.832,1211,1.365,1212,5.484,1213,4.951,1214,1.365,1215,1.365,1216,4.951,1217,5.308,1218,4.144,1219,2.284,1220,1.365,1221,3.832,1222,1.365,1223,1.365,1224,3.443,1225,2.284,1226,1.365,1227,2.945,1228,2.284,1229,2.284,1230,1.365,1231,1.365,1232,5.689,1233,3.443,1234,2.284,1235,4.144,1236,1.365,1237,2.284,1238,1.365,1239,1.365,1240,1.365,1241,1.365,1242,1.365,1243,1.365,1244,1.365,1245,2.945,1246,1.365,1247,2.945,1248,2.284,1249,5.308,1250,1.365,1251,4.144,1252,4.795,1253,3.443,1254,1.365,1255,1.365,1256,1.365,1257,1.365,1258,1.365,1259,2.284,1260,1.365,1261,1.365,1262,6.236,1263,2.945,1264,2.284,1265,1.365,1266,4.795,1267,1.365,1268,2.284,1269,5.689,1270,5.745,1271,1.365,1272,1.365,1273,1.365,1274,1.365,1275,1.365,1276,1.365,1277,2.284,1278,2.284,1279,1.365,1280,1.365,1281,1.365,1282,1.365,1283,1.365,1284,3.443,1285,3.832,1286,1.365,1287,2.284,1288,3.443,1289,2.284,1290,1.365,1291,3.832,1292,2.284,1293,1.365,1294,1.365,1295,2.945,1296,1.365,1297,1.365,1298,1.365,1299,2.284,1300,1.365,1301,1.365,1302,1.365,1303,2.945,1304,1.365,1305,1.365,1306,2.945,1307,1.365,1308,1.365,1309,1.365,1310,3.443,1311,4.951,1312,1.365,1313,2.284,1314,2.945,1315,2.284,1316,2.284,1317,2.284,1318,2.284,1319,2.284,1320,2.284,1321,2.945,1322,2.284,1323,2.284,1324,2.284,1325,2.284,1326,1.365,1327,2.284,1328,1.365,1329,3.832,1330,4.4,1331,2.945,1332,2.284,1333,2.284,1334,2.284,1335,1.365,1336,1.365,1337,2.945,1338,2.284,1339,1.365,1340,1.365,1341,1.365,1342,2.945,1343,1.365,1344,1.365,1345,1.365,1346,2.284,1347,2.284,1348,1.365,1349,1.365,1350,1.365,1351,1.365,1352,1.365,1353,1.365,1354,1.365,1355,2.284,1356,1.365,1357,1.365,1358,1.365,1359,1.365,1360,1.365,1361,1.365,1362,1.365,1363,1.365,1364,1.365,1365,1.365,1366,1.365,1367,1.365,1368,4.614,1369,1.365,1370,1.365,1371,1.365,1372,1.365,1373,1.365,1374,3.443,1375,2.284,1376,3.443,1377,1.365,1378,1.365,1379,1.365,1380,2.945,1381,1.365,1382,1.365,1383,1.365,1384,1.365,1385,2.284,1386,1.365,1387,1.365,1388,3.832,1389,1.365,1390,1.365,1391,1.365,1392,1.365,1393,1.365,1394,2.945,1395,3.443,1396,1.365,1397,1.365,1398,1.365,1399,1.365,1400,1.365,1401,1.365,1402,1.365,1403,1.365,1404,1.365,1405,2.284,1406,1.365,1407,2.284,1408,1.365,1409,1.365,1410,1.365,1411,1.365,1412,1.365,1413,1.365,1414,1.365,1415,3.443,1416,2.945,1417,2.945,1418,2.945,1419,2.284,1420,2.284,1421,2.945,1422,2.284,1423,2.284,1424,2.284,1425,1.365,1426,1.365,1427,1.365,1428,1.365,1429,1.365,1430,1.365,1431,1.365,1432,1.365,1433,2.284,1434,1.365,1435,1.365,1436,1.365,1437,1.365,1438,3.832,1439,1.365,1440,1.365,1441,1.365,1442,1.365,1443,1.365,1444,1.365,1445,1.365,1446,1.365,1447,1.365,1448,3.832,1449,1.365,1450,1.365,1451,1.365,1452,1.365,1453,1.365,1454,1.365,1455,1.365,1456,1.365,1457,1.365,1458,1.365,1459,1.365,1460,1.365,1461,1.365,1462,1.365,1463,1.365,1464,1.365,1465,1.365,1466,2.945,1467,1.365,1468,1.365,1469,1.365,1470,2.284,1471,1.365,1472,1.365,1473,1.365,1474,1.365,1475,1.365,1476,1.365,1477,1.365,1478,1.365,1479,1.365,1480,1.365,1481,1.365,1482,1.365,1483,1.365,1484,1.365,1485,1.365,1486,1.365,1487,2.284,1488,2.284,1489,1.365,1490,1.365,1491,1.365,1492,1.365,1493,1.365,1494,1.365,1495,1.365,1496,1.365,1497,1.365,1498,1.365,1499,1.365,1500,1.365,1501,1.365,1502,1.365,1503,1.365,1504,1.365,1505,1.365,1506,1.365]],["title/modules.html",[2,1.739]],["body/modules.html",[1,3.15,2,1.866,6,2.846,7,0.025,8,2.846,62,0.025,63,0.025,67,2.846,68,2.846,209,3.53,790,3.15,975,4.702,1507,6.412,1508,6.412,1509,6.502,1510,4.814]],["title/overview.html",[1070,3.289]],["body/overview.html",[1,4.049,2,1.524,3,2.286,4,3.3,5,3.3,6,3.804,7,0.029,8,3.659,9,2.711,10,1.941,11,1.648,18,2.118,62,0.022,63,0.022,64,3.3,65,3.3,66,3.3,67,3.835,68,3.835,72,1.941,150,2.572,164,2.324,217,2.118,251,3.3,252,3.3,253,3.3,254,3.72,259,2.118,315,3.389,344,3.3,345,3.3,346,3.3,511,3.389,529,2.572,536,2.572,560,3.3,561,3.3,562,3.3,1030,3.3,1070,2.883,1511,5.033]],["title/properties.html",[120,1.134,713,2.029]],["body/properties.html",[7,0.029,16,0.663,17,2.663,62,0.025,63,0.025,120,1.415,136,3.235,197,2.245,616,3.626,1002,3.626,1105,3.626,1176,3.626,1201,3.626,1202,4.149,1512,4.944,1513,4.944,1514,4.944,1515,4.944,1516,4.944,1517,4.944]],["title/miscellaneous/variables.html",[651,2.594,750,1.49]],["body/miscellaneous/variables.html",[2,1.78,7,0.03,15,2.507,17,1.841,29,3.065,42,2.939,44,3.368,45,2.869,46,2.869,47,2.507,48,2.507,54,1.553,62,0.02,63,0.02,86,2.237,88,2.237,89,2.237,97,2.021,114,2.507,115,3.368,118,2.736,119,0.606,120,1.586,121,2.869,122,2.507,123,2.869,124,2.869,125,1.055,131,0.776,145,1.433,161,2.736,162,3.331,168,2.875,193,1.649,221,2.086,269,3.409,339,2.237,352,3.627,400,2.507,404,2.507,434,2.021,437,2.021,468,2.869,516,2.473,540,3.981,546,2.869,553,3.368,565,3.368,566,2.869,587,2.869,588,3.368,651,2.237,663,2.021,664,2.237,683,2.869,684,2.869,685,2.869,693,2.869,695,3.854,697,2.869,750,1.841,752,2.869,887,2.507,1518,3.419,1519,4.592,1520,3.419,1521,4.592,1522,3.419,1523,4.592,1524,3.419,1525,3.419,1526,3.419,1527,3.419,1528,3.419,1529,3.419]],["title/routes.html",[1530,3.764]],["body/routes.html",[7,0.026,62,0.026,63,0.026,1530,4.413]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{}}}],["0.0.1",{"_index":1512,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":721,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1156,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":746,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":733,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":741,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":729,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":732,"title":{},"body":{"dependencies.html":{}}}],["01002",{"_index":177,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":164,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":715,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":173,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1/1",{"_index":696,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":568,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["100",{"_index":690,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":289,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":775,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11/11",{"_index":708,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":818,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["14.0.1",{"_index":744,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":911,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1998",{"_index":927,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["2",{"_index":529,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1203,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":723,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":691,"title":{},"body":{"coverage.html":{}}}],["200",{"_index":491,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1205,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1125,"title":{},"body":{"index.html":{}}}],["2324",{"_index":934,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":169,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":748,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":720,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":738,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":731,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":692,"title":{},"body":{"coverage.html":{}}}],["4",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{},"overview.html":{}}}],["4.6.0",{"_index":727,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":699,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":953,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":875,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["404",{"_index":648,"title":{},"body":{"injectables/SearchService.html":{}}}],["415(unsupported",{"_index":948,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":944,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":959,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":964,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["5",{"_index":150,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":725,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":736,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":698,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1240,"title":{},"body":{"license.html":{}}}],["504",{"_index":647,"title":{},"body":{"injectables/SearchService.html":{}}}],["6",{"_index":1511,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":700,"title":{},"body":{"coverage.html":{}}}],["7.5.5",{"_index":749,"title":{},"body":{"dependencies.html":{}}}],["7000",{"_index":1196,"title":{},"body":{"index.html":{}}}],["8.0.0",{"_index":722,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":726,"title":{},"body":{"dependencies.html":{}}}],["9",{"_index":1215,"title":{},"body":{"license.html":{}}}],["_id",{"_index":176,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":174,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_score",{"_index":178,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_search",{"_index":629,"title":{},"body":{"injectables/SearchService.html":{}}}],["_shards",{"_index":121,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":179,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["above",{"_index":1398,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":580,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":872,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":870,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1468,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":778,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1466,"title":{},"body":{"license.html":{}}}],["access",{"_index":840,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":984,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["according",{"_index":871,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":493,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["act",{"_index":1474,"title":{},"body":{"license.html":{}}}],["acting",{"_index":979,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":961,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1446,"title":{},"body":{"license.html":{}}}],["actual",{"_index":223,"title":{},"body":{"interfaces/HttpResponse.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1083,"title":{},"body":{"index.html":{}}}],["add",{"_index":1198,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1387,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1388,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1286,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":717,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":891,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1073,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1464,"title":{},"body":{"license.html":{}}}],["against",{"_index":1347,"title":{},"body":{"license.html":{}}}],["agent",{"_index":803,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1477,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1418,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1402,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1088,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1079,"title":{},"body":{"index.html":{}}}],["alive",{"_index":194,"title":{},"body":{"controllers/HealthController.html":{}}}],["alleging",{"_index":1352,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":161,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":162,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1343,"title":{},"body":{"license.html":{}}}],["along",{"_index":1381,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1386,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1158,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":810,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":675,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amount",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1471,"title":{},"body":{"license.html":{}}}],["annotations",{"_index":1274,"title":{},"body":{"license.html":{}}}],["another",{"_index":846,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["anything",{"_index":861,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1202,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":224,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apioperation",{"_index":518,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation({summary",{"_index":487,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":154,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":414,"title":{},"body":{"classes/PageDto.html":{}}}],["apiresponse",{"_index":519,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1190,"title":{},"body":{"index.html":{}}}],["app",{"_index":1155,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1384,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1268,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1416,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":214,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":631,"title":{},"body":{"injectables/SearchService.html":{}}}],["applies",{"_index":1336,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1162,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":552,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1432,"title":{},"body":{"license.html":{}}}],["april",{"_index":930,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1084,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1068,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1498,"title":{},"body":{"license.html":{}}}],["args",{"_index":364,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":396,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":366,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1453,"title":{},"body":{"license.html":{}}}],["asc",{"_index":573,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1483,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":824,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":1436,"title":{},"body":{"license.html":{}}}],["assume",{"_index":1434,"title":{},"body":{"license.html":{}}}],["async",{"_index":597,"title":{},"body":{"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1486,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1267,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":985,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1374,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":877,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":854,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1515,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1007,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1219,"title":{},"body":{"license.html":{}}}],["authorship",{"_index":1263,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1101,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":998,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":790,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["axiosres.data",{"_index":634,"title":{},"body":{"injectables/SearchService.html":{}}}],["b",{"_index":1365,"title":{},"body":{"license.html":{}}}],["back",{"_index":492,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":954,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":978,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":847,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":673,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":489,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1127,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1122,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1128,"title":{},"body":{"index.html":{}}}],["basic",{"_index":220,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1420,"title":{},"body":{"license.html":{}}}],["before",{"_index":147,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["behalf",{"_index":1291,"title":{},"body":{"license.html":{}}}],["being",{"_index":772,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1137,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1244,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1283,"title":{},"body":{"license.html":{}}}],["block",{"_index":413,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":799,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1105,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":142,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/PageMeta.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":710,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1488,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1509,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1507,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1071,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1129,"title":{},"body":{"index.html":{}}}],["building",{"_index":1110,"title":{},"body":{"index.html":{}}}],["c",{"_index":1371,"title":{},"body":{"license.html":{}}}],["cache",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":22,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":306,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1142,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":302,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["calling",{"_index":1174,"title":{},"body":{"index.html":{}}}],["canactivate",{"_index":541,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":547,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":866,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1366,"title":{},"body":{"license.html":{}}}],["case",{"_index":225,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":644,"title":{},"body":{"injectables/SearchService.html":{}}}],["cause",{"_index":1229,"title":{},"body":{"license.html":{}}}],["caused",{"_index":806,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cd",{"_index":1106,"title":{},"body":{"index.html":{}}}],["change",{"_index":620,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1370,"title":{},"body":{"license.html":{}}}],["character",{"_index":1452,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":869,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1321,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1150,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1148,"title":{},"body":{"index.html":{}}}],["check",{"_index":187,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":190,"title":{},"body":{"controllers/HealthController.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1009,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1467,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1349,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1338,"title":{},"body":{"license.html":{}}}],["class",{"_index":61,"title":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["cleint_error",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":743,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":766,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1103,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1152,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":66,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":65,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":251,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":252,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":253,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":344,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":345,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":346,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":560,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":561,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":562,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":231,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":937,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":397,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1344,"title":{},"body":{"license.html":{}}}],["comission",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1193,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1492,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1461,"title":{},"body":{"license.html":{}}}],["commision",{"_index":674,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":676,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":238,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":36,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1295,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1258,"title":{},"body":{"license.html":{}}}],["complete",{"_index":779,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":780,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completion",{"_index":148,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1501,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1392,"title":{},"body":{"license.html":{}}}],["comply",{"_index":765,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1194,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":714,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1092,"title":{},"body":{"index.html":{}}}],["computer",{"_index":1458,"title":{},"body":{"license.html":{}}}],["condition",{"_index":971,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":839,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":1208,"title":{},"body":{"license.html":{}}}],["config",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1165,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1170,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{}}}],["configmodule.forroot",{"_index":51,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":885,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1094,"title":{},"body":{"index.html":{}}}],["connection",{"_index":773,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1451,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1473,"title":{},"body":{"license.html":{}}}],["console.log(json.stringify(response.data",{"_index":527,"title":{},"body":{"controllers/PapersController.html":{}}}],["conspicuously",{"_index":1307,"title":{},"body":{"license.html":{}}}],["const",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1353,"title":{},"body":{"license.html":{}}}],["constructor",{"_index":203,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":589,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":358,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":241,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":600,"title":{},"body":{"injectables/SearchService.html":{}}}],["constructor(private",{"_index":205,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(reflector",{"_index":542,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":408,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1389,"title":{},"body":{"license.html":{}}}],["contained",{"_index":956,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["contains",{"_index":133,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{}}}],["content",{"_index":427,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["contents",{"_index":1069,"title":{},"body":{"index.html":{},"license.html":{}}}],["context",{"_index":305,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":557,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":333,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":556,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":335,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":325,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":336,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":337,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":324,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":761,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1234,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1285,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1342,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1394,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1311,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1354,"title":{},"body":{"license.html":{}}}],["control",{"_index":939,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1223,"title":{},"body":{"license.html":{}}}],["controller",{"_index":181,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":202,"title":{},"body":{"controllers/HealthController.html":{}}}],["controller('papers",{"_index":520,"title":{},"body":{"controllers/PapersController.html":{}}}],["controllername",{"_index":332,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":343,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":243,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":545,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1260,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1361,"title":{},"body":{"license.html":{}}}],["copy",{"_index":796,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1217,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":679,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":35,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":512,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":951,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":811,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["counterclaim",{"_index":1350,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1091,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":686,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":782,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1173,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":351,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":360,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":362,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1089,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1348,"title":{},"body":{"license.html":{}}}],["current",{"_index":886,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["currently",{"_index":987,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":271,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1411,"title":{},"body":{"license.html":{}}}],["customer",{"_index":670,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1377,"title":{},"body":{"license.html":{}}}],["damages",{"_index":1448,"title":{},"body":{"license.html":{}}}],["data",{"_index":221,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":249,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.status",{"_index":250,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["date",{"_index":1358,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":323,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["db",{"_index":719,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":353,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":363,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1053,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1047,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1526,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":127,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":269,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":646,"title":{},"body":{"injectables/SearchService.html":{}}}],["defend",{"_index":1479,"title":{},"body":{"license.html":{}}}],["defined",{"_index":131,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1225,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1211,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":789,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deliberate",{"_index":1443,"title":{},"body":{"license.html":{}}}],["depended",{"_index":962,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":960,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deploy",{"_index":1111,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1074,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1171,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1166,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":398,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":1269,"title":{},"body":{"license.html":{}}}],["derived",{"_index":1271,"title":{},"body":{"license.html":{}}}],["desc",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1412,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1087,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1309,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1179,"title":{},"body":{"index.html":{}}}],["details",{"_index":196,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1431,"title":{},"body":{"license.html":{}}}],["development",{"_index":1147,"title":{},"body":{"index.html":{}}}],["different",{"_index":834,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1227,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1230,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":659,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":655,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1414,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1304,"title":{},"body":{"license.html":{}}}],["display",{"_index":577,"title":{},"body":{"classes/SearchQueryDto.html":{},"license.html":{}}}],["displayed",{"_index":571,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1329,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1380,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1210,"title":{},"body":{"license.html":{}}}],["dns",{"_index":999,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1197,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1140,"title":{},"body":{"index.html":{}}}],["document",{"_index":804,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":687,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":140,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":430,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/dtos/search",{"_index":432,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/enums",{"_index":285,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/page",{"_index":435,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/interfaces",{"_index":247,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{}}}],["don't",{"_index":1491,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":734,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":815,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":118,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["due",{"_index":849,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":995,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1496,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1093,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1272,"title":{},"body":{"license.html":{}}}],["elaborations",{"_index":1275,"title":{},"body":{"license.html":{}}}],["elastichsearch",{"_index":615,"title":{},"body":{"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":116,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["electronic",{"_index":1292,"title":{},"body":{"license.html":{}}}],["elements",{"_index":480,"title":{},"body":{"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":226,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1487,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":969,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1485,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1175,"title":{},"body":{"index.html":{}}}],["entities",{"_index":868,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":788,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1042,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":680,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":751,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums/page",{"_index":481,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1045,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1095,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":71,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":681,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":171,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["error",{"_index":195,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":111,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":367,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":330,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":392,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.status",{"_index":532,"title":{},"body":{"controllers/PapersController.html":{}}}],["errors",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es_port",{"_index":596,"title":{},"body":{"injectables/SearchService.html":{}}}],["es_query",{"_index":622,"title":{},"body":{"injectables/SearchService.html":{}}}],["esresponsedto",{"_index":113,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["evaluated",{"_index":899,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1463,"title":{},"body":{"license.html":{}}}],["event",{"_index":1439,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":924,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":129,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1331,"title":{},"body":{"license.html":{}}}],["exception",{"_index":237,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":656,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["exchangeable",{"_index":1097,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1306,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1320,"title":{},"body":{"license.html":{}}}],["execute",{"_index":153,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["executed",{"_index":1403,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":300,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1437,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1246,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1139,"title":{},"body":{"index.html":{}}}],["expand",{"_index":735,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":678,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1044,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":921,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":920,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":919,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":940,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1396,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1189,"title":{},"body":{"index.html":{}}}],["export",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":70,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":322,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":239,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":916,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1163,"title":{},"body":{"index.html":{}}}],["facilitates",{"_index":1099,"title":{},"body":{"index.html":{}}}],["factory",{"_index":660,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":167,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":958,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1459,"title":{},"body":{"license.html":{}}}],["faker",{"_index":739,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":667,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":770,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fields",{"_index":180,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1238,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1359,"title":{},"body":{"license.html":{}}}],["files",{"_index":1159,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":598,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(query_str",{"_index":605,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":599,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":610,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":488,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":876,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1427,"title":{},"body":{"license.html":{}}}],["flag",{"_index":476,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["flow",{"_index":737,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1183,"title":{},"body":{"index.html":{}}}],["following",{"_index":1113,"title":{},"body":{"index.html":{},"license.html":{}}}],["fools",{"_index":931,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":857,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1249,"title":{},"body":{"license.html":{}}}],["format",{"_index":354,"title":{},"body":{"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":370,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":372,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":373,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":383,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1136,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":890,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":641,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["free",{"_index":1323,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":996,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":859,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":783,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":973,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":227,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":976,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1036,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":827,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":980,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":992,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gathered",{"_index":792,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":262,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":266,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1259,"title":{},"body":{"license.html":{}}}],["generates",{"_index":268,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":867,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":533,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":522,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":188,"title":{},"body":{"controllers/HealthController.html":{}}}],["getbycontext",{"_index":484,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@query",{"_index":525,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(query",{"_index":486,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":485,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":534,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":498,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":263,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":273,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":264,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":276,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getqueryparams(str",{"_index":460,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["gets",{"_index":275,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getting",{"_index":1065,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":265,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":278,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1102,"title":{},"body":{"index.html":{}}}],["give",{"_index":1168,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":582,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":888,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1456,"title":{},"body":{"license.html":{}}}],["governing",{"_index":1505,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1314,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1248,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1220,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1317,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1510,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1444,"title":{},"body":{"license.html":{}}}],["guard",{"_index":536,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":538,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1124,"title":{},"body":{"index.html":{}}}],["handle",{"_index":988,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":304,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":334,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1481,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":447,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["hasprev",{"_index":448,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["header",{"_index":769,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":630,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":185,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":200,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":198,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":182,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":209,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1517,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1075,"title":{},"body":{"index.html":{}}}],["help",{"_index":1114,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1135,"title":{},"body":{"index.html":{}}}],["hence",{"_index":947,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1316,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1399,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1067,"title":{},"body":{"index.html":{}}}],["hits",{"_index":122,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hold",{"_index":1480,"title":{},"body":{"license.html":{}}}],["hop",{"_index":925,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":197,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1192,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1180,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1187,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1206,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1503,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1001,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":506,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":524,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":240,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{}}}],["httpexception(error.data",{"_index":531,"title":{},"body":{"controllers/PapersController.html":{}}}],["httphealthindicator",{"_index":199,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":211,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":216,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":281,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":287,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":233,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1060,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":282,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":286,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":67,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":254,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":283,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":284,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":288,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":228,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1104,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":601,"title":{},"body":{"injectables/SearchService.html":{}}}],["httpstatus",{"_index":280,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":935,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1019,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":926,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":612,"title":{},"body":{"injectables/SearchService.html":{}}}],["identification",{"_index":1497,"title":{},"body":{"license.html":{}}}],["identified",{"_index":864,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":688,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1490,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":929,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["if(!pairs",{"_index":466,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["ii",{"_index":1236,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1243,"title":{},"body":{"license.html":{}}}],["image",{"_index":1141,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1143,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":941,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":421,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["implements",{"_index":236,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1423,"title":{},"body":{"license.html":{}}}],["import",{"_index":21,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":20,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1305,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1454,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":950,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1450,"title":{},"body":{"license.html":{}}}],["include",{"_index":918,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":909,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1378,"title":{},"body":{"license.html":{}}}],["including",{"_index":1252,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1289,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1313,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1482,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1478,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1469,"title":{},"body":{"license.html":{}}}],["index",{"_index":119,"title":{"index.html":{}},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1265,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":477,"title":{},"body":{"interfaces/PageMeta.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1228,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1245,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["inform",{"_index":777,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":551,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1200,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1341,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1355,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":258,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":259,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":603,"title":{},"body":{"injectables/SearchService.html":{}}}],["install",{"_index":1116,"title":{},"body":{"index.html":{}}}],["instance",{"_index":604,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":391,"title":{},"body":{"injectables/LoggerService.html":{}}}],["institute",{"_index":1345,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1149,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":957,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1287,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":297,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["intercept(context",{"_index":299,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["interceptor",{"_index":422,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["interface",{"_index":215,"title":{"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":217,"title":{},"body":{"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/page",{"_index":415,"title":{},"body":{"classes/PageDto.html":{}}}],["interim",{"_index":776,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1021,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":968,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":905,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":982,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["irrevocable",{"_index":1324,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":695,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":411,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":410,"title":{},"body":{"classes/PageDto.html":{}}}],["isboolean",{"_index":156,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":157,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":591,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":143,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":575,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":149,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":578,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isglobal",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":584,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isint",{"_index":585,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":158,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnumber",{"_index":159,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isobject",{"_index":160,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":567,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":128,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":572,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1524,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isstring",{"_index":586,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["issue",{"_index":1300,"title":{},"body":{"license.html":{}}}],["itself",{"_index":878,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1204,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":932,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["k8s",{"_index":1153,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1160,"title":{},"body":{"index.html":{}}}],["keeps",{"_index":671,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":468,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["keyof",{"_index":47,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1529,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1422,"title":{},"body":{"license.html":{}}}],["known",{"_index":892,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1161,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1076,"title":{},"body":{"index.html":{}}}],["language",{"_index":1504,"title":{},"body":{"license.html":{}}}],["large",{"_index":1015,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":903,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":740,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1417,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1351,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":997,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1221,"title":{},"body":{"license.html":{}}}],["length",{"_index":896,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":893,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1098,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1438,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1447,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1339,"title":{},"body":{"license.html":{}}}],["license",{"_index":1201,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1500,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1356,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1216,"title":{},"body":{"license.html":{}}}],["limit",{"_index":566,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1424,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1506,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1253,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":967,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":570,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":863,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1282,"title":{},"body":{"license.html":{}}}],["list",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1178,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1298,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1346,"title":{},"body":{"license.html":{}}}],["liveness",{"_index":191,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":52,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":793,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":814,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":355,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":374,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":296,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":386,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":33,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["loggermodule",{"_index":68,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":315,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":388,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":316,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":349,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":298,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":308,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":293,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1016,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":889,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1090,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1455,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1462,"title":{},"body":{"license.html":{}}}],["machine",{"_index":1144,"title":{},"body":{"index.html":{}}}],["made",{"_index":1264,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1297,"title":{},"body":{"license.html":{}}}],["main",{"_index":1041,"title":{},"body":{"miscellaneous/functions.html":{}}}],["maintenance",{"_index":991,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1176,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1096,"title":{},"body":{"index.html":{}}}],["making",{"_index":1250,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":850,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1460,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1302,"title":{},"body":{"license.html":{}}}],["management",{"_index":1231,"title":{},"body":{"license.html":{}}}],["manager",{"_index":730,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1077,"title":{},"body":{"index.html":{}}}],["many",{"_index":965,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":429,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["map((res",{"_index":439,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["map(axiosres",{"_index":633,"title":{},"body":{"injectables/SearchService.html":{}}}],["marked",{"_index":1308,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1408,"title":{},"body":{"license.html":{}}}],["matching",{"_index":63,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["max_score",{"_index":172,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["mean",{"_index":1213,"title":{},"body":{"license.html":{}}}],["means",{"_index":946,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1255,"title":{},"body":{"license.html":{}}}],["media",{"_index":949,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1362,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1363,"title":{},"body":{"license.html":{}}}],["memory",{"_index":718,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1426,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1281,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1185,"title":{},"body":{"index.html":{}}}],["message",{"_index":222,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":658,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":922,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":404,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["meta.hasnext",{"_index":452,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.hasprev",{"_index":455,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.interface",{"_index":416,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.interface.ts",{"_index":474,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":458,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.pagesize",{"_index":454,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["metadata",{"_index":141,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"dependencies.html":{}}}],["metadatascanner",{"_index":428,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["metainformation",{"_index":787,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":339,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":342,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":862,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":186,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1186,"title":{},"body":{"index.html":{}}}],["milliseconds",{"_index":152,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["minute",{"_index":668,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["miscellaneous",{"_index":750,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":402,"title":{},"body":{"classes/PageDto.html":{}}}],["modifications",{"_index":1251,"title":{},"body":{"license.html":{}}}],["modified",{"_index":841,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1385,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1390,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":46,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1516,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1107,"title":{},"body":{"index.html":{}}}],["money",{"_index":672,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1078,"title":{},"body":{"index.html":{}}}],["more",{"_index":669,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["moved",{"_index":1010,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":823,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["multiple",{"_index":1008,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":728,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":703,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1046,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":245,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1407,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1164,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1169,"title":{},"body":{"index.html":{}}}],["necessarily",{"_index":1340,"title":{},"body":{"license.html":{}}}],["need",{"_index":798,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":1000,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1442,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1445,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":816,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":318,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["nestjs",{"_index":716,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":212,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":28,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":724,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":155,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":201,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1514,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":382,"title":{},"body":{"injectables/LoggerService.html":{}}}],["new",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":301,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":326,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["no_content",{"_index":797,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1513,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1006,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":786,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":912,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1383,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":865,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":860,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":974,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":837,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":314,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1266,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1368,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1397,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1115,"title":{},"body":{"index.html":{}}}],["null",{"_index":528,"title":{},"body":{"controllers/PapersController.html":{}}}],["num",{"_index":1051,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":134,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":126,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["obligations",{"_index":1470,"title":{},"body":{"license.html":{}}}],["observable",{"_index":307,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["obtain",{"_index":1502,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1333,"title":{},"body":{"license.html":{}}}],["ok",{"_index":207,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["one",{"_index":812,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1080,"title":{},"body":{"index.html":{}}}],["optional",{"_index":246,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":666,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":434,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":445,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.desc",{"_index":446,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.enum",{"_index":436,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["order.enum.ts",{"_index":758,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":791,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1278,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1235,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["output",{"_index":1063,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1241,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":915,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":990,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":424,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["overview",{"_index":1070,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1218,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1237,"title":{},"body":{"license.html":{}}}],["package",{"_index":713,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1133,"title":{},"body":{"index.html":{}}}],["page",{"_index":401,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["pagedto",{"_index":399,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":459,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pageinterceptor",{"_index":419,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["pagemeta",{"_index":406,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"coverage.html":{}}}],["pagen",{"_index":587,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":442,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["pagesize",{"_index":449,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["pagination",{"_index":403,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{}}}],["pair",{"_index":467,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.indexof",{"_index":470,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.substring(0",{"_index":469,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.substring(pair.indexof",{"_index":471,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs",{"_index":461,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs.shift",{"_index":465,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs[0",{"_index":464,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["paper",{"_index":499,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["papers",{"_index":175,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":496,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":503,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":19,"title":{"controllers/PapersController.html":{}},"body":{"modules/AppModule.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["param",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":244,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parameters['main",{"_index":463,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["parameters[key",{"_index":472,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["parseuuidpipe",{"_index":507,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1376,"title":{},"body":{"license.html":{}}}],["partial",{"_index":809,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":808,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["particle",{"_index":579,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1428,"title":{},"body":{"license.html":{}}}],["party",{"_index":795,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["patent",{"_index":1330,"title":{},"body":{"license.html":{}}}],["pattern",{"_index":1085,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":901,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1013,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":855,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1239,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1050,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":583,"title":{},"body":{"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":838,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":825,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":844,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1011,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":550,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1247,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1318,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1375,"title":{},"body":{"license.html":{}}}],["pipe(take(1",{"_index":632,"title":{},"body":{"injectables/SearchService.html":{}}}],["pipeline",{"_index":653,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["places",{"_index":1054,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":1043,"title":{},"body":{"miscellaneous/functions.html":{}}}],["port",{"_index":617,"title":{},"body":{"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1082,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1465,"title":{},"body":{"license.html":{}}}],["pot",{"_index":938,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1226,"title":{},"body":{"license.html":{}}}],["precondition",{"_index":898,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":897,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":820,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":184,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}}}],["prepare",{"_index":1326,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":883,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":478,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["prevented",{"_index":972,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":479,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["print",{"_index":1138,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1495,"title":{},"body":{"license.html":{}}}],["private",{"_index":206,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1181,"title":{},"body":{"index.html":{}}}],["process",{"_index":902,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":685,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_port",{"_index":613,"title":{},"body":{"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":683,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":684,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1056,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":704,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1055,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":774,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":705,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1058,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":881,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1409,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1120,"title":{},"body":{"index.html":{}}}],["project",{"_index":192,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":742,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":37,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1367,"title":{},"body":{"license.html":{}}}],["promise",{"_index":426,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":624,"title":{},"body":{"injectables/SearchService.html":{}}}],["properties",{"_index":120,"title":{"properties.html":{}},"body":{"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":771,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1005,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":409,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":595,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":1419,"title":{},"body":{"license.html":{}}}],["proxy",{"_index":879,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":873,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":352,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1327,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1303,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1224,"title":{},"body":{"license.html":{}}}],["put",{"_index":508,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":433,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["q.dto.ts",{"_index":565,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:24",{"_index":581,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:36",{"_index":576,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:47",{"_index":569,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:58",{"_index":574,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":437,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["query.'})@apiresponse({status",{"_index":490,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.limit",{"_index":451,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.limit",{"_index":450,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.order?.touppercase",{"_index":444,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.page",{"_index":443,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query_str",{"_index":609,"title":{},"body":{"injectables/SearchService.html":{}}}],["query_string",{"_index":623,"title":{},"body":{"injectables/SearchService.html":{}}}],["range",{"_index":910,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":966,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1379,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":295,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1484,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1410,"title":{},"body":{"license.html":{}}}],["receive",{"_index":993,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":981,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1364,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1493,"title":{},"body":{"license.html":{}}}],["record",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":822,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1433,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1360,"title":{},"body":{"license.html":{}}}],["references",{"_index":828,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":745,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":543,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":894,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":858,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1404,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1072,"title":{},"body":{"index.html":{}}}],["reject",{"_index":625,"title":{},"body":{"injectables/SearchService.html":{}}}],["reject(new",{"_index":637,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":170,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevant",{"_index":607,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1279,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":845,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1489,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1276,"title":{},"body":{"license.html":{}}}],["representation",{"_index":821,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":813,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1296,"title":{},"body":{"license.html":{}}}],["represents",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1325,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1413,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1209,"title":{},"body":{"license.html":{}}}],["req",{"_index":509,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":328,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":331,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":137,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.query",{"_index":438,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request_timeout",{"_index":880,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requested",{"_index":505,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":908,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":294,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":977,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":554,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":559,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":853,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":441,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{}}}],["res.hits",{"_index":440,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["res.hits.hits.length",{"_index":639,"title":{},"body":{"injectables/SearchService.html":{}}}],["res.hits.slice((meta.pagenum",{"_index":457,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits[(meta.pagenum",{"_index":456,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits[meta.pagenum",{"_index":453,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.timed_out",{"_index":636,"title":{},"body":{"injectables/SearchService.html":{}}}],["reserved",{"_index":856,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":802,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":831,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":642,"title":{},"body":{"injectables/SearchService.html":{}}}],["resource",{"_index":785,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":842,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":117,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":232,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":530,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto.ts",{"_index":115,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:24",{"_index":151,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:37",{"_index":144,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:54",{"_index":132,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:82",{"_index":138,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":235,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":242,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":219,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":256,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":261,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":277,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":274,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":279,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":267,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1476,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1430,"title":{},"body":{"license.html":{}}}],["result",{"_index":1182,"title":{},"body":{"index.html":{},"license.html":{}}}],["result.dto",{"_index":517,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":588,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:23",{"_index":592,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:37",{"_index":590,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":784,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1254,"title":{},"body":{"license.html":{}}}],["results",{"_index":62,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1372,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":836,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1528,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":112,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":139,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["revisions",{"_index":1273,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":933,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1472,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":747,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1435,"title":{},"body":{"license.html":{}}}],["role",{"_index":546,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":540,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":553,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":537,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["rounded",{"_index":1052,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1049,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":483,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1530,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1322,"title":{},"body":{"license.html":{}}}],["run",{"_index":1117,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1123,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1131,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1132,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1130,"title":{},"body":{"index.html":{}}}],["running",{"_index":1151,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":319,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":321,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["same",{"_index":1494,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1154,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1018,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["schemas",{"_index":1191,"title":{},"body":{"index.html":{}}}],["script",{"_index":1134,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1121,"title":{},"body":{"index.html":{}}}],["search",{"_index":564,"title":{},"body":{"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":41,"title":{},"body":{"modules/AppModule.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":431,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":515,"title":{"classes/SearchResultDto.html":{}},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":643,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(404",{"_index":640,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(504",{"_index":638,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(700",{"_index":645,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto})@get(':uuid",{"_index":501,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchresultdto})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":494,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchservice",{"_index":511,"title":{"injectables/SearchService.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["section",{"_index":817,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1214,"title":{},"body":{"license.html":{}}}],["see",{"_index":1012,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":835,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":819,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":917,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1334,"title":{},"body":{"license.html":{}}}],["sent",{"_index":807,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1280,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1401,"title":{},"body":{"license.html":{}}}],["server",{"_index":616,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":942,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":204,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1157,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1167,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1172,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":986,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":257,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["set",{"_index":497,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["setmetadata(is_public_key",{"_index":1525,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1527,"title":{},"body":{"miscellaneous/variables.html":{}}}],["shall",{"_index":1212,"title":{},"body":{"license.html":{}}}],["shards",{"_index":135,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1242,"title":{},"body":{"license.html":{}}}],["short",{"_index":230,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["similar",{"_index":874,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["skipmissingproperties",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":166,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1086,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1475,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1429,"title":{},"body":{"license.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":1449,"title":{},"body":{"license.html":{}}}],["specific",{"_index":621,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":425,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":913,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../app.module.ts",{"_index":1522,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1038,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":752,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1040,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1518,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":753,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":754,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":756,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":755,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1037,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":757,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../page.dto.ts",{"_index":1520,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1521,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1523,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":759,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1519,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1039,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application/controller/health.controller.ts",{"_index":183,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":189,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller",{"_index":40,"title":{},"body":{"modules/AppModule.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":482,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:31",{"_index":495,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:56",{"_index":502,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":693,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":697,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos",{"_index":619,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/domain/dtos/es",{"_index":114,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":400,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:22",{"_index":412,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:31",{"_index":407,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/search",{"_index":516,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":760,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1003,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/http",{"_index":218,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":473,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":234,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":539,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":548,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":544,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":701,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":702,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors",{"_index":514,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":292,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":317,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":303,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":310,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":513,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":420,"title":{},"body":{"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:20",{"_index":423,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":210,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":255,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":347,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":650,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":260,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":348,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":381,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":359,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":361,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":375,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":368,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":379,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":365,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":377,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":371,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":594,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:11",{"_index":602,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:22",{"_index":614,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:29",{"_index":611,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:67",{"_index":606,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":664,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":69,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":563,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":709,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["stages",{"_index":1109,"title":{},"body":{"index.html":{}}}],["start",{"_index":311,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1119,"title":{},"body":{"index.html":{}}}],["started",{"_index":1066,"title":{"index.html":{},"license.html":{}},"body":{}}],["starttime",{"_index":309,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":887,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1332,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1391,"title":{},"body":{"license.html":{}}}],["statements",{"_index":689,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":350,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1369,"title":{},"body":{"license.html":{}}}],["status",{"_index":145,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1184,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":340,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["stoppage",{"_index":1457,"title":{},"body":{"license.html":{}}}],["str.split",{"_index":462,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["string",{"_index":193,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["structure",{"_index":475,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["subject",{"_index":1315,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1328,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1393,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1290,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1288,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":635,"title":{},"body":{"injectables/SearchService.html":{}}}],["subsequently",{"_index":1312,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":781,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":165,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1232,"title":{},"body":{"license.html":{}}}],["summary",{"_index":521,"title":{},"body":{"controllers/PapersController.html":{}}}],["super(httpexception.createbody(data",{"_index":248,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1400,"title":{},"body":{"license.html":{}}}],["support",{"_index":975,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":907,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1177,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1508,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1188,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1004,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":762,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":851,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1299,"title":{},"body":{"license.html":{}}}],["t",{"_index":405,"title":{},"body":{"classes/PageDto.html":{}}}],["table",{"_index":712,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":711,"title":{},"body":{"coverage.html":{}}}],["take",{"_index":618,"title":{},"body":{"injectables/SearchService.html":{}}}],["taken",{"_index":682,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1048,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":320,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1020,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":832,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":989,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":843,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["terminate",{"_index":1357,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":213,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1207,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1199,"title":{},"body":{"index.html":{}}}],["test",{"_index":1100,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1118,"title":{},"body":{"index.html":{}}}],["tested",{"_index":900,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":936,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1440,"title":{},"body":{"license.html":{}}}],["thereof",{"_index":1284,"title":{},"body":{"license.html":{}}}],["third",{"_index":794,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":387,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":417,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.es_port",{"_index":628,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.getdescription(status",{"_index":272,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":270,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.gettype(status",{"_index":291,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.get('http://localhost",{"_index":627,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.logger",{"_index":385,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":394,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":390,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":341,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":329,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":389,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":395,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":393,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":327,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":418,"title":{},"body":{"classes/PageDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":555,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.searchservice.findbycontext(query.query).then",{"_index":526,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":535,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.status",{"_index":593,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["those",{"_index":1337,"title":{},"body":{"license.html":{}}}],["through",{"_index":1195,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{}}}],["throwed",{"_index":1057,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1064,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":952,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["time",{"_index":312,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["timed",{"_index":146,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":123,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":994,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1014,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":1425,"title":{},"body":{"license.html":{}}}],["todo",{"_index":1081,"title":{},"body":{"index.html":{}}}],["too_many_requests",{"_index":963,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":124,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["tort",{"_index":1441,"title":{},"body":{"license.html":{}}}],["total",{"_index":163,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["tracking",{"_index":1301,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1406,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1373,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1405,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":928,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1108,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1335,"title":{},"body":{"license.html":{}}}],["transform",{"_index":657,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1256,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":661,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1257,"title":{},"body":{"license.html":{}}}],["true",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["try",{"_index":626,"title":{},"body":{"injectables/SearchService.html":{}}}],["type",{"_index":125,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":48,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1261,"title":{},"body":{"license.html":{}}}],["unable",{"_index":955,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":923,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":852,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1022,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":130,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{}}}],["under",{"_index":833,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":763,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":848,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":970,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["union",{"_index":1222,"title":{},"body":{"license.html":{}}}],["unknown",{"_index":290,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["unless",{"_index":1395,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":945,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":943,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1017,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":906,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":208,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":801,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":768,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":983,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":826,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":904,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":830,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":338,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":229,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1126,"title":{},"body":{"index.html":{}}}],["use",{"_index":829,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":59,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":136,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":510,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":523,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":549,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":558,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":608,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1145,"title":{},"body":{"index.html":{}}}],["util",{"_index":384,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":504,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["uuid.'})@apiresponse({status",{"_index":500,"title":{},"body":{"controllers/PapersController.html":{}}}],["validate",{"_index":31,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":706,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1059,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":707,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1062,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":652,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":662,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":649,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":654,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":168,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":914,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":694,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":651,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1293,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":356,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":376,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":1002,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":767,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":805,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":665,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":663,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":313,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":884,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":800,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":357,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":378,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":380,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1421,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1415,"title":{},"body":{"license.html":{}}}],["way",{"_index":1146,"title":{},"body":{"index.html":{}}}],["ways",{"_index":1112,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1382,"title":{},"body":{"license.html":{}}}],["whether",{"_index":1233,"title":{},"body":{"license.html":{}}}],["whole",{"_index":1277,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":677,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":764,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":38,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":882,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":895,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1262,"title":{},"body":{"license.html":{}}}],["works",{"_index":1270,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1319,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1310,"title":{},"body":{"license.html":{}}}],["written",{"_index":1294,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1061,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":369,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1499,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
- "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { PapersController } from 'src/application/controller/papers.controller';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [PapersController],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync, IsOptional } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: '_shards', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:54\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'hits', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:82\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'timed_out', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:37\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'took', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:24\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'took',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'timed_out',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: '_shards',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'hits',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {\n\n },\n fields: {\n\n }\n }],\n }\n })\n hits: object;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: T[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:31\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n T[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : T[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data the page contains', isArray: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:22\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMeta\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:31\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data the page contains',\n isArray: true,\n })\n readonly data: T[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: [],\n })\n readonly meta: PageMeta;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: T[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:20\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Observable | Promise\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { MetadataScanner } from \"@nestjs/core\";\nimport { Observable, map } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable | Promise> {\n const request = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n\n return next.handle().pipe(\n map((res) => {\n if (!res.hits) return res;\n\n let meta: PageMeta = {\n pagenum: +query?.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 1 : query.limit,\n };\n\n meta.hasNext = res.hits[meta.pagenum * meta.pagesize] ? true : false;\n meta.hasPrev = res.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n\n return new PageDto(data, meta);\n })\n );\n }\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n \n Prefix\n \n \n papers\n \n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(query)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds papers by context based on the query.'})@ApiResponse({status: 200, description: 'Returns back acquired papers.', type: SearchResultDto})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:31\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Optional\n \n \n \n \n query\n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds paper by its UUID.'})@ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto})@Get(':uuid')\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:56\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { Response } from \"express\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { LoggerInterceptor } from \"src/core/interceptors\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiOperation, ApiResponse } from \"@nestjs/swagger\";\n\n/**\n * /papers/ route controller\n */\n@Controller('papers')\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiOperation({ summary: 'Finds papers by context based on the query.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired papers.',\n type: SearchResultDto,\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Query() query): object {\n return this.searchService.findByContext(query.query).then(\n (response: SearchResultDto) => {\n // console.log(JSON.stringify(response.data, null, 2));\n return response.data;\n },\n (error: SearchResultDto) => {\n throw new HttpException(error.data, error.status);\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiOperation({ summary: 'Finds paper by its UUID.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired paper.',\n type: SearchResultDto,\n })\n @Get(':uuid') \n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response) => {\n // console.log(JSON.stringify(response.data, null, 2));\n return response.data;\n },\n (error) => {\n throw new HttpException(error.data, error.status);\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { ConfigModule } from \"@nestjs/config\";\nimport { SearchService } from \"../../core/services/common/search.service\";\n\n/**\n * search module\n */\n@Module({\n imports: [HttpModule],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:47\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:36\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:24\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n status\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: object)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n object\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:37\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:23\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n status: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n \n },\n })\n data: object;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: object) {\n this.status = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:11\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(query_str: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:67\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n query_str\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:29\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:22\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let es_query = {\n query: {\n query_string: {\n query: 'id:' + uuid\n }\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get('http://localhost:' + this.ES_PORT + '/_search', {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: any) => {\n if (res.timed_out) {\n reject(new SearchResultDto(504, {message: 'Timed Out'}));\n }\n\n if (!res.hits.hits.length) {\n reject(new SearchResultDto(404, {message: 'Not Found'}));\n }\n\n resolve(new SearchResultDto(200, res.hits));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query_str \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(query_str: string): Promise {\n let es_query = {\n query: {\n query_string: {\n query: query_str,\n default_field: \"content\"\n }\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get('http://localhost:'+ this.ES_PORT + '/_search', {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: any) => {\n if (res.timed_out) {\n reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));\n }\n\n if (!res.hits.hits.length) {\n reject(new SearchResultDto(404, {status: 404, message: 'Not Found'}));\n } \n\n resolve(new SearchResultDto(200, res.hits));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n  ASC\n \n \n \n \n Value : ASC\n \n \n \n \n  DESC\n \n \n \n \n Value : DESC\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 6 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 4 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
+ "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.046,1,2.186]],["body/modules/AppModule.html",[0,1.798,1,4.151,2,2.247,3,2.206,4,3.066,5,3.066,6,3.629,7,0.029,8,3.629,9,2.608,10,1.816,11,1.433,12,0.424,13,0.338,14,0.338,15,2.683,16,0.469,17,2.918,18,3.16,19,0.749,20,4.808,21,3.647,22,0.919,23,5.378,24,2.397,25,3.066,26,2.683,27,2.608,28,3.647,29,3.537,30,3.647,31,2.859,32,3.647,33,3.066,34,3.647,35,3.647,36,3.066,37,3.066,38,3.647,39,1.673,40,1.235,41,3.537,42,3.066,43,3.066,44,2.683,45,2.683,46,3.647,47,3.647,48,3.647,49,3.647,50,3.647,51,2.281,52,3.066,53,3.647,54,2.397,55,4.041,56,4.808,57,1.979,58,0.424,59,0.148,60,0.02,61,0.02]],["title/modules/CommonModule.html",[0,1.046,6,1.978]],["body/modules/CommonModule.html",[0,1.687,2,1.701,3,2.462,6,3.945,7,0.029,9,2.91,10,2.155,11,1.701,12,0.503,13,0.401,14,0.401,18,3.526,19,0.677,22,1.091,33,4.51,58,0.503,59,0.175,60,0.023,61,0.023,62,3.639,63,3.639,64,3.639,65,3.985,66,3.985,67,4.329,68,3.526]],["title/classes/EnvironmentVariables.html",[59,0.135,69,2.447]],["body/classes/EnvironmentVariables.html",[7,0.029,12,0.465,13,0.371,14,0.371,16,0.515,19,0.593,40,1.729,51,1.699,58,0.465,59,0.228,60,0.022,61,0.022,69,3.758,70,1.838,71,2.946,72,3.758,73,5.109,74,4.005,75,3.367,76,4.005,77,3.894,78,1.838,79,2.946,80,2.632,81,4.005,82,2.632,83,3.367,84,2.632,85,5.109,86,2.632,87,2.632,88,4.005,89,3.367,90,3.894,91,1.356,92,3.367,93,1.46,94,4.005,95,2.382,96,3.367,97,3.367,98,5.109,99,4.005,100,4.005,101,3.367,102,4.005,103,4.005,104,2.382,105,4.005,106,3.367,107,3.367,108,1.838,109,4.005,110,1.574]],["title/classes/EsQueryDto.html",[59,0.135,111,2.447]],["body/classes/EsQueryDto.html",[7,0.029,11,1.897,12,0.426,13,0.34,14,0.34,16,0.694,19,0.561,39,1.684,40,1.243,51,2.048,58,0.426,59,0.195,60,0.02,61,0.02,70,1.684,78,1.684,104,2.871,111,3.552,112,3.546,113,2.7,114,3.635,115,1.634,116,2.476,117,0.622,118,1.464,119,3.317,120,4.818,121,0.818,122,2.871,123,2.215,124,3.67,125,1.634,126,2.854,127,1.044,128,3.67,129,1.897,130,2.805,131,3.552,132,4.059,133,4.059,134,2.229,135,3.67,136,3.552,137,3.173,138,4.828,139,3.67,140,4.059,141,3.552,142,4.059,143,3.208,144,1.827,145,3.546,146,3.552,147,2.412,148,4.059,149,1.684,150,1.827,151,2.7,152,3.085]],["title/classes/EsResponseDto.html",[59,0.135,153,2.186]],["body/classes/EsResponseDto.html",[7,0.029,11,1.653,12,0.348,13,0.277,14,0.277,16,0.714,19,0.488,39,1.375,40,1.014,51,1.784,58,0.348,59,0.17,60,0.018,61,0.018,70,1.375,77,3.194,78,1.375,104,2.501,106,3.536,112,3.648,114,3.422,115,1.424,116,2.23,117,0.507,118,1.319,121,0.892,122,2.501,123,2.418,126,3.003,127,1.139,129,1.653,130,2.768,131,3.094,132,3.536,133,3.536,134,2.098,137,2.764,140,3.536,141,4.437,142,3.536,143,3.3,144,1.492,145,3.194,147,3.194,148,3.536,149,1.375,150,1.492,153,2.764,154,2.204,155,4.837,156,4.347,157,4.837,158,2.624,159,4.206,160,3.536,161,2.997,162,4.429,163,4.206,164,2.764,165,2.997,166,3.536,167,2.501,168,2.997,169,2.997,170,2.997,171,2.764,172,2.997,173,4.206,174,4.86,175,3.094,176,2.282,177,2.997,178,2.997,179,2.519,180,1.375,181,2.204,182,2.997,183,2.997,184,2.997,185,4.206,186,2.997,187,2.519,188,2.997,189,2.997,190,2.997,191,2.997,192,2.204]],["title/controllers/HealthController.html",[193,1.978,194,2.186]],["body/controllers/HealthController.html",[7,0.029,12,0.63,13,0.343,14,0.343,16,0.477,19,0.565,22,0.935,57,2.013,58,0.431,59,0.233,60,0.021,61,0.021,91,1.646,93,1.773,110,1.458,115,1.836,117,0.628,123,1.702,125,1.836,127,0.802,129,2.409,193,3.423,194,3.196,195,3.119,196,3.119,197,5.252,198,2.231,199,5.154,200,3.71,201,3.71,202,4.087,203,4.862,204,4.862,205,4.839,206,2.231,207,4.862,208,2.742,209,4.862,210,4.862,211,4.862,212,2.729,213,3.71,214,1.702,215,1.353,216,2.439,217,2.206,218,3.119,219,4.087]],["title/modules/HealthModule.html",[0,1.046,220,2.447]],["body/modules/HealthModule.html",[0,1.785,2,1.866,7,0.029,12,0.551,13,0.44,14,0.44,18,3.121,19,0.73,22,1.196,57,3.079,58,0.551,59,0.192,60,0.024,61,0.024,194,3.99,212,3.493,220,4.175,221,4.748,222,4.771,223,3.121,224,5.675,225,4.748]],["title/interfaces/HttpResponse.html",[226,1.307,227,1.978]],["body/interfaces/HttpResponse.html",[7,0.029,12,0.437,13,0.349,14,0.349,16,0.806,58,0.437,60,0.021,61,0.021,79,4.772,115,2.177,117,0.638,118,1.333,121,1.107,125,2.177,129,2.499,134,1.992,137,3.228,208,2.507,226,1.93,227,2.92,228,2.044,229,3.167,230,3.167,231,3.767,232,2.825,233,3.661,234,3.613,235,4.911,236,4.911,237,5.79,238,4.128,239,4.911,240,4.911,241,4.911,242,2.92,243,4.911]],["title/classes/HttpResponseException.html",[59,0.135,244,2.447]],["body/classes/HttpResponseException.html",[0,1.651,7,0.029,12,0.485,13,0.387,14,0.387,16,0.675,19,0.61,22,1.053,58,0.485,59,0.169,60,0.022,61,0.022,70,1.918,91,1.415,115,2.142,121,0.708,127,0.904,208,2.98,214,1.918,215,1.914,227,3.579,232,2.409,244,3.862,245,4.413,246,3.514,247,3.122,248,4.428,249,4.413,250,4.413,251,4.824,252,4.413,253,4.181,254,5.249,255,1.415,256,1.315,257,1.315,258,3.076,259,4.181,260,4.181,261,5.249]],["title/modules/HttpResponseModule.html",[0,1.046,65,1.978]],["body/modules/HttpResponseModule.html",[0,1.742,2,1.791,3,2.541,7,0.028,9,3.004,10,2.27,11,1.791,12,0.529,13,0.422,14,0.422,19,0.643,22,1.149,54,3.64,58,0.529,59,0.184,60,0.024,61,0.024,65,3.89,68,3.64,262,3.832,263,3.832,264,3.832,265,4.011,266,4.559,267,4.559,268,3.354]],["title/injectables/HttpResponseService.html",[265,1.978,269,1.126]],["body/injectables/HttpResponseService.html",[7,0.029,12,0.315,13,0.251,14,0.251,16,0.829,19,0.535,22,0.684,40,0.92,44,3.386,45,3.386,58,0.315,59,0.11,60,0.017,61,0.017,91,1.944,93,2.143,110,1.981,115,1.99,117,0.46,121,1.014,125,2.107,127,1.09,129,2.556,134,2.269,180,1.246,198,1.8,208,2.856,215,1.43,217,3.562,227,2.997,232,2.698,233,3.701,255,1.706,256,1.585,257,1.585,258,1.998,265,2.332,269,1.328,270,1.474,271,4.494,272,2.283,273,3.869,274,3.922,275,3.922,276,3.922,277,2.716,278,2.716,279,3.922,280,1.474,281,3.922,282,5.041,283,3.922,284,3.922,285,2.716,286,5.57,287,3.922,288,2.716,289,3.922,290,2.716,291,2.716,292,2.283,293,3.869,294,3.869,295,2.283,296,2.283,297,2.716,298,2.716,299,2.716,300,2.716,301,2.716,302,2.716]],["title/injectables/LoggerInterceptor.html",[31,1.978,269,1.126]],["body/injectables/LoggerInterceptor.html",[7,0.029,12,0.325,13,0.259,14,0.259,16,0.602,19,0.628,22,0.706,31,2.384,40,2.073,58,0.325,59,0.113,60,0.017,61,0.017,91,1.731,93,1.864,108,1.84,110,1.575,115,1.585,117,0.474,118,1.088,121,0.793,127,1.013,130,2.149,134,1.707,180,1.285,198,1.84,206,1.84,208,2.583,215,1.462,217,3.347,247,1.665,255,1.357,256,1.261,257,1.261,268,2.06,269,1.357,270,1.519,280,1.519,303,2.354,304,4.731,305,4.731,306,3.078,307,3.445,308,4.297,309,4.009,310,3.37,311,4.263,312,3.347,313,4.297,314,2.801,315,4.297,316,3.216,317,4.009,318,3.936,319,4.009,320,6.034,321,2.801,322,4.009,323,2.949,324,2.06,325,3.37,326,2.541,327,4.009,328,2.801,329,3.37,330,1.841,331,4.009,332,2.801,333,1.841,334,4.683,335,4.683,336,4.009,337,2.354,338,4.009,339,4.009,340,2.801,341,2.801,342,4.009,343,2.801,344,2.801,345,2.801,346,2.801,347,2.06,348,2.801,349,4.009,350,1.841,351,3.37,352,2.801,353,2.801,354,2.801]],["title/modules/LoggerModule.html",[0,1.046,66,1.978]],["body/modules/LoggerModule.html",[0,1.742,2,1.791,3,2.541,7,0.028,9,3.004,10,2.27,11,1.791,12,0.529,13,0.422,14,0.422,19,0.643,22,1.149,54,3.64,58,0.529,59,0.184,60,0.024,61,0.024,66,3.89,68,3.64,125,1.543,268,3.354,326,3.659,355,3.832,356,3.832,357,3.832,358,4.559]],["title/injectables/LoggerService.html",[269,1.126,326,1.805]],["body/injectables/LoggerService.html",[7,0.029,12,0.243,13,0.193,14,0.193,16,0.699,19,0.374,22,0.527,51,0.887,58,0.243,59,0.085,60,0.014,61,0.014,91,2.061,93,2.034,108,1.48,110,1.547,117,0.354,118,0.875,121,0.965,125,2.223,127,1.232,171,1.374,198,1.48,206,2.818,214,1.806,215,1.176,217,3.318,233,3.959,247,1.243,255,1.841,256,1.711,257,1.793,269,1.092,270,1.134,304,4.791,306,3.321,307,4.436,316,3.194,324,3.518,326,2.594,359,1.757,360,3.225,361,3.937,362,3.225,363,4.002,364,3.72,365,2.372,366,3.225,367,4.426,368,3.225,369,3.225,370,3.225,371,3.225,372,2.09,373,3.225,374,3.225,375,6.55,376,2.09,377,5.887,378,3.225,379,2.09,380,3.225,381,3.225,382,2.09,383,3.225,384,3.225,385,3.225,386,2.09,387,3.225,388,2.09,389,3.225,390,2.09,391,3.225,392,2.09,393,3.225,394,3.225,395,2.09,396,2.09,397,2.09,398,2.09,399,2.09,400,2.09,401,2.09,402,2.09,403,2.09,404,2.09,405,2.09,406,2.09,407,2.09,408,2.09,409,2.09]],["title/classes/PageDto.html",[59,0.135,410,2.186]],["body/classes/PageDto.html",[7,0.029,12,0.406,13,0.324,14,0.324,16,0.677,19,0.612,39,1.605,40,1.184,51,1.984,58,0.406,59,0.189,60,0.02,61,0.02,70,1.605,78,1.605,91,1.583,116,1.605,117,0.592,118,1.43,121,0.892,123,2.146,126,1.742,127,1.139,143,3.133,144,1.742,149,1.605,150,1.742,158,2.328,162,3.931,167,3.344,214,1.605,232,2.962,252,3.931,255,1.783,256,1.1,257,1.1,306,3.964,410,3.074,411,2.573,412,3.807,413,4.676,414,3.931,415,4.662,416,5.861,417,3.586,418,4.676,419,3.44,420,2.537,421,3.498,422,4.727,423,3.498,424,4.676,425,3.498,426,3.498,427,3.498,428,2.941,429,3.498]],["title/injectables/PageInterceptor.html",[269,1.126,430,2.186]],["body/injectables/PageInterceptor.html",[7,0.029,12,0.337,13,0.268,14,0.268,16,0.373,19,0.695,22,0.731,24,1.906,40,1.928,51,1.743,58,0.337,59,0.117,60,0.017,61,0.017,91,1.391,93,1.498,104,3.088,108,1.331,110,2.041,117,0.491,119,1.573,121,0.491,125,1.758,127,0.627,130,1.331,158,1.444,167,2.444,175,2.134,176,2.974,180,1.886,198,1.886,226,1.615,232,1.331,247,1.725,255,1.758,256,0.912,257,0.912,258,2.134,269,1.391,270,1.573,308,4.366,310,3.455,311,3.821,312,3.088,313,4.366,316,2.23,318,4.013,329,4.366,330,1.906,337,2.438,347,2.134,350,2.701,410,1.906,412,2.444,414,3.455,415,3.024,417,2.444,430,2.701,431,2.438,432,4.11,433,4.11,434,2.9,435,4.11,436,3.024,437,2.701,438,2.9,439,2.438,440,2.9,441,2.444,442,4.11,443,2.9,444,1.573,445,2.134,446,2.444,447,2.9,448,2.438,449,2.9,450,2.9,451,2.9,452,2.438,453,2.9,454,2.9,455,2.9,456,4.11,457,2.9,458,2.438,459,2.438,460,2.438,461,2.9,462,2.438,463,2.9,464,2.9,465,2.9,466,5.193,467,2.9,468,2.9,469,2.9,470,2.9,471,2.9,472,2.9,473,4.11,474,2.9,475,2.9,476,4.11,477,2.9,478,2.9,479,2.9,480,2.438,481,2.9,482,2.9,483,2.9,484,2.9]],["title/interfaces/PageMeta.html",[226,1.307,417,1.978]],["body/interfaces/PageMeta.html",[7,0.029,12,0.426,13,0.34,14,0.34,16,0.472,19,0.426,58,0.426,60,0.024,61,0.02,117,0.622,118,1.31,121,1.035,122,3.635,134,2.401,136,4.217,167,2.871,175,4.497,226,1.442,228,1.991,312,2.871,412,3.895,417,2.871,446,3.84,448,3.085,452,4.818,458,4.818,459,4.818,460,4.818,485,3.085,486,3.085,487,4.828,488,5.732,489,4.818,490,5.732,491,4.828,492,3.173,493,3.67]],["title/controllers/PapersController.html",[193,1.978,494,2.186]],["body/controllers/PapersController.html",[7,0.029,12,0.331,13,0.264,14,0.264,16,0.7,19,0.691,22,0.717,31,1.693,57,1.545,58,0.331,59,0.115,60,0.017,61,0.022,91,1.843,93,2.17,107,3.41,108,1.861,110,2.024,115,2.051,117,0.482,119,2.954,121,0.922,123,1.861,125,1.6,127,0.877,129,1.594,130,2.363,144,1.418,158,2.818,187,5.093,193,2.81,196,2.393,198,1.861,206,1.861,216,1.871,251,2.393,255,1.373,256,1.276,257,1.276,312,1.693,315,4.33,316,2.201,333,1.871,430,1.871,441,1.693,444,2.954,445,2.095,494,2.666,495,2.393,496,4.057,497,4.057,498,4.057,499,2.847,500,4.057,501,4.33,502,2.984,503,2.847,504,4.33,505,4.33,506,4.33,507,2.847,508,2.847,509,4.057,510,2.984,511,2.847,512,4.33,513,2.847,514,2.847,515,2.847,516,4.057,517,4.33,518,3.41,519,2.847,520,4.057,521,2.847,522,2.847,523,2.847,524,2.847,525,2.564,526,2.393,527,2.847,528,2.847,529,1.545,530,4.726,531,4.726,532,2.393,533,2.847,534,4.057,535,2.847,536,4.057,537,4.057,538,2.847,539,2.847,540,4.057,541,4.057,542,2.847,543,2.847,544,2.847,545,2.847,546,2.847]],["title/guards/RolesGuard.html",[547,2.186,548,2.447]],["body/guards/RolesGuard.html",[7,0.029,12,0.406,13,0.324,14,0.324,16,0.677,19,0.653,22,0.881,24,2.299,40,1.583,51,2.234,58,0.406,59,0.142,60,0.02,61,0.02,91,1.583,93,2.05,110,1.838,117,0.592,121,0.792,122,2.781,123,1.605,127,1.011,149,2.146,198,2.146,202,3.931,214,1.605,215,1.705,216,2.299,234,3.44,247,2.08,255,1.583,256,1.471,257,1.471,269,1.583,296,2.941,311,4.137,316,3.051,347,2.573,547,4.113,548,3.44,549,3.498,550,2.941,551,3.462,552,5.624,553,3.498,554,6.337,555,3.498,556,4.676,557,5.26,558,4.676,559,3.498,560,4.312,561,3.931,562,3.074,563,3.931,564,2.573,565,4.676,566,3.498,567,3.498,568,3.498,569,3.498,570,3.498]],["title/modules/SearchModule.html",[0,1.046,8,1.978]],["body/modules/SearchModule.html",[0,1.891,2,1.639,3,2.405,7,0.029,8,3.817,9,2.844,10,2.077,11,1.639,12,0.484,13,0.386,14,0.386,16,0.536,18,2.741,19,0.734,22,1.051,25,3.506,26,3.068,27,2.263,54,3.445,57,2.844,58,0.484,59,0.169,60,0.022,61,0.022,68,3.445,90,2.741,222,4.406,223,2.741,492,3.445,494,3.767,525,3.618,526,3.506,571,3.506,572,3.506,573,3.506,574,4.171,575,4.171]],["title/classes/SearchQueryDto.html",[59,0.135,441,1.978]],["body/classes/SearchQueryDto.html",[7,0.029,12,0.35,13,0.279,14,0.279,16,0.715,19,0.49,39,1.382,40,1.02,58,0.35,59,0.171,60,0.018,61,0.018,70,1.382,77,3.203,78,1.382,114,2.51,115,1.429,116,2.236,117,0.51,118,1.323,119,3.374,121,0.942,123,2.423,125,2.147,126,3.007,127,1.202,134,2.372,136,3.885,143,3.307,144,1.5,145,3.203,146,3.585,147,3.203,149,1.382,150,1.5,181,3.106,214,1.382,255,1.02,256,0.947,257,0.947,412,3.738,441,2.51,446,3.698,462,3.549,492,2.775,529,3.127,576,2.216,577,5.227,578,4.221,579,4.221,580,3.012,581,3.012,582,5.281,583,5.281,584,3.012,585,3.549,586,2.532,587,3.012,588,3.549,589,3.012,590,4.221,591,4.221,592,3.012,593,3.106,594,3.549,595,3.012,596,4.097,597,2.532,598,3.012,599,3.012,600,3.012,601,3.012]],["title/classes/SearchResultDto.html",[59,0.135,444,1.805]],["body/classes/SearchResultDto.html",[7,0.029,12,0.405,13,0.323,14,0.323,16,0.676,19,0.542,39,1.599,40,1.179,58,0.405,59,0.189,60,0.02,61,0.02,70,1.599,77,2.29,78,1.599,91,1.579,114,3.339,115,1.579,116,2.412,117,0.59,118,1.427,121,0.89,123,2.14,126,2.795,127,1.137,129,2.3,134,2.134,143,3.126,144,1.735,145,3.455,146,3.431,147,3.455,149,1.599,150,1.735,158,3.063,160,2.929,214,1.599,232,3,242,3.658,255,1.78,256,1.096,257,1.096,351,4.419,419,3.431,420,2.53,422,3.92,428,2.929,444,2.53,504,3.92,506,4.72,529,3.046,586,2.929,596,2.929,602,2.563,603,4.664,604,4.664,605,3.484,606,3.484,607,3.484]],["title/injectables/SearchService.html",[269,1.126,525,1.805]],["body/injectables/SearchService.html",[7,0.029,11,1.221,12,0.231,13,0.184,14,0.184,16,0.491,19,0.543,22,0.502,58,0.231,59,0.081,60,0.013,61,0.013,80,2.043,91,1.583,93,1.952,108,1.98,110,1.695,114,2.947,116,0.914,117,0.338,118,0.844,119,2.689,121,0.907,125,1.94,127,1.072,129,0.783,130,1.426,131,2.286,134,1.705,151,3.938,153,2.511,156,3.174,158,2.329,166,2.612,176,2.341,180,1.426,198,1.426,205,2.612,206,2.581,214,0.914,215,1.573,216,1.31,217,2.272,223,1.31,232,1.753,233,1.848,255,1.583,256,1.471,257,1.471,269,1.052,270,1.081,280,1.686,306,2.836,316,1.686,323,3.174,330,1.31,419,2.286,420,1.686,436,2.286,437,2.836,439,1.675,444,1.081,445,1.466,492,2.043,501,3.627,512,2.612,517,3.211,525,1.686,529,1.081,532,1.675,593,2.286,608,1.675,609,3.108,610,3.82,611,4.893,612,3.108,613,3.108,614,3.108,615,3.108,616,1.993,617,5.501,618,1.993,619,3.108,620,3.108,621,3.108,622,1.993,623,3.108,624,5.821,625,4.314,626,3.108,627,4.5,628,3.108,629,3.108,630,2.286,631,3.108,632,3.108,633,1.993,634,3.108,635,2.043,636,3.82,637,3.108,638,1.993,639,3.108,640,1.993,641,3.108,642,2.612,643,3.108,644,3.108,645,2.612,646,3.108,647,1.993,648,3.108,649,2.286,650,2.612,651,1.993,652,1.675,653,1.466,654,4.314,655,3.108,656,4.314,657,4.314,658,4.314,659,3.108,660,3.211,661,3.82,662,4.314,663,4.314,664,4.314,665,4.314,666,3.108,667,4.314,668,3.108,669,3.108,670,3.108,671,3.108,672,4.314,673,3.108,674,1.993,675,1.993,676,1.993,677,1.993,678,1.993,679,3.108,680,1.993,681,1.993]],["title/interfaces/ValidationPipeOptions.html",[226,1.307,682,2.447]],["body/interfaces/ValidationPipeOptions.html",[7,0.029,12,0.48,13,0.382,14,0.382,16,0.531,19,0.48,58,0.48,59,0.167,60,0.022,61,0.022,72,3.832,78,1.895,95,3.098,101,3.472,117,0.7,118,1.414,121,0.966,122,3.751,206,2.39,226,1.623,228,2.241,248,3.832,250,4.379,257,1.984,682,3.832,683,3.472,684,3.424,685,5.209,686,5.209,687,5.706,688,5.992,689,5.992,690,5.992,691,5.209,692,5.209,693,5.209,694,5.209,695,5.209]],["title/interfaces/VirtualBankOptions.html",[226,1.307,696,1.978]],["body/interfaces/VirtualBankOptions.html",[7,0.029,12,0.419,13,0.334,14,0.334,16,0.464,19,0.419,27,2.903,40,1.222,58,0.621,60,0.02,61,0.02,72,2.655,79,4.476,80,3.138,82,3.999,83,4.013,84,3.999,86,3.999,87,3.999,93,1.316,95,2.146,117,0.611,118,1.296,121,0.906,127,1.032,134,2.324,226,1.418,228,1.958,696,3.618,697,2.372,698,4.774,699,3.936,700,4.013,701,4.774,702,3.512,703,4.774,704,4.774,705,5.694,706,4.774,707,4.774,708,4.774,709,4.774,710,4.774,711,3.512,712,3.609,713,4.013,714,3.033,715,3.609,716,3.033,717,3.033,718,3.033]],["title/coverage.html",[719,3.8]],["body/coverage.html",[7,0.029,14,0.278,15,2.208,27,1.629,29,2.208,31,1.785,41,2.208,59,0.239,60,0.018,61,0.018,69,2.208,71,3.098,95,3.588,108,1.377,111,2.208,112,3.466,113,3.098,121,0.508,150,2.765,153,1.973,154,3.098,193,2.504,194,1.973,195,2.523,226,2.072,227,1.785,229,2.523,230,2.523,244,2.208,245,2.523,246,2.523,265,1.785,269,1.88,271,2.523,272,2.523,303,2.523,326,1.629,359,2.523,363,1.973,410,1.973,411,3.098,417,1.785,430,1.973,431,2.523,441,1.785,444,1.629,485,2.523,486,2.523,494,1.973,495,2.523,525,1.629,529,2.861,547,1.973,548,2.208,550,2.523,551,1.973,564,2.208,576,3.098,602,3.098,608,2.523,682,2.208,683,2.523,696,1.785,697,2.768,711,2.208,719,2.523,720,2.208,721,3.002,722,3.002,723,6.804,724,4.864,725,4.864,726,3.54,727,6.281,728,2.523,729,6.606,730,3.54,731,4.211,732,5.553,733,3.002,734,3.002,735,3.002,736,4.211,737,2.523,738,4.668,739,2.523,740,2.523,741,2.523,742,2.523,743,2.523,744,3.002,745,2.523,746,2.523,747,3.002,748,2.523]],["title/dependencies.html",[3,1.833,749,2.05]],["body/dependencies.html",[3,1.952,7,0.029,22,1.072,24,2.796,26,3.129,36,3.576,37,3.576,52,3.576,59,0.215,60,0.023,61,0.023,75,3.576,78,1.952,144,2.118,167,2.529,212,3.129,223,2.796,330,2.796,333,2.796,611,3.576,750,4.253,751,4.253,752,4.253,753,4.253,754,4.253,755,4.253,756,4.253,757,4.253,758,5.784,759,4.253,760,4.253,761,4.253,762,4.253,763,4.253,764,4.253,765,4.253,766,4.253,767,4.253,768,4.253,769,4.253,770,5.306,771,4.253,772,5.306,773,4.253,774,4.253,775,4.253,776,4.253,777,4.253,778,4.253,779,3.576,780,4.253,781,4.253,782,4.253,783,4.253,784,4.253,785,4.253]],["title/miscellaneous/enumerations.html",[786,1.512,787,3.358]],["body/miscellaneous/enumerations.html",[7,0.029,10,1.111,17,0.719,60,0.009,61,0.012,80,0.871,82,0.871,84,0.871,86,0.871,87,0.871,104,0.788,108,1.024,110,1.136,115,1.388,117,0.224,121,0.489,127,0.483,129,1.799,130,2.983,137,1.467,149,1.326,164,1.9,171,0.871,176,0.719,179,3.18,180,3.113,181,0.975,192,0.975,206,1.326,208,1.556,215,1.054,218,2.43,233,1.327,234,0.975,242,3.011,292,1.876,293,1.876,294,1.876,295,1.876,305,2.43,312,0.788,323,1.642,350,2.487,363,1.467,365,0.975,420,0.719,436,1.642,437,2.695,446,1.327,489,1.876,510,1.642,518,4.005,551,1.467,560,3.208,562,1.467,585,1.876,593,2.126,635,1.467,642,1.114,649,4.646,652,1.114,653,0.975,660,1.114,696,1.719,697,0.871,699,0.975,702,0.975,713,1.114,714,1.876,779,3.447,786,0.719,787,1.114,788,1.114,789,1.326,790,1.326,791,1.326,792,1.326,793,1.326,794,2.232,795,1.326,796,1.326,797,3.39,798,2.232,799,2.232,800,2.89,801,1.326,802,1.326,803,1.326,804,1.326,805,4.1,806,3.783,807,2.89,808,2.89,809,1.326,810,4.1,811,1.326,812,1.326,813,1.326,814,3.783,815,2.232,816,2.89,817,1.326,818,2.85,819,3.39,820,1.326,821,5.475,822,2.232,823,2.232,824,4.005,825,1.326,826,1.467,827,1.114,828,1.326,829,1.114,830,1.114,831,1.114,832,1.114,833,2.232,834,1.326,835,1.326,836,1.114,837,1.326,838,2.232,839,2.89,840,1.876,841,1.326,842,1.326,843,2.43,844,2.232,845,2.232,846,2.232,847,1.326,848,2.85,849,1.326,850,2.232,851,1.326,852,1.326,853,1.876,854,1.326,855,1.326,856,1.114,857,1.326,858,2.89,859,2.232,860,1.326,861,2.232,862,4.925,863,2.89,864,1.326,865,1.642,866,1.326,867,4.1,868,2.232,869,2.232,870,2.43,871,2.126,872,2.232,873,1.326,874,2.232,875,2.232,876,1.326,877,1.876,878,1.876,879,1.326,880,2.232,881,2.232,882,1.326,883,2.232,884,2.232,885,2.232,886,2.89,887,1.326,888,1.876,889,3.39,890,1.326,891,2.232,892,2.232,893,1.326,894,2.89,895,3.39,896,2.89,897,2.232,898,1.326,899,2.232,900,1.326,901,2.232,902,2.232,903,1.326,904,1.326,905,1.114,906,1.326,907,2.232,908,1.326,909,2.232,910,2.232,911,1.326,912,1.326,913,1.326,914,1.326,915,1.326,916,3.783,917,2.232,918,1.326,919,1.114,920,1.326,921,1.326,922,3.39,923,2.232,924,0.975,925,2.89,926,2.232,927,1.326,928,1.326,929,1.326,930,2.232,931,2.232,932,1.114,933,2.232,934,2.232,935,2.232,936,1.326,937,1.326,938,2.232,939,2.89,940,1.326,941,2.232,942,1.326,943,2.232,944,2.232,945,2.232,946,1.114,947,3.39,948,1.326,949,1.326,950,1.326,951,1.326,952,1.326,953,1.326,954,1.326,955,1.114,956,2.232,957,2.232,958,1.326,959,2.232,960,1.326,961,1.326,962,1.326,963,2.232,964,1.326,965,1.326,966,1.326,967,1.326,968,1.326,969,1.326,970,1.326,971,1.326,972,1.326,973,1.114,974,1.326,975,1.326,976,1.114,977,1.326,978,2.232,979,1.326,980,2.232,981,1.326,982,2.232,983,1.642,984,1.326,985,1.326,986,1.876,987,2.232,988,1.326,989,1.326,990,1.326,991,2.43,992,2.232,993,1.114,994,1.326,995,2.232,996,1.326,997,2.232,998,2.89,999,1.326,1000,2.232,1001,1.326,1002,2.232,1003,1.326,1004,1.326,1005,2.232,1006,1.326,1007,1.326,1008,1.326,1009,1.326,1010,1.326,1011,2.232,1012,2.126,1013,1.326,1014,2.85,1015,2.232,1016,1.876,1017,3.39,1018,1.114,1019,1.326,1020,2.232,1021,1.326,1022,2.232,1023,2.232,1024,1.326,1025,1.326,1026,2.232,1027,1.326,1028,1.326,1029,2.232,1030,1.326,1031,1.326,1032,2.232,1033,1.326,1034,1.326,1035,1.326,1036,1.326,1037,2.232,1038,1.642,1039,1.326,1040,1.326,1041,1.326,1042,1.114,1043,1.326,1044,1.326,1045,1.326,1046,1.326,1047,1.326,1048,0.975,1049,1.326,1050,2.232,1051,1.326,1052,1.326,1053,1.326,1054,1.326,1055,1.326,1056,1.326,1057,1.326,1058,1.326,1059,1.326,1060,2.43,1061,2.89,1062,2.89,1063,2.232,1064,2.232,1065,1.326,1066,0.975,1067,1.114,1068,1.326,1069,2.232,1070,1.326,1071,2.232,1072,2.232]],["title/miscellaneous/functions.html",[786,1.512,1073,3.358]],["body/miscellaneous/functions.html",[7,0.027,16,0.776,17,1.898,29,3.44,60,0.02,61,0.02,71,2.573,89,4.428,90,3.074,92,2.941,93,2.05,96,2.941,97,3.931,115,1.184,116,2.767,117,0.592,121,1.021,125,1.583,130,1.605,134,2.281,180,1.605,206,2.826,208,2.417,215,2.199,248,3.44,255,2.042,256,1.897,257,1.897,280,1.898,307,4.662,324,2.573,627,3.931,645,2.941,684,2.299,711,3.875,737,2.941,738,2.941,739,3.931,740,3.931,741,3.931,742,3.931,743,3.931,745,2.941,746,4.428,786,1.898,991,2.941,1066,2.573,1073,2.941,1074,3.498,1075,3.498,1076,5.861,1077,3.498,1078,3.498,1079,3.498,1080,3.498,1081,3.498,1082,3.498,1083,4.676,1084,3.498,1085,3.498,1086,3.498,1087,3.498,1088,3.498,1089,3.498,1090,2.941,1091,3.498,1092,4.676,1093,4.676,1094,3.498,1095,3.498,1096,4.676,1097,4.676,1098,3.498,1099,2.941,1100,3.498]],["title/index.html",[117,0.472,1101,2.343,1102,2.343]],["body/index.html",[7,0.026,13,0.369,17,3.209,39,2.139,60,0.017,61,0.017,90,2.62,126,1.383,164,1.826,197,3.351,199,3.351,215,1.699,219,3.351,238,3.351,242,3.338,273,3.351,280,1.507,364,2.335,420,1.507,502,2.044,505,2.335,510,2.044,560,3.747,562,3.064,630,2.044,635,1.826,650,3.351,699,2.932,720,3.967,748,2.335,749,2.044,818,3.919,826,3.064,829,2.335,836,2.335,865,2.044,871,3.429,877,2.335,983,2.044,1048,2.044,1099,2.335,1103,3.986,1104,5.393,1105,2.335,1106,2.932,1107,5.613,1108,3.986,1109,2.778,1110,2.778,1111,5.613,1112,4.661,1113,3.986,1114,2.778,1115,3.986,1116,4.661,1117,3.986,1118,3.986,1119,3.986,1120,2.778,1121,2.778,1122,3.351,1123,2.778,1124,2.778,1125,2.778,1126,2.778,1127,2.778,1128,3.986,1129,2.778,1130,2.778,1131,3.986,1132,3.986,1133,2.778,1134,2.778,1135,2.778,1136,2.778,1137,2.778,1138,2.778,1139,2.778,1140,2.778,1141,2.044,1142,5.093,1143,2.778,1144,2.778,1145,2.778,1146,3.986,1147,3.986,1148,2.778,1149,4.86,1150,4.661,1151,5.613,1152,4.661,1153,5.613,1154,2.778,1155,2.778,1156,2.778,1157,2.778,1158,2.778,1159,2.778,1160,4.661,1161,2.778,1162,2.778,1163,2.778,1164,2.778,1165,3.986,1166,3.986,1167,3.986,1168,3.986,1169,3.986,1170,2.778,1171,2.778,1172,2.778,1173,2.335,1174,2.778,1175,2.778,1176,3.986,1177,3.986,1178,2.778,1179,2.778,1180,2.778,1181,2.778,1182,2.778,1183,2.778,1184,2.778,1185,2.778,1186,2.778,1187,5.093,1188,3.986,1189,2.778,1190,2.778,1191,5.613,1192,2.778,1193,2.778,1194,2.778,1195,2.335,1196,2.778,1197,2.778,1198,2.335,1199,2.778,1200,2.778,1201,2.778,1202,2.778,1203,2.778,1204,2.335,1205,2.778,1206,2.778,1207,2.778,1208,2.778,1209,2.778,1210,3.986,1211,4.661,1212,2.044,1213,2.778,1214,2.778,1215,2.778,1216,2.778,1217,2.778,1218,2.778,1219,2.778,1220,2.778,1221,2.778,1222,2.778,1223,2.778,1224,2.778,1225,2.778,1226,2.778,1227,2.778,1228,2.778,1229,2.778,1230,2.335,1231,2.778,1232,2.778,1233,2.335,1234,2.778,1235,2.778]],["title/license.html",[1101,2.343,1102,2.343,1236,2.05]],["body/license.html",[7,0.013,11,0.552,13,0.489,14,0.435,16,0.181,19,0.163,27,0.763,55,1.182,59,0.057,60,0.01,61,0.01,82,2.313,126,0.7,127,0.304,158,2.103,176,0.763,192,1.034,215,0.513,228,0.763,242,1.793,249,1.182,256,0.948,325,1.182,333,1.541,365,1.034,412,0.836,420,2.122,437,0.924,502,1.034,561,1.182,562,0.924,563,1.182,588,1.971,594,1.182,630,1.034,635,0.924,653,1.034,700,1.182,702,1.034,720,2.218,824,4.23,826,0.924,827,1.182,830,1.971,831,1.971,832,2.535,840,1.182,843,1.182,848,1.182,853,1.182,856,1.182,865,3.702,870,4.099,871,1.034,878,1.182,888,1.182,905,1.182,919,3.947,924,1.034,932,3.288,946,1.971,955,2.535,973,2.958,976,2.958,983,1.725,986,1.182,993,1.182,1012,1.034,1014,2.958,1016,1.182,1018,1.182,1038,2.218,1042,2.535,1048,1.034,1060,1.182,1090,1.182,1105,1.182,1122,1.971,1141,1.034,1149,2.535,1173,1.182,1195,2.535,1198,1.971,1204,1.182,1212,1.034,1230,1.182,1233,1.971,1236,4.64,1237,2.958,1238,3.016,1239,1.406,1240,1.406,1241,1.406,1242,4.876,1243,5.388,1244,3.519,1245,3.911,1246,1.406,1247,5.563,1248,5.032,1249,1.406,1250,1.406,1251,5.032,1252,5.388,1253,4.225,1254,2.345,1255,1.406,1256,3.911,1257,1.406,1258,1.406,1259,3.519,1260,2.345,1261,1.406,1262,3.016,1263,2.345,1264,2.345,1265,1.406,1266,1.406,1267,5.766,1268,3.519,1269,2.345,1270,4.225,1271,1.406,1272,2.345,1273,1.406,1274,1.406,1275,1.406,1276,1.406,1277,1.406,1278,1.406,1279,1.406,1280,3.016,1281,1.406,1282,3.016,1283,2.345,1284,5.388,1285,1.406,1286,4.225,1287,4.876,1288,3.519,1289,1.406,1290,1.406,1291,1.406,1292,1.406,1293,1.406,1294,2.345,1295,1.406,1296,1.406,1297,6.307,1298,3.016,1299,2.345,1300,1.406,1301,4.876,1302,1.406,1303,2.345,1304,5.766,1305,5.822,1306,1.406,1307,1.406,1308,1.406,1309,1.406,1310,1.406,1311,1.406,1312,2.345,1313,2.345,1314,1.406,1315,1.406,1316,1.406,1317,1.406,1318,1.406,1319,3.519,1320,3.911,1321,1.406,1322,2.345,1323,3.519,1324,2.345,1325,1.406,1326,3.911,1327,2.345,1328,1.406,1329,1.406,1330,3.016,1331,1.406,1332,1.406,1333,1.406,1334,2.345,1335,1.406,1336,1.406,1337,1.406,1338,3.016,1339,1.406,1340,1.406,1341,3.016,1342,1.406,1343,1.406,1344,1.406,1345,3.519,1346,5.032,1347,1.406,1348,2.345,1349,3.016,1350,2.345,1351,2.345,1352,2.345,1353,2.345,1354,2.345,1355,2.345,1356,3.016,1357,2.345,1358,2.345,1359,2.345,1360,2.345,1361,1.406,1362,2.345,1363,1.406,1364,3.911,1365,4.481,1366,3.016,1367,2.345,1368,2.345,1369,2.345,1370,1.406,1371,1.406,1372,3.016,1373,2.345,1374,1.406,1375,1.406,1376,1.406,1377,3.016,1378,1.406,1379,1.406,1380,1.406,1381,2.345,1382,2.345,1383,1.406,1384,1.406,1385,1.406,1386,1.406,1387,1.406,1388,1.406,1389,1.406,1390,2.345,1391,1.406,1392,1.406,1393,1.406,1394,1.406,1395,1.406,1396,1.406,1397,1.406,1398,1.406,1399,1.406,1400,1.406,1401,1.406,1402,1.406,1403,4.695,1404,1.406,1405,1.406,1406,1.406,1407,1.406,1408,1.406,1409,3.519,1410,2.345,1411,3.519,1412,1.406,1413,1.406,1414,1.406,1415,3.016,1416,1.406,1417,1.406,1418,1.406,1419,1.406,1420,2.345,1421,1.406,1422,1.406,1423,3.911,1424,1.406,1425,1.406,1426,1.406,1427,1.406,1428,1.406,1429,3.016,1430,3.519,1431,1.406,1432,1.406,1433,1.406,1434,1.406,1435,1.406,1436,1.406,1437,1.406,1438,1.406,1439,1.406,1440,2.345,1441,1.406,1442,2.345,1443,1.406,1444,1.406,1445,1.406,1446,1.406,1447,1.406,1448,1.406,1449,1.406,1450,3.519,1451,3.016,1452,3.016,1453,3.016,1454,2.345,1455,2.345,1456,3.016,1457,2.345,1458,2.345,1459,2.345,1460,1.406,1461,1.406,1462,1.406,1463,1.406,1464,1.406,1465,1.406,1466,1.406,1467,1.406,1468,2.345,1469,1.406,1470,1.406,1471,1.406,1472,1.406,1473,3.911,1474,1.406,1475,1.406,1476,1.406,1477,1.406,1478,1.406,1479,1.406,1480,1.406,1481,1.406,1482,1.406,1483,3.911,1484,1.406,1485,1.406,1486,1.406,1487,1.406,1488,1.406,1489,1.406,1490,1.406,1491,1.406,1492,1.406,1493,1.406,1494,1.406,1495,1.406,1496,1.406,1497,1.406,1498,1.406,1499,1.406,1500,1.406,1501,3.016,1502,1.406,1503,1.406,1504,1.406,1505,2.345,1506,1.406,1507,1.406,1508,1.406,1509,1.406,1510,1.406,1511,1.406,1512,1.406,1513,1.406,1514,1.406,1515,1.406,1516,1.406,1517,1.406,1518,1.406,1519,1.406,1520,1.406,1521,1.406,1522,2.345,1523,2.345,1524,1.406,1525,1.406,1526,1.406,1527,1.406,1528,1.406,1529,1.406,1530,1.406,1531,1.406,1532,1.406,1533,1.406,1534,1.406,1535,1.406,1536,1.406,1537,1.406,1538,1.406,1539,1.406,1540,1.406,1541,1.406]],["title/modules.html",[2,1.776]],["body/modules.html",[1,3.201,2,1.913,6,2.896,7,0.024,8,2.896,60,0.024,61,0.024,65,2.896,66,2.896,220,3.583,826,3.201,1012,4.761,1542,6.472,1543,6.472,1544,6.562,1545,4.87]],["title/overview.html",[1106,3.325]],["body/overview.html",[1,4.111,2,1.57,3,2.341,4,3.359,5,3.359,6,3.865,7,0.028,8,3.719,9,2.768,10,1.989,11,1.57,57,2.168,60,0.022,61,0.022,62,3.359,63,3.359,64,3.359,65,3.896,66,3.896,70,1.833,171,2.626,176,2.168,228,2.168,262,3.359,263,3.359,264,3.359,265,3.78,270,2.168,326,3.449,355,3.359,356,3.359,357,3.359,525,3.449,547,2.626,571,3.359,572,3.359,573,3.359,1066,2.939,1067,3.359,1106,2.939,1546,3.996,1547,3.996]],["title/properties.html",[118,1.084,749,2.05]],["body/properties.html",[7,0.028,16,0.643,17,2.711,60,0.025,61,0.025,118,1.357,164,3.285,208,2.293,649,3.677,1038,3.677,1141,3.677,1212,3.677,1236,3.677,1237,4.201,1548,4.998,1549,4.998,1550,4.998,1551,4.998,1552,4.998,1553,4.998]],["title/miscellaneous/variables.html",[684,2.626,786,1.512]],["body/miscellaneous/variables.html",[2,1.784,7,0.029,15,2.463,17,1.816,27,2.795,39,2.794,41,3.34,42,2.814,43,2.814,44,2.463,45,2.463,51,1.42,60,0.019,61,0.019,84,2.2,86,2.2,87,2.2,95,1.991,112,2.984,113,3.34,116,2.65,117,0.567,118,1.567,119,2.463,120,2.814,121,1.031,125,1.537,127,0.724,129,1.315,141,2.463,149,2.65,150,3.161,151,2.463,152,2.814,154,3.34,155,2.814,156,2.463,157,2.814,180,2.94,232,2.083,280,3.476,350,2.2,363,3.631,411,2.463,415,2.463,446,1.991,480,2.814,529,2.463,551,4.002,557,2.814,564,3.34,576,3.34,577,2.814,597,2.814,602,3.34,684,2.2,696,1.991,697,2.2,716,2.814,717,2.814,718,2.814,726,2.814,728,3.817,730,2.814,786,1.816,788,2.814,924,2.463,1554,4.54,1555,3.348,1556,4.54,1557,4.54,1558,3.348,1559,4.54,1560,3.348,1561,3.348,1562,3.348,1563,3.348,1564,3.348,1565,3.348]],["title/routes.html",[1566,3.8]],["body/routes.html",[7,0.026,60,0.026,61,0.026,1566,4.461]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{}}}],["0.0.1",{"_index":1548,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":757,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1192,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":782,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":769,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":777,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":765,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":768,"title":{},"body":{"dependencies.html":{}}}],["01002",{"_index":189,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":176,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":751,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":185,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1/1",{"_index":729,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":462,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":723,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":300,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":811,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11/11",{"_index":744,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":854,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["14.0.1",{"_index":780,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":948,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1998",{"_index":964,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["2",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1238,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":759,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":724,"title":{},"body":{"coverage.html":{}}}],["200",{"_index":504,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1240,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1161,"title":{},"body":{"index.html":{}}}],["2324",{"_index":971,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":181,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":784,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":756,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":774,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":767,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":725,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":138,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["4",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{},"overview.html":{}}}],["4.6.0",{"_index":763,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":732,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":990,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":912,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":985,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":981,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":996,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1001,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["5",{"_index":171,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":761,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":772,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":731,"title":{},"body":{"coverage.html":{}}}],["5/6",{"_index":734,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1275,"title":{},"body":{"license.html":{}}}],["504",{"_index":676,"title":{},"body":{"injectables/SearchService.html":{}}}],["6",{"_index":1546,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":735,"title":{},"body":{"coverage.html":{}}}],["7",{"_index":1547,"title":{},"body":{"overview.html":{}}}],["7.5.5",{"_index":785,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":736,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1231,"title":{},"body":{"index.html":{}}}],["8.0.0",{"_index":758,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":762,"title":{},"body":{"dependencies.html":{}}}],["83",{"_index":733,"title":{},"body":{"coverage.html":{}}}],["9",{"_index":1250,"title":{},"body":{"license.html":{}}}],["_id",{"_index":188,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":186,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_score",{"_index":190,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_shards",{"_index":155,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":191,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["above",{"_index":1433,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":591,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":909,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":907,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1503,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":814,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1501,"title":{},"body":{"license.html":{}}}],["access",{"_index":877,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1021,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["according",{"_index":908,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":506,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":641,"title":{},"body":{"injectables/SearchService.html":{}}}],["act",{"_index":1509,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1016,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":998,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1481,"title":{},"body":{"license.html":{}}}],["actual",{"_index":234,"title":{},"body":{"interfaces/HttpResponse.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1119,"title":{},"body":{"index.html":{}}}],["add",{"_index":1233,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1422,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1423,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1321,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":753,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":928,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1109,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1499,"title":{},"body":{"license.html":{}}}],["against",{"_index":1382,"title":{},"body":{"license.html":{}}}],["agent",{"_index":839,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1512,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1453,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1437,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1124,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1115,"title":{},"body":{"index.html":{}}}],["alive",{"_index":205,"title":{},"body":{"controllers/HealthController.html":{},"injectables/SearchService.html":{}}}],["alleging",{"_index":1387,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":149,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":150,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1378,"title":{},"body":{"license.html":{}}}],["along",{"_index":1416,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1421,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1194,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":846,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":708,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amount",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1506,"title":{},"body":{"license.html":{}}}],["annotations",{"_index":1309,"title":{},"body":{"license.html":{}}}],["another",{"_index":883,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["anything",{"_index":898,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1237,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":235,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apioperation",{"_index":530,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation({summary",{"_index":500,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":143,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":425,"title":{},"body":{"classes/PageDto.html":{}}}],["apiresponse",{"_index":531,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1225,"title":{},"body":{"index.html":{}}}],["app",{"_index":1191,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1419,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1303,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1451,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":225,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":661,"title":{},"body":{"injectables/SearchService.html":{}}}],["applies",{"_index":1371,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1198,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":563,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1467,"title":{},"body":{"license.html":{}}}],["april",{"_index":967,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1120,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1104,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1533,"title":{},"body":{"license.html":{}}}],["args",{"_index":375,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":407,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":377,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1488,"title":{},"body":{"license.html":{}}}],["asc",{"_index":585,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1518,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":860,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":1471,"title":{},"body":{"license.html":{}}}],["assume",{"_index":1469,"title":{},"body":{"license.html":{}}}],["async",{"_index":611,"title":{},"body":{"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1521,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1302,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1022,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1409,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":914,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":891,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1551,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1254,"title":{},"body":{"license.html":{}}}],["authorship",{"_index":1298,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1137,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":826,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["axiosres.data",{"_index":664,"title":{},"body":{"injectables/SearchService.html":{}}}],["b",{"_index":1400,"title":{},"body":{"license.html":{}}}],["back",{"_index":505,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":991,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1015,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":884,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":706,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":502,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1163,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1158,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1164,"title":{},"body":{"index.html":{}}}],["basic",{"_index":231,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1455,"title":{},"body":{"license.html":{}}}],["before",{"_index":132,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["behalf",{"_index":1326,"title":{},"body":{"license.html":{}}}],["being",{"_index":808,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1173,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1279,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1318,"title":{},"body":{"license.html":{}}}],["block",{"_index":424,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":835,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1141,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":122,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/PageMeta.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":746,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1523,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1544,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1542,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1107,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1165,"title":{},"body":{"index.html":{}}}],["building",{"_index":1146,"title":{},"body":{"index.html":{}}}],["c",{"_index":1406,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":317,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1178,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":313,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["calling",{"_index":1210,"title":{},"body":{"index.html":{}}}],["canactivate",{"_index":552,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":558,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":903,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1401,"title":{},"body":{"license.html":{}}}],["case",{"_index":236,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":672,"title":{},"body":{"injectables/SearchService.html":{}}}],["cause",{"_index":1264,"title":{},"body":{"license.html":{}}}],["caused",{"_index":842,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cd",{"_index":1142,"title":{},"body":{"index.html":{}}}],["change",{"_index":652,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1405,"title":{},"body":{"license.html":{}}}],["character",{"_index":1487,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":906,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1356,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1186,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1184,"title":{},"body":{"index.html":{}}}],["check",{"_index":199,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":202,"title":{},"body":{"controllers/HealthController.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1502,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1384,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1373,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["cleint_error",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":779,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":802,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1139,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1188,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":262,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":263,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":264,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":355,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":356,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":357,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":571,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":572,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":573,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":242,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":974,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":408,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1379,"title":{},"body":{"license.html":{}}}],["comission",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1228,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1527,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1496,"title":{},"body":{"license.html":{}}}],["commision",{"_index":707,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":709,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":249,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1330,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1293,"title":{},"body":{"license.html":{}}}],["complete",{"_index":815,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":816,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completion",{"_index":133,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1536,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1427,"title":{},"body":{"license.html":{}}}],["comply",{"_index":801,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1229,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":750,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1128,"title":{},"body":{"index.html":{}}}],["computer",{"_index":1493,"title":{},"body":{"license.html":{}}}],["condition",{"_index":1008,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":876,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":1243,"title":{},"body":{"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"modules/SearchModule.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1201,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1206,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":922,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1130,"title":{},"body":{"index.html":{}}}],["connection",{"_index":809,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1486,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1508,"title":{},"body":{"license.html":{}}}],["conspicuously",{"_index":1342,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1388,"title":{},"body":{"license.html":{}}}],["constructor",{"_index":214,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":603,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":369,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":252,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":616,"title":{},"body":{"injectables/SearchService.html":{}}}],["constructor(private",{"_index":216,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":578,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":553,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":419,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1424,"title":{},"body":{"license.html":{}}}],["contained",{"_index":993,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["contains",{"_index":162,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{}}}],["content",{"_index":437,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["contents",{"_index":1105,"title":{},"body":{"index.html":{},"license.html":{}}}],["context",{"_index":316,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":568,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":344,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":567,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":346,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":336,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":347,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":348,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":335,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":797,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1269,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1320,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1377,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1429,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1346,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1389,"title":{},"body":{"license.html":{}}}],["control",{"_index":976,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1258,"title":{},"body":{"license.html":{}}}],["controller",{"_index":193,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":213,"title":{},"body":{"controllers/HealthController.html":{}}}],["controller('papers",{"_index":533,"title":{},"body":{"controllers/PapersController.html":{}}}],["controllername",{"_index":343,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":354,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":254,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":556,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1295,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1396,"title":{},"body":{"license.html":{}}}],["copy",{"_index":832,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1252,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":712,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":526,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":988,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":847,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["counterclaim",{"_index":1385,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1127,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":719,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":818,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1209,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":362,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":371,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":373,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1125,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1383,"title":{},"body":{"license.html":{}}}],["current",{"_index":923,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":282,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1446,"title":{},"body":{"license.html":{}}}],["customer",{"_index":703,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1412,"title":{},"body":{"license.html":{}}}],["damages",{"_index":1483,"title":{},"body":{"license.html":{}}}],["data",{"_index":232,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":260,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.status",{"_index":261,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["date",{"_index":1393,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":334,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["db",{"_index":755,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":364,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":374,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1089,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1083,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1562,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":123,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":280,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":674,"title":{},"body":{"injectables/SearchService.html":{}}}],["defaults",{"_index":644,"title":{},"body":{"injectables/SearchService.html":{}}}],["defend",{"_index":1514,"title":{},"body":{"license.html":{}}}],["defined",{"_index":127,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1260,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1246,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":825,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":626,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletepit",{"_index":612,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletepit(pitid",{"_index":621,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletes",{"_index":623,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletion",{"_index":631,"title":{},"body":{"injectables/SearchService.html":{}}}],["deliberate",{"_index":1478,"title":{},"body":{"license.html":{}}}],["depended",{"_index":999,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":997,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":629,"title":{},"body":{"injectables/SearchService.html":{}}}],["deploy",{"_index":1147,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1110,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1207,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1202,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":409,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":1304,"title":{},"body":{"license.html":{}}}],["derived",{"_index":1306,"title":{},"body":{"license.html":{}}}],["desc",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1447,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1123,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1344,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1215,"title":{},"body":{"index.html":{}}}],["details",{"_index":207,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1466,"title":{},"body":{"license.html":{}}}],["development",{"_index":1183,"title":{},"body":{"index.html":{}}}],["different",{"_index":871,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1262,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1265,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":692,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":688,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1449,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1339,"title":{},"body":{"license.html":{}}}],["display",{"_index":588,"title":{},"body":{"classes/SearchQueryDto.html":{},"license.html":{}}}],["displayed",{"_index":583,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1364,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1415,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1245,"title":{},"body":{"license.html":{}}}],["dns",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1232,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1176,"title":{},"body":{"index.html":{}}}],["document",{"_index":840,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":720,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":166,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":440,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/dtos/search",{"_index":442,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/enums",{"_index":296,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/page",{"_index":447,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/interfaces",{"_index":258,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{}}}],["don't",{"_index":1526,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":770,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":851,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":116,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["due",{"_index":886,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1531,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1129,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1307,"title":{},"body":{"license.html":{}}}],["elaborations",{"_index":1310,"title":{},"body":{"license.html":{}}}],["elastichsearch",{"_index":648,"title":{},"body":{"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":114,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["electronic",{"_index":1327,"title":{},"body":{"license.html":{}}}],["elements",{"_index":136,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":237,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1522,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1006,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1520,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1211,"title":{},"body":{"index.html":{}}}],["entities",{"_index":905,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":824,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1079,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":713,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":787,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums/page",{"_index":493,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1081,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1131,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":714,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":183,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["error",{"_index":206,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":378,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":341,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":403,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.status",{"_index":546,"title":{},"body":{"controllers/PapersController.html":{}}}],["error.statuscode",{"_index":542,"title":{},"body":{"controllers/PapersController.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es_port",{"_index":610,"title":{},"body":{"injectables/SearchService.html":{}}}],["es_query",{"_index":654,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquerydto",{"_index":111,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":153,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["evaluated",{"_index":936,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1498,"title":{},"body":{"license.html":{}}}],["event",{"_index":1474,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":961,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":126,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1366,"title":{},"body":{"license.html":{}}}],["exception",{"_index":248,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":689,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["exchangeable",{"_index":1133,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1341,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1355,"title":{},"body":{"license.html":{}}}],["execute",{"_index":142,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["executed",{"_index":1438,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":311,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1472,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1281,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1175,"title":{},"body":{"index.html":{}}}],["expand",{"_index":771,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":711,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1080,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":958,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":957,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":956,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":977,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1431,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1224,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":333,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":250,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":953,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1199,"title":{},"body":{"index.html":{}}}],["facilitates",{"_index":1135,"title":{},"body":{"index.html":{}}}],["factory",{"_index":693,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":179,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":995,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1494,"title":{},"body":{"license.html":{}}}],["faker",{"_index":775,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":700,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":806,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fields",{"_index":192,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1273,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1394,"title":{},"body":{"license.html":{}}}],["files",{"_index":1195,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":613,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(query_str",{"_index":632,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":614,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":637,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":501,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":913,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1462,"title":{},"body":{"license.html":{}}}],["flag",{"_index":488,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["flow",{"_index":773,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1218,"title":{},"body":{"index.html":{}}}],["following",{"_index":1149,"title":{},"body":{"index.html":{},"license.html":{}}}],["fools",{"_index":968,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":894,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1284,"title":{},"body":{"license.html":{}}}],["format",{"_index":365,"title":{},"body":{"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":381,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":383,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":384,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":394,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1172,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":927,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":867,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1358,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":896,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":819,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1010,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":238,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1013,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1073,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":863,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1017,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gathered",{"_index":828,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":273,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":277,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1294,"title":{},"body":{"license.html":{}}}],["generates",{"_index":279,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":904,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":543,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":535,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":200,"title":{},"body":{"controllers/HealthController.html":{}}}],["getbycontext",{"_index":497,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@query",{"_index":538,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(query",{"_index":499,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":498,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":544,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":511,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":274,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":284,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":275,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":287,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":615,"title":{},"body":{"injectables/SearchService.html":{}}}],["getpit(alive",{"_index":639,"title":{},"body":{"injectables/SearchService.html":{}}}],["getqueryparams(str",{"_index":472,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["gets",{"_index":286,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getting",{"_index":1101,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":276,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":289,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1138,"title":{},"body":{"index.html":{}}}],["give",{"_index":1204,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":593,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":925,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1491,"title":{},"body":{"license.html":{}}}],["governing",{"_index":1540,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1349,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1283,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1255,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1352,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1545,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1479,"title":{},"body":{"license.html":{}}}],["guard",{"_index":547,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":549,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1160,"title":{},"body":{"index.html":{}}}],["handle",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":315,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":345,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1516,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":458,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["hasprev",{"_index":459,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["header",{"_index":805,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":660,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":197,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":211,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":209,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":194,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":220,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1553,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1111,"title":{},"body":{"index.html":{}}}],["help",{"_index":1150,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1171,"title":{},"body":{"index.html":{}}}],["hence",{"_index":984,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1351,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1434,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1103,"title":{},"body":{"index.html":{}}}],["hits",{"_index":156,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hold",{"_index":1515,"title":{},"body":{"license.html":{}}}],["hop",{"_index":962,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":208,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1227,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1216,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1222,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1241,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1538,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":519,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":537,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":251,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{}}}],["httpexception(error.data",{"_index":541,"title":{},"body":{"controllers/PapersController.html":{}}}],["httphealthindicator",{"_index":210,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":222,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":227,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":292,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":298,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":244,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1096,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":293,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":297,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":265,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":294,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":295,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":299,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":239,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1140,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":617,"title":{},"body":{"injectables/SearchService.html":{}}}],["httpstatus",{"_index":291,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":972,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":963,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":624,"title":{},"body":{"injectables/SearchService.html":{}}}],["identification",{"_index":1532,"title":{},"body":{"license.html":{}}}],["identified",{"_index":901,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":721,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1525,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":966,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["if(!pairs",{"_index":478,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["ii",{"_index":1271,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1278,"title":{},"body":{"license.html":{}}}],["image",{"_index":1177,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1179,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":978,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":432,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["implements",{"_index":247,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1458,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1340,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1489,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":987,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1485,"title":{},"body":{"license.html":{}}}],["include",{"_index":955,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":946,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1413,"title":{},"body":{"license.html":{}}}],["including",{"_index":1287,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1324,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1348,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1517,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1513,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1504,"title":{},"body":{"license.html":{}}}],["index",{"_index":117,"title":{"index.html":{}},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1300,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":489,"title":{},"body":{"interfaces/PageMeta.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1263,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1280,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["inform",{"_index":813,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":562,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1235,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1376,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1390,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":269,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":270,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":619,"title":{},"body":{"injectables/SearchService.html":{}}}],["install",{"_index":1152,"title":{},"body":{"index.html":{}}}],["instance",{"_index":620,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":402,"title":{},"body":{"injectables/LoggerService.html":{}}}],["institute",{"_index":1380,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1185,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":994,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1322,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":308,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["intercept(context",{"_index":310,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["interceptor",{"_index":433,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["interface",{"_index":226,"title":{"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":228,"title":{},"body":{"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/page",{"_index":426,"title":{},"body":{"classes/PageDto.html":{}}}],["interim",{"_index":812,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1005,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":942,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1019,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["irrevocable",{"_index":1359,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":728,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":422,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":421,"title":{},"body":{"classes/PageDto.html":{}}}],["isboolean",{"_index":173,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":145,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@apiproperty({description",{"_index":124,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":605,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":168,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":586,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":170,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":589,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isnumber()@isint()@apiproperty({description",{"_index":135,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":595,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isint",{"_index":146,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":147,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnumber",{"_index":148,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isobject",{"_index":174,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":580,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":159,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":584,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1560,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isstring",{"_index":596,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["issue",{"_index":1335,"title":{},"body":{"license.html":{}}}],["itself",{"_index":915,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1239,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":969,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["k8s",{"_index":1189,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1196,"title":{},"body":{"index.html":{}}}],["keeps",{"_index":704,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":480,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1565,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1457,"title":{},"body":{"license.html":{}}}],["known",{"_index":929,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1197,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1112,"title":{},"body":{"index.html":{}}}],["language",{"_index":1539,"title":{},"body":{"license.html":{}}}],["large",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":940,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":776,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1452,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1386,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1256,"title":{},"body":{"license.html":{}}}],["length",{"_index":933,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":930,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1134,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1473,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1482,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1374,"title":{},"body":{"license.html":{}}}],["license",{"_index":1236,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1535,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1391,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1251,"title":{},"body":{"license.html":{}}}],["limit",{"_index":577,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1459,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1541,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1288,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1004,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":582,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":900,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1317,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1214,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1333,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1381,"title":{},"body":{"license.html":{}}}],["liveness",{"_index":203,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":829,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":850,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":366,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":385,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":307,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":397,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":326,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":399,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":327,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":360,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":309,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":319,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":304,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":926,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1126,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1490,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1497,"title":{},"body":{"license.html":{}}}],["machine",{"_index":1180,"title":{},"body":{"index.html":{}}}],["made",{"_index":1299,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1332,"title":{},"body":{"license.html":{}}}],["main",{"_index":1078,"title":{},"body":{"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1212,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1132,"title":{},"body":{"index.html":{}}}],["making",{"_index":1285,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":887,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1495,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1337,"title":{},"body":{"license.html":{}}}],["management",{"_index":1266,"title":{},"body":{"license.html":{}}}],["manager",{"_index":766,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1113,"title":{},"body":{"index.html":{}}}],["many",{"_index":1002,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":439,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["map((res",{"_index":450,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["map(axiosres",{"_index":663,"title":{},"body":{"injectables/SearchService.html":{}}}],["marked",{"_index":1343,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1443,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["max_score",{"_index":184,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["mean",{"_index":1248,"title":{},"body":{"license.html":{}}}],["means",{"_index":983,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1290,"title":{},"body":{"license.html":{}}}],["media",{"_index":986,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1397,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1398,"title":{},"body":{"license.html":{}}}],["memory",{"_index":754,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1461,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1316,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1220,"title":{},"body":{"index.html":{}}}],["message",{"_index":233,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":691,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":959,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":415,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["meta.hasnext",{"_index":464,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.hasprev",{"_index":467,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.interface",{"_index":427,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.interface.ts",{"_index":486,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":470,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.pagesize",{"_index":466,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["metadata",{"_index":167,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"dependencies.html":{}}}],["metadatascanner",{"_index":438,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["metainformation",{"_index":823,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":350,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":353,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":899,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":198,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1221,"title":{},"body":{"index.html":{}}}],["milliseconds",{"_index":140,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["minute",{"_index":701,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":643,"title":{},"body":{"injectables/SearchService.html":{}}}],["miscellaneous",{"_index":786,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":413,"title":{},"body":{"classes/PageDto.html":{}}}],["modifications",{"_index":1286,"title":{},"body":{"license.html":{}}}],["modified",{"_index":878,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1420,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1425,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1552,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1143,"title":{},"body":{"index.html":{}}}],["money",{"_index":705,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1114,"title":{},"body":{"index.html":{}}}],["more",{"_index":702,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["moved",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":859,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["multiple",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":764,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":739,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1082,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":256,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1442,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1200,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1205,"title":{},"body":{"index.html":{}}}],["necessarily",{"_index":1375,"title":{},"body":{"license.html":{}}}],["need",{"_index":834,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":642,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1477,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1480,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":852,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":329,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["nestjs",{"_index":752,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":223,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":760,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":144,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":212,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1550,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":393,"title":{},"body":{"injectables/LoggerService.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":312,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":337,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["no_content",{"_index":833,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1549,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":822,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":949,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1418,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":902,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":897,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1011,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":874,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":325,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1301,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1403,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1432,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1151,"title":{},"body":{"index.html":{}}}],["num",{"_index":1087,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":134,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":158,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["obligations",{"_index":1505,"title":{},"body":{"license.html":{}}}],["observable",{"_index":318,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["obtain",{"_index":1537,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1368,"title":{},"body":{"license.html":{}}}],["ok",{"_index":218,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["one",{"_index":848,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1116,"title":{},"body":{"index.html":{}}}],["optional",{"_index":257,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":699,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":446,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":456,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.desc",{"_index":457,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.enum",{"_index":448,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["order.enum.ts",{"_index":794,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":827,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1313,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1270,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["output",{"_index":1099,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1276,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":952,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":435,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["overview",{"_index":1106,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1253,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1272,"title":{},"body":{"license.html":{}}}],["package",{"_index":749,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1169,"title":{},"body":{"index.html":{}}}],["page",{"_index":412,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["pagedto",{"_index":410,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":471,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pageinterceptor",{"_index":430,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["pagemeta",{"_index":417,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"coverage.html":{}}}],["pagen",{"_index":597,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":452,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["pagesize",{"_index":460,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["pagination",{"_index":414,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{}}}],["pair",{"_index":479,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.indexof",{"_index":482,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.substring(0",{"_index":481,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.substring(pair.indexof",{"_index":483,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs",{"_index":473,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs.shift",{"_index":477,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs[0",{"_index":476,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["paper",{"_index":512,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["papers",{"_index":187,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":509,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":516,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":494,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":255,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parameters['main",{"_index":475,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["parameters[key",{"_index":484,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["parseuuidpipe",{"_index":520,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1411,"title":{},"body":{"license.html":{}}}],["partial",{"_index":845,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":844,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["particle",{"_index":590,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1463,"title":{},"body":{"license.html":{}}}],["party",{"_index":831,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["patent",{"_index":1365,"title":{},"body":{"license.html":{}}}],["pattern",{"_index":1121,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":938,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":892,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1274,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1086,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":594,"title":{},"body":{"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":875,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":861,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":881,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":561,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1282,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1353,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1410,"title":{},"body":{"license.html":{}}}],["pipe(take(1",{"_index":662,"title":{},"body":{"injectables/SearchService.html":{}}}],["pipeline",{"_index":686,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":151,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":625,"title":{},"body":{"injectables/SearchService.html":{}}}],["places",{"_index":1090,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":645,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":650,"title":{},"body":{"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1118,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1500,"title":{},"body":{"license.html":{}}}],["pot",{"_index":975,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1261,"title":{},"body":{"license.html":{}}}],["precondition",{"_index":935,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":934,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":856,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":196,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}}}],["prepare",{"_index":1361,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":920,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":490,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["prevented",{"_index":1009,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":491,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["print",{"_index":1174,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1530,"title":{},"body":{"license.html":{}}}],["private",{"_index":217,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1217,"title":{},"body":{"index.html":{}}}],["process",{"_index":939,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":718,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_port",{"_index":646,"title":{},"body":{"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":716,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":717,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1092,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":740,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1091,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":810,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":741,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1094,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":918,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1444,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1156,"title":{},"body":{"index.html":{}}}],["project",{"_index":204,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":778,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1402,"title":{},"body":{"license.html":{}}}],["promise",{"_index":627,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":656,"title":{},"body":{"injectables/SearchService.html":{}}}],["properties",{"_index":118,"title":{"properties.html":{}},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":807,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":420,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":609,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":1454,"title":{},"body":{"license.html":{}}}],["proxy",{"_index":916,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":910,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":363,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1362,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1338,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1259,"title":{},"body":{"license.html":{}}}],["put",{"_index":521,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":443,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["q.dto.ts",{"_index":576,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:24",{"_index":592,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:36",{"_index":587,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:47",{"_index":581,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:58",{"_index":579,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":119,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["query.'})@apiresponse({status",{"_index":503,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto.ts",{"_index":113,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:24",{"_index":139,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:35",{"_index":128,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.limit",{"_index":463,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query.page",{"_index":454,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.limit",{"_index":461,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.order?.touppercase",{"_index":455,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.page",{"_index":453,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query_str",{"_index":636,"title":{},"body":{"injectables/SearchService.html":{}}}],["query_string",{"_index":655,"title":{},"body":{"injectables/SearchService.html":{}}}],["range",{"_index":947,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1003,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1414,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":306,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1519,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1445,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1018,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1399,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1528,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":858,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1468,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1395,"title":{},"body":{"license.html":{}}}],["references",{"_index":864,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":781,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":554,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":931,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":895,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1439,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1108,"title":{},"body":{"index.html":{}}}],["reject",{"_index":657,"title":{},"body":{"injectables/SearchService.html":{}}}],["reject(error",{"_index":679,"title":{},"body":{"injectables/SearchService.html":{}}}],["reject(new",{"_index":667,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":182,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevant",{"_index":634,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1314,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":882,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1524,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1311,"title":{},"body":{"license.html":{}}}],["representation",{"_index":857,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":849,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1331,"title":{},"body":{"license.html":{}}}],["represents",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1360,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1448,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1244,"title":{},"body":{"license.html":{}}}],["req",{"_index":522,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":339,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":342,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":130,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.query",{"_index":449,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request_timeout",{"_index":917,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requested",{"_index":518,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":945,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":305,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1014,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":565,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":570,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":890,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":523,"title":{},"body":{"controllers/PapersController.html":{}}}],["res.hits",{"_index":671,"title":{},"body":{"injectables/SearchService.html":{}}}],["res.hits.slice((meta.pagenum",{"_index":469,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits[(meta.pagenum",{"_index":468,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits[meta.pagenum",{"_index":465,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.timed_out",{"_index":666,"title":{},"body":{"injectables/SearchService.html":{}}}],["res.total.value",{"_index":451,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["reserved",{"_index":893,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":838,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":868,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":669,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res.id",{"_index":678,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res.succeeded",{"_index":681,"title":{},"body":{"injectables/SearchService.html":{}}}],["resource",{"_index":821,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":879,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":115,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":243,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":540,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto.ts",{"_index":154,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:24",{"_index":172,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:37",{"_index":169,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:54",{"_index":161,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:82",{"_index":165,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":246,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":253,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":230,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":267,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":272,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":288,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":285,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":290,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":278,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1511,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1465,"title":{},"body":{"license.html":{}}}],["result",{"_index":630,"title":{},"body":{"injectables/SearchService.html":{},"index.html":{},"license.html":{}}}],["result.dto",{"_index":445,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":602,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:23",{"_index":606,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:37",{"_index":604,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":820,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1289,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1407,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":873,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1564,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":137,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["revisions",{"_index":1308,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":970,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1507,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":783,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1470,"title":{},"body":{"license.html":{}}}],["role",{"_index":557,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":551,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":564,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":548,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["rounded",{"_index":1088,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1085,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":496,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1566,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1357,"title":{},"body":{"license.html":{}}}],["run",{"_index":1153,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1159,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1167,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1168,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1166,"title":{},"body":{"index.html":{}}}],["running",{"_index":1187,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":330,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":332,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["same",{"_index":1529,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1190,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["schemas",{"_index":1226,"title":{},"body":{"index.html":{}}}],["script",{"_index":1170,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1157,"title":{},"body":{"index.html":{}}}],["search",{"_index":492,"title":{},"body":{"interfaces/PageMeta.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":441,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":444,"title":{"classes/SearchResultDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":670,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(504",{"_index":668,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(700",{"_index":673,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto})@get(':uuid')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":514,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchresultdto})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":507,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchservice",{"_index":525,"title":{"injectables/SearchService.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["section",{"_index":853,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1249,"title":{},"body":{"license.html":{}}}],["see",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":872,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":855,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":954,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1369,"title":{},"body":{"license.html":{}}}],["sent",{"_index":843,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1315,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1436,"title":{},"body":{"license.html":{}}}],["server",{"_index":649,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":979,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":215,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1193,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1203,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1208,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":268,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["set",{"_index":510,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["setmetadata(is_public_key",{"_index":1561,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1563,"title":{},"body":{"miscellaneous/variables.html":{}}}],["shall",{"_index":1247,"title":{},"body":{"license.html":{}}}],["shards",{"_index":163,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1277,"title":{},"body":{"license.html":{}}}],["short",{"_index":241,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["similar",{"_index":911,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["size",{"_index":120,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":178,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1122,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1510,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1464,"title":{},"body":{"license.html":{}}}],["sort",{"_index":152,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":1484,"title":{},"body":{"license.html":{}}}],["specific",{"_index":653,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":436,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":950,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../app.module.ts",{"_index":1558,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1075,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":788,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1077,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1554,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":789,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":790,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":792,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":791,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1074,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":793,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../page.dto.ts",{"_index":1555,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1557,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1559,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":795,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1556,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1076,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application",{"_index":575,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/application/controller/health.controller.ts",{"_index":195,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":201,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":495,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:32",{"_index":508,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:58",{"_index":515,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":726,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":730,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos",{"_index":532,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["src/core/domain/dtos/es",{"_index":112,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":411,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:22",{"_index":423,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:31",{"_index":418,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/search",{"_index":529,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":796,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/http",{"_index":229,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":485,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":245,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":550,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":559,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":555,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":737,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":738,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors",{"_index":528,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":303,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":328,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":314,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":321,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":527,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":431,"title":{},"body":{"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:21",{"_index":434,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":221,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":266,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":358,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":683,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":271,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":359,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":392,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":370,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":372,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":386,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":379,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":390,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":376,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":388,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":382,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":608,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:100",{"_index":640,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:11",{"_index":618,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:119",{"_index":622,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:22",{"_index":647,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:29",{"_index":638,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:63",{"_index":633,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":697,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":574,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":745,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["stages",{"_index":1145,"title":{},"body":{"index.html":{}}}],["start",{"_index":322,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1155,"title":{},"body":{"index.html":{}}}],["started",{"_index":1102,"title":{"index.html":{},"license.html":{}},"body":{}}],["starttime",{"_index":320,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":924,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1367,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1426,"title":{},"body":{"license.html":{}}}],["statements",{"_index":722,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":361,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1404,"title":{},"body":{"license.html":{}}}],["status",{"_index":129,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1219,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":351,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1492,"title":{},"body":{"license.html":{}}}],["str.split",{"_index":474,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["string",{"_index":125,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["structure",{"_index":487,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["subject",{"_index":1350,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1363,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1428,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1325,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1323,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":665,"title":{},"body":{"injectables/SearchService.html":{}}}],["subsequently",{"_index":1347,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":817,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":177,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1267,"title":{},"body":{"license.html":{}}}],["summary",{"_index":534,"title":{},"body":{"controllers/PapersController.html":{}}}],["super(httpexception.createbody(data",{"_index":259,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1435,"title":{},"body":{"license.html":{}}}],["support",{"_index":1012,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":944,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1213,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1543,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1223,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":798,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":888,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1334,"title":{},"body":{"license.html":{}}}],["t",{"_index":416,"title":{},"body":{"classes/PageDto.html":{}}}],["table",{"_index":748,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":747,"title":{},"body":{"coverage.html":{}}}],["take",{"_index":651,"title":{},"body":{"injectables/SearchService.html":{}}}],["taken",{"_index":715,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1084,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":331,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":869,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":880,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["terminate",{"_index":1392,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":224,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1242,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1234,"title":{},"body":{"index.html":{}}}],["test",{"_index":1136,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1154,"title":{},"body":{"index.html":{}}}],["tested",{"_index":937,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":973,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1475,"title":{},"body":{"license.html":{}}}],["thereof",{"_index":1319,"title":{},"body":{"license.html":{}}}],["third",{"_index":830,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":398,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":428,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.getdescription(status",{"_index":283,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":281,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getpit(1",{"_index":675,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.gettype(status",{"_index":302,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://localhost:${this.es_port}/papers/_pit",{"_index":680,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.get(`http://localhost:${this.es_port}/_search",{"_index":659,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://localhost:${this.es_port}/papers/_pit?keep_alive=${alive}m",{"_index":677,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.limit",{"_index":600,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":396,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":405,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":401,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":352,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":340,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":400,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":406,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":404,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":338,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":429,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":601,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.page",{"_index":599,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.query",{"_index":598,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":566,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.searchservice.findbycontext(query.query).then",{"_index":539,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":545,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.statuscode",{"_index":607,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["those",{"_index":1372,"title":{},"body":{"license.html":{}}}],["through",{"_index":1230,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{}}}],["throwed",{"_index":1093,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1100,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":989,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["time",{"_index":323,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["timed",{"_index":131,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":157,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":1460,"title":{},"body":{"license.html":{}}}],["todo",{"_index":1117,"title":{},"body":{"index.html":{}}}],["too_many_requests",{"_index":1000,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":141,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["tort",{"_index":1476,"title":{},"body":{"license.html":{}}}],["total",{"_index":175,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["tracking",{"_index":1336,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1441,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1408,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1440,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":965,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1144,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1370,"title":{},"body":{"license.html":{}}}],["transform",{"_index":690,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1291,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":694,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1292,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":628,"title":{},"body":{"injectables/SearchService.html":{}}}],["try",{"_index":658,"title":{},"body":{"injectables/SearchService.html":{}}}],["type",{"_index":121,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1296,"title":{},"body":{"license.html":{}}}],["unable",{"_index":992,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":960,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":889,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{}}}],["under",{"_index":870,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":799,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":885,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1007,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["union",{"_index":1257,"title":{},"body":{"license.html":{}}}],["unknown",{"_index":301,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["unless",{"_index":1430,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":982,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":980,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":943,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":219,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":837,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":804,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1020,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":862,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":941,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":866,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":349,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":240,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1162,"title":{},"body":{"index.html":{}}}],["use",{"_index":865,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":164,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":524,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":536,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":560,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":569,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":635,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1181,"title":{},"body":{"index.html":{}}}],["util",{"_index":395,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":517,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["uuid.'})@apiresponse({status",{"_index":513,"title":{},"body":{"controllers/PapersController.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":742,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1095,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":743,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1098,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":685,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":695,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":682,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":687,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":180,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":951,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":727,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":684,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1328,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":367,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":387,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":803,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":841,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":698,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":696,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":324,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":921,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":836,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":368,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":389,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":391,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1456,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1450,"title":{},"body":{"license.html":{}}}],["way",{"_index":1182,"title":{},"body":{"index.html":{}}}],["ways",{"_index":1148,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1417,"title":{},"body":{"license.html":{}}}],["whether",{"_index":1268,"title":{},"body":{"license.html":{}}}],["whole",{"_index":1312,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":710,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":800,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":919,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":932,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1297,"title":{},"body":{"license.html":{}}}],["works",{"_index":1305,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1354,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1345,"title":{},"body":{"license.html":{}}}],["written",{"_index":1329,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1097,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":380,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1534,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
+ "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync, IsOptional } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n query\n \n \n size\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@ApiProperty({description: 'Query string', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:35\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNumber()@IsInt()@ApiProperty({description: 'Number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:24\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsInt, IsNotEmpty, IsNumber } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch response DTO\n */\n export class EsQueryDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNumber()\n @IsInt()\n @ApiProperty({\n description: 'Number of elements returned by Elasticsearch',\n example: 30\n })\n size: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @ApiProperty({\n description: 'Query string',\n example: false,\n })\n query: boolean;\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: '_shards', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:54\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'hits', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:82\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'timed_out', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:37\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'took', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:24\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'took',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'timed_out',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: '_shards',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'hits',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {\n\n },\n fields: {\n\n }\n }],\n }\n })\n hits: object;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: T[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:31\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n T[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : T[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data the page contains', isArray: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:22\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMeta\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:31\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data the page contains',\n isArray: true,\n })\n readonly data: T[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: [],\n })\n readonly meta: PageMeta;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: T[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:21\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Observable>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { MetadataScanner } from \"@nestjs/core\";\nimport { Observable, map } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { SearchResultDto } from \"../domain/dtos/search-result.dto\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable> {\n const request = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n\n return next.handle().pipe(\n map((res) => {\n let meta: PageMeta = {\n total: res.total.value,\n pagenum: !query?.page ? 1 : query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 10 : query.limit,\n };\n\n meta.hasNext = res.hits[meta.pagenum * meta.pagesize] ? true : false;\n meta.hasPrev = res.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n\n return new PageDto(data, meta);\n })\n );\n }\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Total search results\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Total search results\n */\n total: number;\n\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n \n Prefix\n \n \n papers\n \n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(query)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds papers by context based on the query.'})@ApiResponse({status: 200, description: 'Returns back acquired papers.', type: SearchResultDto})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:32\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Optional\n \n \n \n \n query\n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds paper by its UUID.'})@ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto})@Get(':uuid')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:58\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { Response } from \"express\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { LoggerInterceptor } from \"src/core/interceptors\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiOperation, ApiResponse } from \"@nestjs/swagger\";\nimport { SearchQueryDto } from \"src/core/domain/dtos\";\n\n/**\n * /papers/ route controller\n */\n@Controller('papers')\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiOperation({ summary: 'Finds papers by context based on the query.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired papers.',\n type: SearchResultDto,\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Query() query): object {\n return this.searchService.findByContext(query.query).then(\n (response: SearchResultDto) => {\n return response.data;\n },\n (error: SearchResultDto) => {\n throw new HttpException(error.data, error.statusCode);\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiOperation({ summary: 'Finds paper by its UUID.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired paper.',\n type: SearchResultDto,\n })\n @Get(':uuid')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response) => {\n return response.data;\n },\n (error) => {\n throw new HttpException(error.data, error.status);\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { ConfigModule } from \"@nestjs/config\";\nimport { PapersController } from \"src/application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { configuration } from \"../config\";\n\n/**\n * search module\n */\n@Module({\n imports: [\n HttpModule,\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:47\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:36\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:24\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.page = page;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: object)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n object\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:37\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:23\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n \n },\n })\n data: object;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: object) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n Async\n getPIT\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:11\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:119\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(query_str: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:63\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n query_str\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:29\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:100\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n 1\n \n\n \n , amount of time in minutes (defaults to 1)\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Point-In-Time ID\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:22\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let es_query = {\n query: {\n query_string: {\n query: 'id:' + uuid\n }\n },\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new SearchResultDto(504, {message: 'Timed Out'}));\n }\n\n resolve(new SearchResultDto(200, res.hits));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query_str \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(query_str: string): Promise {\n let es_query = {\n query: {\n query_string: {\n query: query_str,\n default_field: \"content\"\n }\n },\n }\n\n let pitID = this.getPIT(1);\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));\n } \n \n resolve(new SearchResultDto(200, res.hits));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1)\n * @returns Point-In-Time ID\n */\n async getPIT(alive: number = 1): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive}m`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.id);\n }));\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://localhost:${this.ES_PORT}/papers/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n class\n EsQueryDto\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 83 %\n (5/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (7/7)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n  ASC\n \n \n \n \n Value : ASC\n \n \n \n \n  DESC\n \n \n \n \n Value : DESC\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 7 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 4 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
}
diff --git a/documentation/miscellaneous/variables.html b/documentation/miscellaneous/variables.html
index 1b1afa0..1e20f8f 100644
--- a/documentation/miscellaneous/variables.html
+++ b/documentation/miscellaneous/variables.html
@@ -61,14 +61,17 @@
+ src/core/domain/dtos/es-query.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['size', 'query', 'pit', 'sort']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
src/core/domain/dtos/es-response.dto.ts
- src/core/domain/dtos/search-q.dto.ts
-
-
-
-
-
-
-
- allowedProperties
-
-
-
-
-
-
- Type : []
-
-
-
-
-
- Default value : ['query', 'pagen', 'limit', 'order']
-
-
-
-
-
- List of allowed properties in this DTO
-
-
-
-
-
-
-
src/core/domain/dtos/page.dto.ts
+ src/core/domain/dtos/search-q.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['query', 'pagen', 'limit', 'order']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
src/core/domain/dtos/search-result.dto.ts
diff --git a/documentation/modules/AppModule.html b/documentation/modules/AppModule.html
index 967cdbb..550a0c7 100644
--- a/documentation/modules/AppModule.html
+++ b/documentation/modules/AppModule.html
@@ -137,15 +137,6 @@
-
Imports
@@ -175,7 +166,6 @@ import { LoggerInterceptor } from '../../core/interceptors'
import * as modules from '../../core/modules'
import { CommonModule } from './common/common.module';
import { PrometheusModule } from '@willsoto/nestjs-prometheus';
-import { PapersController } from 'src/application/controller/papers.controller';
import { SearchModule } from './search.module';
/**
@@ -211,7 +201,7 @@ const modulesList = Object.keys(modules).map(moduleIndex => modules
useClass: LoggerInterceptor,
},
],
- controllers: [PapersController],
+ controllers: [],
})
export class AppModule {}
diff --git a/documentation/modules/CommonModule/dependencies.svg b/documentation/modules/CommonModule/dependencies.svg
index 17756f5..9675a86 100644
--- a/documentation/modules/CommonModule/dependencies.svg
+++ b/documentation/modules/CommonModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_CommonModule
-
-cluster_CommonModule_imports
-
-
cluster_CommonModule_exports
+
+cluster_CommonModule_imports
+
+
HttpResponseModule
diff --git a/documentation/modules/SearchModule.html b/documentation/modules/SearchModule.html
index ec446a6..a145e1b 100644
--- a/documentation/modules/SearchModule.html
+++ b/documentation/modules/SearchModule.html
@@ -150,6 +150,15 @@
+
Exports
@@ -170,16 +179,20 @@
import { HttpModule } from "@nestjs/axios";
import { Module } from "@nestjs/common";
import { ConfigModule } from "@nestjs/config";
+import { PapersController } from "src/application";
import { SearchService } from "../../core/services/common/search.service";
+import { configuration } from "../config";
/**
* search module
*/
@Module({
- imports: [HttpModule],
+ imports: [
+ HttpModule,
+ ],
exports: [SearchService],
providers: [SearchService],
- controllers: [],
+ controllers: [PapersController],
})
export class SearchModule {}
diff --git a/documentation/overview.html b/documentation/overview.html
index 5fbdc93..75250dc 100644
--- a/documentation/overview.html
+++ b/documentation/overview.html
@@ -301,7 +301,7 @@
diff --git a/src/core/domain/dtos/es-query.dto.ts b/src/core/domain/dtos/es-query.dto.ts
new file mode 100644
index 0000000..6bac065
--- /dev/null
+++ b/src/core/domain/dtos/es-query.dto.ts
@@ -0,0 +1,45 @@
+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;
+ }
\ No newline at end of file
diff --git a/src/core/domain/dtos/search-q.dto.ts b/src/core/domain/dtos/search-q.dto.ts
index 064e02c..28bf733 100644
--- a/src/core/domain/dtos/search-q.dto.ts
+++ b/src/core/domain/dtos/search-q.dto.ts
@@ -57,6 +57,13 @@ export class SearchQueryDto {
})
order: string;
+ /**
+ * Constructs an object with provided parameters
+ * @param query
+ * @param page
+ * @param limit
+ * @param order
+ */
constructor(query: string, page: number, limit: number, order: string) {
this.query = query;
this.page = page;
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index 7b78c87..7339362 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -37,7 +37,7 @@ export class SearchService {
return new Promise((resolve, reject) => {
try {
- (this.httpService.get
('http://localhost:' + this.ES_PORT + '/_search', {
+ (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
@@ -70,9 +70,11 @@ export class SearchService {
},
}
+ let pitID = this.getPIT(1);
+
return new Promise((resolve, reject) => {
try {
- (this.httpService.get('http://localhost:'+ this.ES_PORT + '/_search', {
+ (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
@@ -81,7 +83,7 @@ export class SearchService {
if (res.timed_out) {
reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
}
-
+
resolve(new SearchResultDto(200, res.hits));
});
} catch (error) {
@@ -89,4 +91,45 @@ export class SearchService {
}
});
}
+
+ /**
+ * Acquires a PIT ID from Elasticsearch, needed for a request
+ * @param alive, amount of time in minutes (defaults to 1)
+ * @returns Point-In-Time ID
+ */
+ async getPIT(alive: number = 1): Promise {
+ return new Promise((resolve, reject) => {
+ try {
+ (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive}m`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.id);
+ }));
+ } catch (error) {
+ reject(error);
+ }
+ });
+ }
+
+ /**
+ * Deletes the PIT specified by provided ID
+ * @param pitID, ID of the PIT, that would be deleted
+ * @returns true/false, depending on the result of deletion of the PIT
+ */
+ async deletePIT(pitID: string): Promise {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://localhost:${this.ES_PORT}/papers/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
+ }
}
\ No newline at end of file
diff --git a/src/infrastructure/modules/app.module.ts b/src/infrastructure/modules/app.module.ts
index 931a437..308d14f 100644
--- a/src/infrastructure/modules/app.module.ts
+++ b/src/infrastructure/modules/app.module.ts
@@ -7,7 +7,6 @@ import { LoggerInterceptor } from '../../core/interceptors'
import * as modules from '../../core/modules'
import { CommonModule } from './common/common.module';
import { PrometheusModule } from '@willsoto/nestjs-prometheus';
-import { PapersController } from 'src/application/controller/papers.controller';
import { SearchModule } from './search.module';
/**
diff --git a/src/infrastructure/modules/search.module.ts b/src/infrastructure/modules/search.module.ts
index 4c2cc56..bccc4e6 100644
--- a/src/infrastructure/modules/search.module.ts
+++ b/src/infrastructure/modules/search.module.ts
@@ -1,6 +1,5 @@
import { HttpModule } from "@nestjs/axios";
import { Module } from "@nestjs/common";
-import { ConfigModule } from "@nestjs/config";
import { PapersController } from "src/application";
import { SearchService } from "../../core/services/common/search.service";
@@ -8,7 +7,9 @@ import { SearchService } from "../../core/services/common/search.service";
* search module
*/
@Module({
- imports: [HttpModule],
+ imports: [
+ HttpModule,
+ ],
exports: [SearchService],
providers: [SearchService],
controllers: [PapersController],
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
new file mode 100644
index 0000000..5c6406e
--- /dev/null
+++ b/src/test/search.service.spec.ts
@@ -0,0 +1,103 @@
+import { HttpService } from "@nestjs/axios";
+import { ConfigModule } from "@nestjs/config";
+import { Test } from "@nestjs/testing";
+import { of } from "rxjs";
+import { HttpResponseException } from "src/core/exceptions";
+import { SearchService } from "src/core/services/common/search.service";
+
+describe('Unit tests for SearchService', () => {
+ let searchService: SearchService;
+ let httpService: HttpService;
+
+
+ beforeAll(async () => {
+ const moduleRef = await Test.createTestingModule({
+ providers: [
+ SearchService,
+ {
+ provide: HttpService,
+ useValue: {
+ post: jest.fn(),
+ },
+ },
+ ],
+ imports: [
+ ConfigModule.forRoot({
+ isGlobal: true,
+ cache: true,
+ expandVariables: true,
+ })
+ ],
+ }).compile();
+
+ searchService = moduleRef.get(SearchService);
+ httpService = moduleRef.get(HttpService);
+ });
+
+ describe('getPIT()', () => {
+ it('Should touch HttpService.post() method', () => {
+ let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ searchService.getPIT();
+ expect(postMock).toHaveBeenCalled();
+ });
+
+ it('Should contain correct port in the URI from .env', () => {
+ let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ searchService.getPIT();
+ expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
+ });
+
+ it('Should touch HttpService with correct URI when keep_alive is set as a parameter', () => {
+ let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ let keep_alive = 2;
+ searchService.getPIT(keep_alive);
+ expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${keep_alive}m`);
+ });
+
+ it('Should return error exeception when HttpService fails', () => {
+ jest.spyOn(httpService, 'post').mockImplementation(() => {
+ throw HttpResponseException;
+ });
+
+ expect(searchService.getPIT()).rejects.toEqual(HttpResponseException);
+ });
+
+ it('Should return a non-empty string when HttpService request succeedes', () => {
+ jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ expect(searchService.getPIT()).resolves.toBe('2567');
+ });
+ });
+
+ describe('deletePIT()', () => {
+ it.todo('Should fail to delete, because the requested PIT ID is invalid');
+ it.todo('Should call HttpService.delete() method with correct body');
+ });
+});
\ No newline at end of file
--
2.39.5
From 78de6386450c3f6bb42d666d5fe363b76071d78b Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Tue, 16 Aug 2022 16:42:49 +0300
Subject: [PATCH 03/23] Elasticsearch pagination implementation finished
---
documentation/classes/EsHitDto.html | 374 ++++++++++
documentation/classes/EsQueryDto.html | 169 ++++-
documentation/classes/EsResponseDto.html | 74 +-
documentation/classes/PageDto.html | 19 +-
documentation/classes/PaperDto.html | 590 ++++++++++++++++
documentation/classes/PrevSearch.html | 656 ++++++++++++++++++
documentation/classes/RequestDto.html | 390 +++++++++++
documentation/classes/SearchResultDto.html | 17 +-
.../controllers/PapersController.html | 22 +-
documentation/coverage.html | 152 +++-
documentation/graph/dependencies.svg | 156 ++---
.../injectables/PageInterceptor.html | 564 ++++++++++++++-
documentation/injectables/SearchService.html | 313 ++-------
documentation/interfaces/EqQueryString.html | 350 ++++++++++
documentation/interfaces/EsPit.html | 279 ++++++++
documentation/interfaces/EsQuery.html | 234 +++++++
documentation/interfaces/EsResponseHits.html | 340 +++++++++
documentation/interfaces/SearchInfo.html | 286 ++++++++
documentation/js/menu-wc.js | 39 +-
documentation/js/menu-wc_es5.js | 2 +-
documentation/js/search/search_index.js | 4 +-
documentation/miscellaneous/enumerations.html | 102 ++-
documentation/miscellaneous/variables.html | 116 +++-
.../modules/CommonModule/dependencies.svg | 8 +-
documentation/modules/SearchModule.html | 2 -
.../modules/SearchModule/dependencies.svg | 8 +-
documentation/overview.html | 4 +-
.../controller/papers.controller.ts | 8 +-
src/core/domain/dtos/es-hit.dto.ts | 45 ++
src/core/domain/dtos/es-query.dto.ts | 53 +-
src/core/domain/dtos/es-response.dto.ts | 18 +-
src/core/domain/dtos/page.dto.ts | 7 +-
src/core/domain/dtos/paper.dto.ts | 89 +++
src/core/domain/dtos/request.dto.ts | 45 ++
src/core/domain/dtos/search-result.dto.ts | 5 +-
src/core/domain/enums/es-time.enum.ts | 12 +
src/core/domain/enums/page-order.enum.ts | 7 +-
.../domain/interfaces/es-pit.interface.ts | 14 +
.../interfaces/es-query-string.interface.ts | 26 +
.../domain/interfaces/es-query.interface.ts | 11 +
.../interfaces/es-response-hits.interface.ts | 21 +
src/core/domain/interfaces/index.ts | 4 +-
.../interfaces/search-info.interface.ts | 17 +
src/core/interceptors/page.interceptor.ts | 183 ++++-
src/core/services/common/search.service.ts | 125 ++--
src/test/page.interceptor.spec.ts | 192 ++---
src/test/search.service.spec.ts | 185 ++---
47 files changed, 5615 insertions(+), 722 deletions(-)
create mode 100644 documentation/classes/EsHitDto.html
create mode 100644 documentation/classes/PaperDto.html
create mode 100644 documentation/classes/PrevSearch.html
create mode 100644 documentation/classes/RequestDto.html
create mode 100644 documentation/interfaces/EqQueryString.html
create mode 100644 documentation/interfaces/EsPit.html
create mode 100644 documentation/interfaces/EsQuery.html
create mode 100644 documentation/interfaces/EsResponseHits.html
create mode 100644 documentation/interfaces/SearchInfo.html
create mode 100644 src/core/domain/dtos/es-hit.dto.ts
create mode 100644 src/core/domain/dtos/paper.dto.ts
create mode 100644 src/core/domain/dtos/request.dto.ts
create mode 100644 src/core/domain/enums/es-time.enum.ts
create mode 100644 src/core/domain/interfaces/es-pit.interface.ts
create mode 100644 src/core/domain/interfaces/es-query-string.interface.ts
create mode 100644 src/core/domain/interfaces/es-query.interface.ts
create mode 100644 src/core/domain/interfaces/es-response-hits.interface.ts
create mode 100644 src/core/domain/interfaces/search-info.interface.ts
diff --git a/documentation/classes/EsHitDto.html b/documentation/classes/EsHitDto.html
new file mode 100644
index 0000000..bc158e2
--- /dev/null
+++ b/documentation/classes/EsHitDto.html
@@ -0,0 +1,374 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ EsHitDto
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of the document stored and retrieved from Elasticsearch
+
+
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Optional
+ _score
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+ Decorators :
+
+
+ @IsOptional() @ApiProperty({description: 'Relevance score', example: 1.2355})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _source
+
+
+
+
+
+
+ Type : PaperDto
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @ApiProperty({description: 'Actual document (paper) stored in Elasticsearch', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ Actual document stored in Elasticsearch
+
+
+
+
+
+
+
+
+
+
+
+
+ Optional
+ sort
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Decorators :
+
+
+ @IsOptional() @ApiProperty({description: 'List of objects that represents how the hit was sorted', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ List of objects that represents how the hit was sorted
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { ApiProperty } from "@nestjs/swagger";
+import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { PaperDto } from "./paper.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['sort', '_source', '_score'];
+
+/**
+ * Structure of the document stored and retrieved from Elasticsearch
+ */
+export class EsHitDto {
+ /**
+ * Actual document stored in Elasticsearch
+ */
+ @IsNotEmpty()
+ @ApiProperty({
+ description: 'Actual document (paper) stored in Elasticsearch',
+ example: {
+ id: 'sssss'
+ }
+ })
+ _source: PaperDto;
+
+ /**
+ * List of objects that represents how the hit was sorted
+ */
+ @IsOptional()
+ @ApiProperty({
+ description: 'List of objects that represents how the hit was sorted',
+ example: {}
+ })
+ sort?: [];
+
+ /**
+ * Hit relevance score
+ */
+ @IsOptional()
+ @ApiProperty({
+ description: 'Relevance score',
+ example: 1.2355
+ })
+ _score?: number;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/EsQueryDto.html b/documentation/classes/EsQueryDto.html
index 1a26a78..60b06b3 100644
--- a/documentation/classes/EsQueryDto.html
+++ b/documentation/classes/EsQueryDto.html
@@ -91,15 +91,22 @@
@@ -115,6 +122,30 @@
+
+ Constructor
+
+
+
+
+constructor()
+
+
+
+
+
+
+
+
+
+
+ Constructs an empty object
+
+
+
+
+
+
@@ -127,6 +158,7 @@
+ Optional
pit
@@ -134,19 +166,28 @@
- Type : object
+ Type : EsPit
+
+
+
+ Decorators :
+
+
+ @IsOptional() @IsObject() @ApiProperty({description: 'PIT object', example: undefined})
+
+
-
+
- Object, that stores Point-In-Time ID and time alive
+
Object, that stores PIT ID and time alive
@@ -166,7 +207,7 @@
- Type : object
+ Type : EsQuery
@@ -175,13 +216,13 @@
Decorators :
- @IsDefined() @IsObject() @ApiProperty({description: 'Search query object passed to Elasticsearch', example: false})
+ @IsDefined() @IsObject() @ApiProperty({description: 'Search query object passed to Elasticsearch', example: undefined})
-
+
@@ -194,12 +235,55 @@
+
+
+
+
+
+
+ Optional
+ search_after
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Decorators :
+
+
+ @IsOptional() @IsArray() @ApiProperty({description: '', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Optional
size
@@ -216,13 +300,13 @@
Decorators :
- @IsDefined() @IsNumber() @IsInt() @ApiProperty({description: 'Maximum number of elements returned by Elasticsearch', example: 30})
+ @IsOptional() @IsDefined() @IsNumber() @IsInt() @ApiProperty({description: 'Maximum number of elements returned by Elasticsearch', example: 30})
-
+
@@ -241,6 +325,7 @@
+ Optional
sort
@@ -248,19 +333,28 @@
- Type : object
+ Type : []
+
+
+
+ Decorators :
+
+
+ @IsOptional() @IsArray() @ApiProperty({description: '', example: undefined})
+
+
-
+
-
@@ -280,7 +374,9 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-validator";
+import { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
+import { EsPit } from "../interfaces/es-pit.interface";
+import { EsQuery } from "../interfaces/es-query.interface"
/**
* List of allowed properties in this DTO
@@ -294,6 +390,7 @@ import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-val
/**
* Maximum number of elements returned by Elasticsearch
*/
+ @IsOptional()
@IsDefined()
@IsNumber()
@IsInt()
@@ -301,7 +398,7 @@ import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-val
description: 'Maximum number of elements returned by Elasticsearch',
example: 30
})
- size: number;
+ size?: number;
/**
* The search query object passed to Elasticsearch
@@ -310,19 +407,53 @@ import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-val
@IsObject()
@ApiProperty({
description: 'Search query object passed to Elasticsearch',
- example: false,
+ example: {},
})
- query: object;
+ query: EsQuery;
/**
- * Object, that stores Point-In-Time ID and time alive
+ * Object, that stores PIT ID and time alive
*/
- pit: object;
+ @IsOptional()
+ @IsObject()
+ @ApiProperty({
+ description: 'PIT object',
+ example: {}
+ })
+ pit?: EsPit;
/**
- * Object, that stores
+ * Sorting info
*/
- sort: object;
+ @IsOptional()
+ @IsArray()
+ @ApiProperty({
+ description: '',
+ example: []
+ })
+ sort?: unknown[];
+
+ /**
+ * Pagination info
+ */
+ @IsOptional()
+ @IsArray()
+ @ApiProperty({
+ description: '',
+ example: []
+ })
+ search_after?: unknown[];
+
+ /**
+ * Constructs an empty object
+ */
+ constructor() {
+ this.size = 10;
+ this.query = undefined;
+ this.pit = undefined;
+ this.sort = undefined;
+ this.search_after = undefined;
+ }
}
diff --git a/documentation/classes/EsResponseDto.html b/documentation/classes/EsResponseDto.html
index 6fcb809..b147225 100644
--- a/documentation/classes/EsResponseDto.html
+++ b/documentation/classes/EsResponseDto.html
@@ -96,6 +96,10 @@
hits
+
+ Optional
+ pit_id
+
timed_out
@@ -149,7 +153,7 @@
-
+
@@ -176,7 +180,7 @@ used for the request
- Type : object
+ Type : EsResponseHits
@@ -191,7 +195,7 @@ used for the request
-
+
@@ -204,6 +208,48 @@ used for the request
+
+
+
+
+
+
+ Optional
+ pit_id
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+ Decorators :
+
+
+ @IsString() @IsOptional() @ApiProperty({description: 'PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})
+
+
+
+
+
+
+
+
+
+
+
+ ID of the PIT used in the search
+
+
+
+
+
+
@@ -232,7 +278,7 @@ used for the request
-
+
@@ -274,7 +320,7 @@ If 'true' - the request timed out before completion
-
+
@@ -301,12 +347,13 @@ took Elasticsearch to execute the request
import { ApiProperty } from "@nestjs/swagger";
-import { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
+import { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from "class-validator";
+import { EsResponseHits } from "../interfaces/es-response-hits.interface";
/**
* List of allowed properties in this DTO
*/
-const allowedProperties = ['took', 'timed_out', '_shards', 'hits'];
+const allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];
/**
* Elasticsearch response DTO
@@ -381,7 +428,18 @@ export class EsResponseDto {
}],
}
})
- hits: object;
+ hits: EsResponseHits;
+
+ /**
+ * ID of the PIT used in the search
+ */
+ @IsString()
+ @IsOptional()
+ @ApiProperty({
+ description: 'PIT ID used to search for results',
+ example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='
+ })
+ pit_id?: string;
}
diff --git a/documentation/classes/PageDto.html b/documentation/classes/PageDto.html
index 116c267..48a5b98 100644
--- a/documentation/classes/PageDto.html
+++ b/documentation/classes/PageDto.html
@@ -117,12 +117,12 @@
-constructor(data: T[], meta: PageMeta )
+constructor(data: PaperDto[] , meta: PageMeta )
-
+
@@ -145,7 +145,7 @@
data
- T[]
+ PaperDto[]
@@ -193,7 +193,7 @@
- Type : T[]
+ Type : PaperDto[]
@@ -208,7 +208,7 @@
-
+
@@ -250,7 +250,7 @@
-
+
@@ -278,6 +278,7 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsArray } from "class-validator";
import { PageMeta } from "../interfaces/page-meta.interface";
+import { PaperDto } from "./paper.dto";
/**
* List of allowed properties in this DTO
@@ -287,7 +288,7 @@ const allowedProperties = ['data', 'meta'];
/**
* Page model for pagination
*/
-export class PageDto<T> {
+export class PageDto {
/**
* Data block of the page
*/
@@ -296,7 +297,7 @@ export class PageDto<T> {
description: 'All data the page contains',
isArray: true,
})
- readonly data: T[];
+ readonly data: PaperDto[];
/**
* Metadata of the page
@@ -312,7 +313,7 @@ export class PageDto<T> {
* @param data
* @param meta
*/
- constructor(data: T[], meta: PageMeta) {
+ constructor(data: PaperDto[], meta: PageMeta) {
this.data = data;
this.meta = meta;
}
diff --git a/documentation/classes/PaperDto.html b/documentation/classes/PaperDto.html
new file mode 100644
index 0000000..0cde5ce
--- /dev/null
+++ b/documentation/classes/PaperDto.html
@@ -0,0 +1,590 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ PaperDto
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of the document stored and retrieved from Elasticsearch
+
+
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ authors
+
+
+
+
+
+
+ Type : string[]
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @IsArray() @ApiProperty({description: 'List of authors of the paper', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ List of authors of the paper
+
+
+
+
+
+
+
+
+
+
+
+
+ content
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+ Decorators :
+
+
+ @ApiProperty({description: 'Contents of the paper presented in Markdown (.md) format', example: '...'})
+
+
+
+
+
+
+
+
+
+
+
+ Contents of the paper [Markdown]
+
+
+
+
+
+
+
+
+
+
+
+
+ id
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @IsString() @ApiProperty({description: 'Unique ID of the paper', example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ summary
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @IsString() @ApiProperty({description: 'Summary of the paper. May be a short excerpt from the main text', example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'})
+
+
+
+
+
+
+
+
+
+
+
+ Summary of the paper. May be a short excerpt from the main text.
+
+
+
+
+
+
+
+
+
+
+
+
+ tags
+
+
+
+
+
+
+ Type : string[]
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @IsArray() @ApiProperty({description: 'List of tags, that show the certain topics/fields of knowledge paper is touching', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ List of tags, that show the certain topics/fields of knowledge paper is touching
+
+
+
+
+
+
+
+
+
+
+
+
+ title
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @IsString() @ApiProperty({description: 'Title of the paper', example: 'Mucosal associated invariant T cell'})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ topic
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+ Decorators :
+
+
+ @IsNotEmpty() @IsString() @ApiProperty({description: 'Topic of the paper', example: 'Physics'})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { ApiProperty } from "@nestjs/swagger";
+import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { EsQueryDto } from "./es-query.dto";
+import { SearchQueryDto } from "./search-q.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];
+
+/**
+ * Structure of the document stored and retrieved from Elasticsearch
+ */
+export class PaperDto {
+ /**
+ * Unique ID of the paper
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Unique ID of the paper',
+ example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'
+ })
+ id: string;
+
+ /**
+ * Title of the paper
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Title of the paper',
+ example: 'Mucosal associated invariant T cell',
+ })
+ title: string;
+
+ /**
+ * List of authors of the paper
+ */
+ @IsNotEmpty()
+ @IsArray()
+ @ApiProperty({
+ description: 'List of authors of the paper',
+ example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']
+ })
+ authors: string[];
+
+ /**
+ * Topic of the paper
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Topic of the paper',
+ example: 'Physics'
+ })
+ topic: string;
+
+ /**
+ * Summary of the paper. May be a short excerpt from the main text.
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Summary of the paper. May be a short excerpt from the main text',
+ example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'
+ })
+ summary: string;
+
+ /**
+ * List of tags, that show the certain topics/fields of knowledge paper is touching
+ */
+ @IsNotEmpty()
+ @IsArray()
+ @ApiProperty({
+ description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',
+ example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']
+ })
+ tags: string[];
+
+ /**
+ * Contents of the paper [Markdown]
+ */
+ @ApiProperty({
+ description: 'Contents of the paper presented in Markdown (.md) format',
+ example: '...'
+ })
+ content: string;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/PrevSearch.html b/documentation/classes/PrevSearch.html
new file mode 100644
index 0000000..13b2553
--- /dev/null
+++ b/documentation/classes/PrevSearch.html
@@ -0,0 +1,656 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ PrevSearch
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Previous search data storage
+
+
+
+
+
Implements
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+ Methods
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Constructor
+
+
+
+
+constructor()
+
+
+
+
+
+
+
+
+
+
+ Constructs an uninitialized object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ pit
+
+
+
+
+
+
+ Type : EsPit
+
+
+
+
+
+
+
+
+
+
+
+ PIT object of the previous search
+
+
+
+
+
+
+
+
+
+
+
+
+ prevPage
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+
+
+
+
+
+
+ Number of the previous page
+
+
+
+
+
+
+
+
+
+
+
+
+ tiebreaker
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+
+
+
+
+
+
+ Tiebreaker and sort parameters
+
+
+
+
+
+
+
+
+
+
+
+ Methods
+
+
+
+
+
+
+
+ Public
+ isSet
+
+
+
+
+
+
+
+ isSet()
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Checks if there was the search before current one
+
+
+
+
+
+
+
true/false, showing whether or not there was another search before
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { HttpService } from "@nestjs/axios";
+import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
+import { reverse } from "dns";
+import { Observable, map, take } from "rxjs";
+import { EsResponseDto, PageDto } from "../domain/dtos";
+import { EsQueryDto } from "../domain/dtos/es-query.dto";
+import { RequestDto } from "../domain/dtos/request.dto";
+import { SearchQueryDto } from "../domain/dtos/search-q.dto";
+import { SearchResultDto } from "../domain/dtos/search-result.dto";
+import { EsTime } from "../domain/enums/es-time.enum";
+import { Order } from "../domain/enums/page-order.enum";
+import { PageMeta } from "../domain/interfaces";
+import { EsPit } from "../domain/interfaces/es-pit.interface";
+import { SearchInfo } from "../domain/interfaces/search-info.interface";
+import { SearchService } from "../services/common/search.service";
+
+/**
+ * Previous search data storage
+ */
+class PrevSearch implements SearchInfo {
+ /**
+ * Constructs an uninitialized object
+ */
+ constructor() {
+ this.pit = undefined;
+ this.tiebreaker = undefined;
+ this.prevPage = -1;
+ }
+
+ /**
+ * PIT object of the previous search
+ */
+ pit: EsPit;
+
+ /**
+ * Tiebreaker and sort parameters
+ */
+ tiebreaker: unknown[];
+
+ /**
+ * Number of the previous page
+ */
+ prevPage: number;
+
+ /**
+ * Checks if there was the search before current one
+ * @returns true/false, showing whether or not there was another search before
+ */
+ public isSet(): boolean {
+ if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;
+ return false;
+ }
+}
+
+/**
+ * Pagination-implementing interceptor
+ */
+@Injectable()
+export class PageInterceptor implements NestInterceptor {
+ /**
+ * Injects needed dependencies and instantiates the storage object
+ * @param httpService
+ * @param searchService
+ */
+ constructor(private readonly httpService: HttpService) {
+ this.prevSearch = new PrevSearch;
+ }
+
+ /**
+ * Override of intercept() method, specified in NestInterceptor interface
+ * @param context
+ * @param next
+ * @returns Page with content and metadata
+ */
+ async intercept(context: ExecutionContext, next: CallHandler<any>): Promise<Observable<PageDto>> {
+ let request: RequestDto = context.switchToHttp().getRequest<RequestDto>();
+ const query: SearchQueryDto = request.query;
+ let reverse: boolean = false;
+
+ request.es_query = new EsQueryDto();
+
+ request.es_query.query = {
+ query_string: {
+ query: query.query,
+ default_field: 'content',
+ }
+ };
+ request.es_query.sort = [
+ { _score: { order: !query?.order ? Order.DESC : query.order } },
+ { _shard_doc: 'desc' }
+ ];
+
+ if (this.prevSearch.isSet()) {
+ request.es_query.pit = this.prevSearch.pit;
+ request.es_query.search_after = this.prevSearch.tiebreaker;
+
+ let limit = !query?.limit ? 10 : query.limit;
+ request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);
+
+ if (query.page < this.prevSearch.prevPage) {
+ request.es_query.sort = [{ _score: { order: 'asc' } }];
+ request.es_query.size += limit - 1;
+ reverse = true;
+ } else if (query.page == this.prevSearch.prevPage) {
+ //...
+ }
+ } else {
+ this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+ request.es_query.size = !query?.limit ? 10 : query.limit;
+ }
+
+ return next.handle().pipe(
+ map((res) => {
+ // Setting the page meta-data
+ let meta: PageMeta = {
+ total: res.hits.total.value,
+ pagenum: !query?.page ? 1 : query.page,
+ order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
+ hasNext: false,
+ hasPrev: false,
+ pagesize: !query?.limit ? 10 : query.limit,
+ };
+ // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;
+ // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;
+
+ // Saving the search info
+ this.prevSearch.pit.id = res.pit_id;
+ this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;
+ this.prevSearch.prevPage = query.page;
+
+ let data = res.hits.hits.slice(-meta.pagesize);
+ if (reverse) {
+ console.log('REVERSE');
+ this.prevSearch.tiebreaker = data[0].sort;
+ data.reverse();
+ reverse = false;
+ }
+
+ // Return the page
+ return new PageDto(data, meta);
+ })
+ );
+ }
+
+ /**
+ * Elastichsearch server port-number
+ */
+ private readonly ES_PORT = process.env.ES_PORT;
+
+ /**
+ * Info about previously completed search
+ */
+ private prevSearch: PrevSearch;
+
+ /**
+ * Acquires a PIT ID from Elasticsearch, needed for a request
+ * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.
+ * @returns PIT object <EsPit> containing PIT ID and keep_alive value
+ */
+ public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise<EsPit> {
+ return new Promise((resolve, reject) => {
+ try {
+ (this.httpService.post<EsPit>(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ res.keep_alive = alive + unit;
+ resolve(res);
+ }));
+ } catch (error) {
+ reject(error);
+ }
+ });
+ }
+
+ /**
+ * Deletes the PIT specified by provided ID
+ * @param pitID, ID of the PIT, that would be deleted
+ * @returns true/false, depending on the result of deletion of the PIT
+ */
+ async deletePIT(pitID: string): Promise<boolean> {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
+ }
+}
+/*
+public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {
+ this.pit.id = pit.id;
+ this.pit.keep_alive = pit.keep_alive;
+
+ this.tiebreaker = tiebreaker.slice();
+
+ this.prevPage = page;
+ }
+
+ public clearInfo() {
+ this.pit = undefined;
+ this.tiebreaker = undefined;
+ this.prevPage = -1;
+ }*/
+
+ // getQueryParams(str: string): any {
+ // let parameters: object = {};
+ // let pairs: string[] = str.split(',');
+ // parameters['main'] = pairs[0];
+ // pairs.shift();
+
+ // if(!pairs || pairs[0] === '') return parameters;
+
+ // for (const pair of pairs) {
+ // const key: string = pair.substring(0, pair.indexOf('='));
+ // const value: string = pair.substring(pair.indexOf('=') + 1);
+ // parameters[key] = value;
+ // }
+
+ // return parameters;
+ // }
+
+
+ /**
+ * OLD WAY PAGINATION
+ * // Setting the page data
+ // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);
+ */
+
+
+ // if (query.page == 1) {
+ // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+ // } else {
+ // if (!this.prevSearch.isSet()) {
+ // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+
+ // request.es_query.size = query.limit * (query.page - 1);
+ // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {
+ // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;
+ // });
+ // } else {
+ // if (query.page == this.prevSearch.prevPage) {
+ // return;
+ // } else {
+ // request.es_query.pit = this.prevSearch.pit;
+ // request.es_query.search_after = this.prevSearch.tiebreaker;
+ // request.es_query.size = (query.page - this.prevSearch.prevPage);
+ // }
+
+ // // request.es_query.pit = this.prevSearch.pit;
+ // // request.es_query.search_after = this.prevSearch.tiebreaker;
+ // }
+ // }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/RequestDto.html b/documentation/classes/RequestDto.html
new file mode 100644
index 0000000..0ea9fc6
--- /dev/null
+++ b/documentation/classes/RequestDto.html
@@ -0,0 +1,390 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ RequestDto
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Request object, which contains query parameters and Elasticsearch query object
+
+
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Constructor
+
+
+
+
+constructor(query: SearchQueryDto , es_query: EsQueryDto )
+
+
+
+
+
+
+
+
+
+
+ Constructs an object with provided parameters
+
+
+
Parameters :
+
+
+
+ Name
+ Type
+ Optional
+
+
+
+
+ query
+
+
+ SearchQueryDto
+
+
+
+ No
+
+
+
+
+ es_query
+
+
+ EsQueryDto
+
+
+
+ No
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Optional
+ es_query
+
+
+
+
+
+
+ Type : EsQueryDto
+
+
+
+
+
+ Decorators :
+
+
+ @IsOptional() @ApiProperty({description: '', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ Elasticsearch query object
+
+
+
+
+
+
+
+
+
+
+
+
+ query
+
+
+
+
+
+
+ Type : SearchQueryDto
+
+
+
+
+
+ Decorators :
+
+
+ @IsDefined() @IsNotEmpty() @ApiProperty({description: '', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ Query parameters object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { ApiProperty } from "@nestjs/swagger";
+import { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { EsQueryDto } from "./es-query.dto";
+import { SearchQueryDto } from "./search-q.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['query', 'es_query'];
+
+/**
+ * Request object, which contains query parameters and Elasticsearch query object
+ */
+export class RequestDto {
+ /**
+ * Query parameters object
+ */
+ @IsDefined()
+ @IsNotEmpty()
+ @ApiProperty({
+ description: '',
+ example: {}
+ })
+ query: SearchQueryDto;
+
+ /**
+ * Elasticsearch query object
+ */
+ @IsOptional()
+ @ApiProperty({
+ description: '',
+ example: {},
+ })
+ es_query?: EsQueryDto;
+
+ /**
+ * Constructs an object with provided parameters
+ * @param query
+ * @param es_query
+ */
+ constructor(query: SearchQueryDto, es_query: EsQueryDto) {
+ this.query = query;
+ this.es_query = es_query;
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/SearchResultDto.html b/documentation/classes/SearchResultDto.html
index 6797141..7212a1c 100644
--- a/documentation/classes/SearchResultDto.html
+++ b/documentation/classes/SearchResultDto.html
@@ -115,12 +115,12 @@
-constructor(code: number , data: object )
+constructor(code: number , data: EsResponseDto )
-
+
@@ -155,7 +155,7 @@
data
- object
+ EsResponseDto
@@ -190,7 +190,7 @@
- Type : object
+ Type : EsResponseDto
@@ -205,7 +205,7 @@
-
+
@@ -246,7 +246,7 @@
-
+
@@ -273,6 +273,7 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { EsResponseDto } from "./es-response.dto";
/**
* List of allowed properties in this DTO
@@ -307,14 +308,14 @@ export class SearchResultDto {
},
})
- data: object;
+ data: EsResponseDto;
/**
* Constructs an object with provided parameters
* @param code
* @param data
*/
- constructor(code: number, data: object) {
+ constructor(code: number, data: EsResponseDto) {
this.statusCode = code;
this.data = data;
}
diff --git a/documentation/controllers/PapersController.html b/documentation/controllers/PapersController.html
index ed5a6ff..0657b0d 100644
--- a/documentation/controllers/PapersController.html
+++ b/documentation/controllers/PapersController.html
@@ -127,7 +127,7 @@
-getByContext(query)
+getByContext(query: RequestDto )
@@ -141,8 +141,8 @@
-
+
@@ -159,12 +159,16 @@
Name
+ Type
Optional
query
+
+ RequestDto
+
No
@@ -216,8 +220,8 @@
-
+
@@ -274,12 +278,10 @@
import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
-import { Response } from "express";
import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-import { LoggerInterceptor } from "src/core/interceptors";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
import { ApiOperation, ApiResponse } from "@nestjs/swagger";
-import { SearchQueryDto } from "src/core/domain/dtos";
+import { RequestDto } from "src/core/domain/dtos/request.dto";
/**
* /papers/ route controller
@@ -303,8 +305,8 @@ export class PapersController {
@Get('search')
@UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByContext(@Query() query): object {
- return this.searchService.findByContext(query.query).then(
+ getByContext(@Req() query: RequestDto): object {
+ return this.searchService.findByContext(query.es_query).then(
(response: SearchResultDto) => {
return response.data;
},
diff --git a/documentation/coverage.html b/documentation/coverage.html
index 6e9bc69..c1e0b91 100644
--- a/documentation/coverage.html
+++ b/documentation/coverage.html
@@ -140,6 +140,30 @@
(1/1)
+
+
+
+ src/core/domain/dtos/es-hit.dto.ts
+
+ class
+ EsHitDto
+
+ 100 %
+ (4/4)
+
+
+
+
+
+ src/core/domain/dtos/es-hit.dto.ts
+
+ variable
+ allowedProperties
+
+ 100 %
+ (1/1)
+
+
@@ -149,7 +173,7 @@
EsQueryDto
100 %
- (5/5)
+ (7/7)
@@ -173,7 +197,7 @@
EsResponseDto
100 %
- (5/5)
+ (6/6)
@@ -212,6 +236,54 @@
(1/1)
+
+
+
+ src/core/domain/dtos/paper.dto.ts
+
+ class
+ PaperDto
+
+ 100 %
+ (8/8)
+
+
+
+
+
+ src/core/domain/dtos/paper.dto.ts
+
+ variable
+ allowedProperties
+
+ 100 %
+ (1/1)
+
+
+
+
+
+ src/core/domain/dtos/request.dto.ts
+
+ class
+ RequestDto
+
+ 100 %
+ (4/4)
+
+
+
+
+
+ src/core/domain/dtos/request.dto.ts
+
+ variable
+ allowedProperties
+
+ 100 %
+ (1/1)
+
+
@@ -260,6 +332,54 @@
(1/1)
+
+
+
+ src/core/domain/interfaces/es-pit.interface.ts
+
+ interface
+ EsPit
+
+ 100 %
+ (3/3)
+
+
+
+
+
+ src/core/domain/interfaces/es-query-string.interface.ts
+
+ interface
+ EqQueryString
+
+ 100 %
+ (4/4)
+
+
+
+
+
+ src/core/domain/interfaces/es-query.interface.ts
+
+ interface
+ EsQuery
+
+ 100 %
+ (2/2)
+
+
+
+
+
+ src/core/domain/interfaces/es-response-hits.interface.ts
+
+ interface
+ EsResponseHits
+
+ 100 %
+ (4/4)
+
+
@@ -284,6 +404,18 @@
(7/7)
+
+
+
+ src/core/domain/interfaces/search-info.interface.ts
+
+ interface
+ SearchInfo
+
+ 100 %
+ (3/3)
+
+
@@ -392,6 +524,18 @@
(4/4)
+
+
+
+ src/core/interceptors/page.interceptor.ts
+
+ class
+ PrevSearch
+
+ 100 %
+ (6/6)
+
+
@@ -401,7 +545,7 @@
PageInterceptor
100 %
- (2/2)
+ (7/7)
@@ -449,7 +593,7 @@
SearchService
100 %
- (7/7)
+ (5/5)
diff --git a/documentation/graph/dependencies.svg b/documentation/graph/dependencies.svg
index 7660ee6..d77ef52 100644
--- a/documentation/graph/dependencies.svg
+++ b/documentation/graph/dependencies.svg
@@ -4,217 +4,217 @@
-
-
+
+
dependencies
-
-dependencies
+
+dependencies
cluster_AppModule
-
+
cluster_AppModule_imports
-
-
-
-cluster_HttpResponseModule
-
-
-
-cluster_HttpResponseModule_exports
-
-
-
-cluster_HttpResponseModule_providers
-
+
cluster_CommonModule
-
+
cluster_CommonModule_imports
-
+
cluster_CommonModule_exports
-
+
+
+
+cluster_HttpResponseModule
+
+
+
+cluster_HttpResponseModule_exports
+
+
+
+cluster_HttpResponseModule_providers
+
cluster_LoggerModule
-
+
cluster_LoggerModule_exports
-
+
cluster_LoggerModule_providers
-
+
cluster_SearchModule
-
+
cluster_SearchModule_exports
-
+
cluster_SearchModule_providers
-
+
CommonModule
-
-CommonModule
+
+CommonModule
AppModule
-
-AppModule
+
+AppModule
CommonModule->AppModule
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
CommonModule->HttpResponseModule
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
CommonModule->LoggerModule
-
-
+
+
SearchModule
-
-SearchModule
+
+SearchModule
SearchModule->AppModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchModule->SearchService
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
HttpResponseModule->CommonModule
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseModule->HttpResponseService
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
LoggerModule->CommonModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerModule->LoggerService
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseService->HttpResponseModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerService->LoggerModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchService->SearchModule
-
-
+
+
diff --git a/documentation/injectables/PageInterceptor.html b/documentation/injectables/PageInterceptor.html
index 5120434..423a2cb 100644
--- a/documentation/injectables/PageInterceptor.html
+++ b/documentation/injectables/PageInterceptor.html
@@ -77,6 +77,26 @@
Index
+
+
+ Properties
+
+
+
+
+
+
+
@@ -87,6 +107,16 @@
@@ -101,18 +131,248 @@
+
+ Constructor
+
+
+
+
+constructor(httpService: HttpService)
+
+
+
+
+
+
+
+
+
+
+ Injects needed dependencies and instantiates the storage object
+
+
+
Parameters :
+
+
+
+ Name
+ Type
+ Optional
+
+
+
+
+ httpService
+
+
+ HttpService
+
+
+
+ No
+
+
+
+
+
+
+
+
+
+
+
Methods
+
+
+
+
+
+
+ Async
+ deletePIT
+
+
+
+
+
+
+
+ deletePIT(pitID: string )
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deletes the PIT specified by provided ID
+
+
+
+
Parameters :
+
+
+
+
+ Name
+ Type
+ Optional
+ Description
+
+
+
+
+ pitID
+
+ string
+
+
+
+ No
+
+
+
+
+ , ID of the PIT, that would be deleted
+
+
+
+
+
+
+
+
+
+ Returns : Promise<boolean>
+
+
+
+
true/false, depending on the result of deletion of the PIT
+
+
+
+
+
+
+
+
+
+
+
+
+ Public
+ Async
+ getPIT
+
+
+
+
+
+
+
+ getPIT(alive: number , unit: EsTime )
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Acquires a PIT ID from Elasticsearch, needed for a request
+
+
+
+
Parameters :
+
+
+
+
+ Name
+ Type
+ Optional
+ Default value
+ Description
+
+
+
+
+ alive
+
+ number
+
+
+
+ No
+
+
+
+
+
+
+ , amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.
+
+
+
+
+ unit
+
+ EsTime
+
+
+
+ No
+
+
+
+ EsTime.min
+
+
+
+
+
+
+
+
+
+
+
+
+
PIT object containing PIT ID and keep_alive value
+
+
+
+
+
+
+ Async
intercept
@@ -120,15 +380,16 @@
-intercept(context: ExecutionContext, next: CallHandler)
+
+ intercept(context: ExecutionContext, next: CallHandler)
-
+
@@ -180,7 +441,7 @@
@@ -192,56 +453,295 @@
+
+
+
+
+
+
+
+
+
+ Private
+ Readonly
+ ES_PORT
+
+
+
+
+
+
+ Default value : process.env.ES_PORT
+
+
+
+
+
+
+
+
+
+
+ Elastichsearch server port-number
+
+
+
+
+
+
+
+
+
+
+
+
+ Private
+ prevSearch
+
+
+
+
+
+
+ Type : PrevSearch
+
+
+
+
+
+
+
+
+
+
+
+ Info about previously completed search
+
+
+
+
+
+
+
-
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
-import { MetadataScanner } from "@nestjs/core";
-import { Observable, map } from "rxjs";
-import { PageDto } from "../domain/dtos";
+ import { HttpService } from "@nestjs/axios";
+import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
+import { reverse } from "dns";
+import { Observable, map, take } from "rxjs";
+import { EsResponseDto, PageDto } from "../domain/dtos";
+import { EsQueryDto } from "../domain/dtos/es-query.dto";
+import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
import { SearchResultDto } from "../domain/dtos/search-result.dto";
+import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
+import { EsPit } from "../domain/interfaces/es-pit.interface";
+import { SearchInfo } from "../domain/interfaces/search-info.interface";
+import { SearchService } from "../services/common/search.service";
+
+/**
+ * Previous search data storage
+ */
+class PrevSearch implements SearchInfo {
+ /**
+ * Constructs an uninitialized object
+ */
+ constructor() {
+ this.pit = undefined;
+ this.tiebreaker = undefined;
+ this.prevPage = -1;
+ }
+
+ /**
+ * PIT object of the previous search
+ */
+ pit: EsPit;
+
+ /**
+ * Tiebreaker and sort parameters
+ */
+ tiebreaker: unknown[];
+
+ /**
+ * Number of the previous page
+ */
+ prevPage: number;
+
+ /**
+ * Checks if there was the search before current one
+ * @returns true/false, showing whether or not there was another search before
+ */
+ public isSet(): boolean {
+ if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;
+ return false;
+ }
+}
/**
* Pagination-implementing interceptor
*/
@Injectable()
export class PageInterceptor implements NestInterceptor {
+ /**
+ * Injects needed dependencies and instantiates the storage object
+ * @param httpService
+ * @param searchService
+ */
+ constructor(private readonly httpService: HttpService) {
+ this.prevSearch = new PrevSearch;
+ }
+
/**
* Override of intercept() method, specified in NestInterceptor interface
* @param context
* @param next
* @returns Page with content and metadata
*/
- intercept(context: ExecutionContext, next: CallHandler<any>): Observable<PageDto<object>> {
- const request = context.switchToHttp().getRequest();
+ async intercept(context: ExecutionContext, next: CallHandler<any>): Promise<Observable<PageDto>> {
+ let request: RequestDto = context.switchToHttp().getRequest<RequestDto>();
const query: SearchQueryDto = request.query;
+ let reverse: boolean = false;
+
+ request.es_query = new EsQueryDto();
+
+ request.es_query.query = {
+ query_string: {
+ query: query.query,
+ default_field: 'content',
+ }
+ };
+ request.es_query.sort = [
+ { _score: { order: !query?.order ? Order.DESC : query.order } },
+ { _shard_doc: 'desc' }
+ ];
+
+ if (this.prevSearch.isSet()) {
+ request.es_query.pit = this.prevSearch.pit;
+ request.es_query.search_after = this.prevSearch.tiebreaker;
+
+ let limit = !query?.limit ? 10 : query.limit;
+ request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);
+
+ if (query.page < this.prevSearch.prevPage) {
+ request.es_query.sort = [{ _score: { order: 'asc' } }];
+ request.es_query.size += limit - 1;
+ reverse = true;
+ } else if (query.page == this.prevSearch.prevPage) {
+ //...
+ }
+ } else {
+ this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+ request.es_query.size = !query?.limit ? 10 : query.limit;
+ }
return next.handle().pipe(
map((res) => {
+ // Setting the page meta-data
let meta: PageMeta = {
- total: res.total.value,
+ total: res.hits.total.value,
pagenum: !query?.page ? 1 : query.page,
order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
hasNext: false,
hasPrev: false,
pagesize: !query?.limit ? 10 : query.limit,
- };
+ };
+ // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;
+ // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;
- meta.hasNext = res.hits[meta.pagenum * meta.pagesize] ? true : false;
- meta.hasPrev = res.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;
+ // Saving the search info
+ this.prevSearch.pit.id = res.pit_id;
+ this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;
+ this.prevSearch.prevPage = query.page;
- const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);
+ let data = res.hits.hits.slice(-meta.pagesize);
+ if (reverse) {
+ console.log('REVERSE');
+ this.prevSearch.tiebreaker = data[0].sort;
+ data.reverse();
+ reverse = false;
+ }
+ // Return the page
return new PageDto(data, meta);
})
);
}
+ /**
+ * Elastichsearch server port-number
+ */
+ private readonly ES_PORT = process.env.ES_PORT;
+
+ /**
+ * Info about previously completed search
+ */
+ private prevSearch: PrevSearch;
+
+ /**
+ * Acquires a PIT ID from Elasticsearch, needed for a request
+ * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.
+ * @returns PIT object <EsPit> containing PIT ID and keep_alive value
+ */
+ public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise<EsPit> {
+ return new Promise((resolve, reject) => {
+ try {
+ (this.httpService.post<EsPit>(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ res.keep_alive = alive + unit;
+ resolve(res);
+ }));
+ } catch (error) {
+ reject(error);
+ }
+ });
+ }
+
+ /**
+ * Deletes the PIT specified by provided ID
+ * @param pitID, ID of the PIT, that would be deleted
+ * @returns true/false, depending on the result of deletion of the PIT
+ */
+ async deletePIT(pitID: string): Promise<boolean> {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
+ }
+}
+/*
+public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {
+ this.pit.id = pit.id;
+ this.pit.keep_alive = pit.keep_alive;
+
+ this.tiebreaker = tiebreaker.slice();
+
+ this.prevPage = page;
+ }
+
+ public clearInfo() {
+ this.pit = undefined;
+ this.tiebreaker = undefined;
+ this.prevPage = -1;
+ }*/
+
// getQueryParams(str: string): any {
// let parameters: object = {};
// let pairs: string[] = str.split(',');
@@ -258,7 +758,39 @@ export class PageInterceptor implements NestInterceptor {
// return parameters;
// }
-}
+
+
+ /**
+ * OLD WAY PAGINATION
+ * // Setting the page data
+ // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);
+ */
+
+
+ // if (query.page == 1) {
+ // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+ // } else {
+ // if (!this.prevSearch.isSet()) {
+ // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+
+ // request.es_query.size = query.limit * (query.page - 1);
+ // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {
+ // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;
+ // });
+ // } else {
+ // if (query.page == this.prevSearch.prevPage) {
+ // return;
+ // } else {
+ // request.es_query.pit = this.prevSearch.pit;
+ // request.es_query.search_after = this.prevSearch.tiebreaker;
+ // request.es_query.size = (query.page - this.prevSearch.prevPage);
+ // }
+
+ // // request.es_query.pit = this.prevSearch.pit;
+ // // request.es_query.search_after = this.prevSearch.tiebreaker;
+ // }
+ // }
+
diff --git a/documentation/injectables/SearchService.html b/documentation/injectables/SearchService.html
index 927d5f6..20c8e3d 100644
--- a/documentation/injectables/SearchService.html
+++ b/documentation/injectables/SearchService.html
@@ -102,10 +102,6 @@
@@ -141,7 +133,7 @@
-
+
@@ -187,85 +179,6 @@ HTTPService instance
Methods
-
-
-
-
-
-
- Async
- deletePIT
-
-
-
-
-
-
-
- deletePIT(pitID: string )
-
-
-
-
-
-
-
-
-
-
-
-
-
- Deletes the PIT specified by provided ID
-
-
-
-
Parameters :
-
-
-
-
- Name
- Type
- Optional
- Description
-
-
-
-
- pitID
-
- string
-
-
-
- No
-
-
-
-
- , ID of the PIT, that would be deleted
-
-
-
-
-
-
-
-
-
- Returns : Promise<boolean>
-
-
-
-
true/false, depending on the result of deletion of the PIT
-
-
-
-
-
-
@@ -281,15 +194,15 @@ HTTPService instance
- findByContext(query_str: string )
+ findByContext(es_query: EsQueryDto )
-
+
@@ -312,9 +225,9 @@ HTTPService instance
- query_str
+ es_query
- string
+ EsQueryDto
@@ -362,8 +275,8 @@ HTTPService instance
-
+
@@ -414,89 +327,6 @@ HTTPService instance
-
-
-
-
-
-
- Async
- getPIT
-
-
-
-
-
-
-
- getPIT(alive: number )
-
-
-
-
-
-
-
-
-
-
-
-
-
- Acquires a PIT ID from Elasticsearch, needed for a request
-
-
-
-
Parameters :
-
-
-
-
- Name
- Type
- Optional
- Default value
- Description
-
-
-
-
- alive
-
- number
-
-
-
- No
-
-
-
- 1
-
-
-
- , amount of time in minutes (defaults to 1)
-
-
-
-
-
-
-
-
-
- Returns : Promise<string>
-
-
-
-
-
-
-
@@ -523,7 +353,7 @@ HTTPService instance
-
+
@@ -543,10 +373,13 @@ HTTPService instance
import { HttpService } from "@nestjs/axios";
-import { Injectable } from "@nestjs/common";
+import { GatewayTimeoutException, Injectable } from "@nestjs/common";
import { map, take } from "rxjs";
import { EsResponseDto } from "src/core/domain/dtos";
+import { EsQueryDto } from "src/core/domain/dtos/es-query.dto";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
+import { EsTime } from "src/core/domain/enums/es-time.enum";
+import { EsPit } from "src/core/domain/interfaces/es-pit.interface";
/**
* Search service provider
@@ -571,27 +404,29 @@ export class SearchService {
* @returns Elasticsearch hits or an error object
*/
async findByID(uuid: string): Promise<SearchResultDto> { // Should I change 'object' to specific DTO?
- let es_query = {
- query: {
- query_string: {
- query: 'id:' + uuid
- }
- },
+ let ESQ: EsQueryDto = new EsQueryDto;
+
+ ESQ.size = 1;
+ ESQ.query = {
+ query_string: {
+ query: ('id:' + uuid),
+ }
}
return new Promise((resolve, reject) => {
try {
(this.httpService.get<EsResponseDto>(`http://localhost:${this.ES_PORT}/_search`, {
- data: es_query,
+ data: ESQ,
headers: {'Content-Type': 'application/json'},
}))
.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- reject(new SearchResultDto(504, {message: 'Timed Out'}));
+ throw new GatewayTimeoutException;
+ // reject(new SearchResultDto(504, {message: 'Timed Out'}));
}
- resolve(new SearchResultDto(200, res.hits));
+ resolve(new SearchResultDto(200, res));
});
} catch (error) {
reject(new SearchResultDto(700, error));
@@ -601,21 +436,11 @@ export class SearchService {
/**
* Finds relevant documents by context using the given query string
- * @param query_str
+ * @param query, <EsQueryDto>
* @returns Elasticsearch hits or an error object
*/
- async findByContext(query_str: string): Promise<SearchResultDto> {
- let es_query = {
- query: {
- query_string: {
- query: query_str,
- default_field: "content"
- }
- },
- }
-
- let pitID = this.getPIT(1);
-
+ async findByContext(es_query: EsQueryDto): Promise<SearchResultDto> {
+ console.log(`SEARCH|SERVICE: ${JSON.stringify(es_query, null, 2)}`);
return new Promise((resolve, reject) => {
try {
(this.httpService.get<EsResponseDto>(`http://localhost:${this.ES_PORT}/_search`, {
@@ -625,58 +450,54 @@ export class SearchService {
.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
- }
-
- resolve(new SearchResultDto(200, res.hits));
+ throw new GatewayTimeoutException;
+ // reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
+ }
+
+ resolve(new SearchResultDto(200, res));
});
} catch (error) {
reject(new SearchResultDto(700, error));
}
});
}
+}
- /**
- * Acquires a PIT ID from Elasticsearch, needed for a request
- * @param alive, amount of time in minutes (defaults to 1)
- * @returns Point-In-Time ID
- */
- async getPIT(alive: number = 1): Promise<string> {
- return new Promise((resolve, reject) => {
- try {
- (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive}m`)
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
- resolve(res.id);
- }));
- } catch (error) {
- reject(error);
- }
- });
- }
+// let ESQ: EsQueryDto = new EsQueryDto;
- /**
- * Deletes the PIT specified by provided ID
- * @param pitID, ID of the PIT, that would be deleted
- * @returns true/false, depending on the result of deletion of the PIT
- */
- async deletePIT(pitID: string): Promise<boolean> {
- return new Promise((resolve, reject) => {
- try {
- this.httpService.delete(`http://localhost:${this.ES_PORT}/papers/_pit`, {
- data: { id: pitID },
- headers: { 'Content-Type': 'application/json' },
- })
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
- resolve(res.succeeded);
- });
- } catch (error) {
- reject(error);
- }
- })
- }
-}
+ // if (limit) ESQ.size = limit;
+ // ESQ.query = {
+ // query_string: {
+ // query: query_str,
+ // default_field: 'content',
+ // }
+ // }
+ // this.getPIT(1).then((pit) => {
+ // ESQ.pit = pit;
+ // });
+
+/**
+ * Context
+ * // let es_query = { // DTO
+ // query: { // Interface
+ // query_string: { // Interface
+ // query: query_str,
+ // default_field: "content"
+ // }
+ // },
+ // }
+ */
+
+/**
+ * Single
+ * // let es_query = {
+ // query: {
+ // query_string: {
+ // query: 'id:' + uuid
+ // }
+ // },
+ // }
+ */
diff --git a/documentation/interfaces/EqQueryString.html b/documentation/interfaces/EqQueryString.html
new file mode 100644
index 0000000..7ad3c14
--- /dev/null
+++ b/documentation/interfaces/EqQueryString.html
@@ -0,0 +1,350 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Interfaces
+
+ EqQueryString
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of page metadata
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ default_field
+
+
+
+
+
+
+
+
+ default_field: string
+
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+
+ Optional
+
+
+
+
+
+
+
+
+ Default field to perform a search on, when
+no field is specified for the query
+
+
+
+
+
+
+
+
+
+
+ fields
+
+
+
+
+
+
+
+
+ fields: string[]
+
+
+
+
+
+
+
+ Type : string[]
+
+
+
+
+
+
+ Optional
+
+
+
+
+
+
+
+
+ Specific fields, to perform a search on
+Can't be specified with 'default_field'
+
+
+
+
+
+
+
+
+
+
+ query
+
+
+
+
+
+
+
+
+ query: string
+
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+
+
+
+
+
+ Query string, that provides the data, to perform a search on
+
+
+
+
+
+
+
+
+
+
+
export interface EqQueryString {
+ /**
+ * Query string, that provides the data, to perform a search on
+ */
+ query: string;
+
+ /**
+ * Default field to perform a search on, when
+ * no field is specified for the query
+ */
+ default_field?: string;
+
+ /**
+ * Specific fields, to perform a search on
+ * Can't be specified with 'default_field'
+ */
+ fields?: string[];
+
+ /**
+ *
+ */
+
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/interfaces/EsPit.html b/documentation/interfaces/EsPit.html
new file mode 100644
index 0000000..ad224a2
--- /dev/null
+++ b/documentation/interfaces/EsPit.html
@@ -0,0 +1,279 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Interfaces
+
+ EsPit
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of PIT (Point-In-Time) object
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ id
+
+
+
+
+
+
+
+
+ id: string
+
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ keep_alive
+
+
+
+
+
+
+
+
+ keep_alive: string
+
+
+
+
+
+
+
+ Type : string
+
+
+
+
+
+
+
+
+
+
+ Time to live of the PIT
+
+
+
+
+
+
+
+
+
+
+
export interface EsPit {
+ /**
+ * PIT ID
+ */
+ id: string;
+
+ /**
+ * Time to live of the PIT
+ */
+ keep_alive: string;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/interfaces/EsQuery.html b/documentation/interfaces/EsQuery.html
new file mode 100644
index 0000000..13a5a04
--- /dev/null
+++ b/documentation/interfaces/EsQuery.html
@@ -0,0 +1,234 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Interfaces
+
+ EsQuery
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of page metadata
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ query_string
+
+
+
+
+
+
+
+
+ query_string: EqQueryString
+
+
+
+
+
+
+
+ Type : EqQueryString
+
+
+
+
+
+
+
+
+
+
+ Query string object, that specifies certain search conditions
+
+
+
+
+
+
+
+
+
+
+
import { EqQueryString } from "./es-query-string.interface";
+
+/**
+ * Structure of page metadata
+ */
+export interface EsQuery {
+ /**
+ * Query string object, that specifies certain search conditions
+ */
+ query_string: EqQueryString;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/interfaces/EsResponseHits.html b/documentation/interfaces/EsResponseHits.html
new file mode 100644
index 0000000..6323b5a
--- /dev/null
+++ b/documentation/interfaces/EsResponseHits.html
@@ -0,0 +1,340 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Interfaces
+
+ EsResponseHits
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of 'hits' object of Elasticsearch response
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ hits
+
+
+
+
+
+
+
+
+ hits: EsHitDto[]
+
+
+
+
+
+
+
+ Type : EsHitDto[]
+
+
+
+
+
+
+
+
+
+
+ Array of search results
+
+
+
+
+
+
+
+
+
+
+ max_score
+
+
+
+
+
+
+
+
+ max_score: number
+
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+
+ Optional
+
+
+
+
+
+
+
+
+ Maximum score amongst all search results
+
+
+
+
+
+
+
+
+
+
+ total
+
+
+
+
+
+
+
+
+ total: object
+
+
+
+
+
+
+
+ Type : object
+
+
+
+
+
+
+
+
+
+
+ Object containing info about hits
+
+
+
+
+
+
+
+
+
+
+
import { EsHitDto } from "../dtos/es-hit.dto";
+
+/**
+ * Structure of 'hits' object of Elasticsearch response
+ */
+export interface EsResponseHits {
+ /**
+ * Object containing info about hits
+ */
+ total: object;
+
+ /**
+ * Maximum score amongst all search results
+ */
+ max_score?: number;
+
+ /**
+ * Array of search results
+ */
+ hits: EsHitDto[];
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/interfaces/SearchInfo.html b/documentation/interfaces/SearchInfo.html
new file mode 100644
index 0000000..28775d4
--- /dev/null
+++ b/documentation/interfaces/SearchInfo.html
@@ -0,0 +1,286 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Interfaces
+
+ SearchInfo
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Structure of search metadata
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ pit
+
+
+
+
+
+
+
+
+ pit: EsPit
+
+
+
+
+
+
+
+ Type : EsPit
+
+
+
+
+
+
+
+
+
+
+ Previous search saved PIT
+
+
+
+
+
+
+
+
+
+
+ tiebreaker
+
+
+
+
+
+
+
+
+ tiebreaker: []
+
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+
+
+
+
+
+ Special tiebreaker used by Elasticsearch.
+Indicates the starting point of next search
+
+
+
+
+
+
+
+
+
+
+
import { EsPit } from "./es-pit.interface";
+
+/**
+ * Structure of search metadata
+ */
+export interface SearchInfo {
+ /**
+ * Previous search saved PIT
+ */
+ pit: EsPit;
+
+ /**
+ * Special tiebreaker used by Elasticsearch.
+ * Indicates the starting point of next search
+ */
+ tiebreaker: unknown[];
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/js/menu-wc.js b/documentation/js/menu-wc.js
index 62f04bc..47fe941 100644
--- a/documentation/js/menu-wc.js
+++ b/documentation/js/menu-wc.js
@@ -121,13 +121,13 @@ customElements.define('compodoc-menu', class extends HTMLElement {
SearchModule
-
+
PapersController
@@ -135,13 +135,13 @@ customElements.define('compodoc-menu', class extends HTMLElement {
-
+
SearchService
@@ -174,6 +174,9 @@ customElements.define('compodoc-menu', class extends HTMLElement {
EnvironmentVariables
+
+ EsHitDto
+
EsQueryDto
@@ -186,6 +189,15 @@ customElements.define('compodoc-menu', class extends HTMLElement {
PageDto
+
+ PaperDto
+
+
+ PrevSearch
+
+
+ RequestDto
+
SearchQueryDto
@@ -237,12 +249,27 @@ customElements.define('compodoc-menu', class extends HTMLElement {
+
+ EqQueryString
+
+
+ EsPit
+
+
+ EsQuery
+
+
+ EsResponseHits
+
HttpResponse
PageMeta
+
+ SearchInfo
+
ValidationPipeOptions
diff --git a/documentation/js/menu-wc_es5.js b/documentation/js/menu-wc_es5.js
index 0f35aac..3510704 100644
--- a/documentation/js/menu-wc_es5.js
+++ b/documentation/js/menu-wc_es5.js
@@ -51,7 +51,7 @@ customElements.define('compodoc-menu', /*#__PURE__*/function (_HTMLElement) {
}, {
key: "render",
value: function render(isNormalMode) {
- var tp = lithtml.html("\n \n \n \n LoggerModule \n \n \n \n Injectables \n \n
\n \n \n \n \n SearchModule \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
+ var tp = lithtml.html("\n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
this.innerHTML = tp.strings;
}
}]);
diff --git a/documentation/js/search/search_index.js b/documentation/js/search/search_index.js
index a848c63..5362fdc 100644
--- a/documentation/js/search/search_index.js
+++ b/documentation/js/search/search_index.js
@@ -1,4 +1,4 @@
var COMPODOC_SEARCH_INDEX = {
- "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.046,1,2.186]],["body/modules/AppModule.html",[0,1.798,1,4.151,2,2.247,3,2.206,4,3.066,5,3.066,6,3.629,7,0.029,8,3.629,9,2.608,10,1.816,11,1.433,12,0.424,13,0.338,14,0.338,15,2.683,16,0.469,17,2.918,18,3.16,19,0.749,20,4.808,21,3.647,22,0.919,23,5.378,24,2.397,25,3.066,26,2.683,27,2.608,28,3.647,29,3.537,30,3.647,31,2.859,32,3.647,33,3.066,34,3.647,35,3.647,36,3.066,37,3.066,38,3.647,39,1.673,40,1.235,41,3.537,42,3.066,43,3.066,44,2.683,45,2.683,46,3.647,47,3.647,48,3.647,49,3.647,50,3.647,51,2.281,52,3.066,53,3.647,54,2.397,55,4.041,56,4.808,57,1.979,58,0.424,59,0.148,60,0.02,61,0.02]],["title/modules/CommonModule.html",[0,1.046,6,1.978]],["body/modules/CommonModule.html",[0,1.687,2,1.701,3,2.462,6,3.945,7,0.029,9,2.91,10,2.155,11,1.701,12,0.503,13,0.401,14,0.401,18,3.526,19,0.677,22,1.091,33,4.51,58,0.503,59,0.175,60,0.023,61,0.023,62,3.639,63,3.639,64,3.639,65,3.985,66,3.985,67,4.329,68,3.526]],["title/classes/EnvironmentVariables.html",[59,0.135,69,2.447]],["body/classes/EnvironmentVariables.html",[7,0.029,12,0.465,13,0.371,14,0.371,16,0.515,19,0.593,40,1.729,51,1.699,58,0.465,59,0.228,60,0.022,61,0.022,69,3.758,70,1.838,71,2.946,72,3.758,73,5.109,74,4.005,75,3.367,76,4.005,77,3.894,78,1.838,79,2.946,80,2.632,81,4.005,82,2.632,83,3.367,84,2.632,85,5.109,86,2.632,87,2.632,88,4.005,89,3.367,90,3.894,91,1.356,92,3.367,93,1.46,94,4.005,95,2.382,96,3.367,97,3.367,98,5.109,99,4.005,100,4.005,101,3.367,102,4.005,103,4.005,104,2.382,105,4.005,106,3.367,107,3.367,108,1.838,109,4.005,110,1.574]],["title/classes/EsQueryDto.html",[59,0.135,111,2.447]],["body/classes/EsQueryDto.html",[7,0.029,11,1.897,12,0.426,13,0.34,14,0.34,16,0.694,19,0.561,39,1.684,40,1.243,51,2.048,58,0.426,59,0.195,60,0.02,61,0.02,70,1.684,78,1.684,104,2.871,111,3.552,112,3.546,113,2.7,114,3.635,115,1.634,116,2.476,117,0.622,118,1.464,119,3.317,120,4.818,121,0.818,122,2.871,123,2.215,124,3.67,125,1.634,126,2.854,127,1.044,128,3.67,129,1.897,130,2.805,131,3.552,132,4.059,133,4.059,134,2.229,135,3.67,136,3.552,137,3.173,138,4.828,139,3.67,140,4.059,141,3.552,142,4.059,143,3.208,144,1.827,145,3.546,146,3.552,147,2.412,148,4.059,149,1.684,150,1.827,151,2.7,152,3.085]],["title/classes/EsResponseDto.html",[59,0.135,153,2.186]],["body/classes/EsResponseDto.html",[7,0.029,11,1.653,12,0.348,13,0.277,14,0.277,16,0.714,19,0.488,39,1.375,40,1.014,51,1.784,58,0.348,59,0.17,60,0.018,61,0.018,70,1.375,77,3.194,78,1.375,104,2.501,106,3.536,112,3.648,114,3.422,115,1.424,116,2.23,117,0.507,118,1.319,121,0.892,122,2.501,123,2.418,126,3.003,127,1.139,129,1.653,130,2.768,131,3.094,132,3.536,133,3.536,134,2.098,137,2.764,140,3.536,141,4.437,142,3.536,143,3.3,144,1.492,145,3.194,147,3.194,148,3.536,149,1.375,150,1.492,153,2.764,154,2.204,155,4.837,156,4.347,157,4.837,158,2.624,159,4.206,160,3.536,161,2.997,162,4.429,163,4.206,164,2.764,165,2.997,166,3.536,167,2.501,168,2.997,169,2.997,170,2.997,171,2.764,172,2.997,173,4.206,174,4.86,175,3.094,176,2.282,177,2.997,178,2.997,179,2.519,180,1.375,181,2.204,182,2.997,183,2.997,184,2.997,185,4.206,186,2.997,187,2.519,188,2.997,189,2.997,190,2.997,191,2.997,192,2.204]],["title/controllers/HealthController.html",[193,1.978,194,2.186]],["body/controllers/HealthController.html",[7,0.029,12,0.63,13,0.343,14,0.343,16,0.477,19,0.565,22,0.935,57,2.013,58,0.431,59,0.233,60,0.021,61,0.021,91,1.646,93,1.773,110,1.458,115,1.836,117,0.628,123,1.702,125,1.836,127,0.802,129,2.409,193,3.423,194,3.196,195,3.119,196,3.119,197,5.252,198,2.231,199,5.154,200,3.71,201,3.71,202,4.087,203,4.862,204,4.862,205,4.839,206,2.231,207,4.862,208,2.742,209,4.862,210,4.862,211,4.862,212,2.729,213,3.71,214,1.702,215,1.353,216,2.439,217,2.206,218,3.119,219,4.087]],["title/modules/HealthModule.html",[0,1.046,220,2.447]],["body/modules/HealthModule.html",[0,1.785,2,1.866,7,0.029,12,0.551,13,0.44,14,0.44,18,3.121,19,0.73,22,1.196,57,3.079,58,0.551,59,0.192,60,0.024,61,0.024,194,3.99,212,3.493,220,4.175,221,4.748,222,4.771,223,3.121,224,5.675,225,4.748]],["title/interfaces/HttpResponse.html",[226,1.307,227,1.978]],["body/interfaces/HttpResponse.html",[7,0.029,12,0.437,13,0.349,14,0.349,16,0.806,58,0.437,60,0.021,61,0.021,79,4.772,115,2.177,117,0.638,118,1.333,121,1.107,125,2.177,129,2.499,134,1.992,137,3.228,208,2.507,226,1.93,227,2.92,228,2.044,229,3.167,230,3.167,231,3.767,232,2.825,233,3.661,234,3.613,235,4.911,236,4.911,237,5.79,238,4.128,239,4.911,240,4.911,241,4.911,242,2.92,243,4.911]],["title/classes/HttpResponseException.html",[59,0.135,244,2.447]],["body/classes/HttpResponseException.html",[0,1.651,7,0.029,12,0.485,13,0.387,14,0.387,16,0.675,19,0.61,22,1.053,58,0.485,59,0.169,60,0.022,61,0.022,70,1.918,91,1.415,115,2.142,121,0.708,127,0.904,208,2.98,214,1.918,215,1.914,227,3.579,232,2.409,244,3.862,245,4.413,246,3.514,247,3.122,248,4.428,249,4.413,250,4.413,251,4.824,252,4.413,253,4.181,254,5.249,255,1.415,256,1.315,257,1.315,258,3.076,259,4.181,260,4.181,261,5.249]],["title/modules/HttpResponseModule.html",[0,1.046,65,1.978]],["body/modules/HttpResponseModule.html",[0,1.742,2,1.791,3,2.541,7,0.028,9,3.004,10,2.27,11,1.791,12,0.529,13,0.422,14,0.422,19,0.643,22,1.149,54,3.64,58,0.529,59,0.184,60,0.024,61,0.024,65,3.89,68,3.64,262,3.832,263,3.832,264,3.832,265,4.011,266,4.559,267,4.559,268,3.354]],["title/injectables/HttpResponseService.html",[265,1.978,269,1.126]],["body/injectables/HttpResponseService.html",[7,0.029,12,0.315,13,0.251,14,0.251,16,0.829,19,0.535,22,0.684,40,0.92,44,3.386,45,3.386,58,0.315,59,0.11,60,0.017,61,0.017,91,1.944,93,2.143,110,1.981,115,1.99,117,0.46,121,1.014,125,2.107,127,1.09,129,2.556,134,2.269,180,1.246,198,1.8,208,2.856,215,1.43,217,3.562,227,2.997,232,2.698,233,3.701,255,1.706,256,1.585,257,1.585,258,1.998,265,2.332,269,1.328,270,1.474,271,4.494,272,2.283,273,3.869,274,3.922,275,3.922,276,3.922,277,2.716,278,2.716,279,3.922,280,1.474,281,3.922,282,5.041,283,3.922,284,3.922,285,2.716,286,5.57,287,3.922,288,2.716,289,3.922,290,2.716,291,2.716,292,2.283,293,3.869,294,3.869,295,2.283,296,2.283,297,2.716,298,2.716,299,2.716,300,2.716,301,2.716,302,2.716]],["title/injectables/LoggerInterceptor.html",[31,1.978,269,1.126]],["body/injectables/LoggerInterceptor.html",[7,0.029,12,0.325,13,0.259,14,0.259,16,0.602,19,0.628,22,0.706,31,2.384,40,2.073,58,0.325,59,0.113,60,0.017,61,0.017,91,1.731,93,1.864,108,1.84,110,1.575,115,1.585,117,0.474,118,1.088,121,0.793,127,1.013,130,2.149,134,1.707,180,1.285,198,1.84,206,1.84,208,2.583,215,1.462,217,3.347,247,1.665,255,1.357,256,1.261,257,1.261,268,2.06,269,1.357,270,1.519,280,1.519,303,2.354,304,4.731,305,4.731,306,3.078,307,3.445,308,4.297,309,4.009,310,3.37,311,4.263,312,3.347,313,4.297,314,2.801,315,4.297,316,3.216,317,4.009,318,3.936,319,4.009,320,6.034,321,2.801,322,4.009,323,2.949,324,2.06,325,3.37,326,2.541,327,4.009,328,2.801,329,3.37,330,1.841,331,4.009,332,2.801,333,1.841,334,4.683,335,4.683,336,4.009,337,2.354,338,4.009,339,4.009,340,2.801,341,2.801,342,4.009,343,2.801,344,2.801,345,2.801,346,2.801,347,2.06,348,2.801,349,4.009,350,1.841,351,3.37,352,2.801,353,2.801,354,2.801]],["title/modules/LoggerModule.html",[0,1.046,66,1.978]],["body/modules/LoggerModule.html",[0,1.742,2,1.791,3,2.541,7,0.028,9,3.004,10,2.27,11,1.791,12,0.529,13,0.422,14,0.422,19,0.643,22,1.149,54,3.64,58,0.529,59,0.184,60,0.024,61,0.024,66,3.89,68,3.64,125,1.543,268,3.354,326,3.659,355,3.832,356,3.832,357,3.832,358,4.559]],["title/injectables/LoggerService.html",[269,1.126,326,1.805]],["body/injectables/LoggerService.html",[7,0.029,12,0.243,13,0.193,14,0.193,16,0.699,19,0.374,22,0.527,51,0.887,58,0.243,59,0.085,60,0.014,61,0.014,91,2.061,93,2.034,108,1.48,110,1.547,117,0.354,118,0.875,121,0.965,125,2.223,127,1.232,171,1.374,198,1.48,206,2.818,214,1.806,215,1.176,217,3.318,233,3.959,247,1.243,255,1.841,256,1.711,257,1.793,269,1.092,270,1.134,304,4.791,306,3.321,307,4.436,316,3.194,324,3.518,326,2.594,359,1.757,360,3.225,361,3.937,362,3.225,363,4.002,364,3.72,365,2.372,366,3.225,367,4.426,368,3.225,369,3.225,370,3.225,371,3.225,372,2.09,373,3.225,374,3.225,375,6.55,376,2.09,377,5.887,378,3.225,379,2.09,380,3.225,381,3.225,382,2.09,383,3.225,384,3.225,385,3.225,386,2.09,387,3.225,388,2.09,389,3.225,390,2.09,391,3.225,392,2.09,393,3.225,394,3.225,395,2.09,396,2.09,397,2.09,398,2.09,399,2.09,400,2.09,401,2.09,402,2.09,403,2.09,404,2.09,405,2.09,406,2.09,407,2.09,408,2.09,409,2.09]],["title/classes/PageDto.html",[59,0.135,410,2.186]],["body/classes/PageDto.html",[7,0.029,12,0.406,13,0.324,14,0.324,16,0.677,19,0.612,39,1.605,40,1.184,51,1.984,58,0.406,59,0.189,60,0.02,61,0.02,70,1.605,78,1.605,91,1.583,116,1.605,117,0.592,118,1.43,121,0.892,123,2.146,126,1.742,127,1.139,143,3.133,144,1.742,149,1.605,150,1.742,158,2.328,162,3.931,167,3.344,214,1.605,232,2.962,252,3.931,255,1.783,256,1.1,257,1.1,306,3.964,410,3.074,411,2.573,412,3.807,413,4.676,414,3.931,415,4.662,416,5.861,417,3.586,418,4.676,419,3.44,420,2.537,421,3.498,422,4.727,423,3.498,424,4.676,425,3.498,426,3.498,427,3.498,428,2.941,429,3.498]],["title/injectables/PageInterceptor.html",[269,1.126,430,2.186]],["body/injectables/PageInterceptor.html",[7,0.029,12,0.337,13,0.268,14,0.268,16,0.373,19,0.695,22,0.731,24,1.906,40,1.928,51,1.743,58,0.337,59,0.117,60,0.017,61,0.017,91,1.391,93,1.498,104,3.088,108,1.331,110,2.041,117,0.491,119,1.573,121,0.491,125,1.758,127,0.627,130,1.331,158,1.444,167,2.444,175,2.134,176,2.974,180,1.886,198,1.886,226,1.615,232,1.331,247,1.725,255,1.758,256,0.912,257,0.912,258,2.134,269,1.391,270,1.573,308,4.366,310,3.455,311,3.821,312,3.088,313,4.366,316,2.23,318,4.013,329,4.366,330,1.906,337,2.438,347,2.134,350,2.701,410,1.906,412,2.444,414,3.455,415,3.024,417,2.444,430,2.701,431,2.438,432,4.11,433,4.11,434,2.9,435,4.11,436,3.024,437,2.701,438,2.9,439,2.438,440,2.9,441,2.444,442,4.11,443,2.9,444,1.573,445,2.134,446,2.444,447,2.9,448,2.438,449,2.9,450,2.9,451,2.9,452,2.438,453,2.9,454,2.9,455,2.9,456,4.11,457,2.9,458,2.438,459,2.438,460,2.438,461,2.9,462,2.438,463,2.9,464,2.9,465,2.9,466,5.193,467,2.9,468,2.9,469,2.9,470,2.9,471,2.9,472,2.9,473,4.11,474,2.9,475,2.9,476,4.11,477,2.9,478,2.9,479,2.9,480,2.438,481,2.9,482,2.9,483,2.9,484,2.9]],["title/interfaces/PageMeta.html",[226,1.307,417,1.978]],["body/interfaces/PageMeta.html",[7,0.029,12,0.426,13,0.34,14,0.34,16,0.472,19,0.426,58,0.426,60,0.024,61,0.02,117,0.622,118,1.31,121,1.035,122,3.635,134,2.401,136,4.217,167,2.871,175,4.497,226,1.442,228,1.991,312,2.871,412,3.895,417,2.871,446,3.84,448,3.085,452,4.818,458,4.818,459,4.818,460,4.818,485,3.085,486,3.085,487,4.828,488,5.732,489,4.818,490,5.732,491,4.828,492,3.173,493,3.67]],["title/controllers/PapersController.html",[193,1.978,494,2.186]],["body/controllers/PapersController.html",[7,0.029,12,0.331,13,0.264,14,0.264,16,0.7,19,0.691,22,0.717,31,1.693,57,1.545,58,0.331,59,0.115,60,0.017,61,0.022,91,1.843,93,2.17,107,3.41,108,1.861,110,2.024,115,2.051,117,0.482,119,2.954,121,0.922,123,1.861,125,1.6,127,0.877,129,1.594,130,2.363,144,1.418,158,2.818,187,5.093,193,2.81,196,2.393,198,1.861,206,1.861,216,1.871,251,2.393,255,1.373,256,1.276,257,1.276,312,1.693,315,4.33,316,2.201,333,1.871,430,1.871,441,1.693,444,2.954,445,2.095,494,2.666,495,2.393,496,4.057,497,4.057,498,4.057,499,2.847,500,4.057,501,4.33,502,2.984,503,2.847,504,4.33,505,4.33,506,4.33,507,2.847,508,2.847,509,4.057,510,2.984,511,2.847,512,4.33,513,2.847,514,2.847,515,2.847,516,4.057,517,4.33,518,3.41,519,2.847,520,4.057,521,2.847,522,2.847,523,2.847,524,2.847,525,2.564,526,2.393,527,2.847,528,2.847,529,1.545,530,4.726,531,4.726,532,2.393,533,2.847,534,4.057,535,2.847,536,4.057,537,4.057,538,2.847,539,2.847,540,4.057,541,4.057,542,2.847,543,2.847,544,2.847,545,2.847,546,2.847]],["title/guards/RolesGuard.html",[547,2.186,548,2.447]],["body/guards/RolesGuard.html",[7,0.029,12,0.406,13,0.324,14,0.324,16,0.677,19,0.653,22,0.881,24,2.299,40,1.583,51,2.234,58,0.406,59,0.142,60,0.02,61,0.02,91,1.583,93,2.05,110,1.838,117,0.592,121,0.792,122,2.781,123,1.605,127,1.011,149,2.146,198,2.146,202,3.931,214,1.605,215,1.705,216,2.299,234,3.44,247,2.08,255,1.583,256,1.471,257,1.471,269,1.583,296,2.941,311,4.137,316,3.051,347,2.573,547,4.113,548,3.44,549,3.498,550,2.941,551,3.462,552,5.624,553,3.498,554,6.337,555,3.498,556,4.676,557,5.26,558,4.676,559,3.498,560,4.312,561,3.931,562,3.074,563,3.931,564,2.573,565,4.676,566,3.498,567,3.498,568,3.498,569,3.498,570,3.498]],["title/modules/SearchModule.html",[0,1.046,8,1.978]],["body/modules/SearchModule.html",[0,1.891,2,1.639,3,2.405,7,0.029,8,3.817,9,2.844,10,2.077,11,1.639,12,0.484,13,0.386,14,0.386,16,0.536,18,2.741,19,0.734,22,1.051,25,3.506,26,3.068,27,2.263,54,3.445,57,2.844,58,0.484,59,0.169,60,0.022,61,0.022,68,3.445,90,2.741,222,4.406,223,2.741,492,3.445,494,3.767,525,3.618,526,3.506,571,3.506,572,3.506,573,3.506,574,4.171,575,4.171]],["title/classes/SearchQueryDto.html",[59,0.135,441,1.978]],["body/classes/SearchQueryDto.html",[7,0.029,12,0.35,13,0.279,14,0.279,16,0.715,19,0.49,39,1.382,40,1.02,58,0.35,59,0.171,60,0.018,61,0.018,70,1.382,77,3.203,78,1.382,114,2.51,115,1.429,116,2.236,117,0.51,118,1.323,119,3.374,121,0.942,123,2.423,125,2.147,126,3.007,127,1.202,134,2.372,136,3.885,143,3.307,144,1.5,145,3.203,146,3.585,147,3.203,149,1.382,150,1.5,181,3.106,214,1.382,255,1.02,256,0.947,257,0.947,412,3.738,441,2.51,446,3.698,462,3.549,492,2.775,529,3.127,576,2.216,577,5.227,578,4.221,579,4.221,580,3.012,581,3.012,582,5.281,583,5.281,584,3.012,585,3.549,586,2.532,587,3.012,588,3.549,589,3.012,590,4.221,591,4.221,592,3.012,593,3.106,594,3.549,595,3.012,596,4.097,597,2.532,598,3.012,599,3.012,600,3.012,601,3.012]],["title/classes/SearchResultDto.html",[59,0.135,444,1.805]],["body/classes/SearchResultDto.html",[7,0.029,12,0.405,13,0.323,14,0.323,16,0.676,19,0.542,39,1.599,40,1.179,58,0.405,59,0.189,60,0.02,61,0.02,70,1.599,77,2.29,78,1.599,91,1.579,114,3.339,115,1.579,116,2.412,117,0.59,118,1.427,121,0.89,123,2.14,126,2.795,127,1.137,129,2.3,134,2.134,143,3.126,144,1.735,145,3.455,146,3.431,147,3.455,149,1.599,150,1.735,158,3.063,160,2.929,214,1.599,232,3,242,3.658,255,1.78,256,1.096,257,1.096,351,4.419,419,3.431,420,2.53,422,3.92,428,2.929,444,2.53,504,3.92,506,4.72,529,3.046,586,2.929,596,2.929,602,2.563,603,4.664,604,4.664,605,3.484,606,3.484,607,3.484]],["title/injectables/SearchService.html",[269,1.126,525,1.805]],["body/injectables/SearchService.html",[7,0.029,11,1.221,12,0.231,13,0.184,14,0.184,16,0.491,19,0.543,22,0.502,58,0.231,59,0.081,60,0.013,61,0.013,80,2.043,91,1.583,93,1.952,108,1.98,110,1.695,114,2.947,116,0.914,117,0.338,118,0.844,119,2.689,121,0.907,125,1.94,127,1.072,129,0.783,130,1.426,131,2.286,134,1.705,151,3.938,153,2.511,156,3.174,158,2.329,166,2.612,176,2.341,180,1.426,198,1.426,205,2.612,206,2.581,214,0.914,215,1.573,216,1.31,217,2.272,223,1.31,232,1.753,233,1.848,255,1.583,256,1.471,257,1.471,269,1.052,270,1.081,280,1.686,306,2.836,316,1.686,323,3.174,330,1.31,419,2.286,420,1.686,436,2.286,437,2.836,439,1.675,444,1.081,445,1.466,492,2.043,501,3.627,512,2.612,517,3.211,525,1.686,529,1.081,532,1.675,593,2.286,608,1.675,609,3.108,610,3.82,611,4.893,612,3.108,613,3.108,614,3.108,615,3.108,616,1.993,617,5.501,618,1.993,619,3.108,620,3.108,621,3.108,622,1.993,623,3.108,624,5.821,625,4.314,626,3.108,627,4.5,628,3.108,629,3.108,630,2.286,631,3.108,632,3.108,633,1.993,634,3.108,635,2.043,636,3.82,637,3.108,638,1.993,639,3.108,640,1.993,641,3.108,642,2.612,643,3.108,644,3.108,645,2.612,646,3.108,647,1.993,648,3.108,649,2.286,650,2.612,651,1.993,652,1.675,653,1.466,654,4.314,655,3.108,656,4.314,657,4.314,658,4.314,659,3.108,660,3.211,661,3.82,662,4.314,663,4.314,664,4.314,665,4.314,666,3.108,667,4.314,668,3.108,669,3.108,670,3.108,671,3.108,672,4.314,673,3.108,674,1.993,675,1.993,676,1.993,677,1.993,678,1.993,679,3.108,680,1.993,681,1.993]],["title/interfaces/ValidationPipeOptions.html",[226,1.307,682,2.447]],["body/interfaces/ValidationPipeOptions.html",[7,0.029,12,0.48,13,0.382,14,0.382,16,0.531,19,0.48,58,0.48,59,0.167,60,0.022,61,0.022,72,3.832,78,1.895,95,3.098,101,3.472,117,0.7,118,1.414,121,0.966,122,3.751,206,2.39,226,1.623,228,2.241,248,3.832,250,4.379,257,1.984,682,3.832,683,3.472,684,3.424,685,5.209,686,5.209,687,5.706,688,5.992,689,5.992,690,5.992,691,5.209,692,5.209,693,5.209,694,5.209,695,5.209]],["title/interfaces/VirtualBankOptions.html",[226,1.307,696,1.978]],["body/interfaces/VirtualBankOptions.html",[7,0.029,12,0.419,13,0.334,14,0.334,16,0.464,19,0.419,27,2.903,40,1.222,58,0.621,60,0.02,61,0.02,72,2.655,79,4.476,80,3.138,82,3.999,83,4.013,84,3.999,86,3.999,87,3.999,93,1.316,95,2.146,117,0.611,118,1.296,121,0.906,127,1.032,134,2.324,226,1.418,228,1.958,696,3.618,697,2.372,698,4.774,699,3.936,700,4.013,701,4.774,702,3.512,703,4.774,704,4.774,705,5.694,706,4.774,707,4.774,708,4.774,709,4.774,710,4.774,711,3.512,712,3.609,713,4.013,714,3.033,715,3.609,716,3.033,717,3.033,718,3.033]],["title/coverage.html",[719,3.8]],["body/coverage.html",[7,0.029,14,0.278,15,2.208,27,1.629,29,2.208,31,1.785,41,2.208,59,0.239,60,0.018,61,0.018,69,2.208,71,3.098,95,3.588,108,1.377,111,2.208,112,3.466,113,3.098,121,0.508,150,2.765,153,1.973,154,3.098,193,2.504,194,1.973,195,2.523,226,2.072,227,1.785,229,2.523,230,2.523,244,2.208,245,2.523,246,2.523,265,1.785,269,1.88,271,2.523,272,2.523,303,2.523,326,1.629,359,2.523,363,1.973,410,1.973,411,3.098,417,1.785,430,1.973,431,2.523,441,1.785,444,1.629,485,2.523,486,2.523,494,1.973,495,2.523,525,1.629,529,2.861,547,1.973,548,2.208,550,2.523,551,1.973,564,2.208,576,3.098,602,3.098,608,2.523,682,2.208,683,2.523,696,1.785,697,2.768,711,2.208,719,2.523,720,2.208,721,3.002,722,3.002,723,6.804,724,4.864,725,4.864,726,3.54,727,6.281,728,2.523,729,6.606,730,3.54,731,4.211,732,5.553,733,3.002,734,3.002,735,3.002,736,4.211,737,2.523,738,4.668,739,2.523,740,2.523,741,2.523,742,2.523,743,2.523,744,3.002,745,2.523,746,2.523,747,3.002,748,2.523]],["title/dependencies.html",[3,1.833,749,2.05]],["body/dependencies.html",[3,1.952,7,0.029,22,1.072,24,2.796,26,3.129,36,3.576,37,3.576,52,3.576,59,0.215,60,0.023,61,0.023,75,3.576,78,1.952,144,2.118,167,2.529,212,3.129,223,2.796,330,2.796,333,2.796,611,3.576,750,4.253,751,4.253,752,4.253,753,4.253,754,4.253,755,4.253,756,4.253,757,4.253,758,5.784,759,4.253,760,4.253,761,4.253,762,4.253,763,4.253,764,4.253,765,4.253,766,4.253,767,4.253,768,4.253,769,4.253,770,5.306,771,4.253,772,5.306,773,4.253,774,4.253,775,4.253,776,4.253,777,4.253,778,4.253,779,3.576,780,4.253,781,4.253,782,4.253,783,4.253,784,4.253,785,4.253]],["title/miscellaneous/enumerations.html",[786,1.512,787,3.358]],["body/miscellaneous/enumerations.html",[7,0.029,10,1.111,17,0.719,60,0.009,61,0.012,80,0.871,82,0.871,84,0.871,86,0.871,87,0.871,104,0.788,108,1.024,110,1.136,115,1.388,117,0.224,121,0.489,127,0.483,129,1.799,130,2.983,137,1.467,149,1.326,164,1.9,171,0.871,176,0.719,179,3.18,180,3.113,181,0.975,192,0.975,206,1.326,208,1.556,215,1.054,218,2.43,233,1.327,234,0.975,242,3.011,292,1.876,293,1.876,294,1.876,295,1.876,305,2.43,312,0.788,323,1.642,350,2.487,363,1.467,365,0.975,420,0.719,436,1.642,437,2.695,446,1.327,489,1.876,510,1.642,518,4.005,551,1.467,560,3.208,562,1.467,585,1.876,593,2.126,635,1.467,642,1.114,649,4.646,652,1.114,653,0.975,660,1.114,696,1.719,697,0.871,699,0.975,702,0.975,713,1.114,714,1.876,779,3.447,786,0.719,787,1.114,788,1.114,789,1.326,790,1.326,791,1.326,792,1.326,793,1.326,794,2.232,795,1.326,796,1.326,797,3.39,798,2.232,799,2.232,800,2.89,801,1.326,802,1.326,803,1.326,804,1.326,805,4.1,806,3.783,807,2.89,808,2.89,809,1.326,810,4.1,811,1.326,812,1.326,813,1.326,814,3.783,815,2.232,816,2.89,817,1.326,818,2.85,819,3.39,820,1.326,821,5.475,822,2.232,823,2.232,824,4.005,825,1.326,826,1.467,827,1.114,828,1.326,829,1.114,830,1.114,831,1.114,832,1.114,833,2.232,834,1.326,835,1.326,836,1.114,837,1.326,838,2.232,839,2.89,840,1.876,841,1.326,842,1.326,843,2.43,844,2.232,845,2.232,846,2.232,847,1.326,848,2.85,849,1.326,850,2.232,851,1.326,852,1.326,853,1.876,854,1.326,855,1.326,856,1.114,857,1.326,858,2.89,859,2.232,860,1.326,861,2.232,862,4.925,863,2.89,864,1.326,865,1.642,866,1.326,867,4.1,868,2.232,869,2.232,870,2.43,871,2.126,872,2.232,873,1.326,874,2.232,875,2.232,876,1.326,877,1.876,878,1.876,879,1.326,880,2.232,881,2.232,882,1.326,883,2.232,884,2.232,885,2.232,886,2.89,887,1.326,888,1.876,889,3.39,890,1.326,891,2.232,892,2.232,893,1.326,894,2.89,895,3.39,896,2.89,897,2.232,898,1.326,899,2.232,900,1.326,901,2.232,902,2.232,903,1.326,904,1.326,905,1.114,906,1.326,907,2.232,908,1.326,909,2.232,910,2.232,911,1.326,912,1.326,913,1.326,914,1.326,915,1.326,916,3.783,917,2.232,918,1.326,919,1.114,920,1.326,921,1.326,922,3.39,923,2.232,924,0.975,925,2.89,926,2.232,927,1.326,928,1.326,929,1.326,930,2.232,931,2.232,932,1.114,933,2.232,934,2.232,935,2.232,936,1.326,937,1.326,938,2.232,939,2.89,940,1.326,941,2.232,942,1.326,943,2.232,944,2.232,945,2.232,946,1.114,947,3.39,948,1.326,949,1.326,950,1.326,951,1.326,952,1.326,953,1.326,954,1.326,955,1.114,956,2.232,957,2.232,958,1.326,959,2.232,960,1.326,961,1.326,962,1.326,963,2.232,964,1.326,965,1.326,966,1.326,967,1.326,968,1.326,969,1.326,970,1.326,971,1.326,972,1.326,973,1.114,974,1.326,975,1.326,976,1.114,977,1.326,978,2.232,979,1.326,980,2.232,981,1.326,982,2.232,983,1.642,984,1.326,985,1.326,986,1.876,987,2.232,988,1.326,989,1.326,990,1.326,991,2.43,992,2.232,993,1.114,994,1.326,995,2.232,996,1.326,997,2.232,998,2.89,999,1.326,1000,2.232,1001,1.326,1002,2.232,1003,1.326,1004,1.326,1005,2.232,1006,1.326,1007,1.326,1008,1.326,1009,1.326,1010,1.326,1011,2.232,1012,2.126,1013,1.326,1014,2.85,1015,2.232,1016,1.876,1017,3.39,1018,1.114,1019,1.326,1020,2.232,1021,1.326,1022,2.232,1023,2.232,1024,1.326,1025,1.326,1026,2.232,1027,1.326,1028,1.326,1029,2.232,1030,1.326,1031,1.326,1032,2.232,1033,1.326,1034,1.326,1035,1.326,1036,1.326,1037,2.232,1038,1.642,1039,1.326,1040,1.326,1041,1.326,1042,1.114,1043,1.326,1044,1.326,1045,1.326,1046,1.326,1047,1.326,1048,0.975,1049,1.326,1050,2.232,1051,1.326,1052,1.326,1053,1.326,1054,1.326,1055,1.326,1056,1.326,1057,1.326,1058,1.326,1059,1.326,1060,2.43,1061,2.89,1062,2.89,1063,2.232,1064,2.232,1065,1.326,1066,0.975,1067,1.114,1068,1.326,1069,2.232,1070,1.326,1071,2.232,1072,2.232]],["title/miscellaneous/functions.html",[786,1.512,1073,3.358]],["body/miscellaneous/functions.html",[7,0.027,16,0.776,17,1.898,29,3.44,60,0.02,61,0.02,71,2.573,89,4.428,90,3.074,92,2.941,93,2.05,96,2.941,97,3.931,115,1.184,116,2.767,117,0.592,121,1.021,125,1.583,130,1.605,134,2.281,180,1.605,206,2.826,208,2.417,215,2.199,248,3.44,255,2.042,256,1.897,257,1.897,280,1.898,307,4.662,324,2.573,627,3.931,645,2.941,684,2.299,711,3.875,737,2.941,738,2.941,739,3.931,740,3.931,741,3.931,742,3.931,743,3.931,745,2.941,746,4.428,786,1.898,991,2.941,1066,2.573,1073,2.941,1074,3.498,1075,3.498,1076,5.861,1077,3.498,1078,3.498,1079,3.498,1080,3.498,1081,3.498,1082,3.498,1083,4.676,1084,3.498,1085,3.498,1086,3.498,1087,3.498,1088,3.498,1089,3.498,1090,2.941,1091,3.498,1092,4.676,1093,4.676,1094,3.498,1095,3.498,1096,4.676,1097,4.676,1098,3.498,1099,2.941,1100,3.498]],["title/index.html",[117,0.472,1101,2.343,1102,2.343]],["body/index.html",[7,0.026,13,0.369,17,3.209,39,2.139,60,0.017,61,0.017,90,2.62,126,1.383,164,1.826,197,3.351,199,3.351,215,1.699,219,3.351,238,3.351,242,3.338,273,3.351,280,1.507,364,2.335,420,1.507,502,2.044,505,2.335,510,2.044,560,3.747,562,3.064,630,2.044,635,1.826,650,3.351,699,2.932,720,3.967,748,2.335,749,2.044,818,3.919,826,3.064,829,2.335,836,2.335,865,2.044,871,3.429,877,2.335,983,2.044,1048,2.044,1099,2.335,1103,3.986,1104,5.393,1105,2.335,1106,2.932,1107,5.613,1108,3.986,1109,2.778,1110,2.778,1111,5.613,1112,4.661,1113,3.986,1114,2.778,1115,3.986,1116,4.661,1117,3.986,1118,3.986,1119,3.986,1120,2.778,1121,2.778,1122,3.351,1123,2.778,1124,2.778,1125,2.778,1126,2.778,1127,2.778,1128,3.986,1129,2.778,1130,2.778,1131,3.986,1132,3.986,1133,2.778,1134,2.778,1135,2.778,1136,2.778,1137,2.778,1138,2.778,1139,2.778,1140,2.778,1141,2.044,1142,5.093,1143,2.778,1144,2.778,1145,2.778,1146,3.986,1147,3.986,1148,2.778,1149,4.86,1150,4.661,1151,5.613,1152,4.661,1153,5.613,1154,2.778,1155,2.778,1156,2.778,1157,2.778,1158,2.778,1159,2.778,1160,4.661,1161,2.778,1162,2.778,1163,2.778,1164,2.778,1165,3.986,1166,3.986,1167,3.986,1168,3.986,1169,3.986,1170,2.778,1171,2.778,1172,2.778,1173,2.335,1174,2.778,1175,2.778,1176,3.986,1177,3.986,1178,2.778,1179,2.778,1180,2.778,1181,2.778,1182,2.778,1183,2.778,1184,2.778,1185,2.778,1186,2.778,1187,5.093,1188,3.986,1189,2.778,1190,2.778,1191,5.613,1192,2.778,1193,2.778,1194,2.778,1195,2.335,1196,2.778,1197,2.778,1198,2.335,1199,2.778,1200,2.778,1201,2.778,1202,2.778,1203,2.778,1204,2.335,1205,2.778,1206,2.778,1207,2.778,1208,2.778,1209,2.778,1210,3.986,1211,4.661,1212,2.044,1213,2.778,1214,2.778,1215,2.778,1216,2.778,1217,2.778,1218,2.778,1219,2.778,1220,2.778,1221,2.778,1222,2.778,1223,2.778,1224,2.778,1225,2.778,1226,2.778,1227,2.778,1228,2.778,1229,2.778,1230,2.335,1231,2.778,1232,2.778,1233,2.335,1234,2.778,1235,2.778]],["title/license.html",[1101,2.343,1102,2.343,1236,2.05]],["body/license.html",[7,0.013,11,0.552,13,0.489,14,0.435,16,0.181,19,0.163,27,0.763,55,1.182,59,0.057,60,0.01,61,0.01,82,2.313,126,0.7,127,0.304,158,2.103,176,0.763,192,1.034,215,0.513,228,0.763,242,1.793,249,1.182,256,0.948,325,1.182,333,1.541,365,1.034,412,0.836,420,2.122,437,0.924,502,1.034,561,1.182,562,0.924,563,1.182,588,1.971,594,1.182,630,1.034,635,0.924,653,1.034,700,1.182,702,1.034,720,2.218,824,4.23,826,0.924,827,1.182,830,1.971,831,1.971,832,2.535,840,1.182,843,1.182,848,1.182,853,1.182,856,1.182,865,3.702,870,4.099,871,1.034,878,1.182,888,1.182,905,1.182,919,3.947,924,1.034,932,3.288,946,1.971,955,2.535,973,2.958,976,2.958,983,1.725,986,1.182,993,1.182,1012,1.034,1014,2.958,1016,1.182,1018,1.182,1038,2.218,1042,2.535,1048,1.034,1060,1.182,1090,1.182,1105,1.182,1122,1.971,1141,1.034,1149,2.535,1173,1.182,1195,2.535,1198,1.971,1204,1.182,1212,1.034,1230,1.182,1233,1.971,1236,4.64,1237,2.958,1238,3.016,1239,1.406,1240,1.406,1241,1.406,1242,4.876,1243,5.388,1244,3.519,1245,3.911,1246,1.406,1247,5.563,1248,5.032,1249,1.406,1250,1.406,1251,5.032,1252,5.388,1253,4.225,1254,2.345,1255,1.406,1256,3.911,1257,1.406,1258,1.406,1259,3.519,1260,2.345,1261,1.406,1262,3.016,1263,2.345,1264,2.345,1265,1.406,1266,1.406,1267,5.766,1268,3.519,1269,2.345,1270,4.225,1271,1.406,1272,2.345,1273,1.406,1274,1.406,1275,1.406,1276,1.406,1277,1.406,1278,1.406,1279,1.406,1280,3.016,1281,1.406,1282,3.016,1283,2.345,1284,5.388,1285,1.406,1286,4.225,1287,4.876,1288,3.519,1289,1.406,1290,1.406,1291,1.406,1292,1.406,1293,1.406,1294,2.345,1295,1.406,1296,1.406,1297,6.307,1298,3.016,1299,2.345,1300,1.406,1301,4.876,1302,1.406,1303,2.345,1304,5.766,1305,5.822,1306,1.406,1307,1.406,1308,1.406,1309,1.406,1310,1.406,1311,1.406,1312,2.345,1313,2.345,1314,1.406,1315,1.406,1316,1.406,1317,1.406,1318,1.406,1319,3.519,1320,3.911,1321,1.406,1322,2.345,1323,3.519,1324,2.345,1325,1.406,1326,3.911,1327,2.345,1328,1.406,1329,1.406,1330,3.016,1331,1.406,1332,1.406,1333,1.406,1334,2.345,1335,1.406,1336,1.406,1337,1.406,1338,3.016,1339,1.406,1340,1.406,1341,3.016,1342,1.406,1343,1.406,1344,1.406,1345,3.519,1346,5.032,1347,1.406,1348,2.345,1349,3.016,1350,2.345,1351,2.345,1352,2.345,1353,2.345,1354,2.345,1355,2.345,1356,3.016,1357,2.345,1358,2.345,1359,2.345,1360,2.345,1361,1.406,1362,2.345,1363,1.406,1364,3.911,1365,4.481,1366,3.016,1367,2.345,1368,2.345,1369,2.345,1370,1.406,1371,1.406,1372,3.016,1373,2.345,1374,1.406,1375,1.406,1376,1.406,1377,3.016,1378,1.406,1379,1.406,1380,1.406,1381,2.345,1382,2.345,1383,1.406,1384,1.406,1385,1.406,1386,1.406,1387,1.406,1388,1.406,1389,1.406,1390,2.345,1391,1.406,1392,1.406,1393,1.406,1394,1.406,1395,1.406,1396,1.406,1397,1.406,1398,1.406,1399,1.406,1400,1.406,1401,1.406,1402,1.406,1403,4.695,1404,1.406,1405,1.406,1406,1.406,1407,1.406,1408,1.406,1409,3.519,1410,2.345,1411,3.519,1412,1.406,1413,1.406,1414,1.406,1415,3.016,1416,1.406,1417,1.406,1418,1.406,1419,1.406,1420,2.345,1421,1.406,1422,1.406,1423,3.911,1424,1.406,1425,1.406,1426,1.406,1427,1.406,1428,1.406,1429,3.016,1430,3.519,1431,1.406,1432,1.406,1433,1.406,1434,1.406,1435,1.406,1436,1.406,1437,1.406,1438,1.406,1439,1.406,1440,2.345,1441,1.406,1442,2.345,1443,1.406,1444,1.406,1445,1.406,1446,1.406,1447,1.406,1448,1.406,1449,1.406,1450,3.519,1451,3.016,1452,3.016,1453,3.016,1454,2.345,1455,2.345,1456,3.016,1457,2.345,1458,2.345,1459,2.345,1460,1.406,1461,1.406,1462,1.406,1463,1.406,1464,1.406,1465,1.406,1466,1.406,1467,1.406,1468,2.345,1469,1.406,1470,1.406,1471,1.406,1472,1.406,1473,3.911,1474,1.406,1475,1.406,1476,1.406,1477,1.406,1478,1.406,1479,1.406,1480,1.406,1481,1.406,1482,1.406,1483,3.911,1484,1.406,1485,1.406,1486,1.406,1487,1.406,1488,1.406,1489,1.406,1490,1.406,1491,1.406,1492,1.406,1493,1.406,1494,1.406,1495,1.406,1496,1.406,1497,1.406,1498,1.406,1499,1.406,1500,1.406,1501,3.016,1502,1.406,1503,1.406,1504,1.406,1505,2.345,1506,1.406,1507,1.406,1508,1.406,1509,1.406,1510,1.406,1511,1.406,1512,1.406,1513,1.406,1514,1.406,1515,1.406,1516,1.406,1517,1.406,1518,1.406,1519,1.406,1520,1.406,1521,1.406,1522,2.345,1523,2.345,1524,1.406,1525,1.406,1526,1.406,1527,1.406,1528,1.406,1529,1.406,1530,1.406,1531,1.406,1532,1.406,1533,1.406,1534,1.406,1535,1.406,1536,1.406,1537,1.406,1538,1.406,1539,1.406,1540,1.406,1541,1.406]],["title/modules.html",[2,1.776]],["body/modules.html",[1,3.201,2,1.913,6,2.896,7,0.024,8,2.896,60,0.024,61,0.024,65,2.896,66,2.896,220,3.583,826,3.201,1012,4.761,1542,6.472,1543,6.472,1544,6.562,1545,4.87]],["title/overview.html",[1106,3.325]],["body/overview.html",[1,4.111,2,1.57,3,2.341,4,3.359,5,3.359,6,3.865,7,0.028,8,3.719,9,2.768,10,1.989,11,1.57,57,2.168,60,0.022,61,0.022,62,3.359,63,3.359,64,3.359,65,3.896,66,3.896,70,1.833,171,2.626,176,2.168,228,2.168,262,3.359,263,3.359,264,3.359,265,3.78,270,2.168,326,3.449,355,3.359,356,3.359,357,3.359,525,3.449,547,2.626,571,3.359,572,3.359,573,3.359,1066,2.939,1067,3.359,1106,2.939,1546,3.996,1547,3.996]],["title/properties.html",[118,1.084,749,2.05]],["body/properties.html",[7,0.028,16,0.643,17,2.711,60,0.025,61,0.025,118,1.357,164,3.285,208,2.293,649,3.677,1038,3.677,1141,3.677,1212,3.677,1236,3.677,1237,4.201,1548,4.998,1549,4.998,1550,4.998,1551,4.998,1552,4.998,1553,4.998]],["title/miscellaneous/variables.html",[684,2.626,786,1.512]],["body/miscellaneous/variables.html",[2,1.784,7,0.029,15,2.463,17,1.816,27,2.795,39,2.794,41,3.34,42,2.814,43,2.814,44,2.463,45,2.463,51,1.42,60,0.019,61,0.019,84,2.2,86,2.2,87,2.2,95,1.991,112,2.984,113,3.34,116,2.65,117,0.567,118,1.567,119,2.463,120,2.814,121,1.031,125,1.537,127,0.724,129,1.315,141,2.463,149,2.65,150,3.161,151,2.463,152,2.814,154,3.34,155,2.814,156,2.463,157,2.814,180,2.94,232,2.083,280,3.476,350,2.2,363,3.631,411,2.463,415,2.463,446,1.991,480,2.814,529,2.463,551,4.002,557,2.814,564,3.34,576,3.34,577,2.814,597,2.814,602,3.34,684,2.2,696,1.991,697,2.2,716,2.814,717,2.814,718,2.814,726,2.814,728,3.817,730,2.814,786,1.816,788,2.814,924,2.463,1554,4.54,1555,3.348,1556,4.54,1557,4.54,1558,3.348,1559,4.54,1560,3.348,1561,3.348,1562,3.348,1563,3.348,1564,3.348,1565,3.348]],["title/routes.html",[1566,3.8]],["body/routes.html",[7,0.026,60,0.026,61,0.026,1566,4.461]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{}}}],["0.0.1",{"_index":1548,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":757,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1192,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":782,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":769,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":777,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":765,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":768,"title":{},"body":{"dependencies.html":{}}}],["01002",{"_index":189,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":176,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":751,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":185,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1/1",{"_index":729,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":462,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":723,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":300,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":811,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11/11",{"_index":744,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":854,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["14.0.1",{"_index":780,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":948,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1998",{"_index":964,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["2",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1238,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":759,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":724,"title":{},"body":{"coverage.html":{}}}],["200",{"_index":504,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1240,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1161,"title":{},"body":{"index.html":{}}}],["2324",{"_index":971,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":181,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":784,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":756,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":774,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":767,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":725,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":138,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["4",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{},"overview.html":{}}}],["4.6.0",{"_index":763,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":732,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":990,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":912,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":985,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":981,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":996,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1001,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["5",{"_index":171,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":761,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":772,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":731,"title":{},"body":{"coverage.html":{}}}],["5/6",{"_index":734,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1275,"title":{},"body":{"license.html":{}}}],["504",{"_index":676,"title":{},"body":{"injectables/SearchService.html":{}}}],["6",{"_index":1546,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":735,"title":{},"body":{"coverage.html":{}}}],["7",{"_index":1547,"title":{},"body":{"overview.html":{}}}],["7.5.5",{"_index":785,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":736,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1231,"title":{},"body":{"index.html":{}}}],["8.0.0",{"_index":758,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":762,"title":{},"body":{"dependencies.html":{}}}],["83",{"_index":733,"title":{},"body":{"coverage.html":{}}}],["9",{"_index":1250,"title":{},"body":{"license.html":{}}}],["_id",{"_index":188,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":186,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_score",{"_index":190,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_shards",{"_index":155,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":191,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["above",{"_index":1433,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":591,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":909,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":907,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1503,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":814,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1501,"title":{},"body":{"license.html":{}}}],["access",{"_index":877,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1021,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["according",{"_index":908,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":506,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":641,"title":{},"body":{"injectables/SearchService.html":{}}}],["act",{"_index":1509,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1016,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":998,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1481,"title":{},"body":{"license.html":{}}}],["actual",{"_index":234,"title":{},"body":{"interfaces/HttpResponse.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1119,"title":{},"body":{"index.html":{}}}],["add",{"_index":1233,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1422,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1423,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1321,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":753,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":928,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1109,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1499,"title":{},"body":{"license.html":{}}}],["against",{"_index":1382,"title":{},"body":{"license.html":{}}}],["agent",{"_index":839,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1512,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1453,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1437,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1124,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1115,"title":{},"body":{"index.html":{}}}],["alive",{"_index":205,"title":{},"body":{"controllers/HealthController.html":{},"injectables/SearchService.html":{}}}],["alleging",{"_index":1387,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":149,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":150,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1378,"title":{},"body":{"license.html":{}}}],["along",{"_index":1416,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1421,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1194,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":846,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":708,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amount",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1506,"title":{},"body":{"license.html":{}}}],["annotations",{"_index":1309,"title":{},"body":{"license.html":{}}}],["another",{"_index":883,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["anything",{"_index":898,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1237,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":235,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apioperation",{"_index":530,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation({summary",{"_index":500,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":143,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":425,"title":{},"body":{"classes/PageDto.html":{}}}],["apiresponse",{"_index":531,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1225,"title":{},"body":{"index.html":{}}}],["app",{"_index":1191,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1419,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1303,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1451,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":225,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":661,"title":{},"body":{"injectables/SearchService.html":{}}}],["applies",{"_index":1371,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1198,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":563,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1467,"title":{},"body":{"license.html":{}}}],["april",{"_index":967,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1120,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1104,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1533,"title":{},"body":{"license.html":{}}}],["args",{"_index":375,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":407,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":377,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1488,"title":{},"body":{"license.html":{}}}],["asc",{"_index":585,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1518,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":860,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":1471,"title":{},"body":{"license.html":{}}}],["assume",{"_index":1469,"title":{},"body":{"license.html":{}}}],["async",{"_index":611,"title":{},"body":{"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1521,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1302,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1022,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1409,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":914,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":891,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1551,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1254,"title":{},"body":{"license.html":{}}}],["authorship",{"_index":1298,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1137,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":826,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["axiosres.data",{"_index":664,"title":{},"body":{"injectables/SearchService.html":{}}}],["b",{"_index":1400,"title":{},"body":{"license.html":{}}}],["back",{"_index":505,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":991,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1015,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":884,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":706,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":502,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1163,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1158,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1164,"title":{},"body":{"index.html":{}}}],["basic",{"_index":231,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1455,"title":{},"body":{"license.html":{}}}],["before",{"_index":132,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["behalf",{"_index":1326,"title":{},"body":{"license.html":{}}}],["being",{"_index":808,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1173,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1279,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1318,"title":{},"body":{"license.html":{}}}],["block",{"_index":424,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":835,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1141,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":122,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/PageMeta.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":746,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1523,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1544,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1542,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1107,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1165,"title":{},"body":{"index.html":{}}}],["building",{"_index":1146,"title":{},"body":{"index.html":{}}}],["c",{"_index":1406,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":317,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1178,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":313,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["calling",{"_index":1210,"title":{},"body":{"index.html":{}}}],["canactivate",{"_index":552,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":558,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":903,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1401,"title":{},"body":{"license.html":{}}}],["case",{"_index":236,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":672,"title":{},"body":{"injectables/SearchService.html":{}}}],["cause",{"_index":1264,"title":{},"body":{"license.html":{}}}],["caused",{"_index":842,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cd",{"_index":1142,"title":{},"body":{"index.html":{}}}],["change",{"_index":652,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1405,"title":{},"body":{"license.html":{}}}],["character",{"_index":1487,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":906,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1356,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1186,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1184,"title":{},"body":{"index.html":{}}}],["check",{"_index":199,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":202,"title":{},"body":{"controllers/HealthController.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1502,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1384,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1373,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["cleint_error",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":779,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":802,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1139,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1188,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":262,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":263,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":264,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":355,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":356,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":357,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":571,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":572,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":573,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":242,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":974,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":408,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1379,"title":{},"body":{"license.html":{}}}],["comission",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1228,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1527,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1496,"title":{},"body":{"license.html":{}}}],["commision",{"_index":707,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":709,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":249,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1330,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1293,"title":{},"body":{"license.html":{}}}],["complete",{"_index":815,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":816,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completion",{"_index":133,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1536,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1427,"title":{},"body":{"license.html":{}}}],["comply",{"_index":801,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1229,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":750,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1128,"title":{},"body":{"index.html":{}}}],["computer",{"_index":1493,"title":{},"body":{"license.html":{}}}],["condition",{"_index":1008,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":876,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":1243,"title":{},"body":{"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"modules/SearchModule.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1201,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1206,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":922,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1130,"title":{},"body":{"index.html":{}}}],["connection",{"_index":809,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1486,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1508,"title":{},"body":{"license.html":{}}}],["conspicuously",{"_index":1342,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1388,"title":{},"body":{"license.html":{}}}],["constructor",{"_index":214,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":603,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":369,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":252,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":616,"title":{},"body":{"injectables/SearchService.html":{}}}],["constructor(private",{"_index":216,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":578,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":553,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":419,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1424,"title":{},"body":{"license.html":{}}}],["contained",{"_index":993,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["contains",{"_index":162,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{}}}],["content",{"_index":437,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["contents",{"_index":1105,"title":{},"body":{"index.html":{},"license.html":{}}}],["context",{"_index":316,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":568,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":344,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":567,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":346,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":336,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":347,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":348,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":335,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":797,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1269,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1320,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1377,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1429,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1346,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1389,"title":{},"body":{"license.html":{}}}],["control",{"_index":976,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1258,"title":{},"body":{"license.html":{}}}],["controller",{"_index":193,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":213,"title":{},"body":{"controllers/HealthController.html":{}}}],["controller('papers",{"_index":533,"title":{},"body":{"controllers/PapersController.html":{}}}],["controllername",{"_index":343,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":354,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":254,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":556,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1295,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1396,"title":{},"body":{"license.html":{}}}],["copy",{"_index":832,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1252,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":712,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":526,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":988,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":847,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["counterclaim",{"_index":1385,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1127,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":719,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":818,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1209,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":362,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":371,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":373,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1125,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1383,"title":{},"body":{"license.html":{}}}],["current",{"_index":923,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":282,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1446,"title":{},"body":{"license.html":{}}}],["customer",{"_index":703,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1412,"title":{},"body":{"license.html":{}}}],["damages",{"_index":1483,"title":{},"body":{"license.html":{}}}],["data",{"_index":232,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":260,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.status",{"_index":261,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["date",{"_index":1393,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":334,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["db",{"_index":755,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":364,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":374,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1089,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1083,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1562,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":123,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":280,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":674,"title":{},"body":{"injectables/SearchService.html":{}}}],["defaults",{"_index":644,"title":{},"body":{"injectables/SearchService.html":{}}}],["defend",{"_index":1514,"title":{},"body":{"license.html":{}}}],["defined",{"_index":127,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1260,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1246,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":825,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":626,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletepit",{"_index":612,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletepit(pitid",{"_index":621,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletes",{"_index":623,"title":{},"body":{"injectables/SearchService.html":{}}}],["deletion",{"_index":631,"title":{},"body":{"injectables/SearchService.html":{}}}],["deliberate",{"_index":1478,"title":{},"body":{"license.html":{}}}],["depended",{"_index":999,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":997,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":629,"title":{},"body":{"injectables/SearchService.html":{}}}],["deploy",{"_index":1147,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1110,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1207,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1202,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":409,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":1304,"title":{},"body":{"license.html":{}}}],["derived",{"_index":1306,"title":{},"body":{"license.html":{}}}],["desc",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1447,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1123,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1344,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1215,"title":{},"body":{"index.html":{}}}],["details",{"_index":207,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1466,"title":{},"body":{"license.html":{}}}],["development",{"_index":1183,"title":{},"body":{"index.html":{}}}],["different",{"_index":871,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1262,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1265,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":692,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":688,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1449,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1339,"title":{},"body":{"license.html":{}}}],["display",{"_index":588,"title":{},"body":{"classes/SearchQueryDto.html":{},"license.html":{}}}],["displayed",{"_index":583,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1364,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1415,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1245,"title":{},"body":{"license.html":{}}}],["dns",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1232,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1176,"title":{},"body":{"index.html":{}}}],["document",{"_index":840,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":720,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":166,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":440,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/dtos/search",{"_index":442,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/enums",{"_index":296,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/page",{"_index":447,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/interfaces",{"_index":258,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{}}}],["don't",{"_index":1526,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":770,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":851,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":116,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["due",{"_index":886,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1531,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1129,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1307,"title":{},"body":{"license.html":{}}}],["elaborations",{"_index":1310,"title":{},"body":{"license.html":{}}}],["elastichsearch",{"_index":648,"title":{},"body":{"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":114,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["electronic",{"_index":1327,"title":{},"body":{"license.html":{}}}],["elements",{"_index":136,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":237,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1522,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1006,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1520,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1211,"title":{},"body":{"index.html":{}}}],["entities",{"_index":905,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":824,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1079,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":713,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":787,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums/page",{"_index":493,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1081,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1131,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":714,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":183,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["error",{"_index":206,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":378,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":341,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":403,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.status",{"_index":546,"title":{},"body":{"controllers/PapersController.html":{}}}],["error.statuscode",{"_index":542,"title":{},"body":{"controllers/PapersController.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es_port",{"_index":610,"title":{},"body":{"injectables/SearchService.html":{}}}],["es_query",{"_index":654,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquerydto",{"_index":111,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":153,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["evaluated",{"_index":936,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1498,"title":{},"body":{"license.html":{}}}],["event",{"_index":1474,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":961,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":126,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1366,"title":{},"body":{"license.html":{}}}],["exception",{"_index":248,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":689,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["exchangeable",{"_index":1133,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1341,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1355,"title":{},"body":{"license.html":{}}}],["execute",{"_index":142,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["executed",{"_index":1438,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":311,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1472,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1281,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1175,"title":{},"body":{"index.html":{}}}],["expand",{"_index":771,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":711,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1080,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":958,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":957,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":956,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":977,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1431,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1224,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":333,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":250,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":953,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1199,"title":{},"body":{"index.html":{}}}],["facilitates",{"_index":1135,"title":{},"body":{"index.html":{}}}],["factory",{"_index":693,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":179,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":995,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1494,"title":{},"body":{"license.html":{}}}],["faker",{"_index":775,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":700,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":806,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fields",{"_index":192,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1273,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1394,"title":{},"body":{"license.html":{}}}],["files",{"_index":1195,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":613,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(query_str",{"_index":632,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":614,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":637,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":501,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":913,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1462,"title":{},"body":{"license.html":{}}}],["flag",{"_index":488,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["flow",{"_index":773,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1218,"title":{},"body":{"index.html":{}}}],["following",{"_index":1149,"title":{},"body":{"index.html":{},"license.html":{}}}],["fools",{"_index":968,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":894,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1284,"title":{},"body":{"license.html":{}}}],["format",{"_index":365,"title":{},"body":{"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":381,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":383,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":384,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":394,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1172,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":927,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":867,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1358,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":896,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":819,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1010,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":238,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1013,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1073,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":863,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1017,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gathered",{"_index":828,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":273,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":277,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1294,"title":{},"body":{"license.html":{}}}],["generates",{"_index":279,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":904,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":543,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":535,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":200,"title":{},"body":{"controllers/HealthController.html":{}}}],["getbycontext",{"_index":497,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@query",{"_index":538,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(query",{"_index":499,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":498,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":544,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":511,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":274,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":284,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":275,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":287,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":615,"title":{},"body":{"injectables/SearchService.html":{}}}],["getpit(alive",{"_index":639,"title":{},"body":{"injectables/SearchService.html":{}}}],["getqueryparams(str",{"_index":472,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["gets",{"_index":286,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getting",{"_index":1101,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":276,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":289,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1138,"title":{},"body":{"index.html":{}}}],["give",{"_index":1204,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":593,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":925,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1491,"title":{},"body":{"license.html":{}}}],["governing",{"_index":1540,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1349,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1283,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1255,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1352,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1545,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1479,"title":{},"body":{"license.html":{}}}],["guard",{"_index":547,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":549,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1160,"title":{},"body":{"index.html":{}}}],["handle",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":315,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":345,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1516,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":458,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["hasprev",{"_index":459,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["header",{"_index":805,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":660,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":197,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":211,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":209,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":194,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":220,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1553,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1111,"title":{},"body":{"index.html":{}}}],["help",{"_index":1150,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1171,"title":{},"body":{"index.html":{}}}],["hence",{"_index":984,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1351,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1434,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1103,"title":{},"body":{"index.html":{}}}],["hits",{"_index":156,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hold",{"_index":1515,"title":{},"body":{"license.html":{}}}],["hop",{"_index":962,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":208,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1227,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1216,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1222,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1241,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1538,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":519,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":537,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":251,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{}}}],["httpexception(error.data",{"_index":541,"title":{},"body":{"controllers/PapersController.html":{}}}],["httphealthindicator",{"_index":210,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":222,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":227,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":292,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":298,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":244,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1096,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":293,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":297,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":265,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":294,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":295,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":299,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":239,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1140,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":617,"title":{},"body":{"injectables/SearchService.html":{}}}],["httpstatus",{"_index":291,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":972,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":963,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":624,"title":{},"body":{"injectables/SearchService.html":{}}}],["identification",{"_index":1532,"title":{},"body":{"license.html":{}}}],["identified",{"_index":901,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":721,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1525,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":966,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["if(!pairs",{"_index":478,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["ii",{"_index":1271,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1278,"title":{},"body":{"license.html":{}}}],["image",{"_index":1177,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1179,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":978,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":432,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["implements",{"_index":247,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1458,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1340,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1489,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":987,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1485,"title":{},"body":{"license.html":{}}}],["include",{"_index":955,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":946,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1413,"title":{},"body":{"license.html":{}}}],["including",{"_index":1287,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1324,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1348,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1517,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1513,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1504,"title":{},"body":{"license.html":{}}}],["index",{"_index":117,"title":{"index.html":{}},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1300,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":489,"title":{},"body":{"interfaces/PageMeta.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1263,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1280,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["inform",{"_index":813,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":562,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1235,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1376,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1390,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":269,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":270,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":619,"title":{},"body":{"injectables/SearchService.html":{}}}],["install",{"_index":1152,"title":{},"body":{"index.html":{}}}],["instance",{"_index":620,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":402,"title":{},"body":{"injectables/LoggerService.html":{}}}],["institute",{"_index":1380,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1185,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":994,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1322,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":308,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["intercept(context",{"_index":310,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["interceptor",{"_index":433,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["interface",{"_index":226,"title":{"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":228,"title":{},"body":{"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/page",{"_index":426,"title":{},"body":{"classes/PageDto.html":{}}}],["interim",{"_index":812,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1005,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":942,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1019,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["irrevocable",{"_index":1359,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":728,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":422,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":421,"title":{},"body":{"classes/PageDto.html":{}}}],["isboolean",{"_index":173,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":145,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@apiproperty({description",{"_index":124,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":605,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":168,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":586,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":170,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":589,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isnumber()@isint()@apiproperty({description",{"_index":135,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":595,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isint",{"_index":146,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":147,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnumber",{"_index":148,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isobject",{"_index":174,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":580,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":159,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":584,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1560,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isstring",{"_index":596,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["issue",{"_index":1335,"title":{},"body":{"license.html":{}}}],["itself",{"_index":915,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1239,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":969,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["k8s",{"_index":1189,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1196,"title":{},"body":{"index.html":{}}}],["keeps",{"_index":704,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":480,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1565,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1457,"title":{},"body":{"license.html":{}}}],["known",{"_index":929,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1197,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1112,"title":{},"body":{"index.html":{}}}],["language",{"_index":1539,"title":{},"body":{"license.html":{}}}],["large",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":940,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":776,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1452,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1386,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1256,"title":{},"body":{"license.html":{}}}],["length",{"_index":933,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":930,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1134,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1473,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1482,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1374,"title":{},"body":{"license.html":{}}}],["license",{"_index":1236,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1535,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1391,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1251,"title":{},"body":{"license.html":{}}}],["limit",{"_index":577,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1459,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1541,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1288,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1004,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":582,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":900,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1317,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1214,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1333,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1381,"title":{},"body":{"license.html":{}}}],["liveness",{"_index":203,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":829,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":850,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":366,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":385,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":307,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":397,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":326,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":399,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":327,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":360,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":309,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":319,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":304,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":926,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1126,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1490,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1497,"title":{},"body":{"license.html":{}}}],["machine",{"_index":1180,"title":{},"body":{"index.html":{}}}],["made",{"_index":1299,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1332,"title":{},"body":{"license.html":{}}}],["main",{"_index":1078,"title":{},"body":{"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1212,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1132,"title":{},"body":{"index.html":{}}}],["making",{"_index":1285,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":887,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1495,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1337,"title":{},"body":{"license.html":{}}}],["management",{"_index":1266,"title":{},"body":{"license.html":{}}}],["manager",{"_index":766,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1113,"title":{},"body":{"index.html":{}}}],["many",{"_index":1002,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":439,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["map((res",{"_index":450,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["map(axiosres",{"_index":663,"title":{},"body":{"injectables/SearchService.html":{}}}],["marked",{"_index":1343,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1443,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["max_score",{"_index":184,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["mean",{"_index":1248,"title":{},"body":{"license.html":{}}}],["means",{"_index":983,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1290,"title":{},"body":{"license.html":{}}}],["media",{"_index":986,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1397,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1398,"title":{},"body":{"license.html":{}}}],["memory",{"_index":754,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1461,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1316,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1220,"title":{},"body":{"index.html":{}}}],["message",{"_index":233,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":691,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":959,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":415,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["meta.hasnext",{"_index":464,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.hasprev",{"_index":467,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.interface",{"_index":427,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.interface.ts",{"_index":486,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":470,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["meta.pagesize",{"_index":466,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["metadata",{"_index":167,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"dependencies.html":{}}}],["metadatascanner",{"_index":438,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["metainformation",{"_index":823,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":350,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":353,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":899,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":198,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1221,"title":{},"body":{"index.html":{}}}],["milliseconds",{"_index":140,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["minute",{"_index":701,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":643,"title":{},"body":{"injectables/SearchService.html":{}}}],["miscellaneous",{"_index":786,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":413,"title":{},"body":{"classes/PageDto.html":{}}}],["modifications",{"_index":1286,"title":{},"body":{"license.html":{}}}],["modified",{"_index":878,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1420,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1425,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1552,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1143,"title":{},"body":{"index.html":{}}}],["money",{"_index":705,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1114,"title":{},"body":{"index.html":{}}}],["more",{"_index":702,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["moved",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":859,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["multiple",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":764,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":739,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1082,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":256,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1442,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1200,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1205,"title":{},"body":{"index.html":{}}}],["necessarily",{"_index":1375,"title":{},"body":{"license.html":{}}}],["need",{"_index":834,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":642,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1477,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1480,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":852,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":329,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["nestjs",{"_index":752,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":223,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":760,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":144,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":212,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1550,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":393,"title":{},"body":{"injectables/LoggerService.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":312,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":337,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["no_content",{"_index":833,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1549,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":822,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":949,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1418,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":902,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":897,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1011,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":874,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":325,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1301,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1403,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1432,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1151,"title":{},"body":{"index.html":{}}}],["num",{"_index":1087,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":134,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":158,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["obligations",{"_index":1505,"title":{},"body":{"license.html":{}}}],["observable",{"_index":318,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["obtain",{"_index":1537,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1368,"title":{},"body":{"license.html":{}}}],["ok",{"_index":218,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["one",{"_index":848,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1116,"title":{},"body":{"index.html":{}}}],["optional",{"_index":257,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":699,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":446,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":456,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.desc",{"_index":457,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.enum",{"_index":448,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["order.enum.ts",{"_index":794,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":827,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1313,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1270,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["output",{"_index":1099,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1276,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":952,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":435,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["overview",{"_index":1106,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1253,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1272,"title":{},"body":{"license.html":{}}}],["package",{"_index":749,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1169,"title":{},"body":{"index.html":{}}}],["page",{"_index":412,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["pagedto",{"_index":410,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":471,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pageinterceptor",{"_index":430,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["pagemeta",{"_index":417,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"coverage.html":{}}}],["pagen",{"_index":597,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":452,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["pagesize",{"_index":460,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["pagination",{"_index":414,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{}}}],["pair",{"_index":479,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.indexof",{"_index":482,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.substring(0",{"_index":481,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pair.substring(pair.indexof",{"_index":483,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs",{"_index":473,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs.shift",{"_index":477,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pairs[0",{"_index":476,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["paper",{"_index":512,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["papers",{"_index":187,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":509,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":516,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":494,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":255,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parameters['main",{"_index":475,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["parameters[key",{"_index":484,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["parseuuidpipe",{"_index":520,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1411,"title":{},"body":{"license.html":{}}}],["partial",{"_index":845,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":844,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["particle",{"_index":590,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1463,"title":{},"body":{"license.html":{}}}],["party",{"_index":831,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["patent",{"_index":1365,"title":{},"body":{"license.html":{}}}],["pattern",{"_index":1121,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":938,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":892,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1274,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1086,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":594,"title":{},"body":{"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":875,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":861,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":881,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":561,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1282,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1353,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1410,"title":{},"body":{"license.html":{}}}],["pipe(take(1",{"_index":662,"title":{},"body":{"injectables/SearchService.html":{}}}],["pipeline",{"_index":686,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":151,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":625,"title":{},"body":{"injectables/SearchService.html":{}}}],["places",{"_index":1090,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":645,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":650,"title":{},"body":{"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1118,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1500,"title":{},"body":{"license.html":{}}}],["pot",{"_index":975,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1261,"title":{},"body":{"license.html":{}}}],["precondition",{"_index":935,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":934,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":856,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":196,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}}}],["prepare",{"_index":1361,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":920,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":490,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["prevented",{"_index":1009,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":491,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["print",{"_index":1174,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1530,"title":{},"body":{"license.html":{}}}],["private",{"_index":217,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1217,"title":{},"body":{"index.html":{}}}],["process",{"_index":939,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":718,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_port",{"_index":646,"title":{},"body":{"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":716,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":717,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1092,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":740,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1091,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":810,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":741,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1094,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":918,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1444,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1156,"title":{},"body":{"index.html":{}}}],["project",{"_index":204,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":778,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1402,"title":{},"body":{"license.html":{}}}],["promise",{"_index":627,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":656,"title":{},"body":{"injectables/SearchService.html":{}}}],["properties",{"_index":118,"title":{"properties.html":{}},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":807,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":420,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":609,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":1454,"title":{},"body":{"license.html":{}}}],["proxy",{"_index":916,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":910,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":363,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1362,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1338,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1259,"title":{},"body":{"license.html":{}}}],["put",{"_index":521,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":443,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["q.dto.ts",{"_index":576,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:24",{"_index":592,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:36",{"_index":587,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:47",{"_index":581,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:58",{"_index":579,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":119,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["query.'})@apiresponse({status",{"_index":503,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto.ts",{"_index":113,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:24",{"_index":139,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:35",{"_index":128,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.limit",{"_index":463,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query.page",{"_index":454,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.limit",{"_index":461,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.order?.touppercase",{"_index":455,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query?.page",{"_index":453,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query_str",{"_index":636,"title":{},"body":{"injectables/SearchService.html":{}}}],["query_string",{"_index":655,"title":{},"body":{"injectables/SearchService.html":{}}}],["range",{"_index":947,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1003,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1414,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":306,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1519,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1445,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1018,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1399,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1528,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":858,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1468,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1395,"title":{},"body":{"license.html":{}}}],["references",{"_index":864,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":781,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":554,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":931,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":895,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1439,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1108,"title":{},"body":{"index.html":{}}}],["reject",{"_index":657,"title":{},"body":{"injectables/SearchService.html":{}}}],["reject(error",{"_index":679,"title":{},"body":{"injectables/SearchService.html":{}}}],["reject(new",{"_index":667,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":182,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevant",{"_index":634,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1314,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":882,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1524,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1311,"title":{},"body":{"license.html":{}}}],["representation",{"_index":857,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":849,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1331,"title":{},"body":{"license.html":{}}}],["represents",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1360,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1448,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1244,"title":{},"body":{"license.html":{}}}],["req",{"_index":522,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":339,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":342,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":130,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.query",{"_index":449,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request_timeout",{"_index":917,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requested",{"_index":518,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":945,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":305,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1014,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":565,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":570,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":890,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":523,"title":{},"body":{"controllers/PapersController.html":{}}}],["res.hits",{"_index":671,"title":{},"body":{"injectables/SearchService.html":{}}}],["res.hits.slice((meta.pagenum",{"_index":469,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits[(meta.pagenum",{"_index":468,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits[meta.pagenum",{"_index":465,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.timed_out",{"_index":666,"title":{},"body":{"injectables/SearchService.html":{}}}],["res.total.value",{"_index":451,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["reserved",{"_index":893,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":838,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":868,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":669,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res.id",{"_index":678,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res.succeeded",{"_index":681,"title":{},"body":{"injectables/SearchService.html":{}}}],["resource",{"_index":821,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":879,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":115,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":243,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":540,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto.ts",{"_index":154,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:24",{"_index":172,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:37",{"_index":169,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:54",{"_index":161,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:82",{"_index":165,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":246,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":253,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":230,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":267,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":272,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":288,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":285,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":290,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":278,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1511,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1465,"title":{},"body":{"license.html":{}}}],["result",{"_index":630,"title":{},"body":{"injectables/SearchService.html":{},"index.html":{},"license.html":{}}}],["result.dto",{"_index":445,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":602,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:23",{"_index":606,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:37",{"_index":604,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":820,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1289,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1407,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":873,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1564,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":137,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["revisions",{"_index":1308,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":970,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1507,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":783,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1470,"title":{},"body":{"license.html":{}}}],["role",{"_index":557,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":551,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":564,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":548,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["rounded",{"_index":1088,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1085,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":496,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1566,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1357,"title":{},"body":{"license.html":{}}}],["run",{"_index":1153,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1159,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1167,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1168,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1166,"title":{},"body":{"index.html":{}}}],["running",{"_index":1187,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":330,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":332,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["same",{"_index":1529,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1190,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["schemas",{"_index":1226,"title":{},"body":{"index.html":{}}}],["script",{"_index":1170,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1157,"title":{},"body":{"index.html":{}}}],["search",{"_index":492,"title":{},"body":{"interfaces/PageMeta.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":441,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":444,"title":{"classes/SearchResultDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":670,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(504",{"_index":668,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(700",{"_index":673,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto})@get(':uuid')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":514,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchresultdto})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":507,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchservice",{"_index":525,"title":{"injectables/SearchService.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["section",{"_index":853,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1249,"title":{},"body":{"license.html":{}}}],["see",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":872,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":855,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":954,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1369,"title":{},"body":{"license.html":{}}}],["sent",{"_index":843,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1315,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1436,"title":{},"body":{"license.html":{}}}],["server",{"_index":649,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":979,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":215,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1193,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1203,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1208,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":268,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["set",{"_index":510,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["setmetadata(is_public_key",{"_index":1561,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1563,"title":{},"body":{"miscellaneous/variables.html":{}}}],["shall",{"_index":1247,"title":{},"body":{"license.html":{}}}],["shards",{"_index":163,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1277,"title":{},"body":{"license.html":{}}}],["short",{"_index":241,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["similar",{"_index":911,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["size",{"_index":120,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":178,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1122,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1510,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1464,"title":{},"body":{"license.html":{}}}],["sort",{"_index":152,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":1484,"title":{},"body":{"license.html":{}}}],["specific",{"_index":653,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":436,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":950,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../app.module.ts",{"_index":1558,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1075,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":788,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1077,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1554,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":789,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":790,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":792,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":791,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1074,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":793,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../page.dto.ts",{"_index":1555,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1557,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1559,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":795,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1556,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1076,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application",{"_index":575,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/application/controller/health.controller.ts",{"_index":195,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":201,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":495,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:32",{"_index":508,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:58",{"_index":515,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":726,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":730,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos",{"_index":532,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["src/core/domain/dtos/es",{"_index":112,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":411,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:22",{"_index":423,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:31",{"_index":418,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/search",{"_index":529,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":796,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/http",{"_index":229,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":485,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":245,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":550,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":559,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":555,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":737,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":738,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors",{"_index":528,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":303,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":328,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":314,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":321,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":527,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":431,"title":{},"body":{"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:21",{"_index":434,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":221,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":266,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":358,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":683,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":271,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":359,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":392,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":370,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":372,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":386,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":379,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":390,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":376,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":388,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":382,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":608,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:100",{"_index":640,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:11",{"_index":618,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:119",{"_index":622,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:22",{"_index":647,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:29",{"_index":638,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:63",{"_index":633,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":697,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":574,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":745,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["stages",{"_index":1145,"title":{},"body":{"index.html":{}}}],["start",{"_index":322,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1155,"title":{},"body":{"index.html":{}}}],["started",{"_index":1102,"title":{"index.html":{},"license.html":{}},"body":{}}],["starttime",{"_index":320,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":924,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1367,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1426,"title":{},"body":{"license.html":{}}}],["statements",{"_index":722,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":361,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1404,"title":{},"body":{"license.html":{}}}],["status",{"_index":129,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1219,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":351,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1492,"title":{},"body":{"license.html":{}}}],["str.split",{"_index":474,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["string",{"_index":125,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["structure",{"_index":487,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["subject",{"_index":1350,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1363,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1428,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1325,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1323,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":665,"title":{},"body":{"injectables/SearchService.html":{}}}],["subsequently",{"_index":1347,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":817,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":177,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1267,"title":{},"body":{"license.html":{}}}],["summary",{"_index":534,"title":{},"body":{"controllers/PapersController.html":{}}}],["super(httpexception.createbody(data",{"_index":259,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1435,"title":{},"body":{"license.html":{}}}],["support",{"_index":1012,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":944,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1213,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1543,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1223,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":798,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":888,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1334,"title":{},"body":{"license.html":{}}}],["t",{"_index":416,"title":{},"body":{"classes/PageDto.html":{}}}],["table",{"_index":748,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":747,"title":{},"body":{"coverage.html":{}}}],["take",{"_index":651,"title":{},"body":{"injectables/SearchService.html":{}}}],["taken",{"_index":715,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1084,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":331,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":869,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":880,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["terminate",{"_index":1392,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":224,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1242,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1234,"title":{},"body":{"index.html":{}}}],["test",{"_index":1136,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1154,"title":{},"body":{"index.html":{}}}],["tested",{"_index":937,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":973,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1475,"title":{},"body":{"license.html":{}}}],["thereof",{"_index":1319,"title":{},"body":{"license.html":{}}}],["third",{"_index":830,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":398,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":428,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.getdescription(status",{"_index":283,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":281,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getpit(1",{"_index":675,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.gettype(status",{"_index":302,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://localhost:${this.es_port}/papers/_pit",{"_index":680,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.get(`http://localhost:${this.es_port}/_search",{"_index":659,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://localhost:${this.es_port}/papers/_pit?keep_alive=${alive}m",{"_index":677,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.limit",{"_index":600,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":396,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":405,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":401,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":352,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":340,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":400,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":406,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":404,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":338,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":429,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":601,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.page",{"_index":599,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.query",{"_index":598,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":566,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.searchservice.findbycontext(query.query).then",{"_index":539,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":545,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.statuscode",{"_index":607,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["those",{"_index":1372,"title":{},"body":{"license.html":{}}}],["through",{"_index":1230,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{}}}],["throwed",{"_index":1093,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1100,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":989,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["time",{"_index":323,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["timed",{"_index":131,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":157,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":1460,"title":{},"body":{"license.html":{}}}],["todo",{"_index":1117,"title":{},"body":{"index.html":{}}}],["too_many_requests",{"_index":1000,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":141,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["tort",{"_index":1476,"title":{},"body":{"license.html":{}}}],["total",{"_index":175,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{}}}],["tracking",{"_index":1336,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1441,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1408,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1440,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":965,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1144,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1370,"title":{},"body":{"license.html":{}}}],["transform",{"_index":690,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1291,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":694,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1292,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":628,"title":{},"body":{"injectables/SearchService.html":{}}}],["try",{"_index":658,"title":{},"body":{"injectables/SearchService.html":{}}}],["type",{"_index":121,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1296,"title":{},"body":{"license.html":{}}}],["unable",{"_index":992,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":960,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":889,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{}}}],["under",{"_index":870,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":799,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":885,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1007,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["union",{"_index":1257,"title":{},"body":{"license.html":{}}}],["unknown",{"_index":301,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["unless",{"_index":1430,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":982,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":980,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":943,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":219,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":837,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":804,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1020,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":862,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":941,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":866,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":349,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":240,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1162,"title":{},"body":{"index.html":{}}}],["use",{"_index":865,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":164,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":524,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":536,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":560,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":569,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":635,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1181,"title":{},"body":{"index.html":{}}}],["util",{"_index":395,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":517,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["uuid.'})@apiresponse({status",{"_index":513,"title":{},"body":{"controllers/PapersController.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":742,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1095,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":743,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1098,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":685,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":695,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":682,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":687,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":180,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":951,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":727,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":684,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1328,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":367,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":387,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":803,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":841,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":698,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":696,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":324,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":921,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":836,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":368,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":389,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":391,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1456,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1450,"title":{},"body":{"license.html":{}}}],["way",{"_index":1182,"title":{},"body":{"index.html":{}}}],["ways",{"_index":1148,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1417,"title":{},"body":{"license.html":{}}}],["whether",{"_index":1268,"title":{},"body":{"license.html":{}}}],["whole",{"_index":1312,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":710,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":800,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":919,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":932,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1297,"title":{},"body":{"license.html":{}}}],["works",{"_index":1305,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1354,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1345,"title":{},"body":{"license.html":{}}}],["written",{"_index":1329,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1097,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":380,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1534,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
- "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync, IsOptional } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n query\n \n \n size\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@ApiProperty({description: 'Query string', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:35\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNumber()@IsInt()@ApiProperty({description: 'Number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:24\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsInt, IsNotEmpty, IsNumber } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch response DTO\n */\n export class EsQueryDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNumber()\n @IsInt()\n @ApiProperty({\n description: 'Number of elements returned by Elasticsearch',\n example: 30\n })\n size: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @ApiProperty({\n description: 'Query string',\n example: false,\n })\n query: boolean;\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: '_shards', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:54\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'hits', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:82\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'timed_out', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:37\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'took', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:24\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'took',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'timed_out',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: '_shards',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'hits',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {\n\n },\n fields: {\n\n }\n }],\n }\n })\n hits: object;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: T[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:31\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n T[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : T[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data the page contains', isArray: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:22\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMeta\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:31\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data the page contains',\n isArray: true,\n })\n readonly data: T[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: [],\n })\n readonly meta: PageMeta;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: T[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:21\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Observable>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { MetadataScanner } from \"@nestjs/core\";\nimport { Observable, map } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { SearchResultDto } from \"../domain/dtos/search-result.dto\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable> {\n const request = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n\n return next.handle().pipe(\n map((res) => {\n let meta: PageMeta = {\n total: res.total.value,\n pagenum: !query?.page ? 1 : query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 10 : query.limit,\n };\n\n meta.hasNext = res.hits[meta.pagenum * meta.pagesize] ? true : false;\n meta.hasPrev = res.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n\n return new PageDto(data, meta);\n })\n );\n }\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Total search results\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Total search results\n */\n total: number;\n\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n \n Prefix\n \n \n papers\n \n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(query)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds papers by context based on the query.'})@ApiResponse({status: 200, description: 'Returns back acquired papers.', type: SearchResultDto})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:32\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Optional\n \n \n \n \n query\n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds paper by its UUID.'})@ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto})@Get(':uuid')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:58\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { Response } from \"express\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { LoggerInterceptor } from \"src/core/interceptors\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiOperation, ApiResponse } from \"@nestjs/swagger\";\nimport { SearchQueryDto } from \"src/core/domain/dtos\";\n\n/**\n * /papers/ route controller\n */\n@Controller('papers')\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiOperation({ summary: 'Finds papers by context based on the query.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired papers.',\n type: SearchResultDto,\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Query() query): object {\n return this.searchService.findByContext(query.query).then(\n (response: SearchResultDto) => {\n return response.data;\n },\n (error: SearchResultDto) => {\n throw new HttpException(error.data, error.statusCode);\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiOperation({ summary: 'Finds paper by its UUID.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired paper.',\n type: SearchResultDto,\n })\n @Get(':uuid')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response) => {\n return response.data;\n },\n (error) => {\n throw new HttpException(error.data, error.status);\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { ConfigModule } from \"@nestjs/config\";\nimport { PapersController } from \"src/application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { configuration } from \"../config\";\n\n/**\n * search module\n */\n@Module({\n imports: [\n HttpModule,\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:47\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:36\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:24\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.page = page;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: object)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n object\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:37\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:23\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n \n },\n })\n data: object;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: object) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n Async\n getPIT\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:11\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:119\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(query_str: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:63\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n query_str\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:29\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:100\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n 1\n \n\n \n , amount of time in minutes (defaults to 1)\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Point-In-Time ID\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:22\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let es_query = {\n query: {\n query_string: {\n query: 'id:' + uuid\n }\n },\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new SearchResultDto(504, {message: 'Timed Out'}));\n }\n\n resolve(new SearchResultDto(200, res.hits));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query_str \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(query_str: string): Promise {\n let es_query = {\n query: {\n query_string: {\n query: query_str,\n default_field: \"content\"\n }\n },\n }\n\n let pitID = this.getPIT(1);\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));\n } \n \n resolve(new SearchResultDto(200, res.hits));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1)\n * @returns Point-In-Time ID\n */\n async getPIT(alive: number = 1): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive}m`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.id);\n }));\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://localhost:${this.ES_PORT}/papers/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n class\n EsQueryDto\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 83 %\n (5/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (7/7)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n  ASC\n \n \n \n \n Value : ASC\n \n \n \n \n  DESC\n \n \n \n \n Value : DESC\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 7 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 4 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
+ "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.263,1,2.395]],["body/modules/AppModule.html",[0,2.213,1,4.61,2,2.666,3,2.584,4,3.416,5,3.416,6,4.078,7,0.024,8,4.078,9,2.994,10,2.127,11,1.85,12,0.337,13,0.271,14,0.271,15,3.021,16,0.407,17,3.332,18,3.557,19,0.703,20,5.238,21,4.015,22,1.134,23,5.83,24,3.021,25,4.015,26,3.416,27,3.25,28,4.015,29,3.941,30,4.015,31,3.557,32,4.015,33,3.416,34,4.015,35,4.015,36,3.416,37,3.416,38,4.015,39,1.626,40,1.203,41,3.941,42,3.416,43,3.416,44,3.021,45,3.021,46,4.015,47,4.015,48,4.015,49,4.015,50,4.015,51,2.686,52,3.416,53,4.015,54,2.727,55,4.456,56,5.238,57,2.295,58,0.337,59,0.149,60,0.017,61,0.017]],["title/modules/CommonModule.html",[0,1.263,6,2.189]],["body/modules/CommonModule.html",[0,2.075,2,2.033,3,2.859,6,4.408,7,0.023,9,3.313,10,2.495,11,2.17,12,0.396,13,0.318,14,0.318,18,3.935,19,0.637,22,1.33,33,4.93,58,0.396,59,0.175,60,0.019,61,0.019,62,4.007,63,4.007,64,4.007,65,4.45,66,4.45,67,4.71,68,3.935]],["title/classes/EnvironmentVariables.html",[59,0.131,69,2.654]],["body/classes/EnvironmentVariables.html",[7,0.024,12,0.368,13,0.296,14,0.296,16,0.445,19,0.562,40,1.659,51,2.019,58,0.368,59,0.226,60,0.018,61,0.018,69,4.169,70,1.668,71,3.297,72,4.169,73,5.54,74,4.382,75,3.728,76,4.382,77,3.149,78,1.775,79,2.976,80,2.719,81,4.382,82,2.976,83,3.728,84,2.976,85,5.54,86,2.976,87,2.976,88,4.382,89,3.728,90,4.804,91,1.393,92,3.728,93,1.668,94,4.382,95,2.719,96,3.728,97,3.728,98,5.54,99,4.382,100,4.382,101,3.728,102,4.382,103,4.382,104,2.719,105,4.382,106,3.297,107,3.297,108,2.019,109,4.382,110,1.775]],["title/interfaces/EqQueryString.html",[111,0.737,112,2.395]],["body/interfaces/EqQueryString.html",[7,0.023,12,0.369,13,0.297,14,0.297,16,0.446,58,0.369,60,0.018,61,0.018,111,0.917,112,3.767,113,1.778,114,2.51,115,2.825,116,3.736,117,2.166,118,2.024,119,2.024,120,0.527,121,0.956,122,1.508,123,4.57,124,4.57,125,1.996,126,0.73,127,2.737,128,5.436,129,5.064,130,2.269,131,4.339,132,3.767,133,5.548,134,4.72,135,2.394]],["title/classes/EsHitDto.html",[59,0.131,136,2.395]],["body/classes/EsHitDto.html",[7,0.023,12,0.311,13,0.25,14,0.25,16,0.607,19,0.568,39,2.526,40,1.108,58,0.311,59,0.185,60,0.016,61,0.016,70,1.408,77,2.761,78,1.498,79,4.062,117,2.447,120,0.444,121,0.965,122,1.412,126,0.672,136,3.369,137,3.419,138,2.783,139,4.361,140,5.464,141,3.733,142,2.3,143,3.711,144,4.501,145,4.501,146,1.576,147,2.267,148,4.22,149,5.981,150,5.089,151,2.771,152,4.961,153,1.169,154,3.698,155,6.422,156,3.473,157,3.698,158,4.062,159,3.369,160,2.447,161,3.698,162,5.981,163,5.981,164,3.698,165,2.95,166,1.596,167,2.295,168,1.96,169,2.511,170,2.114,171,2.628,172,2.114,173,3.146,174,1.498,175,1.498,176,1.596,177,1.704,178,3.698]],["title/interfaces/EsPit.html",[111,0.737,179,1.74]],["body/interfaces/EsPit.html",[7,0.023,12,0.414,13,0.333,14,0.333,16,0.5,58,0.414,60,0.019,61,0.019,111,1.03,113,1.996,114,2.817,117,2.431,120,0.592,121,1.027,125,1.954,126,0.715,177,3.189,179,2.939,180,4.193,181,3.36,182,3.709,183,3.661,184,1.662,185,5.006,186,5.958]],["title/interfaces/EsQuery.html",[111,0.737,187,2.395]],["body/interfaces/EsQuery.html",[7,0.023,12,0.411,13,0.331,14,0.331,16,0.497,19,0.497,58,0.411,60,0.019,61,0.019,111,1.022,112,4.507,113,1.981,114,2.797,115,2.585,117,2.926,118,2.733,119,2.733,120,0.587,121,1.022,125,1.675,126,0.587,130,2.001,184,2.001,187,4.028,188,4.163,189,4.507,190,5.932,191,5.047,192,5.047,193,3.036,194,4.893]],["title/classes/EsQueryDto.html",[59,0.131,195,1.74]],["body/classes/EsQueryDto.html",[7,0.024,12,0.494,13,0.211,14,0.211,16,0.619,19,0.565,39,1.265,40,0.936,58,0.263,59,0.164,60,0.014,61,0.014,70,1.189,77,2.898,78,1.265,115,2.673,120,0.375,121,0.883,122,1.512,126,0.705,130,1.878,137,3.583,142,2.364,145,4.19,146,1.938,147,2.379,151,2.848,153,1.274,160,3.092,165,3.008,166,1.349,167,3.179,168,2.714,170,2.525,171,1.656,174,1.265,175,2.075,176,1.349,177,2.035,179,2.527,181,3.158,183,2.525,184,2.159,187,3.479,195,2.179,196,2.351,197,5.123,198,4.737,199,1.95,200,4.417,201,2.659,202,3.125,203,4.417,204,2.999,205,3.125,206,5.568,207,3.125,208,4.417,209,2.999,210,3.125,211,4.737,212,4.19,213,3.781,214,4.417,215,3.125,216,3.125,217,4.417,218,3.758,219,4.359,220,3.758,221,1.939,222,3.125,223,2.74,224,3.125,225,2.122,226,2.351,227,2.351,228,3.125]],["title/classes/EsResponseDto.html",[59,0.131,229,1.869]],["body/classes/EsResponseDto.html",[7,0.023,11,2.007,12,0.257,13,0.207,14,0.207,16,0.615,19,0.514,39,1.24,40,0.917,51,2.007,58,0.257,59,0.162,60,0.018,61,0.014,70,1.166,77,2.722,78,1.24,104,2.702,106,3.277,119,2.007,120,0.368,121,0.873,122,1.028,124,2.08,125,1.229,126,0.7,130,1.861,137,3.463,142,2.17,143,1.9,144,2.305,146,1.925,147,2.361,151,2.836,153,1.218,160,2.148,165,2.988,166,1.322,168,2.685,171,2.685,172,2.489,174,1.24,175,2.052,176,1.322,177,2.543,181,2.722,184,1.469,201,3.705,213,2.957,218,3.705,219,4.311,220,2.606,229,2.307,230,2.305,231,1.815,232,5.154,233,4.232,234,4.695,235,5.154,236,5.419,237,3.063,238,4.153,239,4.355,240,3.759,241,3.142,242,3.441,243,3.063,244,3.705,245,3.063,246,4.355,247,3.063,248,2.489,249,3.063,250,3.063,251,2.007,252,3.705,253,4.355,254,4.355,255,3.063,256,2.957,257,3.063,258,4.355,259,4.355,260,4.355,261,3.063,262,2.702,263,2.307,264,3.063,265,3.063,266,2.606,267,1.411,268,2.305,269,3.063,270,3.063,271,2.606,272,4.355,273,3.063,274,2.606,275,3.063,276,3.063]],["title/interfaces/EsResponseHits.html",[111,0.737,242,2.395]],["body/interfaces/EsResponseHits.html",[7,0.023,12,0.384,13,0.309,14,0.309,16,0.464,19,0.464,58,0.384,60,0.022,61,0.018,111,0.955,113,1.851,114,2.613,117,2.806,120,0.549,121,0.98,122,1.343,126,0.744,130,2.186,136,4.401,142,2.037,146,1.968,150,4.84,184,2.249,211,4.84,231,2.218,233,4.616,242,3.863,262,4.021,271,5.514,277,3.889,278,5.689,279,5.689,280,4.571,281,4.571]],["title/controllers/HealthController.html",[282,2.189,283,2.395]],["body/controllers/HealthController.html",[7,0.024,12,0.494,13,0.276,14,0.276,16,0.414,19,0.537,22,1.152,57,2.332,58,0.343,59,0.231,60,0.017,61,0.017,91,1.682,93,2.015,110,1.652,120,0.49,125,1.659,147,1.652,153,0.852,199,1.553,204,4.222,231,2.104,251,3.041,282,3.857,283,3.594,284,3.471,285,3.471,286,5.717,287,2.439,288,5.616,289,4.08,290,4.08,291,4.503,292,5.293,293,5.293,294,2.284,295,5.293,296,3.177,297,5.293,298,5.293,299,5.293,300,3.07,301,4.08,302,1.652,303,2.332,304,2.162,305,3.471,306,4.503]],["title/modules/HealthModule.html",[0,1.263,307,2.654]],["body/modules/HealthModule.html",[0,2.185,2,2.214,7,0.023,12,0.431,13,0.347,14,0.347,18,3.483,19,0.684,22,1.448,57,3.488,58,0.431,59,0.191,60,0.019,61,0.019,283,4.424,300,3.86,307,4.592,308,5.129,309,5.192,310,2.932,311,6.102,312,5.129]],["title/interfaces/HttpResponse.html",[111,0.737,313,2.189]],["body/interfaces/HttpResponse.html",[7,0.023,12,0.348,13,0.28,14,0.28,16,0.684,58,0.348,60,0.017,61,0.017,79,4.727,111,1.116,113,1.676,120,0.497,121,0.921,125,1.949,126,0.841,135,2.859,146,1.88,158,3.628,213,3.628,231,2.472,251,3.148,296,2.918,313,3.314,314,3.521,315,3.521,316,4.139,317,4.111,318,5.342,319,5.342,320,6.25,321,4.545,322,5.342,323,5.342,324,4.545,325,3.314,326,5.342]],["title/classes/HttpResponseException.html",[59,0.131,327,2.654]],["body/classes/HttpResponseException.html",[0,2.035,7,0.023,12,0.383,13,0.308,14,0.308,16,0.577,19,0.577,22,1.288,58,0.383,59,0.17,60,0.018,61,0.018,70,1.736,91,1.449,122,1.077,126,0.547,135,2.452,153,0.953,199,1.736,231,2.433,296,3.435,302,2.301,313,4.018,327,4.275,328,4.833,329,3.88,330,3.247,331,4.873,332,4.833,333,4.833,334,5.264,335,4.833,336,4.561,337,5.681,338,1.538,339,1.449,340,3.097,341,4.561,342,4.561,343,5.681]],["title/modules/HttpResponseModule.html",[0,1.263,65,2.189]],["body/modules/HttpResponseModule.html",[0,2.137,2,2.132,3,2.943,7,0.023,9,3.411,10,2.618,11,2.277,12,0.415,13,0.334,14,0.334,19,0.606,22,1.395,54,4.052,58,0.415,59,0.184,60,0.019,61,0.019,65,4.347,68,4.052,344,4.203,345,4.203,346,4.203,347,4.477,348,4.941,349,4.941,350,3.718]],["title/injectables/HttpResponseService.html",[347,2.189,351,1.263]],["body/injectables/HttpResponseService.html",[7,0.024,12,0.255,13,0.205,14,0.205,16,0.703,19,0.512,22,0.858,40,0.911,44,3.797,45,3.797,58,0.255,59,0.113,60,0.014,61,0.014,91,1.976,93,2.42,110,2.227,120,0.365,122,1.298,125,1.893,126,0.777,127,1.5,135,2.743,146,2.131,153,1.149,223,1.886,231,2.277,251,3.22,267,1.401,287,1.996,296,3.308,302,1.754,304,3.428,313,3.412,317,4.16,338,1.855,339,1.748,340,2.064,347,2.687,351,1.551,352,1.738,353,4.946,354,2.586,355,4.293,356,4.331,357,4.331,358,4.331,359,3.04,360,3.04,361,4.331,362,4.331,363,5.5,364,4.331,365,4.331,366,3.04,367,6.043,368,4.331,369,3.04,370,4.331,371,3.04,372,3.04,373,2.586,374,4.293,375,4.293,376,2.586,377,2.586,378,3.04,379,3.04,380,3.04,381,3.04,382,3.04]],["title/injectables/LoggerInterceptor.html",[31,2.395,351,1.263]],["body/injectables/LoggerInterceptor.html",[7,0.024,12,0.263,13,0.211,14,0.211,16,0.52,19,0.597,22,0.884,31,3.003,40,1.978,58,0.263,59,0.116,60,0.014,61,0.014,91,1.771,93,2.121,108,2.037,110,1.791,120,0.376,121,0.762,122,1.044,126,0.615,127,1.544,146,1.629,153,1.071,183,2.528,231,1.836,241,2.529,267,1.442,287,2.037,294,1.908,296,3.009,302,1.791,304,3.233,330,1.789,338,1.491,339,1.405,350,2.355,351,1.584,352,1.789,383,2.663,384,5.191,385,5.191,386,2.931,387,3.858,388,4.193,389,4.422,390,3.327,391,4.259,392,3.233,393,4.193,394,3.13,395,4.741,396,3.394,397,4.422,398,3.858,399,4.422,400,6.513,401,3.13,402,4.422,403,2.125,404,3.762,405,2.931,406,4.422,407,3.13,408,3.327,409,1.942,410,4.422,411,3.13,412,2.355,413,5.127,414,5.127,415,4.422,416,3.13,417,4.422,418,4.422,419,3.13,420,3.13,421,4.422,422,3.13,423,3.13,424,3.13,425,3.13,426,2.125,427,3.13,428,4.422,429,1.942,430,3.762,431,3.13,432,3.13,433,3.13]],["title/modules/LoggerModule.html",[0,1.263,66,2.189]],["body/modules/LoggerModule.html",[0,2.137,2,2.132,3,2.943,7,0.023,9,3.411,10,2.618,11,2.277,12,0.415,13,0.334,14,0.334,19,0.606,22,1.395,54,4.052,58,0.415,59,0.184,60,0.019,61,0.019,66,4.347,68,4.052,125,1.395,350,3.718,405,4.125,434,4.203,435,4.203,436,4.203,437,4.941]],["title/injectables/LoggerService.html",[351,1.263,405,2.016]],["body/injectables/LoggerService.html",[7,0.024,12,0.199,13,0.16,14,0.16,16,0.6,19,0.365,22,0.668,51,1.09,58,0.199,59,0.088,60,0.011,61,0.011,91,2.089,93,2.307,108,1.659,110,1.765,120,0.284,121,0.62,122,1.459,125,1.99,126,0.742,153,1.291,199,1.659,256,1.606,287,1.659,294,2.86,302,1.458,304,3.211,317,4.431,330,1.352,338,1.995,339,1.88,351,1.289,352,1.352,384,5.259,386,3.156,387,4.902,396,3.376,403,3.559,405,2.996,438,2.012,439,3.6,440,4.358,441,3.6,442,3.758,443,4.145,444,2.445,445,3.6,446,4.871,447,3.6,448,3.6,449,3.6,450,3.6,451,2.365,452,3.6,453,3.6,454,7.035,455,2.365,456,6.372,457,3.6,458,2.365,459,3.6,460,3.6,461,2.365,462,3.6,463,3.6,464,3.6,465,2.365,466,3.6,467,2.365,468,3.6,469,2.365,470,3.6,471,2.365,472,3.6,473,3.6,474,2.365,475,2.365,476,2.365,477,2.365,478,2.365,479,2.365,480,2.365,481,2.365,482,2.365,483,2.365,484,2.365,485,2.365,486,2.365,487,2.365,488,2.365]],["title/classes/PageDto.html",[59,0.131,489,2.189]],["body/classes/PageDto.html",[7,0.024,12,0.321,13,0.258,14,0.258,16,0.578,19,0.615,39,1.549,40,1.146,51,2.338,58,0.321,59,0.189,60,0.016,61,0.016,70,1.456,78,1.549,91,1.612,118,3.164,119,2.793,120,0.459,121,0.981,122,0.903,126,0.683,135,2.987,147,2.054,151,1.651,153,1.189,156,4.023,165,2.808,166,1.651,167,3.761,173,3.254,174,1.549,175,1.549,176,1.651,184,1.711,199,1.456,209,3.445,238,3.817,335,4.316,338,1.92,339,1.215,386,3.706,489,3.148,490,2.878,491,5.073,492,4.617,493,3.706,494,5.073,495,3.148,496,2.338,497,3.825,498,3.825,499,5.073,500,3.254,501,3.825,502,3.825,503,3.254,504,3.825]],["title/injectables/PageInterceptor.html",[351,1.263,505,2.189]],["body/injectables/PageInterceptor.html",[7,0.024,12,0.332,13,0.11,14,0.11,16,0.346,19,0.615,22,0.459,40,1.307,51,1.57,58,0.137,59,0.1,60,0.009,61,0.009,80,1.66,91,1.255,93,1.786,104,3.077,108,2.01,110,2.173,111,0.559,115,1.083,118,2.285,119,1.233,120,0.195,121,0.461,122,0.932,123,1.105,125,1.4,126,0.563,127,1.32,130,1.149,131,3.186,135,1.883,142,0.958,143,1.009,146,1.576,153,0.98,160,1.947,177,2.473,179,1.681,181,2.904,183,2.257,184,1.149,185,2.013,189,1.105,195,1.32,199,1.018,204,2.314,209,2.314,221,1.009,223,1.66,225,1.817,227,2.564,229,0.862,241,1.681,248,1.529,262,1.009,263,3.063,267,2.162,287,1.233,294,1.154,303,0.93,304,2.628,310,0.93,330,1.529,338,1.673,339,1.255,340,1.105,351,0.958,352,0.93,386,2.494,388,2.971,390,2.013,391,2.681,392,2.092,393,2.971,396,1.417,398,1.224,408,2.971,409,1.009,426,1.105,429,1.66,442,2.682,489,1.009,492,2.314,493,1.529,496,1.233,505,1.66,506,1.224,507,2.276,508,2.276,509,2.564,510,3.368,511,3.644,512,2.675,513,2.675,514,1.384,515,3.531,516,2.446,517,1.627,518,2.276,519,1.627,520,2.276,521,2.899,522,2.276,523,3.186,524,2.276,525,2.276,526,1.817,527,2.276,528,2.276,529,3.992,530,2.681,531,1.627,532,2.276,533,2.013,534,3.359,535,3.359,536,2.276,537,2.276,538,1.627,539,2.276,540,2.092,541,2.013,542,1.627,543,2.013,544,1.66,545,1.817,546,1.627,547,2.276,548,2.013,549,3.359,550,1.224,551,1.224,552,1.224,553,1.384,554,1.384,555,1.009,556,1.529,557,1.384,558,1.417,559,2.276,560,1.105,561,1.417,562,1.105,563,1.384,564,1.224,565,1.948,566,1.384,567,1.224,568,1.384,569,1.66,570,1.384,571,1.384,572,1.384,573,3.359,574,3.359,575,2.013,576,1.384,577,1.384,578,1.384,579,1.384,580,1.384,581,1.384,582,1.384,583,1.384,584,1.384,585,1.384,586,1.384,587,1.384,588,1.384,589,1.384,590,1.384,591,1.384,592,2.276,593,1.384,594,1.384,595,1.224,596,2.276,597,3.712,598,3.712,599,3.359,600,3.712,601,1.66,602,2.276,603,2.899,604,2.899,605,1.384,606,3.359,607,4.219,608,2.276,609,1.384,610,1.224,611,1.384,612,1.384,613,2.276,614,1.224,615,1.224,616,1.224,617,1.384,618,1.384,619,3.712,620,1.384,621,1.384,622,1.384,623,1.384,624,1.384,625,1.384,626,2.276,627,1.384,628,1.384,629,1.384,630,1.384,631,1.384,632,2.013,633,2.013,634,2.013,635,1.384,636,2.013,637,2.013,638,2.013,639,2.013,640,1.384,641,1.384,642,2.013,643,2.276,644,1.384,645,1.105,646,1.224,647,1.384,648,1.384,649,2.276,650,1.384,651,1.384,652,2.276,653,1.384,654,1.384,655,1.384,656,1.224,657,1.384,658,1.384,659,1.384,660,1.384,661,1.384,662,1.224,663,1.384,664,1.384,665,2.276,666,2.276,667,1.384,668,1.384]],["title/interfaces/PageMeta.html",[111,0.737,493,2.016]],["body/interfaces/PageMeta.html",[7,0.023,12,0.339,13,0.273,14,0.273,16,0.41,19,0.41,58,0.339,60,0.02,61,0.017,111,0.844,113,1.636,117,2.594,118,3.237,119,2.423,120,0.485,121,0.906,126,0.79,130,1.773,146,2.244,212,4.66,248,3.763,262,4.084,392,2.786,493,3.006,565,3.963,567,3.04,610,4.66,614,4.66,615,4.66,616,4.66,669,3.437,670,3.437,671,6.193,672,4.66,673,6.193,674,4.474,675,4.039]],["title/classes/PaperDto.html",[59,0.131,156,2.189]],["body/classes/PaperDto.html",[7,0.023,12,0.22,13,0.177,14,0.177,16,0.619,19,0.52,39,2.523,40,0.784,58,0.22,59,0.145,60,0.012,61,0.012,70,0.996,77,1.291,78,1.06,117,2.285,120,0.314,121,0.798,125,1.875,126,0.713,130,0.883,139,2.638,140,3.305,141,2.923,142,1.391,147,2.405,151,2.866,153,1.241,156,2.41,159,4.793,160,1.916,165,3.009,166,1.13,167,2.874,168,1.387,169,1.777,170,1.496,171,3.146,172,3.13,174,1.06,175,1.06,176,1.13,177,2.811,191,4.361,193,1.624,195,1.291,324,4.361,444,2.638,500,2.227,540,2.716,555,1.624,558,1.387,560,1.777,676,1.97,677,5.189,678,4.59,679,5.189,680,4.59,681,5.189,682,3.885,683,2.617,684,3.857,685,3.885,686,5.126,687,3.885,688,2.617,689,5.126,690,5.126,691,3.885,692,3.885,693,3.885,694,3.885,695,3.885,696,2.617,697,5.126,698,4.361,699,3.857,700,3.305,701,5.126,702,5.126,703,5.126,704,3.885,705,3.305,706,3.885,707,3.305,708,3.305,709,3.885,710,3.885,711,3.885,712,3.885,713,3.885,714,3.885,715,3.885,716,3.885,717,2.617,718,5.126,719,5.126,720,5.126,721,5.126,722,2.617,723,3.885,724,3.305,725,3.885,726,3.885,727,3.885,728,2.617,729,3.885,730,2.617,731,2.617,732,2.617,733,2.617,734,2.617,735,2.617,736,2.617,737,2.617,738,2.617,739,2.617]],["title/controllers/PapersController.html",[282,2.189,740,2.395]],["body/controllers/PapersController.html",[7,0.024,12,0.27,13,0.217,14,0.217,16,0.602,19,0.624,22,0.906,57,1.835,58,0.27,59,0.119,60,0.014,61,0.018,91,1.885,93,2.453,107,3.387,108,2.074,110,2.282,115,2.403,120,0.385,122,1.063,125,1.468,126,0.738,147,1.823,153,0.94,159,3.826,166,1.385,184,2.074,231,2.309,241,2.779,251,2.074,274,5.573,282,3.225,285,2.731,287,2.074,294,1.942,303,1.835,334,2.731,338,1.518,339,1.43,392,1.7,395,4.794,396,2.385,505,1.991,516,2.564,556,3.221,561,3.144,562,2.179,678,3.387,740,3.056,741,2.731,742,4.501,743,4.501,744,4.501,745,3.209,746,4.501,747,4.794,748,3.387,749,3.209,750,4.794,751,4.794,752,4.794,753,3.209,754,3.209,755,4.501,756,3.387,757,3.209,758,3.209,759,3.209,760,3.209,761,4.501,762,4.794,763,3.829,764,3.209,765,4.501,766,3.209,767,3.209,768,2.731,769,3.209,770,2.731,771,3.209,772,1.835,773,5.198,774,5.198,775,3.209,776,3.209,777,3.209,778,4.501,779,4.501,780,3.209,781,3.209,782,4.501,783,4.501,784,3.209,785,3.209,786,3.209,787,3.209,788,3.209]],["title/classes/PrevSearch.html",[59,0.131,510,2.395]],["body/classes/PrevSearch.html",[7,0.024,12,0.302,13,0.119,14,0.119,19,0.627,22,0.496,40,1.361,51,1.656,58,0.148,59,0.106,60,0.009,61,0.009,70,0.669,80,1.09,91,1.314,93,1.852,104,3.18,108,2.094,110,2.234,111,0.367,115,1.154,118,2.46,119,0.81,120,0.211,121,0.491,122,0.415,123,1.193,125,1.283,126,0.545,130,0.961,131,2.441,135,1.961,142,0.629,143,1.09,146,1.629,153,1.071,160,2.039,177,2.094,179,2.4,181,2.796,183,1.629,184,0.961,185,1.322,189,1.193,195,1.405,199,1.368,204,1.935,209,1.935,221,1.09,223,1.768,225,1.935,227,2.704,229,0.931,241,1.405,248,2.054,262,1.09,263,3.072,267,1.656,287,1.313,294,1.23,303,1.004,304,1.904,310,1.004,330,2.054,338,1.394,339,0.558,340,1.193,351,1.02,386,2.054,388,1.322,390,1.322,391,1.935,392,1.51,393,2.144,396,0.931,398,1.322,403,1.935,408,2.704,409,1.09,426,1.193,429,1.09,442,3.24,489,1.09,492,2.441,493,1.629,496,0.81,505,1.09,506,1.322,507,1.495,508,1.495,509,1.322,510,3.086,511,2.441,515,2.704,516,1.773,518,1.495,520,1.495,521,2.424,522,1.495,523,2.441,524,1.495,525,1.495,526,1.193,527,1.495,528,1.495,529,3.058,530,1.935,532,1.495,533,1.322,534,2.424,535,2.424,536,1.495,537,1.495,539,1.495,540,1.904,541,1.322,543,1.322,544,1.09,545,1.193,547,1.495,548,1.322,549,3.517,550,1.322,551,1.322,552,1.322,553,1.495,554,1.495,555,1.09,556,1.629,557,1.495,558,1.51,559,2.424,560,1.193,561,1.51,562,1.193,563,1.495,564,1.322,565,2.054,566,1.495,567,1.322,568,1.495,569,2.23,570,1.495,571,1.495,572,1.495,573,3.517,574,3.517,575,3.661,576,3.058,577,2.424,578,1.495,579,1.495,580,1.495,581,1.495,582,1.495,583,3.517,584,3.517,585,1.495,586,1.495,587,1.495,588,1.495,589,1.495,590,1.495,591,1.495,592,2.424,593,1.495,594,1.495,595,1.322,596,2.424,597,3.866,598,3.866,599,3.517,600,3.866,601,1.768,602,2.424,603,3.058,604,3.058,605,1.495,606,3.517,607,4.36,608,2.424,609,1.495,610,1.322,611,1.495,612,1.495,613,2.424,614,1.322,615,1.322,616,1.322,617,1.495,618,1.495,619,3.866,620,1.495,621,1.495,622,1.495,623,1.495,624,1.495,625,1.495,626,2.424,627,1.495,628,1.495,629,1.495,630,1.495,631,1.495,632,2.144,633,2.144,634,2.144,635,1.495,636,2.144,637,2.144,638,2.144,639,2.144,640,1.495,641,1.495,642,2.144,643,2.424,644,1.495,645,1.193,646,1.322,647,1.495,648,1.495,649,2.424,650,1.495,651,1.495,652,2.424,653,1.495,654,1.495,655,1.495,656,1.322,657,1.495,658,1.495,659,1.495,660,1.495,661,1.495,662,1.322,663,1.495,664,1.495,665,2.424,666,2.424,667,1.495,668,1.495,789,2.849,790,1.757,791,1.757,792,1.757,793,1.757,794,1.757,795,1.757,796,1.757]],["title/classes/RequestDto.html",[59,0.131,556,2.016]],["body/classes/RequestDto.html",[7,0.024,12,0.315,13,0.253,14,0.253,16,0.572,19,0.61,39,1.517,40,1.122,58,0.315,59,0.186,60,0.016,61,0.016,70,1.426,77,2.468,78,1.517,91,1.59,115,2.857,120,0.45,121,0.971,122,1.33,126,0.676,130,1.264,142,2.153,147,2.026,148,3.187,151,2.595,153,1.177,160,2.468,165,2.779,166,1.617,168,2.651,169,2.544,170,2.142,171,2.651,172,2.142,174,1.517,175,1.517,176,1.617,184,2.307,193,2.325,195,3.18,199,1.426,226,2.819,238,3.765,241,2.468,338,2.22,339,1.191,495,3.105,496,2.306,555,2.325,556,2.86,558,3.415,560,2.544,797,2.819,798,5.095,799,4.257,800,5.004,801,3.747,802,3.747,803,3.747]],["title/guards/RolesGuard.html",[804,2.395,805,2.654]],["body/guards/RolesGuard.html",[7,0.024,12,0.325,13,0.261,14,0.261,16,0.58,19,0.618,22,1.09,24,2.906,40,1.529,51,2.635,58,0.325,59,0.144,60,0.016,61,0.016,91,1.622,93,2.316,110,2.067,120,0.464,122,1.205,126,0.613,147,1.564,153,1.067,158,3.467,174,2.067,199,1.47,248,2.918,287,2.352,291,4.343,302,2.067,303,2.207,330,2.207,338,1.722,339,1.622,351,1.828,377,3.285,391,4.132,396,3.224,426,2.622,804,4.571,805,3.842,806,3.861,807,3.285,808,3.884,809,6.085,810,3.861,811,6.812,812,3.861,813,5.105,814,5.727,815,5.105,816,3.861,817,4.762,818,4.343,819,3.467,820,4.343,821,2.906,822,5.105,823,3.861,824,3.861,825,3.861,826,3.861,827,3.861]],["title/interfaces/SearchInfo.html",[111,0.737,569,2.189]],["body/interfaces/SearchInfo.html",[7,0.023,12,0.389,13,0.312,14,0.312,16,0.469,19,0.469,58,0.389,60,0.018,61,0.018,111,0.966,113,1.872,117,2.826,119,2.64,120,0.555,121,0.987,126,0.688,130,2.299,142,2.052,179,3.21,181,3.362,182,4.311,193,2.869,221,2.869,223,2.869,240,3.555,392,3.036,569,3.555,575,5.129,672,4.311,674,4.874,828,3.933,829,3.933,830,5.729,831,4.874,832,5.729]],["title/modules/SearchModule.html",[0,1.263,8,2.189]],["body/modules/SearchModule.html",[0,2.336,2,2.009,3,2.838,7,0.023,8,4.294,9,3.289,10,2.467,11,2.145,12,0.391,13,0.315,14,0.315,16,0.472,18,3.161,19,0.662,22,1.314,54,3.907,57,3.289,58,0.391,59,0.173,60,0.018,61,0.018,68,3.907,130,1.941,309,4.895,310,2.661,516,3.533,740,4.241,770,3.961,833,3.961,834,3.961,835,3.961,836,4.655,837,4.655]],["title/classes/SearchQueryDto.html",[59,0.131,558,1.869]],["body/classes/SearchQueryDto.html",[7,0.023,12,0.271,13,0.218,14,0.218,16,0.604,19,0.459,39,1.308,40,0.967,58,0.271,59,0.168,60,0.014,61,0.014,70,1.229,77,2.573,78,1.308,91,1.795,115,2.721,118,3.124,120,0.388,121,0.899,122,0.763,125,1.914,126,0.714,129,3.402,130,1.525,142,1.619,146,2.209,147,2.288,151,2.786,153,1.242,165,2.934,166,1.394,168,2.764,169,2.193,170,2.982,171,2.764,172,2.982,174,1.308,175,2.112,176,1.394,184,1.525,199,1.229,212,4.252,225,3.07,226,2.431,231,1.619,268,3.402,338,1.759,339,1.026,495,2.805,496,2.083,558,2.395,565,3.84,601,4.168,772,3.523,799,3.846,838,2.431,839,4.521,840,3.23,841,3.23,842,5.65,843,5.65,844,3.23,845,3.846,846,2.748,847,3.23,848,3.402,849,3.23,850,4.521,851,4.521,852,3.23,853,3.402,854,2.748,855,3.23,856,3.23,857,3.23]],["title/classes/SearchResultDto.html",[59,0.131,561,1.869]],["body/classes/SearchResultDto.html",[7,0.023,12,0.32,13,0.257,14,0.257,16,0.576,19,0.576,39,1.54,40,1.139,58,0.32,59,0.188,60,0.016,61,0.016,70,1.448,77,1.876,78,1.54,91,1.606,120,0.457,121,0.978,122,0.898,126,0.681,135,3.022,142,2.166,146,2.001,147,2.047,151,2.61,153,1.186,160,1.876,165,2.8,166,1.641,167,3.136,168,3.008,170,2.889,171,3.008,172,2.174,174,1.54,175,2.299,176,1.641,184,1.704,193,2.36,199,1.448,229,3.43,231,1.81,251,2.901,325,4.099,338,1.914,339,1.209,430,4.829,495,3.136,496,2.329,503,3.236,561,2.678,750,4.3,752,5.146,772,3.458,846,3.236,858,2.862,859,5.054,860,5.054,861,3.803,862,3.803,863,3.803,864,3.803]],["title/injectables/SearchService.html",[351,1.263,516,1.74]],["body/injectables/SearchService.html",[7,0.024,11,1.711,12,0.207,13,0.166,14,0.166,16,0.25,19,0.608,22,0.696,58,0.207,59,0.092,60,0.012,61,0.012,91,1.42,93,1.893,107,2.794,108,2.584,110,1.504,111,0.776,114,1.408,115,2.483,120,0.296,121,0.64,122,1.055,123,2.521,125,1.507,126,0.641,127,1.215,130,1.252,132,1.673,135,1.602,137,1.408,142,1.781,146,1.18,153,1.039,159,2.521,175,1.504,177,2.292,179,1.215,181,1.215,184,1.8,189,3.377,195,2.955,199,0.938,221,1.529,229,2.367,233,3.377,244,3.159,251,1.135,252,3.159,263,1.305,267,1.135,287,1.711,294,2.585,302,2.014,303,1.408,304,2.367,310,1.408,317,2.304,338,1.507,339,1.42,351,1.33,352,1.408,386,2.843,396,2.367,409,1.529,495,2.304,509,3.362,511,3.809,514,2.096,515,4.613,516,1.831,523,3.377,530,1.673,540,2.635,541,2.794,543,2.794,544,2.304,545,2.521,551,1.854,552,1.854,555,1.529,561,1.305,562,1.673,564,1.854,601,2.304,632,2.794,633,2.794,634,2.794,636,2.794,637,2.794,638,2.794,639,2.794,642,2.794,645,2.521,646,2.794,747,4.231,762,4.231,768,3.159,772,1.408,798,3.743,853,2.794,865,2.096,866,3.713,867,3.713,868,3.713,869,2.464,870,3.713,871,3.713,872,3.713,873,2.464,874,3.713,875,2.521,876,3.713,877,2.464,878,2.464,879,4.468,880,2.464,881,2.096,882,2.096,883,4.468,884,3.713,885,3.713,886,3.713,887,3.713,888,4.974,889,3.713,890,3.713,891,3.713,892,3.713,893,2.464,894,2.464,895,2.464,896,1.673,897,2.464,898,3.713,899,2.464,900,2.464,901,2.464]],["title/interfaces/ValidationPipeOptions.html",[111,0.737,902,2.654]],["body/interfaces/ValidationPipeOptions.html",[7,0.023,12,0.379,13,0.305,14,0.305,16,0.458,19,0.458,58,0.379,59,0.168,60,0.018,61,0.018,72,4.245,78,1.826,95,3.5,101,3.837,111,0.942,113,1.826,120,0.541,121,0.972,122,1.599,126,0.739,248,3.873,294,2.434,331,4.245,333,4.799,902,4.245,903,3.837,904,3.831,905,5.641,906,5.641,907,6.156,908,6.451,909,6.451,910,6.451,911,5.641,912,5.641,913,5.641,914,5.641,915,5.641]],["title/interfaces/VirtualBankOptions.html",[111,0.737,916,2.189]],["body/interfaces/VirtualBankOptions.html",[7,0.024,12,0.334,13,0.269,14,0.269,16,0.403,19,0.403,27,3.6,40,1.191,58,0.488,60,0.017,61,0.017,72,2.992,79,4.451,80,3.229,82,4.451,83,4.427,84,4.451,86,4.451,87,4.451,93,1.513,95,2.467,111,0.831,113,1.61,120,0.477,121,0.897,126,0.696,146,2.177,153,1.087,916,4.066,917,2.7,918,5.204,919,4.366,920,4.427,921,5.204,922,3.916,923,5.204,924,5.204,925,6.155,926,5.204,927,5.204,928,5.204,929,5.204,930,5.204,931,3.916,932,3.976,933,4.427,934,3.382,935,3.976,936,3.382,937,3.382,938,3.382]],["title/coverage.html",[939,4.087]],["body/coverage.html",[7,0.023,14,0.199,15,2.217,27,1.828,29,2.217,31,2.001,41,2.217,59,0.245,60,0.014,61,0.014,69,2.217,71,3.187,95,3.912,106,2.217,108,1.358,111,1.341,112,2.001,114,3.099,115,1.193,116,2.507,126,0.354,136,2.001,137,3.419,138,3.187,156,1.828,176,2.721,179,1.453,180,2.507,187,2.001,188,2.507,195,1.453,196,3.187,229,1.561,230,3.187,231,1.055,242,2.001,277,2.507,282,2.628,283,2.001,284,2.507,313,1.828,314,2.507,315,2.507,327,2.217,328,2.507,329,2.507,347,1.828,351,2.057,353,2.507,354,2.507,383,2.507,405,1.684,438,2.507,442,1.684,489,1.828,490,3.187,493,1.684,505,1.828,506,3.187,510,2.001,516,1.453,556,1.684,558,1.561,561,1.561,569,1.828,669,2.507,670,2.507,676,3.187,740,2.001,741,2.507,772,3.099,797,3.187,804,2.001,805,2.217,807,2.507,808,2.001,821,2.217,828,2.507,829,2.507,838,3.187,858,3.187,865,2.507,902,2.217,903,2.507,916,1.828,917,2.876,931,2.217,939,2.507,940,2.217,941,2.947,942,2.947,943,7.285,944,4.959,945,5.422,946,3.604,947,6.778,948,2.507,949,7.054,950,3.604,951,6.305,952,4.236,953,4.236,954,4.959,955,2.947,956,2.947,957,2.947,958,2.947,959,2.507,960,4.887,961,2.507,962,2.507,963,2.507,964,2.507,965,2.507,966,2.947,967,4.236,968,2.947,969,2.507,970,2.507,971,2.947,972,2.507]],["title/dependencies.html",[3,2.091,973,2.22]],["body/dependencies.html",[3,2.286,7,0.023,22,1.308,24,3.487,26,3.942,36,3.942,37,3.942,52,3.942,59,0.213,60,0.018,61,0.018,75,3.942,78,1.877,119,2.135,166,2,300,3.487,310,2.649,409,2.875,412,3.487,511,3.147,974,4.634,975,4.634,976,4.634,977,4.634,978,4.634,979,4.634,980,4.634,981,4.634,982,6.232,983,4.634,984,4.634,985,4.634,986,4.634,987,4.634,988,4.634,989,4.634,990,4.634,991,4.634,992,4.634,993,4.634,994,5.738,995,4.634,996,5.738,997,4.634,998,4.634,999,4.634,1000,4.634,1001,4.634,1002,4.634,1003,3.942,1004,4.634,1005,4.634,1006,4.634,1007,4.634,1008,4.634,1009,4.634]],["title/miscellaneous/enumerations.html",[1010,1.687,1011,3.607]],["body/miscellaneous/enumerations.html",[7,0.023,10,1.309,17,0.845,60,0.008,61,0.01,80,0.917,82,1.003,84,1.003,86,1.003,87,1.003,104,0.917,108,1.138,110,1.289,118,0.681,120,0.177,124,1.003,126,0.382,128,3.521,131,1.677,132,1.003,139,1.677,141,1.112,142,0.529,153,0.516,158,1.003,174,1.289,183,1.82,213,1.677,231,1.603,240,1.975,241,3.439,251,2.295,256,1.003,263,0.783,266,3.521,267,3.352,268,1.112,294,1.374,296,1.835,302,1.289,305,2.708,317,1.533,325,3.404,373,2.102,374,2.102,375,2.102,376,2.102,385,2.708,392,0.783,429,2.568,442,1.412,444,1.003,496,0.681,530,1.677,533,1.112,540,2.371,544,4.207,548,2.395,550,1.112,565,1.82,595,1.859,645,1.003,672,1.859,699,1.112,700,1.257,756,1.859,763,4.403,808,1.677,817,3.575,819,1.677,845,2.102,848,1.112,853,2.395,875,1.677,881,1.257,882,1.257,896,1.003,916,1.975,917,1.003,919,1.112,922,1.112,933,1.257,934,2.102,1003,3.807,1010,0.845,1011,1.257,1012,1.257,1013,1.257,1014,2.47,1015,1.477,1016,1.477,1017,1.477,1018,1.477,1019,1.477,1020,2.47,1021,1.477,1022,1.477,1023,1.477,1024,1.257,1025,1.477,1026,1.257,1027,1.477,1028,1.477,1029,1.477,1030,2.47,1031,1.477,1032,1.477,1033,1.477,1034,1.477,1035,3.72,1036,2.47,1037,2.47,1038,3.183,1039,1.477,1040,1.477,1041,1.477,1042,1.477,1043,4.475,1044,3.183,1045,3.183,1046,1.477,1047,4.475,1048,1.477,1049,1.477,1050,1.477,1051,4.139,1052,2.47,1053,1.477,1054,3.165,1055,3.72,1056,1.477,1057,5.915,1058,2.47,1059,2.47,1060,4.403,1061,1.477,1062,1.677,1063,1.257,1064,1.477,1065,1.257,1066,1.257,1067,1.257,1068,1.257,1069,2.47,1070,1.477,1071,1.477,1072,1.257,1073,1.477,1074,2.47,1075,3.183,1076,1.477,1077,1.477,1078,2.708,1079,2.47,1080,2.47,1081,2.47,1082,1.477,1083,3.165,1084,1.477,1085,2.47,1086,1.477,1087,1.477,1088,2.102,1089,1.477,1090,1.477,1091,1.257,1092,1.477,1093,3.183,1094,2.47,1095,1.477,1096,2.47,1097,5.342,1098,3.183,1099,1.477,1100,1.859,1101,1.477,1102,4.475,1103,2.47,1104,2.47,1105,2.708,1106,2.395,1107,2.47,1108,2.47,1109,2.47,1110,1.477,1111,2.102,1112,2.102,1113,1.477,1114,2.47,1115,2.47,1116,1.477,1117,2.47,1118,2.47,1119,2.47,1120,3.183,1121,1.477,1122,2.102,1123,3.72,1124,1.477,1125,2.47,1126,2.47,1127,1.477,1128,3.183,1129,3.72,1130,3.183,1131,2.47,1132,1.477,1133,2.47,1134,1.477,1135,2.47,1136,2.47,1137,1.477,1138,1.477,1139,1.257,1140,1.477,1141,2.47,1142,1.477,1143,2.47,1144,2.47,1145,1.477,1146,1.477,1147,1.477,1148,1.477,1149,1.477,1150,4.139,1151,2.47,1152,1.477,1153,1.257,1154,1.477,1155,1.477,1156,3.72,1157,2.47,1158,1.112,1159,3.183,1160,2.47,1161,1.477,1162,1.477,1163,1.477,1164,2.47,1165,2.47,1166,1.257,1167,2.47,1168,2.47,1169,2.47,1170,1.477,1171,1.477,1172,2.47,1173,3.183,1174,1.477,1175,2.47,1176,1.477,1177,2.47,1178,2.47,1179,2.47,1180,1.257,1181,3.72,1182,1.477,1183,1.477,1184,1.477,1185,1.477,1186,1.477,1187,1.477,1188,1.477,1189,1.257,1190,2.47,1191,2.47,1192,1.477,1193,2.47,1194,1.477,1195,1.477,1196,1.477,1197,2.47,1198,1.477,1199,1.477,1200,1.477,1201,1.477,1202,1.477,1203,1.477,1204,1.477,1205,1.477,1206,1.477,1207,1.477,1208,1.477,1209,1.257,1210,1.477,1211,2.47,1212,1.477,1213,2.47,1214,1.477,1215,2.47,1216,1.859,1217,1.477,1218,1.477,1219,2.102,1220,2.47,1221,1.477,1222,1.477,1223,1.477,1224,2.708,1225,2.47,1226,1.257,1227,1.477,1228,2.47,1229,1.477,1230,2.47,1231,3.183,1232,1.477,1233,2.47,1234,1.477,1235,2.47,1236,1.477,1237,1.477,1238,2.47,1239,1.477,1240,1.477,1241,1.477,1242,1.477,1243,1.477,1244,2.47,1245,2.395,1246,1.477,1247,3.165,1248,2.47,1249,2.102,1250,3.72,1251,1.257,1252,1.477,1253,2.47,1254,1.477,1255,2.47,1256,2.47,1257,1.477,1258,1.477,1259,2.47,1260,1.477,1261,1.477,1262,2.47,1263,1.477,1264,1.477,1265,2.47,1266,1.477,1267,1.477,1268,1.477,1269,2.47,1270,1.859,1271,1.477,1272,1.477,1273,1.477,1274,1.257,1275,1.477,1276,1.477,1277,1.477,1278,1.477,1279,1.477,1280,1.112,1281,1.477,1282,2.47,1283,1.477,1284,1.477,1285,1.477,1286,1.477,1287,1.477,1288,1.477,1289,1.477,1290,1.477,1291,1.477,1292,2.708,1293,3.183,1294,3.183,1295,2.47,1296,2.47,1297,1.477,1298,1.477,1299,1.477,1300,1.477,1301,2.47,1302,2.47]],["title/miscellaneous/functions.html",[1010,1.687,1303,3.607]],["body/miscellaneous/functions.html",[7,0.022,16,0.66,17,2.207,29,3.842,60,0.016,61,0.016,71,2.906,89,4.866,90,3.842,92,3.285,93,2.316,96,3.285,97,4.343,120,0.464,122,1.535,125,1.441,126,0.78,127,1.905,146,2.139,175,2.633,182,2.906,231,1.383,241,1.905,267,1.779,294,2.862,296,2.821,302,2.633,331,3.842,338,2.193,339,2.066,387,5.126,403,2.622,523,3.467,698,3.285,896,2.622,904,2.622,931,4.304,959,3.285,960,3.285,961,4.343,962,4.343,963,4.343,964,4.343,965,4.343,969,3.285,970,4.866,1010,2.207,1224,3.285,1303,3.285,1304,3.861,1305,3.861,1306,6.328,1307,3.861,1308,3.861,1309,3.861,1310,3.861,1311,3.861,1312,5.105,1313,3.861,1314,3.861,1315,3.861,1316,3.861,1317,3.861,1318,3.861,1319,3.285,1320,3.861,1321,5.105,1322,5.105,1323,3.861,1324,3.861,1325,5.105,1326,5.105,1327,3.861,1328,3.285,1329,3.861]],["title/index.html",[120,0.354,1330,2.51,1331,2.51]],["body/index.html",[7,0.021,13,0.297,17,3.654,39,2.068,60,0.014,61,0.014,90,3.309,127,1.532,151,1.34,240,1.927,286,3.741,288,3.741,302,2.068,306,3.741,321,3.741,325,3.776,355,3.741,443,2.642,496,1.431,526,2.109,545,2.986,662,2.337,684,2.337,748,2.337,751,2.642,756,2.337,817,4.178,819,3.467,875,2.109,919,3.309,940,4.41,972,2.642,973,2.337,1026,4.344,1054,4.344,1062,3.467,1065,2.642,1072,2.642,1100,2.337,1106,3.842,1111,2.642,1216,2.337,1280,2.337,1328,2.642,1332,4.398,1333,5.861,1334,3.309,1335,6.086,1336,4.398,1337,3.106,1338,3.106,1339,6.086,1340,5.106,1341,4.398,1342,3.106,1343,4.398,1344,5.106,1345,4.398,1346,4.398,1347,4.398,1348,3.106,1349,3.106,1350,3.741,1351,3.106,1352,3.106,1353,3.106,1354,3.106,1355,3.106,1356,4.398,1357,3.106,1358,3.106,1359,4.398,1360,4.398,1361,3.106,1362,3.106,1363,3.106,1364,3.106,1365,3.106,1366,3.106,1367,3.106,1368,3.106,1369,2.337,1370,5.553,1371,3.106,1372,3.106,1373,3.106,1374,4.398,1375,4.398,1376,3.106,1377,5.323,1378,5.106,1379,6.086,1380,5.106,1381,6.086,1382,3.106,1383,3.106,1384,3.106,1385,3.106,1386,3.106,1387,3.106,1388,3.106,1389,3.106,1390,3.106,1391,3.106,1392,4.398,1393,4.398,1394,4.398,1395,4.398,1396,4.398,1397,3.106,1398,3.106,1399,3.106,1400,2.642,1401,3.106,1402,3.106,1403,4.398,1404,4.398,1405,3.106,1406,3.106,1407,3.106,1408,3.106,1409,3.106,1410,3.106,1411,3.106,1412,3.106,1413,5.553,1414,4.398,1415,3.106,1416,3.106,1417,6.086,1418,3.106,1419,3.106,1420,3.106,1421,2.642,1422,3.106,1423,3.106,1424,2.642,1425,3.106,1426,3.106,1427,3.106,1428,3.106,1429,3.106,1430,2.642,1431,3.106,1432,3.106,1433,3.106,1434,3.106,1435,3.106,1436,4.398,1437,5.106,1438,2.337,1439,3.106,1440,3.106,1441,3.106,1442,3.106,1443,3.106,1444,3.106,1445,3.106,1446,3.106,1447,3.106,1448,3.106,1449,3.106,1450,3.106,1451,3.106,1452,3.106,1453,3.106,1454,3.106,1455,3.106,1456,2.642,1457,3.106,1458,3.106,1459,2.642,1460,3.106,1461,3.106]],["title/license.html",[1330,2.51,1331,2.51,1462,2.22]],["body/license.html",[7,0.011,11,0.742,13,0.39,14,0.349,16,0.163,19,0.163,27,0.999,55,1.371,59,0.06,60,0.008,61,0.008,82,2.665,113,0.652,118,0.742,124,1.094,129,1.212,132,1.094,134,2.258,139,1.094,151,0.695,153,0.337,184,1.575,192,4.995,263,0.854,302,0.652,325,2.1,332,1.371,339,1.076,404,1.371,412,1.997,444,1.094,496,2,526,1.094,540,0.854,680,1.212,684,1.212,699,2.953,705,1.371,707,1.371,708,5.321,724,1.371,748,1.212,818,1.371,819,1.094,820,1.371,831,1.371,848,1.997,875,1.094,920,1.371,922,1.212,940,2.547,1024,1.371,1060,4.685,1062,1.094,1063,1.371,1066,2.258,1067,2.258,1068,2.88,1078,1.371,1083,1.371,1088,1.371,1091,1.371,1100,4.144,1105,4.549,1106,1.212,1112,1.371,1122,1.371,1139,1.371,1153,4.39,1158,1.212,1166,3.693,1180,2.258,1189,2.88,1209,3.339,1216,1.997,1219,1.371,1226,1.371,1245,1.212,1247,3.339,1249,1.371,1251,1.371,1270,2.547,1274,2.88,1280,1.212,1292,1.371,1319,1.371,1350,2.258,1369,1.212,1377,2.88,1400,1.371,1421,2.88,1424,2.258,1430,1.371,1438,1.212,1456,1.371,1459,2.258,1462,5.114,1463,3.339,1464,3.385,1465,1.611,1466,1.611,1467,1.611,1468,5.347,1469,3.925,1470,4.341,1471,1.611,1472,6.049,1473,5.507,1474,1.611,1475,1.371,1476,5.507,1477,5.871,1478,4.67,1479,2.654,1480,1.611,1481,4.341,1482,1.611,1483,1.611,1484,3.925,1485,2.654,1486,1.611,1487,3.385,1488,2.654,1489,2.654,1490,1.611,1491,1.611,1492,6.254,1493,3.925,1494,2.654,1495,4.67,1496,1.611,1497,2.654,1498,1.611,1499,1.611,1500,1.611,1501,1.611,1502,1.611,1503,1.611,1504,1.611,1505,3.385,1506,1.611,1507,3.385,1508,2.654,1509,5.871,1510,1.611,1511,4.67,1512,5.347,1513,3.925,1514,1.611,1515,1.611,1516,1.611,1517,1.611,1518,1.611,1519,2.654,1520,1.611,1521,1.611,1522,6.796,1523,3.385,1524,2.654,1525,1.611,1526,5.347,1527,1.611,1528,2.654,1529,6.31,1530,1.611,1531,1.611,1532,1.611,1533,1.611,1534,1.611,1535,1.611,1536,2.654,1537,2.654,1538,1.611,1539,1.611,1540,1.611,1541,1.611,1542,1.611,1543,3.925,1544,4.341,1545,1.611,1546,2.654,1547,3.925,1548,2.654,1549,1.611,1550,4.341,1551,2.654,1552,1.611,1553,1.611,1554,3.385,1555,1.611,1556,1.611,1557,1.611,1558,2.654,1559,1.611,1560,1.611,1561,1.611,1562,3.385,1563,1.611,1564,1.611,1565,3.385,1566,1.611,1567,1.611,1568,1.611,1569,3.925,1570,5.507,1571,1.611,1572,2.654,1573,3.385,1574,2.654,1575,2.654,1576,2.654,1577,2.654,1578,2.654,1579,2.654,1580,3.385,1581,2.654,1582,2.654,1583,2.654,1584,2.654,1585,1.611,1586,2.654,1587,1.611,1588,4.341,1589,4.938,1590,3.385,1591,2.654,1592,2.654,1593,2.654,1594,1.611,1595,1.611,1596,3.385,1597,2.654,1598,1.611,1599,1.611,1600,1.611,1601,3.385,1602,1.611,1603,1.611,1604,1.611,1605,2.654,1606,2.654,1607,1.611,1608,1.611,1609,1.611,1610,1.611,1611,1.611,1612,1.611,1613,1.611,1614,2.654,1615,1.611,1616,1.611,1617,1.611,1618,1.611,1619,1.611,1620,1.611,1621,1.611,1622,1.611,1623,1.611,1624,1.611,1625,1.611,1626,1.611,1627,5.16,1628,1.611,1629,1.611,1630,1.611,1631,1.611,1632,1.611,1633,3.925,1634,2.654,1635,3.925,1636,1.611,1637,1.611,1638,3.385,1639,1.611,1640,1.611,1641,1.611,1642,1.611,1643,2.654,1644,1.611,1645,1.611,1646,4.341,1647,1.611,1648,1.611,1649,1.611,1650,1.611,1651,1.611,1652,3.385,1653,3.925,1654,1.611,1655,1.611,1656,1.611,1657,1.611,1658,1.611,1659,1.611,1660,1.611,1661,1.611,1662,1.611,1663,2.654,1664,1.611,1665,2.654,1666,1.611,1667,1.611,1668,1.611,1669,1.611,1670,1.611,1671,1.611,1672,1.611,1673,3.925,1674,3.385,1675,3.385,1676,3.385,1677,2.654,1678,3.385,1679,2.654,1680,2.654,1681,2.654,1682,1.611,1683,1.611,1684,1.611,1685,1.611,1686,1.611,1687,1.611,1688,1.611,1689,2.654,1690,1.611,1691,1.611,1692,1.611,1693,4.341,1694,1.611,1695,1.611,1696,1.611,1697,1.611,1698,1.611,1699,1.611,1700,1.611,1701,1.611,1702,1.611,1703,4.341,1704,1.611,1705,1.611,1706,1.611,1707,1.611,1708,1.611,1709,1.611,1710,1.611,1711,1.611,1712,1.611,1713,1.611,1714,1.611,1715,1.611,1716,1.611,1717,1.611,1718,1.611,1719,3.385,1720,1.611,1721,1.611,1722,1.611,1723,2.654,1724,1.611,1725,1.611,1726,1.611,1727,1.611,1728,1.611,1729,1.611,1730,1.611,1731,1.611,1732,1.611,1733,1.611,1734,1.611,1735,1.611,1736,1.611,1737,1.611,1738,1.611,1739,1.611,1740,2.654,1741,2.654,1742,1.611,1743,1.611,1744,1.611,1745,1.611,1746,1.611,1747,1.611,1748,1.611,1749,1.611,1750,1.611,1751,1.611,1752,1.611,1753,1.611,1754,1.611,1755,1.611,1756,1.611,1757,1.611,1758,1.611]],["title/modules.html",[2,2.073]],["body/modules.html",[1,3.565,2,2.266,6,3.257,7,0.02,8,3.257,60,0.02,61,0.02,65,3.257,66,3.257,307,3.95,1062,3.565,1245,5.214,1759,6.929,1760,6.929,1761,7.022,1762,5.25]],["title/overview.html",[1334,3.615]],["body/overview.html",[1,4.565,2,1.887,3,2.729,4,3.72,5,3.72,6,4.325,7,0.023,8,4.17,9,3.163,10,2.317,11,2.015,57,2.5,60,0.018,61,0.018,62,3.72,63,3.72,64,3.72,65,4.358,66,4.358,70,1.664,113,1.771,256,2.969,263,2.317,344,3.72,345,3.72,346,3.72,347,4.235,352,2.5,405,3.902,434,3.72,435,3.72,436,3.72,516,3.367,804,2.969,833,3.72,834,3.72,835,3.72,896,2.969,1334,3.29,1475,3.72,1763,4.373,1764,4.373]],["title/properties.html",[121,0.731,973,2.22]],["body/properties.html",[7,0.023,16,0.546,17,3.073,60,0.02,61,0.02,121,0.926,240,3.335,296,2.652,544,3.335,1270,4.045,1369,4.045,1438,4.045,1462,4.045,1463,4.574,1765,5.376,1766,5.376,1767,5.376,1768,5.376,1769,5.376,1770,5.376]],["title/miscellaneous/variables.html",[904,2.879,1010,1.687]],["body/miscellaneous/variables.html",[2,2.003,7,0.023,15,2.524,17,1.917,27,3.302,39,2.712,41,3.492,42,2.853,43,2.853,44,2.524,45,2.524,51,1.545,60,0.015,61,0.015,84,2.277,86,2.277,87,2.277,95,2.081,115,2.155,120,0.403,121,1.123,125,1.31,126,0.804,127,3.411,135,2.003,137,3.042,138,3.492,143,2.081,144,2.524,145,3.492,153,0.701,174,2.639,175,2.639,176,3.015,177,1.545,181,1.654,196,3.492,198,2.853,230,3.492,232,2.853,233,2.277,234,2.853,235,2.853,236,2.853,251,1.545,267,3.187,429,2.081,442,3.283,490,2.524,492,2.277,540,1.777,565,1.917,601,2.081,656,2.524,676,2.524,677,2.853,678,2.524,679,2.853,680,2.524,681,2.853,772,2.653,797,2.524,798,2.524,808,4.342,814,2.853,821,3.492,838,3.492,854,2.853,858,3.492,904,2.277,916,2.081,917,2.277,936,2.853,937,2.853,938,2.853,946,2.853,948,3.948,950,2.853,1010,1.917,1012,2.853,1013,4.527,1158,2.524,1771,3.354,1772,3.354,1773,3.354,1774,4.641,1775,4.641,1776,3.354,1777,4.641,1778,3.354,1779,3.354,1780,3.354,1781,3.354,1782,3.354,1783,3.354]],["title/routes.html",[1784,4.087]],["body/routes.html",[7,0.021,60,0.021,61,0.021,1784,4.831]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"coverage.html":{}}}],["0.0.1",{"_index":1765,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":981,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1418,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":1006,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":993,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":1001,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":992,"title":{},"body":{"dependencies.html":{}}}],["0/8",{"_index":966,"title":{},"body":{"coverage.html":{}}}],["01002",{"_index":276,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":263,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":975,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":272,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1.2355",{"_index":152,"title":{},"body":{"classes/EsHitDto.html":{}}}],["1/1",{"_index":949,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":225,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":943,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":381,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11",{"_index":1764,"title":{},"body":{"overview.html":{}}}],["11/11",{"_index":968,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":1089,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["14.0.1",{"_index":1004,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":1182,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1979",{"_index":712,"title":{},"body":{"classes/PaperDto.html":{}}}],["1998",{"_index":1198,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1].sort",{"_index":626,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["2",{"_index":896,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1464,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":983,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":944,"title":{},"body":{"coverage.html":{}}}],["200",{"_index":750,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1466,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1388,"title":{},"body":{"index.html":{}}}],["2324",{"_index":1205,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":268,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":1008,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":980,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":998,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":945,"title":{},"body":{"coverage.html":{}}}],["3/4",{"_index":957,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":214,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["4",{"_index":1298,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["4.6.0",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":951,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1223,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":1146,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":1218,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":1214,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":1229,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1234,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["46toawmdawr5bxv1awqykwzub2rlxzmaaaaaaaaaacobywadawr4bxv1awqxagzub2rlxzeaaaaaaaaaaaebyqadawr5bxv1awqykgzub2rlxziaaaaaaaaaaawbygacbxv1awqyaaafdxvpzdeaaqltyxrjaf9hbgw_gaaaaa",{"_index":246,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["495c",{"_index":693,"title":{},"body":{"classes/PaperDto.html":{}}}],["5",{"_index":256,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":996,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":967,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1500,"title":{},"body":{"license.html":{}}}],["504",{"_index":897,"title":{},"body":{"injectables/SearchService.html":{}}}],["6",{"_index":1763,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":954,"title":{},"body":{"coverage.html":{}}}],["6/7",{"_index":953,"title":{},"body":{"coverage.html":{}}}],["60",{"_index":709,"title":{},"body":{"classes/PaperDto.html":{}}}],["69c45ca738ff",{"_index":695,"title":{},"body":{"classes/PaperDto.html":{}}}],["7.5.5",{"_index":1009,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":958,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1457,"title":{},"body":{"index.html":{}}}],["75",{"_index":956,"title":{},"body":{"coverage.html":{}}}],["8.0.0",{"_index":982,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":986,"title":{},"body":{"dependencies.html":{}}}],["8/8",{"_index":955,"title":{},"body":{"coverage.html":{}}}],["85",{"_index":952,"title":{},"body":{"coverage.html":{}}}],["8dfa",{"_index":694,"title":{},"body":{"classes/PaperDto.html":{}}}],["9",{"_index":1475,"title":{},"body":{"license.html":{},"overview.html":{}}}],["_id",{"_index":275,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":273,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_score",{"_index":143,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["_shard_doc",{"_index":594,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_shards",{"_index":232,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":144,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["above",{"_index":1656,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":851,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":1143,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":1141,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1721,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1719,"title":{},"body":{"license.html":{}}}],["access",{"_index":1111,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1254,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["according",{"_index":1142,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":752,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":532,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["act",{"_index":1727,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1249,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":1231,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1701,"title":{},"body":{"license.html":{}}}],["actual",{"_index":158,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1347,"title":{},"body":{"index.html":{}}}],["add",{"_index":1459,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1645,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1646,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1545,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":977,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":1162,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1302,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1337,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1717,"title":{},"body":{"license.html":{}}}],["against",{"_index":1606,"title":{},"body":{"license.html":{}}}],["agent",{"_index":1075,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1730,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1676,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1660,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1352,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1343,"title":{},"body":{"index.html":{}}}],["algol",{"_index":701,"title":{},"body":{"classes/PaperDto.html":{}}}],["algol):vii",{"_index":704,"title":{},"body":{"classes/PaperDto.html":{}}}],["alive",{"_index":204,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["alleging",{"_index":1611,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":174,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":176,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1602,"title":{},"body":{"license.html":{}}}],["along",{"_index":1639,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1644,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1420,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":1081,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":928,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amongst",{"_index":279,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["amount",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1724,"title":{},"body":{"license.html":{}}}],["andrews",{"_index":703,"title":{},"body":{"classes/PaperDto.html":{}}}],["annotations",{"_index":1533,"title":{},"body":{"license.html":{}}}],["another",{"_index":1117,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["anything",{"_index":1132,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1463,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":318,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apioperation",{"_index":773,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation({summary",{"_index":746,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":165,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":500,"title":{},"body":{"classes/PageDto.html":{},"classes/PaperDto.html":{}}}],["apiresponse",{"_index":774,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1451,"title":{},"body":{"index.html":{}}}],["app",{"_index":1417,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1642,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1528,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1674,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":312,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":646,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["applies",{"_index":1595,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1424,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":820,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1688,"title":{},"body":{"license.html":{}}}],["april",{"_index":1201,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1348,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1333,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1751,"title":{},"body":{"license.html":{}}}],["args",{"_index":454,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":486,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":456,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1707,"title":{},"body":{"license.html":{}}}],["array",{"_index":278,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["asc",{"_index":845,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1736,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":1095,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":724,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["assume",{"_index":1690,"title":{},"body":{"license.html":{}}}],["async",{"_index":511,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1739,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1527,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1255,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1633,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":1148,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":1125,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1768,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1275,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1479,"title":{},"body":{"license.html":{}}}],["authors",{"_index":677,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["authorship",{"_index":1523,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1365,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1268,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["await",{"_index":665,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["axiosres.data",{"_index":638,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["b",{"_index":1624,"title":{},"body":{"license.html":{}}}],["back",{"_index":751,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":1224,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1248,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":1118,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":926,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":748,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1390,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1386,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1391,"title":{},"body":{"index.html":{}}}],["basic",{"_index":316,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1677,"title":{},"body":{"license.html":{}}}],["before",{"_index":253,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["behalf",{"_index":1550,"title":{},"body":{"license.html":{}}}],["being",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1400,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1504,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1542,"title":{},"body":{"license.html":{}}}],["block",{"_index":499,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1369,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":248,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":970,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1741,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1761,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1759,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1335,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1392,"title":{},"body":{"index.html":{}}}],["building",{"_index":1374,"title":{},"body":{"index.html":{}}}],["c",{"_index":1630,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":397,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1405,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":393,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["calling",{"_index":1436,"title":{},"body":{"index.html":{}}}],["can't",{"_index":133,"title":{},"body":{"interfaces/EqQueryString.html":{}}}],["canactivate",{"_index":809,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":815,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":1137,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1625,"title":{},"body":{"license.html":{}}}],["case",{"_index":319,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":642,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["cause",{"_index":1489,"title":{},"body":{"license.html":{}}}],["caused",{"_index":1077,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cc3c3cca",{"_index":691,"title":{},"body":{"classes/PaperDto.html":{}}}],["cd",{"_index":1370,"title":{},"body":{"index.html":{}}}],["cell",{"_index":727,"title":{},"body":{"classes/PaperDto.html":{}}}],["certain",{"_index":191,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{}}}],["change",{"_index":882,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1629,"title":{},"body":{"license.html":{}}}],["character",{"_index":1706,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":1140,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1580,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1412,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1410,"title":{},"body":{"index.html":{}}}],["check",{"_index":288,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":291,"title":{},"body":{"controllers/HealthController.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1277,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1720,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1608,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1597,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["clearinfo",{"_index":583,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["cleint_error",{"_index":1295,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":1003,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1367,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1414,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":344,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":345,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":346,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":434,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":435,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":436,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":833,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":834,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":835,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":325,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":1207,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":487,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1603,"title":{},"body":{"license.html":{}}}],["comission",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1454,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1745,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1714,"title":{},"body":{"license.html":{}}}],["commision",{"_index":927,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":929,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":332,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1554,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1518,"title":{},"body":{"license.html":{}}}],["complete",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":548,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["completion",{"_index":254,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1754,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1650,"title":{},"body":{"license.html":{}}}],["comply",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1455,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":974,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1356,"title":{},"body":{"index.html":{}}}],["computer",{"_index":705,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["condition",{"_index":1241,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":1110,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":192,"title":{},"body":{"interfaces/EsQuery.html":{},"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1427,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1432,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":1156,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1358,"title":{},"body":{"index.html":{}}}],["connection",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1705,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1726,"title":{},"body":{"license.html":{}}}],["console.log('reverse",{"_index":628,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["console.log(`search|service",{"_index":893,"title":{},"body":{"injectables/SearchService.html":{}}}],["conspicuously",{"_index":1566,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1612,"title":{},"body":{"license.html":{}}}],["constructor",{"_index":199,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":859,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":448,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":335,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":514,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["constructor(private",{"_index":303,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":799,"title":{},"body":{"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":810,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":495,"title":{},"body":{"classes/PageDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1647,"title":{},"body":{"license.html":{}}}],["contained",{"_index":1226,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["containing",{"_index":537,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["contains",{"_index":238,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/RequestDto.html":{}}}],["content",{"_index":540,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["contents",{"_index":684,"title":{},"body":{"classes/PaperDto.html":{},"index.html":{},"license.html":{}}}],["context",{"_index":396,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":825,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":423,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":824,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":425,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":415,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":426,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":427,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":414,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1494,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1544,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1601,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1652,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1570,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1613,"title":{},"body":{"license.html":{}}}],["control",{"_index":1209,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1483,"title":{},"body":{"license.html":{}}}],["controller",{"_index":282,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":301,"title":{},"body":{"controllers/HealthController.html":{}}}],["controller('papers",{"_index":776,"title":{},"body":{"controllers/PapersController.html":{}}}],["controllername",{"_index":422,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":433,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":337,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":813,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1520,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1620,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1477,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":932,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":770,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":1221,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":1082,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["counterclaim",{"_index":1609,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1355,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":939,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1435,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":441,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":450,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":452,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1353,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1607,"title":{},"body":{"license.html":{}}}],["current",{"_index":1157,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1257,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":363,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1669,"title":{},"body":{"license.html":{}}}],["customer",{"_index":923,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["damages",{"_index":1703,"title":{},"body":{"license.html":{}}}],["daniil",{"_index":731,"title":{},"body":{"classes/PaperDto.html":{}}}],["data",{"_index":135,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":342,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.reverse",{"_index":630,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["data.status",{"_index":343,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data[0].sort",{"_index":629,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["date",{"_index":1617,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":413,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["davie",{"_index":716,"title":{},"body":{"classes/PaperDto.html":{}}}],["days",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["db",{"_index":979,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":443,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":453,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1318,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1312,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1780,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":147,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":127,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":123,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["defaults",{"_index":535,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["defend",{"_index":1732,"title":{},"body":{"license.html":{}}}],["defined",{"_index":153,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1485,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1471,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":522,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletepit",{"_index":512,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletepit(pitid",{"_index":518,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletes",{"_index":520,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletion",{"_index":527,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deliberate",{"_index":1698,"title":{},"body":{"license.html":{}}}],["denis",{"_index":733,"title":{},"body":{"classes/PaperDto.html":{}}}],["depended",{"_index":1232,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":1230,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":525,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deploy",{"_index":1375,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1338,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1433,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1428,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":488,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":708,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["derived",{"_index":1530,"title":{},"body":{"license.html":{}}}],["desc",{"_index":595,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1670,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1351,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1568,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1441,"title":{},"body":{"index.html":{}}}],["details",{"_index":295,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1687,"title":{},"body":{"license.html":{}}}],["developed",{"_index":710,"title":{},"body":{"classes/PaperDto.html":{}}}],["development",{"_index":1409,"title":{},"body":{"index.html":{}}}],["different",{"_index":1106,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1487,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1490,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":912,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":908,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1672,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1563,"title":{},"body":{"license.html":{}}}],["display",{"_index":848,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["displayed",{"_index":843,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1588,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1638,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1470,"title":{},"body":{"license.html":{}}}],["dns",{"_index":550,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1458,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1403,"title":{},"body":{"index.html":{}}}],["document",{"_index":139,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":940,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":244,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":553,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/es",{"_index":554,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/request.dto",{"_index":557,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/search",{"_index":559,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums",{"_index":377,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/es",{"_index":563,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums/page",{"_index":566,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces",{"_index":340,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces/es",{"_index":568,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces/search",{"_index":570,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["don't",{"_index":1744,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":994,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":1086,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":175,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["dtos/es",{"_index":280,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["due",{"_index":1120,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1265,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1749,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1357,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1531,"title":{},"body":{"license.html":{}}}],["elaborations",{"_index":1534,"title":{},"body":{"license.html":{}}}],["elastichsearch",{"_index":543,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":142,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["electronic",{"_index":1551,"title":{},"body":{"license.html":{}}}],["elements",{"_index":212,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":320,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1740,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1239,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1738,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1437,"title":{},"body":{"index.html":{}}}],["entities",{"_index":1139,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1308,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":933,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":1011,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums/page",{"_index":675,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1310,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1359,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":934,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":270,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["eqquerystring",{"_index":112,"title":{"interfaces/EqQueryString.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"coverage.html":{}}}],["error",{"_index":294,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":457,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":420,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":482,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.status",{"_index":788,"title":{},"body":{"controllers/PapersController.html":{}}}],["error.statuscode",{"_index":784,"title":{},"body":{"controllers/PapersController.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es",{"_index":193,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchResultDto.html":{}}}],["es_port",{"_index":509,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["es_query",{"_index":798,"title":{},"body":{"classes/RequestDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["eshitdto",{"_index":136,"title":{"classes/EsHitDto.html":{}},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["espit",{"_index":179,"title":{"interfaces/EsPit.html":{}},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esq",{"_index":883,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.pit",{"_index":900,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.query",{"_index":885,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.size",{"_index":884,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquery",{"_index":187,"title":{"interfaces/EsQuery.html":{}},"body":{"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esquerydto",{"_index":195,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":229,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsehits",{"_index":242,"title":{"interfaces/EsResponseHits.html":{}},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["estime",{"_index":530,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["estime.min",{"_index":536,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["evaluated",{"_index":1170,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1716,"title":{},"body":{"license.html":{}}}],["event",{"_index":1694,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":1195,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":151,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1590,"title":{},"body":{"license.html":{}}}],["exception",{"_index":331,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":909,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["excerpt",{"_index":697,"title":{},"body":{"classes/PaperDto.html":{}}}],["exchangeable",{"_index":1361,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1565,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1579,"title":{},"body":{"license.html":{}}}],["execute",{"_index":259,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["executed",{"_index":1661,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":391,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1692,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1506,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1402,"title":{},"body":{"index.html":{}}}],["expand",{"_index":995,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":931,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1309,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":1192,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":1191,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":1190,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":1210,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1654,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1450,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":412,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":333,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":1187,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1425,"title":{},"body":{"index.html":{}}}],["f763",{"_index":692,"title":{},"body":{"classes/PaperDto.html":{}}}],["facilitates",{"_index":1363,"title":{},"body":{"index.html":{}}}],["factory",{"_index":913,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":266,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":1228,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1712,"title":{},"body":{"license.html":{}}}],["faker",{"_index":999,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":920,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":128,"title":{},"body":{"interfaces/EqQueryString.html":{},"miscellaneous/enumerations.html":{}}}],["fields",{"_index":124,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1498,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1618,"title":{},"body":{"license.html":{}}}],["files",{"_index":1421,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":867,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(es_query",{"_index":872,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":868,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":876,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":747,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":1147,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1683,"title":{},"body":{"license.html":{}}}],["flag",{"_index":671,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["flow",{"_index":997,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1444,"title":{},"body":{"index.html":{}}}],["following",{"_index":1377,"title":{},"body":{"index.html":{},"license.html":{}}}],["fools",{"_index":1202,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":1128,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1509,"title":{},"body":{"license.html":{}}}],["format",{"_index":444,"title":{},"body":{"injectables/LoggerService.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":460,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":462,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":463,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":473,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1399,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":1161,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":1102,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1582,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1266,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":1130,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1243,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":321,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1246,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1303,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":1098,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1250,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1262,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gatewaytimeoutexception",{"_index":879,"title":{},"body":{"injectables/SearchService.html":{}}}],["gathered",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":355,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":359,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1519,"title":{},"body":{"license.html":{}}}],["generates",{"_index":361,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":1138,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":785,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":777,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":289,"title":{},"body":{"controllers/HealthController.html":{}}}],["getbycontext",{"_index":743,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@req",{"_index":780,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(query",{"_index":745,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":744,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":786,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":757,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":356,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":365,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":357,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":368,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":513,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["getpit(alive",{"_index":528,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["getqueryparams(str",{"_index":648,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["gets",{"_index":367,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getting",{"_index":1330,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":358,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":370,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1366,"title":{},"body":{"index.html":{}}}],["give",{"_index":1430,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":853,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":1159,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1710,"title":{},"body":{"license.html":{}}}],["gorbunov",{"_index":734,"title":{},"body":{"classes/PaperDto.html":{}}}],["governing",{"_index":1757,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1573,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1508,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1480,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1576,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1762,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1699,"title":{},"body":{"license.html":{}}}],["guard",{"_index":804,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":806,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["handle",{"_index":1258,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":395,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":424,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1734,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":614,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["hasprev",{"_index":615,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["header",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":645,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":286,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":299,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":297,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":283,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":307,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1770,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1339,"title":{},"body":{"index.html":{}}}],["help",{"_index":1378,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1398,"title":{},"body":{"index.html":{}}}],["hence",{"_index":1217,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1575,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1657,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1332,"title":{},"body":{"index.html":{}}}],["hit",{"_index":155,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto",{"_index":281,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["hit.dto.ts",{"_index":138,"title":{},"body":{"classes/EsHitDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["hit.dto.ts:24",{"_index":161,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:34",{"_index":164,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:44",{"_index":154,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hits",{"_index":233,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hits.interface",{"_index":261,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["hits.interface.ts",{"_index":277,"title":{},"body":{"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["hold",{"_index":1733,"title":{},"body":{"license.html":{}}}],["hop",{"_index":1196,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hours",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":296,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1453,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1442,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1448,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1467,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1756,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1269,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":764,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":779,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":334,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{}}}],["httpexception(error.data",{"_index":783,"title":{},"body":{"controllers/PapersController.html":{}}}],["httphealthindicator",{"_index":298,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":309,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":313,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":373,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":379,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":327,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1325,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":374,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":378,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":347,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":375,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":376,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":380,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":322,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1368,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":515,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["httpstatus",{"_index":372,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":1206,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1287,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":1197,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":177,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["identification",{"_index":1750,"title":{},"body":{"license.html":{}}}],["identified",{"_index":1135,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":941,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1743,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":1200,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["if(!pairs",{"_index":654,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["ii",{"_index":1496,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1503,"title":{},"body":{"license.html":{}}}],["image",{"_index":1404,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1406,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":1211,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":507,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["implements",{"_index":330,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1680,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1564,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1708,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":1220,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1704,"title":{},"body":{"license.html":{}}}],["include",{"_index":1189,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":1180,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1636,"title":{},"body":{"license.html":{}}}],["including",{"_index":1512,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1548,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1572,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1735,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1731,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1722,"title":{},"body":{"license.html":{}}}],["index",{"_index":120,"title":{"index.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1525,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":672,"title":{},"body":{"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1488,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1505,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["info.interface",{"_index":571,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["info.interface.ts",{"_index":829,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["inform",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":819,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1292,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1461,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1600,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1614,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":351,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":352,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":870,"title":{},"body":{"injectables/SearchService.html":{}}}],["install",{"_index":1380,"title":{},"body":{"index.html":{}}}],["instance",{"_index":871,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":481,"title":{},"body":{"injectables/LoggerService.html":{}}}],["institute",{"_index":1604,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1411,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":1227,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1546,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":388,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["intercept(context",{"_index":390,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interceptor",{"_index":508,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interface",{"_index":111,"title":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":113,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/es",{"_index":220,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["interfaces/page",{"_index":501,"title":{},"body":{"classes/PageDto.html":{}}}],["interim",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1289,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1238,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":1176,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1252,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invariant",{"_index":725,"title":{},"body":{"classes/PaperDto.html":{}}}],["irrevocable",{"_index":1583,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":948,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":167,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":497,"title":{},"body":{"classes/PageDto.html":{}}}],["isboolean",{"_index":260,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":168,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@apiproperty({description",{"_index":801,"title":{},"body":{"classes/RequestDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":861,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":249,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":846,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":255,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":849,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isobject()@apiproperty({description",{"_index":205,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":169,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["isint",{"_index":170,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":171,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty()@apiproperty({description",{"_index":157,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isnotempty()@isarray()@apiproperty({description",{"_index":682,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnotempty()@isstring()@apiproperty({description",{"_index":689,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnumber",{"_index":218,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isobject",{"_index":219,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isoptional()@apiproperty({description",{"_index":148,"title":{},"body":{"classes/EsHitDto.html":{},"classes/RequestDto.html":{}}}],["isoptional()@isarray()@apiproperty({description",{"_index":208,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isdefined()@isnumber()@isint()@apiproperty({description",{"_index":210,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":840,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":201,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":844,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1778,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isset",{"_index":584,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["isstring",{"_index":172,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isstring()@isoptional()@apiproperty({description",{"_index":245,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["issue",{"_index":1559,"title":{},"body":{"license.html":{}}}],["itself",{"_index":1149,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1465,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":1203,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["json.stringify(es_query",{"_index":894,"title":{},"body":{"injectables/SearchService.html":{}}}],["k8s",{"_index":1415,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1422,"title":{},"body":{"index.html":{}}}],["keep_alive",{"_index":185,"title":{},"body":{"interfaces/EsPit.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["keeps",{"_index":924,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":656,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1783,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1679,"title":{},"body":{"license.html":{}}}],["knowledge",{"_index":720,"title":{},"body":{"classes/PaperDto.html":{}}}],["known",{"_index":1163,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1423,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1340,"title":{},"body":{"index.html":{}}}],["language",{"_index":707,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["large",{"_index":1283,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":1174,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":1000,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1675,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1610,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1267,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1481,"title":{},"body":{"license.html":{}}}],["length",{"_index":1167,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":1164,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1362,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1693,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1702,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1598,"title":{},"body":{"license.html":{}}}],["license",{"_index":1462,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1753,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1615,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1476,"title":{},"body":{"license.html":{}}}],["limit",{"_index":601,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1681,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1758,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1513,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1237,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":842,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":1134,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1541,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1440,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1557,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1605,"title":{},"body":{"license.html":{}}}],["live",{"_index":186,"title":{},"body":{"interfaces/EsPit.html":{}}}],["liveness",{"_index":292,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":1085,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":445,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":464,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":387,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":476,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":405,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":478,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":406,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":439,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":389,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":399,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":384,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1284,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":1160,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1354,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1709,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1715,"title":{},"body":{"license.html":{}}}],["m",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["machine",{"_index":1407,"title":{},"body":{"index.html":{}}}],["made",{"_index":1524,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1556,"title":{},"body":{"license.html":{}}}],["main",{"_index":698,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1261,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1438,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1360,"title":{},"body":{"index.html":{}}}],["making",{"_index":1510,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":1121,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1713,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1561,"title":{},"body":{"license.html":{}}}],["management",{"_index":1491,"title":{},"body":{"license.html":{}}}],["manager",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1341,"title":{},"body":{"index.html":{}}}],["many",{"_index":1235,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":551,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["map(axiosres",{"_index":637,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["markdown",{"_index":686,"title":{},"body":{"classes/PaperDto.html":{}}}],["marked",{"_index":1567,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1666,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["math.abs(query.page",{"_index":605,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["max_score",{"_index":271,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{}}}],["maxim",{"_index":735,"title":{},"body":{"classes/PaperDto.html":{}}}],["maximum",{"_index":211,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/EsResponseHits.html":{}}}],["md",{"_index":687,"title":{},"body":{"classes/PaperDto.html":{}}}],["mean",{"_index":1473,"title":{},"body":{"license.html":{}}}],["means",{"_index":1216,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1515,"title":{},"body":{"license.html":{}}}],["media",{"_index":1219,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1621,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1622,"title":{},"body":{"license.html":{}}}],["memory",{"_index":978,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1682,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1540,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1446,"title":{},"body":{"index.html":{}}}],["message",{"_index":317,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":911,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":1193,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":492,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["meta.hasnext",{"_index":617,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.hasprev",{"_index":620,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.interface",{"_index":502,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.interface.ts",{"_index":670,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":664,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.pagesize",{"_index":619,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["metadata",{"_index":119,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"dependencies.html":{}}}],["metainformation",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":429,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":432,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":1133,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":287,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1447,"title":{},"body":{"index.html":{}}}],["micros",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mikhaylov",{"_index":732,"title":{},"body":{"classes/PaperDto.html":{}}}],["milliseconds",{"_index":258,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["min",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["minute",{"_index":921,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":534,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["miscellaneous",{"_index":1010,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":491,"title":{},"body":{"classes/PageDto.html":{}}}],["modifications",{"_index":1511,"title":{},"body":{"license.html":{}}}],["modified",{"_index":1112,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1643,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1648,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1769,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1371,"title":{},"body":{"index.html":{}}}],["money",{"_index":925,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1342,"title":{},"body":{"index.html":{}}}],["more",{"_index":922,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["morrison",{"_index":714,"title":{},"body":{"classes/PaperDto.html":{}}}],["moved",{"_index":1278,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":1094,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ms",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mucosal",{"_index":723,"title":{},"body":{"classes/PaperDto.html":{}}}],["multiple",{"_index":1276,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":961,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1311,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":339,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1665,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1426,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1431,"title":{},"body":{"index.html":{}}}],["nanos",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["necessarily",{"_index":1599,"title":{},"body":{"license.html":{}}}],["need",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":533,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1697,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1700,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":1087,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":408,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["nestjs",{"_index":976,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":310,"title":{},"body":{"modules/HealthModule.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":984,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":166,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":300,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1767,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":472,"title":{},"body":{"injectables/LoggerService.html":{}}}],["neurobiology",{"_index":737,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuroimaging",{"_index":739,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuron",{"_index":738,"title":{},"body":{"classes/PaperDto.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":392,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":416,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["no_content",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1766,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1274,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":1183,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1641,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":1136,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":1131,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1244,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":1108,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":404,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1526,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1627,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1655,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1379,"title":{},"body":{"index.html":{}}}],["ns",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["null",{"_index":895,"title":{},"body":{"injectables/SearchService.html":{}}}],["num",{"_index":1316,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":146,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":184,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["objects",{"_index":162,"title":{},"body":{"classes/EsHitDto.html":{}}}],["obligations",{"_index":1723,"title":{},"body":{"license.html":{}}}],["observable",{"_index":398,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["obtain",{"_index":1755,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1592,"title":{},"body":{"license.html":{}}}],["ok",{"_index":305,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["old",{"_index":661,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["one",{"_index":1083,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1344,"title":{},"body":{"index.html":{}}}],["optional",{"_index":122,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":919,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":565,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":613,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["order.desc",{"_index":592,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["order.enum",{"_index":567,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["order.enum.ts",{"_index":1020,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1537,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1495,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["output",{"_index":1328,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1501,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":1186,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1260,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":539,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["overview",{"_index":1334,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1478,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1497,"title":{},"body":{"license.html":{}}}],["package",{"_index":973,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1396,"title":{},"body":{"index.html":{}}}],["page",{"_index":118,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["pagedto",{"_index":489,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":631,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pageinterceptor",{"_index":505,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagemeta",{"_index":493,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagen",{"_index":854,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":610,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["pagesize",{"_index":616,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["pagination",{"_index":209,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair",{"_index":655,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair.indexof",{"_index":658,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair.substring(0",{"_index":657,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair.substring(pair.indexof",{"_index":659,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pairs",{"_index":649,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pairs.shift",{"_index":653,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pairs[0",{"_index":652,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["paper",{"_index":159,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["paper.dto",{"_index":173,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{}}}],["paperdto",{"_index":156,"title":{"classes/PaperDto.html":{}},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"coverage.html":{}}}],["papers",{"_index":274,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":755,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":761,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":740,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":338,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parameters['main",{"_index":651,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["parameters[key",{"_index":660,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["parseuuidpipe",{"_index":765,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1635,"title":{},"body":{"license.html":{}}}],["partial",{"_index":1080,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":1079,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["particle",{"_index":850,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1684,"title":{},"body":{"license.html":{}}}],["party",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["passed",{"_index":206,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["patent",{"_index":1589,"title":{},"body":{"license.html":{}}}],["pattern",{"_index":1349,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":1172,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1281,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":1126,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1499,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1315,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":129,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":1109,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":1096,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":1115,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1279,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":818,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1507,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1577,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1634,"title":{},"body":{"license.html":{}}}],["physics",{"_index":729,"title":{},"body":{"classes/PaperDto.html":{}}}],["pipe(take(1",{"_index":636,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["pipeline",{"_index":906,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":181,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["pit.id",{"_index":579,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pit.interface",{"_index":221,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{}}}],["pit.interface.ts",{"_index":180,"title":{},"body":{"interfaces/EsPit.html":{},"coverage.html":{}}}],["pit.keep_alive",{"_index":581,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pit_id",{"_index":234,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":521,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["places",{"_index":1319,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":182,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":545,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1346,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1718,"title":{},"body":{"license.html":{}}}],["pot",{"_index":1208,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1486,"title":{},"body":{"license.html":{}}}],["precondition",{"_index":1169,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":1168,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":1091,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":285,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}}}],["prepare",{"_index":1585,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":1154,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":673,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["presented",{"_index":685,"title":{},"body":{"classes/PaperDto.html":{}}}],["prevented",{"_index":1242,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":674,"title":{},"body":{"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{}}}],["previously",{"_index":547,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevpage",{"_index":576,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevsearch",{"_index":510,"title":{"classes/PrevSearch.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["print",{"_index":1401,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1748,"title":{},"body":{"license.html":{}}}],["private",{"_index":304,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1443,"title":{},"body":{"index.html":{}}}],["process",{"_index":1173,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":938,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_port",{"_index":541,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":936,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":937,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1321,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":962,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1320,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":963,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1323,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":1152,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1667,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1384,"title":{},"body":{"index.html":{}}}],["programming",{"_index":706,"title":{},"body":{"classes/PaperDto.html":{}}}],["project",{"_index":293,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":1002,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1626,"title":{},"body":{"license.html":{}}}],["promise",{"_index":523,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":632,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["properties",{"_index":121,"title":{"properties.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1273,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":496,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":866,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":134,"title":{},"body":{"interfaces/EqQueryString.html":{},"license.html":{}}}],["proxy",{"_index":1150,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":1144,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":442,"title":{},"body":{"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1586,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1562,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1484,"title":{},"body":{"license.html":{}}}],["put",{"_index":766,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":560,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{}}}],["q.dto.ts",{"_index":838,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:24",{"_index":852,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:36",{"_index":847,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:47",{"_index":841,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:58",{"_index":839,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":115,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.'})@apiresponse({status",{"_index":749,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto",{"_index":555,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{}}}],["query.dto.ts",{"_index":196,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:26",{"_index":215,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:37",{"_index":207,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:48",{"_index":202,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:59",{"_index":216,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:70",{"_index":200,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface",{"_index":222,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface.ts",{"_index":188,"title":{},"body":{"interfaces/EsQuery.html":{},"coverage.html":{}}}],["query.limit",{"_index":603,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.order",{"_index":593,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.page",{"_index":607,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.query",{"_index":589,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.limit",{"_index":602,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order",{"_index":591,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order?.touppercase",{"_index":612,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.page",{"_index":611,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query_str",{"_index":898,"title":{},"body":{"injectables/SearchService.html":{}}}],["query_string",{"_index":189,"title":{},"body":{"interfaces/EsQuery.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["range",{"_index":1181,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1236,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1637,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":386,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1737,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1668,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1263,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1251,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1623,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1746,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":1093,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1294,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1689,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1619,"title":{},"body":{"license.html":{}}}],["references",{"_index":1099,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":1005,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":811,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":1165,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":1129,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1662,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1336,"title":{},"body":{"index.html":{}}}],["reject",{"_index":633,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reject(error",{"_index":643,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["reject(new",{"_index":888,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":269,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevance",{"_index":149,"title":{},"body":{"classes/EsHitDto.html":{}}}],["relevant",{"_index":874,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1538,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":1116,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1742,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1535,"title":{},"body":{"license.html":{}}}],["representation",{"_index":1092,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":1084,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1555,"title":{},"body":{"license.html":{}}}],["represents",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1584,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1671,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1469,"title":{},"body":{"license.html":{}}}],["req",{"_index":767,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":418,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":421,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":241,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.es_query",{"_index":587,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.pit",{"_index":597,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.query",{"_index":588,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.search_after",{"_index":599,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.size",{"_index":604,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.sort",{"_index":590,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.query",{"_index":586,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request_timeout",{"_index":1151,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requestdto",{"_index":556,"title":{"classes/RequestDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"coverage.html":{}}}],["requested",{"_index":763,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":1179,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":385,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1247,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":822,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":827,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":1124,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":768,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["res.data.hits.hits[res.data.hits.hits.length",{"_index":668,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits.slice",{"_index":627,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits[(meta.pagenum",{"_index":621,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits[meta.pagenum",{"_index":618,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits[res.hits.hits.length",{"_index":625,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.slice((meta.pagenum",{"_index":663,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.total.value",{"_index":609,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.keep_alive",{"_index":640,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.pit_id",{"_index":624,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.timed_out",{"_index":887,"title":{},"body":{"injectables/SearchService.html":{}}}],["reserved",{"_index":1127,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":1074,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":1103,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":890,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res",{"_index":641,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resolve(res.succeeded",{"_index":647,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resource",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":1113,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":231,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":326,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":782,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto",{"_index":863,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["response.dto.ts",{"_index":230,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:25",{"_index":257,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:38",{"_index":250,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:55",{"_index":237,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:83",{"_index":243,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:94",{"_index":247,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":329,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":336,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":315,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":349,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":354,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":369,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":366,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":371,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":360,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1729,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1686,"title":{},"body":{"license.html":{}}}],["result",{"_index":526,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"index.html":{},"license.html":{}}}],["result.dto",{"_index":562,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":858,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:24",{"_index":862,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:38",{"_index":860,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1514,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1631,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":141,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1782,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":213,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["reverse",{"_index":549,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["revisions",{"_index":1532,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":1204,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1725,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":1007,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1691,"title":{},"body":{"license.html":{}}}],["role",{"_index":814,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":808,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":821,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":805,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["ron",{"_index":713,"title":{},"body":{"classes/PaperDto.html":{}}}],["rounded",{"_index":1317,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1314,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":742,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1784,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1581,"title":{},"body":{"license.html":{}}}],["run",{"_index":1381,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1387,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1394,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1395,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1393,"title":{},"body":{"index.html":{}}}],["running",{"_index":1413,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":409,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":411,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["s",{"_index":700,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["same",{"_index":1747,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1416,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1286,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["saved",{"_index":830,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["saveinfo",{"_index":789,"title":{},"body":{"classes/PrevSearch.html":{}}}],["saveinfo(pit",{"_index":577,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["saving",{"_index":622,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["schemas",{"_index":1452,"title":{},"body":{"index.html":{}}}],["score",{"_index":150,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{}}}],["script",{"_index":1397,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1385,"title":{},"body":{"index.html":{}}}],["search",{"_index":130,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["search_after",{"_index":197,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["searchinfo",{"_index":569,"title":{"interfaces/SearchInfo.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":558,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":561,"title":{"classes/SearchResultDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":891,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(504",{"_index":889,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(700",{"_index":892,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto})@get(':uuid')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":759,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchresultdto})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":753,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchservice",{"_index":516,"title":{"injectables/SearchService.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["sec",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["section",{"_index":1088,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1474,"title":{},"body":{"license.html":{}}}],["see",{"_index":1280,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":1107,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":1090,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":1188,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1593,"title":{},"body":{"license.html":{}}}],["sent",{"_index":1078,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1539,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1659,"title":{},"body":{"license.html":{}}}],["server",{"_index":544,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1296,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":1212,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":302,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1419,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1429,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1434,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1256,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":350,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["services/common/search.service",{"_index":572,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["set",{"_index":756,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["setmetadata(is_public_key",{"_index":1779,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1781,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setting",{"_index":608,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["shall",{"_index":1472,"title":{},"body":{"license.html":{}}}],["shards",{"_index":239,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1502,"title":{},"body":{"license.html":{}}}],["short",{"_index":324,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/PaperDto.html":{}}}],["show",{"_index":718,"title":{},"body":{"classes/PaperDto.html":{}}}],["similar",{"_index":1145,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["single",{"_index":901,"title":{},"body":{"injectables/SearchService.html":{}}}],["size",{"_index":198,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":265,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1350,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1728,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1685,"title":{},"body":{"license.html":{}}}],["sort",{"_index":145,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["sorted",{"_index":163,"title":{},"body":{"classes/EsHitDto.html":{}}}],["sorting",{"_index":217,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":831,"title":{},"body":{"interfaces/SearchInfo.html":{},"license.html":{}}}],["specific",{"_index":132,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":131,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":1184,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["specifies",{"_index":190,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["src/.../app.module.ts",{"_index":1776,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1305,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":1012,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1307,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1013,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":1015,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":1016,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":1018,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":1017,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1304,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":1019,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../page.dto.ts",{"_index":1771,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../paper.dto.ts",{"_index":1772,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1775,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../request.dto.ts",{"_index":1773,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1777,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":1021,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1774,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1306,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application",{"_index":837,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/application/controller/health.controller.ts",{"_index":284,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":290,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":741,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:30",{"_index":754,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:56",{"_index":760,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":946,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":950,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos",{"_index":880,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/domain/dtos/es",{"_index":137,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":490,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:23",{"_index":498,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:32",{"_index":494,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts",{"_index":676,"title":{},"body":{"classes/PaperDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/paper.dto.ts:24",{"_index":696,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:35",{"_index":728,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:46",{"_index":683,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:57",{"_index":730,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:68",{"_index":717,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:79",{"_index":722,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:88",{"_index":688,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/request.dto",{"_index":775,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/domain/dtos/request.dto.ts",{"_index":797,"title":{},"body":{"classes/RequestDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/request.dto.ts:24",{"_index":802,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/request.dto.ts:34",{"_index":800,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/search",{"_index":772,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/es",{"_index":881,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1271,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1297,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1291,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1299,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1300,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/es",{"_index":114,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/http",{"_index":314,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":669,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/search",{"_index":828,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":328,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":807,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":816,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":812,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":959,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":960,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":383,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":407,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":394,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":401,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":771,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":506,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:137",{"_index":542,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:142",{"_index":546,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:149",{"_index":531,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:169",{"_index":519,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:17",{"_index":790,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:24",{"_index":791,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:25",{"_index":793,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:26",{"_index":792,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:28",{"_index":796,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:37",{"_index":794,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:43",{"_index":795,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:53",{"_index":517,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:64",{"_index":538,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":308,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":348,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":437,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":903,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":353,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":438,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":471,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":449,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":451,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":465,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":458,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":469,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":455,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":467,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":461,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":865,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:14",{"_index":869,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:25",{"_index":878,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:32",{"_index":877,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:68",{"_index":873,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":917,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":836,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":969,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sssss",{"_index":178,"title":{},"body":{"classes/EsHitDto.html":{}}}],["st",{"_index":702,"title":{},"body":{"classes/PaperDto.html":{}}}],["stages",{"_index":1373,"title":{},"body":{"index.html":{}}}],["start",{"_index":402,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1383,"title":{},"body":{"index.html":{}}}],["started",{"_index":1331,"title":{"index.html":{},"license.html":{}},"body":{}}],["starting",{"_index":832,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["starttime",{"_index":400,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":1158,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1591,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1649,"title":{},"body":{"license.html":{}}}],["statements",{"_index":942,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":440,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1628,"title":{},"body":{"license.html":{}}}],["status",{"_index":251,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1445,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":430,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1711,"title":{},"body":{"license.html":{}}}],["stored",{"_index":140,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{}}}],["stores",{"_index":203,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["str.split",{"_index":650,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["string",{"_index":125,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["string.interface",{"_index":194,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["string.interface.ts",{"_index":116,"title":{},"body":{"interfaces/EqQueryString.html":{},"coverage.html":{}}}],["structure",{"_index":117,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"interfaces/SearchInfo.html":{}}}],["subject",{"_index":1574,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1587,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1651,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1549,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1547,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":639,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["subsequently",{"_index":1571,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1293,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":264,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1492,"title":{},"body":{"license.html":{}}}],["summary",{"_index":678,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["super(httpexception.createbody(data",{"_index":341,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1301,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1658,"title":{},"body":{"license.html":{}}}],["support",{"_index":1245,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":1178,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1439,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1760,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1449,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1272,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":1122,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1558,"title":{},"body":{"license.html":{}}}],["t",{"_index":726,"title":{},"body":{"classes/PaperDto.html":{}}}],["table",{"_index":972,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":971,"title":{},"body":{"coverage.html":{}}}],["tags",{"_index":679,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["take",{"_index":552,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["taken",{"_index":935,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1313,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":410,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1288,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":1104,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1259,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":1114,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ten",{"_index":736,"title":{},"body":{"classes/PaperDto.html":{}}}],["terminate",{"_index":1616,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":311,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1468,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1460,"title":{},"body":{"index.html":{}}}],["test",{"_index":1364,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1382,"title":{},"body":{"index.html":{}}}],["tested",{"_index":1171,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":699,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1695,"title":{},"body":{"license.html":{}}}],["thereof",{"_index":1543,"title":{},"body":{"license.html":{}}}],["third",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":477,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":503,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.es_query",{"_index":803,"title":{},"body":{"classes/RequestDto.html":{}}}],["this.getdescription(status",{"_index":364,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":362,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getpit(1",{"_index":666,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.getpit(1).then((pit",{"_index":899,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.gettype(status",{"_index":382,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://localhost:${this.es_port}/_pit",{"_index":644,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.httpservice.get(`http://localhost:${this.es_port}/_search",{"_index":886,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://localhost:${this.es_port}/papers/_pit?keep_alive=${alive+unit",{"_index":635,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.limit",{"_index":856,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":475,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":484,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":480,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":431,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":419,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":479,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":485,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":483,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":417,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":504,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":857,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.page",{"_index":855,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.pit",{"_index":227,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.pit.id",{"_index":578,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.pit.keep_alive",{"_index":580,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevpage",{"_index":574,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch",{"_index":585,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.isset",{"_index":596,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.pit",{"_index":598,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.pit.id",{"_index":623,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.prevpage",{"_index":606,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.tiebreaker",{"_index":600,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.query",{"_index":226,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":823,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.searchservice.findbycontext(query.es_query).then",{"_index":781,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbycontext(request.es_query).then((res",{"_index":667,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":787,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.size",{"_index":224,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.sort",{"_index":228,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.statuscode",{"_index":864,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["this.tiebreaker",{"_index":573,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["those",{"_index":1596,"title":{},"body":{"license.html":{}}}],["through",{"_index":1456,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["throwed",{"_index":1322,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1329,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":1222,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["tiebreaker",{"_index":575,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["tiebreaker.slice",{"_index":582,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["time",{"_index":183,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["time.enum",{"_index":564,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["time.enum.ts",{"_index":1014,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timed",{"_index":252,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":235,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1264,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1282,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":680,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["todo",{"_index":1345,"title":{},"body":{"index.html":{}}}],["tony",{"_index":715,"title":{},"body":{"classes/PaperDto.html":{}}}],["too_many_requests",{"_index":1233,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":236,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["topic",{"_index":681,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["topics/fields",{"_index":719,"title":{},"body":{"classes/PaperDto.html":{}}}],["tort",{"_index":1696,"title":{},"body":{"license.html":{}}}],["total",{"_index":262,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["touching",{"_index":721,"title":{},"body":{"classes/PaperDto.html":{}}}],["tracking",{"_index":1560,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1664,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1632,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1663,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":1199,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1372,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1594,"title":{},"body":{"license.html":{}}}],["transform",{"_index":910,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1516,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":914,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1517,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":524,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["try",{"_index":634,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1521,"title":{},"body":{"license.html":{}}}],["unable",{"_index":1225,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":1194,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":1123,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1290,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["under",{"_index":1105,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":1119,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1240,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["union",{"_index":1482,"title":{},"body":{"license.html":{}}}],["unique",{"_index":690,"title":{},"body":{"classes/PaperDto.html":{}}}],["unit",{"_index":529,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["units",{"_index":1022,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["university",{"_index":711,"title":{},"body":{"classes/PaperDto.html":{}}}],["unknown",{"_index":223,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["unless",{"_index":1653,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":1215,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":1213,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1285,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":1177,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":306,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":1073,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1253,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":1097,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":1175,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":1101,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":428,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":323,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1389,"title":{},"body":{"index.html":{}}}],["use",{"_index":1100,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":240,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":769,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":778,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":817,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":826,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":875,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1408,"title":{},"body":{"index.html":{}}}],["util",{"_index":474,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":762,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["uuid.'})@apiresponse({status",{"_index":758,"title":{},"body":{"controllers/PapersController.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":964,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1324,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":965,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1327,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":905,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":915,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":902,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":907,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":267,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1185,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":947,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":904,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1552,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":446,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":466,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":1270,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":1076,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":918,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":916,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":403,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PrevSearch.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":1155,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":447,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":468,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":470,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1678,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1673,"title":{},"body":{"license.html":{}}}],["way",{"_index":662,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"index.html":{}}}],["ways",{"_index":1376,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1640,"title":{},"body":{"license.html":{}}}],["whether",{"_index":1493,"title":{},"body":{"license.html":{}}}],["whole",{"_index":1536,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":930,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":1153,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":1166,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1522,"title":{},"body":{"license.html":{}}}],["works",{"_index":1529,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1578,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1569,"title":{},"body":{"license.html":{}}}],["written",{"_index":1553,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1326,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":459,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1752,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
+ "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync, IsOptional } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EqQueryString.html":{"url":"interfaces/EqQueryString.html","title":"interface - EqQueryString","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EqQueryString\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-query-string.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n default_field\n \n \n \n Optional\n \n fields\n \n \n \n \n query\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n default_field\n \n \n \n \n \n \n \n \n default_field: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Default field to perform a search on, when\nno field is specified for the query\n\n \n \n \n \n \n \n \n \n \n fields\n \n \n \n \n \n \n \n \n fields: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Specific fields, to perform a search on\nCan't be specified with 'default_field'\n\n \n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n \n \n query: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Query string, that provides the data, to perform a search on\n\n \n \n \n \n \n \n\n\n \n export interface EqQueryString {\n /**\n * Query string, that provides the data, to perform a search on\n */\n query: string;\n\n /**\n * Default field to perform a search on, when \n * no field is specified for the query\n */\n default_field?: string;\n\n /**\n * Specific fields, to perform a search on\n * Can't be specified with 'default_field'\n */\n fields?: string[];\n\n /**\n * \n */\n\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsHitDto.html":{"url":"classes/EsHitDto.html","title":"class - EsHitDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsHitDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-hit.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n _score\n \n \n _source\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n _score\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiProperty({description: 'Relevance score', example: 1.2355})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-hit.dto.ts:44\n \n \n\n \n \n Hit relevance score\n\n \n \n\n \n \n \n \n \n \n \n \n _source\n \n \n \n \n \n \n Type : PaperDto\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@ApiProperty({description: 'Actual document (paper) stored in Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-hit.dto.ts:24\n \n \n\n \n \n Actual document stored in Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiProperty({description: 'List of objects that represents how the hit was sorted', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-hit.dto.ts:34\n \n \n\n \n \n List of objects that represents how the hit was sorted\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['sort', '_source', '_score'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\nexport class EsHitDto {\n /**\n * Actual document stored in Elasticsearch\n */\n @IsNotEmpty()\n @ApiProperty({\n description: 'Actual document (paper) stored in Elasticsearch',\n example: {\n id: 'sssss'\n }\n })\n _source: PaperDto;\n \n /**\n * List of objects that represents how the hit was sorted\n */\n @IsOptional()\n @ApiProperty({\n description: 'List of objects that represents how the hit was sorted',\n example: {}\n })\n sort?: [];\n\n /**\n * Hit relevance score\n */\n @IsOptional()\n @ApiProperty({\n description: 'Relevance score',\n example: 1.2355\n })\n _score?: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsPit.html":{"url":"interfaces/EsPit.html","title":"interface - EsPit","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsPit\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-pit.interface.ts\n \n\n\n \n Description\n \n \n Structure of PIT (Point-In-Time) object\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n PIT ID\n\n \n \n \n \n \n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n keep_alive: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Time to live of the PIT\n\n \n \n \n \n \n \n\n\n \n export interface EsPit {\n /**\n * PIT ID\n */\n id: string;\n\n /**\n * Time to live of the PIT\n */\n keep_alive: string;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsQuery.html":{"url":"interfaces/EsQuery.html","title":"interface - EsQuery","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsQuery\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-query.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n query_string: EqQueryString\n\n \n \n\n\n \n \n Type : EqQueryString\n\n \n \n\n\n\n\n\n \n \n Query string object, that specifies certain search conditions\n\n \n \n \n \n \n \n\n\n \n import { EqQueryString } from \"./es-query-string.interface\";\n\n/**\n * Structure of page metadata\n */\nexport interface EsQuery {\n /**\n * Query string object, that specifies certain search conditions\n */\n query_string: EqQueryString;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch query DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n pit\n \n \n query\n \n \n Optional\n search_after\n \n \n Optional\n size\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:70\n \n \n\n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'PIT object', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:48\n \n \n\n \n \n Object, that stores PIT ID and time alive\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : EsQuery\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsObject()@ApiProperty({description: 'Search query object passed to Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:37\n \n \n\n \n \n The search query object passed to Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n search_after\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:70\n \n \n\n \n \n Pagination info\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsDefined()@IsNumber()@IsInt()@ApiProperty({description: 'Maximum number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:26\n \n \n\n \n \n Maximum number of elements returned by Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:59\n \n \n\n \n \n Sorting info\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\nimport { EsPit } from \"../interfaces/es-pit.interface\";\nimport { EsQuery } from \"../interfaces/es-query.interface\"\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch query DTO\n */\n export class EsQueryDto {\n /**\n * Maximum number of elements returned by Elasticsearch\n */\n @IsOptional()\n @IsDefined()\n @IsNumber()\n @IsInt()\n @ApiProperty({\n description: 'Maximum number of elements returned by Elasticsearch',\n example: 30\n })\n size?: number;\n \n /**\n * The search query object passed to Elasticsearch\n */\n @IsDefined()\n @IsObject()\n @ApiProperty({\n description: 'Search query object passed to Elasticsearch',\n example: {},\n })\n query: EsQuery;\n\n /**\n * Object, that stores PIT ID and time alive\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'PIT object',\n example: {}\n })\n pit?: EsPit;\n\n /**\n * Sorting info\n */\n @IsOptional()\n @IsArray()\n @ApiProperty({\n description: '',\n example: []\n })\n sort?: unknown[];\n\n /**\n * Pagination info\n */\n @IsOptional()\n @IsArray()\n @ApiProperty({\n description: '',\n example: []\n })\n search_after?: unknown[];\n\n constructor() {\n this.size = 10;\n this.query = undefined;\n this.pit = undefined;\n this.sort = undefined;\n }\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n Optional\n pit_id\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: '_shards', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:55\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : EsResponseHits\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'hits', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:83\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n pit_id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsString()@IsOptional()@ApiProperty({description: 'PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:94\n \n \n\n \n \n ID of the PIT used in the search\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'timed_out', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:38\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'took', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:25\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseHits } from \"../interfaces/es-response-hits.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'took',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'timed_out',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: '_shards',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'hits',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {\n\n },\n fields: {\n\n }\n }],\n }\n })\n hits: EsResponseHits;\n\n /**\n * ID of the PIT used in the search\n */\n @IsString()\n @IsOptional()\n @ApiProperty({\n description: 'PIT ID used to search for results',\n example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='\n })\n pit_id?: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsResponseHits.html":{"url":"interfaces/EsResponseHits.html","title":"interface - EsResponseHits","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsResponseHits\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-response-hits.interface.ts\n \n\n\n \n Description\n \n \n Structure of 'hits' object of Elasticsearch response\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hits\n \n \n \n Optional\n \n max_score\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hits\n \n \n \n \n \n \n \n \n hits: EsHitDto[]\n\n \n \n\n\n \n \n Type : EsHitDto[]\n\n \n \n\n\n\n\n\n \n \n Array of search results\n\n \n \n \n \n \n \n \n \n \n max_score\n \n \n \n \n \n \n \n \n max_score: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Maximum score amongst all search results\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: object\n\n \n \n\n\n \n \n Type : object\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { EsHitDto } from \"../dtos/es-hit.dto\";\n\n/**\n * Structure of 'hits' object of Elasticsearch response\n */\nexport interface EsResponseHits {\n total: object;\n\n /**\n * Maximum score amongst all search results\n */\n max_score?: number;\n\n /**\n * Array of search results\n */\n hits: EsHitDto[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: PaperDto[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:32\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n PaperDto[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : PaperDto[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data the page contains', isArray: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:23\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMeta\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:32\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data the page contains',\n isArray: true,\n })\n readonly data: PaperDto[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: [],\n })\n readonly meta: PageMeta;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: PaperDto[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n Private\n prevSearch\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Public\n Async\n getPIT\n \n \n Async\n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService, searchService: SearchService)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:53\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n searchService\n \n \n SearchService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:169\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number, unit: EsTime)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:149\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n \n\n \n , amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n\n \n \n \n unit\n \n EsTime\n \n\n \n No\n \n\n \n EsTime.min\n \n\n \n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n PIT object containing PIT ID and keep_alive value\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n intercept\n \n \n \n \n \n \n \n intercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:64\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:137\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n prevSearch\n \n \n \n \n \n \n Type : PrevSearch\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:142\n \n \n\n \n \n Info about previously completed search\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { reverse } from \"dns\";\nimport { Observable, map, take } from \"rxjs\";\nimport { EsResponseDto, PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { SearchResultDto } from \"../domain/dtos/search-result.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/es-pit.interface\";\nimport { SearchInfo } from \"../domain/interfaces/search-info.interface\";\nimport { SearchService } from \"../services/common/search.service\";\n\nclass PrevSearch implements SearchInfo {\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n pit: EsPit;\n tiebreaker: unknown[];\n prevPage: number;\n\n public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {\n this.pit.id = pit.id;\n this.pit.keep_alive = pit.keep_alive;\n\n this.tiebreaker = tiebreaker.slice();\n\n this.prevPage = page;\n }\n\n public clearInfo() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n constructor(private readonly httpService: HttpService, private readonly searchService: SearchService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch.pit;\n request.es_query.search_after = this.prevSearch.tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 10 : query.limit,\n }; \n // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;\n // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n // Saving the search info\n this.prevSearch.pit.id = res.pit_id;\n this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;\n this.prevSearch.prevPage = query.page;\n\n let data = res.hits.hits.slice(-meta.pagesize);\n if (reverse) {\n console.log('REVERSE');\n this.prevSearch.tiebreaker = data[0].sort;\n data.reverse();\n reverse = false;\n }\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n res.keep_alive = alive + unit;\n resolve(res);\n }));\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n\n\n /**\n * OLD WAY PAGINATION\n * // Setting the page data\n // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n */\n\n\n // if (query.page == 1) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n // } else {\n // if (!this.prevSearch.isSet()) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n\n // request.es_query.size = query.limit * (query.page - 1);\n // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {\n // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;\n // });\n // } else {\n // if (query.page == this.prevSearch.prevPage) {\n // return;\n // } else {\n // request.es_query.pit = this.prevSearch.pit;\n // request.es_query.search_after = this.prevSearch.tiebreaker;\n // request.es_query.size = (query.page - this.prevSearch.prevPage);\n // }\n\n // // request.es_query.pit = this.prevSearch.pit;\n // // request.es_query.search_after = this.prevSearch.tiebreaker;\n // }\n // }\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Total search results\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Total search results\n */\n total: number;\n\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PaperDto.html":{"url":"classes/PaperDto.html","title":"class - PaperDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PaperDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/paper.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n authors\n \n \n content\n \n \n id\n \n \n summary\n \n \n tags\n \n \n title\n \n \n topic\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n authors\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of authors of the paper', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:46\n \n \n\n \n \n List of authors of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n content\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Contents of the paper presented in Markdown (.md) format', example: '...'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:88\n \n \n\n \n \n Contents of the paper [Markdown]\n\n \n \n\n \n \n \n \n \n \n \n \n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Unique ID of the paper', example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:24\n \n \n\n \n \n Unique ID of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n summary\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Summary of the paper. May be a short excerpt from the main text', example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:68\n \n \n\n \n \n Summary of the paper. May be a short excerpt from the main text.\n\n \n \n\n \n \n \n \n \n \n \n \n tags\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of tags, that show the certain topics/fields of knowledge paper is touching', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:79\n \n \n\n \n \n List of tags, that show the certain topics/fields of knowledge paper is touching\n\n \n \n\n \n \n \n \n \n \n \n \n title\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Title of the paper', example: 'Mucosal associated invariant T cell'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:35\n \n \n\n \n \n Title of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n topic\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Topic of the paper', example: 'Physics'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:57\n \n \n\n \n \n Topic of the paper\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { EsQueryDto } from \"./es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\nexport class PaperDto {\n /**\n * Unique ID of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Unique ID of the paper',\n example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'\n })\n id: string;\n \n /**\n * Title of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Title of the paper',\n example: 'Mucosal associated invariant T cell',\n })\n title: string;\n\n /**\n * List of authors of the paper\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of authors of the paper',\n example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']\n })\n authors: string[];\n\n /**\n * Topic of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Topic of the paper',\n example: 'Physics'\n })\n topic: string;\n\n /**\n * Summary of the paper. May be a short excerpt from the main text.\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Summary of the paper. May be a short excerpt from the main text',\n example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'\n })\n summary: string;\n\n /**\n * List of tags, that show the certain topics/fields of knowledge paper is touching\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',\n example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']\n })\n tags: string[];\n\n /**\n * Contents of the paper [Markdown]\n */\n @ApiProperty({\n description: 'Contents of the paper presented in Markdown (.md) format',\n example: '...'\n })\n content: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n \n Prefix\n \n \n papers\n \n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(query: RequestDto)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds papers by context based on the query.'})@ApiResponse({status: 200, description: 'Returns back acquired papers.', type: SearchResultDto})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:30\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n RequestDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds paper by its UUID.'})@ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto})@Get(':uuid')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:56\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiOperation, ApiResponse } from \"@nestjs/swagger\";\nimport { RequestDto } from \"src/core/domain/dtos/request.dto\";\n\n/**\n * /papers/ route controller\n */\n@Controller('papers')\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiOperation({ summary: 'Finds papers by context based on the query.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired papers.',\n type: SearchResultDto,\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Req() query: RequestDto): object {\n return this.searchService.findByContext(query.es_query).then(\n (response: SearchResultDto) => {\n return response.data;\n },\n (error: SearchResultDto) => {\n throw new HttpException(error.data, error.statusCode);\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiOperation({ summary: 'Finds paper by its UUID.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired paper.',\n type: SearchResultDto,\n })\n @Get(':uuid')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response) => {\n return response.data;\n },\n (error) => {\n throw new HttpException(error.data, error.status);\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PrevSearch.html":{"url":"classes/PrevSearch.html","title":"class - PrevSearch","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PrevSearch\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n\n\n \n Implements\n \n \n SearchInfo\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n pit\n \n \n prevPage\n \n \n tiebreaker\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Public\n clearInfo\n \n \n Public\n isSet\n \n \n Public\n saveInfo\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:17\n \n \n\n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:24\n \n \n\n\n \n \n \n \n \n \n \n \n prevPage\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:26\n \n \n\n\n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:25\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Public\n clearInfo\n \n \n \n \n \n \n \n clearInfo()\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:37\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n isSet\n \n \n \n \n \n \n \n isSet()\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:43\n \n \n\n\n \n \n\n \n Returns : boolean\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n saveInfo\n \n \n \n \n \n \n \n saveInfo(pit: EsPit, tiebreaker: [], page: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:28\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n pit\n \n EsPit\n \n\n \n No\n \n\n\n \n \n tiebreaker\n \n []\n \n\n \n No\n \n\n\n \n \n page\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { reverse } from \"dns\";\nimport { Observable, map, take } from \"rxjs\";\nimport { EsResponseDto, PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { SearchResultDto } from \"../domain/dtos/search-result.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/es-pit.interface\";\nimport { SearchInfo } from \"../domain/interfaces/search-info.interface\";\nimport { SearchService } from \"../services/common/search.service\";\n\nclass PrevSearch implements SearchInfo {\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n pit: EsPit;\n tiebreaker: unknown[];\n prevPage: number;\n\n public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {\n this.pit.id = pit.id;\n this.pit.keep_alive = pit.keep_alive;\n\n this.tiebreaker = tiebreaker.slice();\n\n this.prevPage = page;\n }\n\n public clearInfo() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n constructor(private readonly httpService: HttpService, private readonly searchService: SearchService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch.pit;\n request.es_query.search_after = this.prevSearch.tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 10 : query.limit,\n }; \n // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;\n // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n // Saving the search info\n this.prevSearch.pit.id = res.pit_id;\n this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;\n this.prevSearch.prevPage = query.page;\n\n let data = res.hits.hits.slice(-meta.pagesize);\n if (reverse) {\n console.log('REVERSE');\n this.prevSearch.tiebreaker = data[0].sort;\n data.reverse();\n reverse = false;\n }\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n res.keep_alive = alive + unit;\n resolve(res);\n }));\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n\n\n /**\n * OLD WAY PAGINATION\n * // Setting the page data\n // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n */\n\n\n // if (query.page == 1) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n // } else {\n // if (!this.prevSearch.isSet()) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n\n // request.es_query.size = query.limit * (query.page - 1);\n // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {\n // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;\n // });\n // } else {\n // if (query.page == this.prevSearch.prevPage) {\n // return;\n // } else {\n // request.es_query.pit = this.prevSearch.pit;\n // request.es_query.search_after = this.prevSearch.tiebreaker;\n // request.es_query.size = (query.page - this.prevSearch.prevPage);\n // }\n\n // // request.es_query.pit = this.prevSearch.pit;\n // // request.es_query.search_after = this.prevSearch.tiebreaker;\n // }\n // }\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestDto.html":{"url":"classes/RequestDto.html","title":"class - RequestDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/request.dto.ts\n \n\n\n \n Description\n \n \n Request object, which contains query parameters and Elasticsearch query object\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n es_query\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: SearchQueryDto, es_query: EsQueryDto)\n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:34\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n SearchQueryDto\n \n \n \n No\n \n \n \n \n es_query\n \n \n EsQueryDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n es_query\n \n \n \n \n \n \n Type : EsQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:34\n \n \n\n \n \n Elasticsearch query object\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : SearchQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:24\n \n \n\n \n \n Query parameters object\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { EsQueryDto } from \"./es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'es_query'];\n\n/**\n * Request object, which contains query parameters and Elasticsearch query object\n */\nexport class RequestDto {\n /**\n * Query parameters object\n */\n @IsDefined()\n @IsNotEmpty()\n @ApiProperty({\n description: '',\n example: {}\n })\n query: SearchQueryDto;\n \n /**\n * Elasticsearch query object\n */\n @IsOptional()\n @ApiProperty({\n description: '',\n example: {},\n })\n es_query?: EsQueryDto;\n\n /**\n * Constructs an object with provided parameters\n * @param query\n * @param es_query\n */\n constructor(query: SearchQueryDto, es_query: EsQueryDto) {\n this.query = query;\n this.es_query = es_query;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchInfo.html":{"url":"interfaces/SearchInfo.html","title":"interface - SearchInfo","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchInfo\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n\n\n \n Description\n \n \n Structure of search metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n pit\n \n \n \n \n \n \n \n \n pit: EsPit\n\n \n \n\n\n \n \n Type : EsPit\n\n \n \n\n\n\n\n\n \n \n Previous search saved PIT\n\n \n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n tiebreaker: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n Special tiebreaker used by Elasticsearch.\nIndicates the starting point of next search\n\n \n \n \n \n \n \n\n\n \n import { EsPit } from \"./es-pit.interface\";\n\n/**\n * Structure of search metadata\n */\nexport interface SearchInfo {\n /**\n * Previous search saved PIT\n */\n pit: EsPit;\n\n /**\n * Special tiebreaker used by Elasticsearch.\n * Indicates the starting point of next search\n */\n tiebreaker: unknown[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { PapersController } from \"src/application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\n\n/**\n * search module\n */\n@Module({\n imports: [\n HttpModule,\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:47\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:36\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:24\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n\n /**\n * Constructs an object with provided parameters\n * @param query \n * @param page \n * @param limit \n * @param order \n */\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.page = page;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: EsResponseDto)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:38\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n EsResponseDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : EsResponseDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:38\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:24\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseDto } from \"./es-response.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n \n },\n })\n data: EsResponseDto;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: EsResponseDto) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:14\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(es_query: EsQueryDto)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:68\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n es_query\n \n EsQueryDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:32\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:25\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { GatewayTimeoutException, Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { EsQueryDto } from \"src/core/domain/dtos/es-query.dto\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { EsTime } from \"src/core/domain/enums/es-time.enum\";\nimport { EsPit } from \"src/core/domain/interfaces/es-pit.interface\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let ESQ: EsQueryDto = new EsQueryDto;\n\n ESQ.size = 1;\n ESQ.query = {\n query_string: {\n query: ('id:' + uuid),\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: ESQ,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n throw new GatewayTimeoutException;\n // reject(new SearchResultDto(504, {message: 'Timed Out'}));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query, \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(es_query: EsQueryDto): Promise {\n console.log(`SEARCH|SERVICE: ${JSON.stringify(es_query, null, 2)}`);\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n throw new GatewayTimeoutException;\n // reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n}\n\n// let ESQ: EsQueryDto = new EsQueryDto;\n\n // if (limit) ESQ.size = limit;\n // ESQ.query = {\n // query_string: {\n // query: query_str,\n // default_field: 'content',\n // }\n // }\n // this.getPIT(1).then((pit) => {\n // ESQ.pit = pit;\n // });\n\n/**\n * Context\n * // let es_query = { // DTO\n // query: { // Interface\n // query_string: { // Interface\n // query: query_str,\n // default_field: \"content\"\n // }\n // },\n // }\n */\n\n/**\n * Single\n * // let es_query = {\n // query: {\n // query_string: {\n // query: 'id:' + uuid\n // }\n // },\n // }\n */\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-hit.dto.ts\n \n class\n EsHitDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/es-hit.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n class\n EsQueryDto\n \n 85 %\n (6/7)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n class\n PaperDto\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n class\n RequestDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/es-pit.interface.ts\n \n interface\n EsPit\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/interfaces/es-query-string.interface.ts\n \n interface\n EqQueryString\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/es-query.interface.ts\n \n interface\n EsQuery\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/domain/interfaces/es-response-hits.interface.ts\n \n interface\n EsResponseHits\n \n 75 %\n (3/4)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n interface\n SearchInfo\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n class\n PrevSearch\n \n 0 %\n (0/8)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 85 %\n (6/7)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n EsTime   (src/.../es-time.enum.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/es-time.enum.ts\n \n \n \n \n \n \n EsTime\n \n \n \n \n Elasticsearch time-units\n\n \n \n \n \n  days\n \n \n \n \n Value : d\n \n \n \n \n  hours\n \n \n \n \n Value : h\n \n \n \n \n  min\n \n \n \n \n Value : m\n \n \n \n \n  sec\n \n \n \n \n Value : s\n \n \n \n \n  ms\n \n \n \n \n Value : ms\n \n \n \n \n  us\n \n \n \n \n Value : micros\n \n \n \n \n  ns\n \n \n \n \n Value : nanos\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n Page display order\n\n \n \n \n \n  ASC\n \n \n \n \n Value : asc\n \n \n \n \n  DESC\n \n \n \n \n Value : desc\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 11 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 9 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../es-hit.dto.ts)\n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../paper.dto.ts)\n \n \n allowedProperties   (src/.../request.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/es-hit.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['sort', '_source', '_score']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/paper.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/request.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'es_query']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
}
diff --git a/documentation/miscellaneous/enumerations.html b/documentation/miscellaneous/enumerations.html
index 9b3d601..8d956d0 100644
--- a/documentation/miscellaneous/enumerations.html
+++ b/documentation/miscellaneous/enumerations.html
@@ -64,6 +64,9 @@
EnvObjects (src/.../env.objects.ts)
+
+ EsTime (src/.../es-time.enum.ts)
+
HttpResponseDescriptions (src/.../httpResponseDescriptions.enum.ts)
@@ -137,6 +140,95 @@
+
+ src/core/domain/enums/es-time.enum.ts
+
+
+
+
+
+
+ EsTime
+
+
+
+
+ Elasticsearch time-units
+
+
+
+
+
+ days
+
+
+
+
+ Value : d
+
+
+
+
+ hours
+
+
+
+
+ Value : h
+
+
+
+
+ min
+
+
+
+
+ Value : m
+
+
+
+
+ sec
+
+
+
+
+ Value : s
+
+
+
+
+ ms
+
+
+
+
+ Value : ms
+
+
+
+
+ us
+
+
+
+
+ Value : micros
+
+
+
+
+ ns
+
+
+
+
+ Value : nanos
+
+
+
+
src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts
@@ -1200,6 +1292,12 @@
Order
+
+
+
+
+
ASC
@@ -1207,7 +1305,7 @@
- Value : ASC
+ Value : asc
@@ -1217,7 +1315,7 @@
- Value : DESC
+ Value : desc
diff --git a/documentation/miscellaneous/variables.html b/documentation/miscellaneous/variables.html
index 1e20f8f..15e18c9 100644
--- a/documentation/miscellaneous/variables.html
+++ b/documentation/miscellaneous/variables.html
@@ -61,6 +61,9 @@
+
+ allowedProperties (src/.../es-hit.dto.ts)
+
allowedProperties (src/.../es-query.dto.ts)
@@ -70,6 +73,12 @@
allowedProperties (src/.../page.dto.ts)
+
+ allowedProperties (src/.../paper.dto.ts)
+
+
+ allowedProperties (src/.../request.dto.ts)
+
allowedProperties (src/.../search-q.dto.ts)
@@ -101,6 +110,41 @@
+ src/core/domain/dtos/es-hit.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['sort', '_source', '_score']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
src/core/domain/dtos/es-query.dto.ts
@@ -157,7 +201,7 @@
- Default value : ['took', 'timed_out', '_shards', 'hits']
+ Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']
@@ -206,6 +250,76 @@
+ src/core/domain/dtos/paper.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
+ src/core/domain/dtos/request.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['query', 'es_query']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
src/core/domain/dtos/search-q.dto.ts
diff --git a/documentation/modules/CommonModule/dependencies.svg b/documentation/modules/CommonModule/dependencies.svg
index 9675a86..17756f5 100644
--- a/documentation/modules/CommonModule/dependencies.svg
+++ b/documentation/modules/CommonModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_CommonModule
-
-cluster_CommonModule_exports
-
-
cluster_CommonModule_imports
+
+cluster_CommonModule_exports
+
+
HttpResponseModule
diff --git a/documentation/modules/SearchModule.html b/documentation/modules/SearchModule.html
index a145e1b..d6ede70 100644
--- a/documentation/modules/SearchModule.html
+++ b/documentation/modules/SearchModule.html
@@ -178,10 +178,8 @@
import { HttpModule } from "@nestjs/axios";
import { Module } from "@nestjs/common";
-import { ConfigModule } from "@nestjs/config";
import { PapersController } from "src/application";
import { SearchService } from "../../core/services/common/search.service";
-import { configuration } from "../config";
/**
* search module
diff --git a/documentation/modules/SearchModule/dependencies.svg b/documentation/modules/SearchModule/dependencies.svg
index bfd3490..3d5fb1d 100644
--- a/documentation/modules/SearchModule/dependencies.svg
+++ b/documentation/modules/SearchModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_SearchModule
-
-cluster_SearchModule_exports
-
-
cluster_SearchModule_providers
+
+cluster_SearchModule_exports
+
+
SearchService
diff --git a/documentation/overview.html b/documentation/overview.html
index 75250dc..5138f8f 100644
--- a/documentation/overview.html
+++ b/documentation/overview.html
@@ -301,7 +301,7 @@
@@ -317,7 +317,7 @@
-
4 Interfaces
+
9 Interfaces
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index b792ba7..a251822 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -1,11 +1,9 @@
import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
-import { Response } from "express";
import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-import { LoggerInterceptor } from "src/core/interceptors";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
import { ApiOperation, ApiResponse } from "@nestjs/swagger";
-import { SearchQueryDto } from "src/core/domain/dtos";
+import { RequestDto } from "src/core/domain/dtos/request.dto";
/**
* /papers/ route controller
@@ -29,8 +27,8 @@ export class PapersController {
@Get('search')
@UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByContext(@Query() query): object {
- return this.searchService.findByContext(query.query).then(
+ getByContext(@Req() query: RequestDto): object {
+ return this.searchService.findByContext(query.es_query).then(
(response: SearchResultDto) => {
return response.data;
},
diff --git a/src/core/domain/dtos/es-hit.dto.ts b/src/core/domain/dtos/es-hit.dto.ts
new file mode 100644
index 0000000..1334729
--- /dev/null
+++ b/src/core/domain/dtos/es-hit.dto.ts
@@ -0,0 +1,45 @@
+import { ApiProperty } from "@nestjs/swagger";
+import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { PaperDto } from "./paper.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['sort', '_source', '_score'];
+
+/**
+ * Structure of the document stored and retrieved from Elasticsearch
+ */
+export class EsHitDto {
+ /**
+ * Actual document stored in Elasticsearch
+ */
+ @IsNotEmpty()
+ @ApiProperty({
+ description: 'Actual document (paper) stored in Elasticsearch',
+ example: {
+ id: 'sssss'
+ }
+ })
+ _source: PaperDto;
+
+ /**
+ * List of objects that represents how the hit was sorted
+ */
+ @IsOptional()
+ @ApiProperty({
+ description: 'List of objects that represents how the hit was sorted',
+ example: {}
+ })
+ sort?: [];
+
+ /**
+ * Hit relevance score
+ */
+ @IsOptional()
+ @ApiProperty({
+ description: 'Relevance score',
+ example: 1.2355
+ })
+ _score?: number;
+}
\ No newline at end of file
diff --git a/src/core/domain/dtos/es-query.dto.ts b/src/core/domain/dtos/es-query.dto.ts
index 6bac065..5c9fd6b 100644
--- a/src/core/domain/dtos/es-query.dto.ts
+++ b/src/core/domain/dtos/es-query.dto.ts
@@ -1,5 +1,7 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-validator";
+import { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
+import { EsPit } from "../interfaces/es-pit.interface";
+import { EsQuery } from "../interfaces/es-query.interface"
/**
* List of allowed properties in this DTO
@@ -13,6 +15,7 @@ import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-validato
/**
* Maximum number of elements returned by Elasticsearch
*/
+ @IsOptional()
@IsDefined()
@IsNumber()
@IsInt()
@@ -20,7 +23,7 @@ import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-validato
description: 'Maximum number of elements returned by Elasticsearch',
example: 30
})
- size: number;
+ size?: number;
/**
* The search query object passed to Elasticsearch
@@ -29,17 +32,51 @@ import { IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject } from "class-validato
@IsObject()
@ApiProperty({
description: 'Search query object passed to Elasticsearch',
- example: false,
+ example: {},
})
- query: object;
+ query: EsQuery;
/**
- * Object, that stores Point-In-Time ID and time alive
+ * Object, that stores PIT ID and time alive
*/
- pit: object;
+ @IsOptional()
+ @IsObject()
+ @ApiProperty({
+ description: 'PIT object',
+ example: {}
+ })
+ pit?: EsPit;
/**
- * Object, that stores
+ * Sorting info
*/
- sort: object;
+ @IsOptional()
+ @IsArray()
+ @ApiProperty({
+ description: '',
+ example: []
+ })
+ sort?: unknown[];
+
+ /**
+ * Pagination info
+ */
+ @IsOptional()
+ @IsArray()
+ @ApiProperty({
+ description: '',
+ example: []
+ })
+ search_after?: unknown[];
+
+ /**
+ * Constructs an empty object
+ */
+ constructor() {
+ this.size = 10;
+ this.query = undefined;
+ this.pit = undefined;
+ this.sort = undefined;
+ this.search_after = undefined;
+ }
}
\ No newline at end of file
diff --git a/src/core/domain/dtos/es-response.dto.ts b/src/core/domain/dtos/es-response.dto.ts
index f7899b4..84bc76b 100644
--- a/src/core/domain/dtos/es-response.dto.ts
+++ b/src/core/domain/dtos/es-response.dto.ts
@@ -1,10 +1,11 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
+import { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from "class-validator";
+import { EsResponseHits } from "../interfaces/es-response-hits.interface";
/**
* List of allowed properties in this DTO
*/
-const allowedProperties = ['took', 'timed_out', '_shards', 'hits'];
+const allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];
/**
* Elasticsearch response DTO
@@ -79,5 +80,16 @@ export class EsResponseDto {
}],
}
})
- hits: object;
+ hits: EsResponseHits;
+
+ /**
+ * ID of the PIT used in the search
+ */
+ @IsString()
+ @IsOptional()
+ @ApiProperty({
+ description: 'PIT ID used to search for results',
+ example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='
+ })
+ pit_id?: string;
}
\ No newline at end of file
diff --git a/src/core/domain/dtos/page.dto.ts b/src/core/domain/dtos/page.dto.ts
index 93575c6..8c0ab24 100644
--- a/src/core/domain/dtos/page.dto.ts
+++ b/src/core/domain/dtos/page.dto.ts
@@ -1,6 +1,7 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsArray } from "class-validator";
import { PageMeta } from "../interfaces/page-meta.interface";
+import { PaperDto } from "./paper.dto";
/**
* List of allowed properties in this DTO
@@ -10,7 +11,7 @@ const allowedProperties = ['data', 'meta'];
/**
* Page model for pagination
*/
-export class PageDto {
+export class PageDto {
/**
* Data block of the page
*/
@@ -19,7 +20,7 @@ export class PageDto {
description: 'All data the page contains',
isArray: true,
})
- readonly data: T[];
+ readonly data: PaperDto[];
/**
* Metadata of the page
@@ -35,7 +36,7 @@ export class PageDto {
* @param data
* @param meta
*/
- constructor(data: T[], meta: PageMeta) {
+ constructor(data: PaperDto[], meta: PageMeta) {
this.data = data;
this.meta = meta;
}
diff --git a/src/core/domain/dtos/paper.dto.ts b/src/core/domain/dtos/paper.dto.ts
new file mode 100644
index 0000000..5ee8e60
--- /dev/null
+++ b/src/core/domain/dtos/paper.dto.ts
@@ -0,0 +1,89 @@
+import { ApiProperty } from "@nestjs/swagger";
+import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { EsQueryDto } from "./es-query.dto";
+import { SearchQueryDto } from "./search-q.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];
+
+/**
+ * Structure of the document stored and retrieved from Elasticsearch
+ */
+export class PaperDto {
+ /**
+ * Unique ID of the paper
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Unique ID of the paper',
+ example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'
+ })
+ id: string;
+
+ /**
+ * Title of the paper
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Title of the paper',
+ example: 'Mucosal associated invariant T cell',
+ })
+ title: string;
+
+ /**
+ * List of authors of the paper
+ */
+ @IsNotEmpty()
+ @IsArray()
+ @ApiProperty({
+ description: 'List of authors of the paper',
+ example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']
+ })
+ authors: string[];
+
+ /**
+ * Topic of the paper
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Topic of the paper',
+ example: 'Physics'
+ })
+ topic: string;
+
+ /**
+ * Summary of the paper. May be a short excerpt from the main text.
+ */
+ @IsNotEmpty()
+ @IsString()
+ @ApiProperty({
+ description: 'Summary of the paper. May be a short excerpt from the main text',
+ example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'
+ })
+ summary: string;
+
+ /**
+ * List of tags, that show the certain topics/fields of knowledge paper is touching
+ */
+ @IsNotEmpty()
+ @IsArray()
+ @ApiProperty({
+ description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',
+ example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']
+ })
+ tags: string[];
+
+ /**
+ * Contents of the paper [Markdown]
+ */
+ @ApiProperty({
+ description: 'Contents of the paper presented in Markdown (.md) format',
+ example: '...'
+ })
+ content: string;
+}
\ No newline at end of file
diff --git a/src/core/domain/dtos/request.dto.ts b/src/core/domain/dtos/request.dto.ts
new file mode 100644
index 0000000..fffc0ea
--- /dev/null
+++ b/src/core/domain/dtos/request.dto.ts
@@ -0,0 +1,45 @@
+import { ApiProperty } from "@nestjs/swagger";
+import { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { EsQueryDto } from "./es-query.dto";
+import { SearchQueryDto } from "./search-q.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['query', 'es_query'];
+
+/**
+ * Request object, which contains query parameters and Elasticsearch query object
+ */
+export class RequestDto {
+ /**
+ * Query parameters object
+ */
+ @IsDefined()
+ @IsNotEmpty()
+ @ApiProperty({
+ description: '',
+ example: {}
+ })
+ query: SearchQueryDto;
+
+ /**
+ * Elasticsearch query object
+ */
+ @IsOptional()
+ @ApiProperty({
+ description: '',
+ example: {},
+ })
+ es_query?: EsQueryDto;
+
+ /**
+ * Constructs an object with provided parameters
+ * @param query
+ * @param es_query
+ */
+ constructor(query: SearchQueryDto, es_query: EsQueryDto) {
+ this.query = query;
+ this.es_query = es_query;
+ }
+}
\ No newline at end of file
diff --git a/src/core/domain/dtos/search-result.dto.ts b/src/core/domain/dtos/search-result.dto.ts
index 493fae2..5097f64 100644
--- a/src/core/domain/dtos/search-result.dto.ts
+++ b/src/core/domain/dtos/search-result.dto.ts
@@ -1,5 +1,6 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { EsResponseDto } from "./es-response.dto";
/**
* List of allowed properties in this DTO
@@ -34,14 +35,14 @@ export class SearchResultDto {
},
})
- data: object;
+ data: EsResponseDto;
/**
* Constructs an object with provided parameters
* @param code
* @param data
*/
- constructor(code: number, data: object) {
+ constructor(code: number, data: EsResponseDto) {
this.statusCode = code;
this.data = data;
}
diff --git a/src/core/domain/enums/es-time.enum.ts b/src/core/domain/enums/es-time.enum.ts
new file mode 100644
index 0000000..7c5a5b6
--- /dev/null
+++ b/src/core/domain/enums/es-time.enum.ts
@@ -0,0 +1,12 @@
+/**
+ * Elasticsearch time-units
+ */
+export enum EsTime {
+ days = 'd',
+ hours = 'h',
+ min = 'm',
+ sec = 's',
+ ms = 'ms',
+ us = 'micros',
+ ns = 'nanos'
+}
\ No newline at end of file
diff --git a/src/core/domain/enums/page-order.enum.ts b/src/core/domain/enums/page-order.enum.ts
index d310044..942cd68 100644
--- a/src/core/domain/enums/page-order.enum.ts
+++ b/src/core/domain/enums/page-order.enum.ts
@@ -1,4 +1,7 @@
+/**
+ * Page display order
+ */
export enum Order {
- ASC = 'ASC',
- DESC = 'DESC',
+ ASC = 'asc',
+ DESC = 'desc',
}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/es-pit.interface.ts b/src/core/domain/interfaces/es-pit.interface.ts
new file mode 100644
index 0000000..d33f9e9
--- /dev/null
+++ b/src/core/domain/interfaces/es-pit.interface.ts
@@ -0,0 +1,14 @@
+/**
+ * Structure of PIT (Point-In-Time) object
+ */
+export interface EsPit {
+ /**
+ * PIT ID
+ */
+ id: string;
+
+ /**
+ * Time to live of the PIT
+ */
+ keep_alive: string;
+}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/es-query-string.interface.ts b/src/core/domain/interfaces/es-query-string.interface.ts
new file mode 100644
index 0000000..55c1ee6
--- /dev/null
+++ b/src/core/domain/interfaces/es-query-string.interface.ts
@@ -0,0 +1,26 @@
+/**
+ * Structure of page metadata
+ */
+ export interface EqQueryString {
+ /**
+ * Query string, that provides the data, to perform a search on
+ */
+ query: string;
+
+ /**
+ * Default field to perform a search on, when
+ * no field is specified for the query
+ */
+ default_field?: string;
+
+ /**
+ * Specific fields, to perform a search on
+ * Can't be specified with 'default_field'
+ */
+ fields?: string[];
+
+ /**
+ *
+ */
+
+}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/es-query.interface.ts b/src/core/domain/interfaces/es-query.interface.ts
new file mode 100644
index 0000000..b33d239
--- /dev/null
+++ b/src/core/domain/interfaces/es-query.interface.ts
@@ -0,0 +1,11 @@
+import { EqQueryString } from "./es-query-string.interface";
+
+/**
+ * Structure of page metadata
+ */
+export interface EsQuery {
+ /**
+ * Query string object, that specifies certain search conditions
+ */
+ query_string: EqQueryString;
+}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/es-response-hits.interface.ts b/src/core/domain/interfaces/es-response-hits.interface.ts
new file mode 100644
index 0000000..32db4de
--- /dev/null
+++ b/src/core/domain/interfaces/es-response-hits.interface.ts
@@ -0,0 +1,21 @@
+import { EsHitDto } from "../dtos/es-hit.dto";
+
+/**
+ * Structure of 'hits' object of Elasticsearch response
+ */
+export interface EsResponseHits {
+ /**
+ * Object containing info about hits
+ */
+ total: object;
+
+ /**
+ * Maximum score amongst all search results
+ */
+ max_score?: number;
+
+ /**
+ * Array of search results
+ */
+ hits: EsHitDto[];
+}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/index.ts b/src/core/domain/interfaces/index.ts
index 85904a9..8c2a188 100644
--- a/src/core/domain/interfaces/index.ts
+++ b/src/core/domain/interfaces/index.ts
@@ -1,2 +1,4 @@
export * from './http-response.interface';
-export * from './page-meta.interface'
\ No newline at end of file
+export * from './page-meta.interface'
+export * from './es-query.interface'
+export * from './es-query-string.interface'
\ No newline at end of file
diff --git a/src/core/domain/interfaces/search-info.interface.ts b/src/core/domain/interfaces/search-info.interface.ts
new file mode 100644
index 0000000..4ad0b9c
--- /dev/null
+++ b/src/core/domain/interfaces/search-info.interface.ts
@@ -0,0 +1,17 @@
+import { EsPit } from "./es-pit.interface";
+
+/**
+ * Structure of search metadata
+ */
+export interface SearchInfo {
+ /**
+ * Previous search saved PIT
+ */
+ pit: EsPit;
+
+ /**
+ * Special tiebreaker used by Elasticsearch.
+ * Indicates the starting point of next search
+ */
+ tiebreaker: unknown[];
+}
\ No newline at end of file
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 9217c53..492b208 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -1,62 +1,195 @@
+import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
-import { MetadataScanner } from "@nestjs/core";
-import { Observable, map } from "rxjs";
+import { Observable, map, take } from "rxjs";
import { PageDto } from "../domain/dtos";
+import { EsQueryDto } from "../domain/dtos/es-query.dto";
+import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
-import { SearchResultDto } from "../domain/dtos/search-result.dto";
+import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
+import { EsPit } from "../domain/interfaces/es-pit.interface";
+import { SearchInfo } from "../domain/interfaces/search-info.interface";
+
+/**
+ * Previous search data storage
+ */
+class PrevSearch implements SearchInfo {
+ /**
+ * Constructs an uninitialized object
+ */
+ constructor() {
+ this.pit = undefined;
+ this.tiebreaker = undefined;
+ this.prevPage = -1;
+ }
+
+ /**
+ * PIT object of the previous search
+ */
+ pit: EsPit;
+
+ /**
+ * Tiebreaker and sort parameters
+ */
+ tiebreaker: unknown[];
+
+ /**
+ * Number of the previous page
+ */
+ prevPage: number;
+
+ /**
+ * Checks if there was the search before current one
+ * @returns true/false, showing whether or not there was another search before
+ */
+ public isSet(): boolean {
+ if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;
+ return false;
+ }
+}
/**
* Pagination-implementing interceptor
*/
@Injectable()
export class PageInterceptor implements NestInterceptor {
+ /**
+ * Injects needed dependencies and instantiates the storage object
+ * @param httpService
+ * @param searchService
+ */
+ constructor(private readonly httpService: HttpService) {
+ this.prevSearch = new PrevSearch;
+ }
+
/**
* Override of intercept() method, specified in NestInterceptor interface
* @param context
* @param next
* @returns Page with content and metadata
*/
- intercept(context: ExecutionContext, next: CallHandler): Observable> {
- const request = context.switchToHttp().getRequest();
+ async intercept(context: ExecutionContext, next: CallHandler): Promise> {
+ let request: RequestDto = context.switchToHttp().getRequest();
const query: SearchQueryDto = request.query;
+ let reverse: boolean = false;
+
+ request.es_query = new EsQueryDto();
+
+ request.es_query.query = {
+ query_string: {
+ query: query.query,
+ default_field: 'content',
+ }
+ };
+ request.es_query.sort = [
+ { _score: { order: !query?.order ? Order.DESC : query.order } },
+ { _shard_doc: 'desc' }
+ ];
+
+ if (this.prevSearch.isSet()) {
+ request.es_query.pit = this.prevSearch.pit;
+ request.es_query.search_after = this.prevSearch.tiebreaker;
+
+ let limit = !query?.limit ? 10 : query.limit;
+ request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);
+
+ if (query.page < this.prevSearch.prevPage) {
+ request.es_query.sort = [{ _score: { order: 'asc' } }];
+ request.es_query.size += limit - 1;
+ reverse = true;
+ } else if (query.page == this.prevSearch.prevPage) {
+ //...
+ }
+ } else {
+ this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+
+ let limit = !query?.limit ? 10 : query.limit;
+ request.es_query.size = limit * query.page;
+ }
return next.handle().pipe(
map((res) => {
+ // Setting the page meta-data
let meta: PageMeta = {
- total: res.total.value,
+ total: res.hits.total.value,
pagenum: !query?.page ? 1 : query.page,
order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
- hasNext: false,
- hasPrev: false,
+ hasNext: undefined,
+ hasPrev: undefined,
pagesize: !query?.limit ? 10 : query.limit,
- };
+ };
+ meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
+ meta.hasPrev = meta.pagenum != 1 ? true : false;
- meta.hasNext = res.hits[meta.pagenum * meta.pagesize] ? true : false;
- meta.hasPrev = res.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;
+ // Saving the search info
+ this.prevSearch.pit.id = res.pit_id;
+ this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
+ this.prevSearch.prevPage = query.page;
- const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);
+ // Check if the performed search is a backward search
+ let data = res.hits.hits.slice(-meta.pagesize);
+ if (reverse) {
+ this.prevSearch.tiebreaker = data[0]?.sort;
+ data.reverse();
+ reverse = false;
+ }
+ // Return the page
return new PageDto(data, meta);
})
);
}
- // getQueryParams(str: string): any {
- // let parameters: object = {};
- // let pairs: string[] = str.split(',');
- // parameters['main'] = pairs[0];
- // pairs.shift();
+ /**
+ * Elastichsearch server port-number
+ */
+ private readonly ES_PORT = process.env.ES_PORT;
- // if(!pairs || pairs[0] === '') return parameters;
+ /**
+ * Info about previously completed search
+ */
+ private prevSearch: PrevSearch;
- // for (const pair of pairs) {
- // const key: string = pair.substring(0, pair.indexOf('='));
- // const value: string = pair.substring(pair.indexOf('=') + 1);
- // parameters[key] = value;
- // }
+ /**
+ * Acquires a PIT ID from Elasticsearch, needed for a request
+ * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.
+ * @returns PIT object containing PIT ID and keep_alive value
+ */
+ public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {
+ return new Promise((resolve, reject) => {
+ try {
+ (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ res.keep_alive = alive + unit;
+ resolve(res);
+ }));
+ } catch (error) {
+ reject(error);
+ }
+ });
+ }
- // return parameters;
- // }
+ /**
+ * Deletes the PIT specified by provided ID
+ * @param pitID, ID of the PIT, that would be deleted
+ * @returns true/false, depending on the result of deletion of the PIT
+ */
+ async deletePIT(pitID: string): Promise {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
+ }
}
\ No newline at end of file
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index 7339362..bcb3278 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,8 +1,11 @@
import { HttpService } from "@nestjs/axios";
-import { Injectable } from "@nestjs/common";
+import { GatewayTimeoutException, Injectable } from "@nestjs/common";
import { map, take } from "rxjs";
import { EsResponseDto } from "src/core/domain/dtos";
+import { EsQueryDto } from "src/core/domain/dtos/es-query.dto";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
+import { EsTime } from "src/core/domain/enums/es-time.enum";
+import { EsPit } from "src/core/domain/interfaces/es-pit.interface";
/**
* Search service provider
@@ -27,27 +30,29 @@ export class SearchService {
* @returns Elasticsearch hits or an error object
*/
async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?
- let es_query = {
- query: {
- query_string: {
- query: 'id:' + uuid
- }
- },
+ let ESQ: EsQueryDto = new EsQueryDto;
+
+ ESQ.size = 1;
+ ESQ.query = {
+ query_string: {
+ query: ('id:' + uuid),
+ }
}
return new Promise((resolve, reject) => {
try {
(this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
- data: es_query,
+ data: ESQ,
headers: {'Content-Type': 'application/json'},
}))
.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- reject(new SearchResultDto(504, {message: 'Timed Out'}));
+ throw new GatewayTimeoutException;
+ // reject(new SearchResultDto(504, {message: 'Timed Out'}));
}
- resolve(new SearchResultDto(200, res.hits));
+ resolve(new SearchResultDto(200, res));
});
} catch (error) {
reject(new SearchResultDto(700, error));
@@ -57,21 +62,11 @@ export class SearchService {
/**
* Finds relevant documents by context using the given query string
- * @param query_str
+ * @param query,
* @returns Elasticsearch hits or an error object
*/
- async findByContext(query_str: string): Promise {
- let es_query = {
- query: {
- query_string: {
- query: query_str,
- default_field: "content"
- }
- },
- }
-
- let pitID = this.getPIT(1);
-
+ async findByContext(es_query: EsQueryDto): Promise {
+ console.log(`SEARCH|SERVICE: ${JSON.stringify(es_query, null, 2)}`);
return new Promise((resolve, reject) => {
try {
(this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
@@ -81,55 +76,51 @@ export class SearchService {
.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
- }
-
- resolve(new SearchResultDto(200, res.hits));
+ throw new GatewayTimeoutException;
+ // reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
+ }
+
+ resolve(new SearchResultDto(200, res));
});
} catch (error) {
reject(new SearchResultDto(700, error));
}
});
}
+}
- /**
- * Acquires a PIT ID from Elasticsearch, needed for a request
- * @param alive, amount of time in minutes (defaults to 1)
- * @returns Point-In-Time ID
- */
- async getPIT(alive: number = 1): Promise {
- return new Promise((resolve, reject) => {
- try {
- (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive}m`)
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
- resolve(res.id);
- }));
- } catch (error) {
- reject(error);
- }
- });
- }
+// let ESQ: EsQueryDto = new EsQueryDto;
- /**
- * Deletes the PIT specified by provided ID
- * @param pitID, ID of the PIT, that would be deleted
- * @returns true/false, depending on the result of deletion of the PIT
- */
- async deletePIT(pitID: string): Promise {
- return new Promise((resolve, reject) => {
- try {
- this.httpService.delete(`http://localhost:${this.ES_PORT}/papers/_pit`, {
- data: { id: pitID },
- headers: { 'Content-Type': 'application/json' },
- })
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
- resolve(res.succeeded);
- });
- } catch (error) {
- reject(error);
- }
- })
- }
-}
\ No newline at end of file
+ // if (limit) ESQ.size = limit;
+ // ESQ.query = {
+ // query_string: {
+ // query: query_str,
+ // default_field: 'content',
+ // }
+ // }
+ // this.getPIT(1).then((pit) => {
+ // ESQ.pit = pit;
+ // });
+
+/**
+ * Context
+ * // let es_query = { // DTO
+ // query: { // Interface
+ // query_string: { // Interface
+ // query: query_str,
+ // default_field: "content"
+ // }
+ // },
+ // }
+ */
+
+/**
+ * Single
+ * // let es_query = {
+ // query: {
+ // query_string: {
+ // query: 'id:' + uuid
+ // }
+ // },
+ // }
+ */
\ No newline at end of file
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index a719b15..057ec1c 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -1,112 +1,112 @@
-// import { CallHandler, ExecutionContext } from "@nestjs/common";
-import { HttpModule } from "@nestjs/axios";
-import { Test } from "@nestjs/testing";
-import { Observable, of } from "rxjs";
-import { PapersController } from "src/application";
-import { Order } from "src/core/domain";
-import { PageDto, SearchQueryDto } from "src/core/domain/dtos";
-import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-import { SearchService } from "src/core/services/common/search.service";
+// // import { CallHandler, ExecutionContext } from "@nestjs/common";
+// import { HttpModule } from "@nestjs/axios";
+// import { Test } from "@nestjs/testing";
+// import { Observable, of } from "rxjs";
+// import { PapersController } from "src/application";
+// import { Order } from "src/core/domain";
+// import { PageDto, SearchQueryDto } from "src/core/domain/dtos";
+// import { PageInterceptor } from "src/core/interceptors/page.interceptor";
+// import { SearchService } from "src/core/services/common/search.service";
-const executionContext = {
- switchToHttp: jest.fn().mockReturnThis(),
- getRequest: jest.fn().mockReturnThis(),
- getHandler: jest.fn().mockReturnThis(),
- getArgs: jest.fn().mockReturnThis(),
- getArgByIndex: jest.fn().mockReturnThis(),
- switchToRpc: jest.fn().mockReturnThis(),
- switchToWs: jest.fn().mockReturnThis(),
- getType: jest.fn().mockReturnThis(),
- getClass: jest.fn().mockReturnThis(),
- };
+// const executionContext = {
+// switchToHttp: jest.fn().mockReturnThis(),
+// getRequest: jest.fn().mockReturnThis(),
+// getHandler: jest.fn().mockReturnThis(),
+// getArgs: jest.fn().mockReturnThis(),
+// getArgByIndex: jest.fn().mockReturnThis(),
+// switchToRpc: jest.fn().mockReturnThis(),
+// switchToWs: jest.fn().mockReturnThis(),
+// getType: jest.fn().mockReturnThis(),
+// getClass: jest.fn().mockReturnThis(),
+// };
- const callHandler = {
- handle: jest.fn(),
- };
+// const callHandler = {
+// handle: jest.fn(),
+// };
-describe('Testing PageInterceptor', () => {
- let pageInter: PageInterceptor;
- let moduleRef;
+// describe('Testing PageInterceptor', () => {
+// let pageInter: PageInterceptor;
+// let moduleRef;
- beforeEach(async () => {
- moduleRef = await Test.createTestingModule({
- imports: [HttpModule],
- controllers: [PapersController],
- providers: [SearchService, PageInterceptor],
- }).compile();
+// beforeEach(async () => {
+// moduleRef = await Test.createTestingModule({
+// imports: [HttpModule],
+// controllers: [PapersController],
+// providers: [SearchService, PageInterceptor],
+// }).compile();
- pageInter = moduleRef.get(PageInterceptor);
- });
+// pageInter = moduleRef.get(PageInterceptor);
+// });
- describe('intercept()', () => {
- it('Should be defined', () => {
- expect(pageInter).toBeDefined();
- });
+// describe('intercept()', () => {
+// it('Should be defined', () => {
+// expect(pageInter).toBeDefined();
+// });
- it('Should return an Observable with a page of type PageDto', (done) => {
- executionContext.getRequest.mockReturnValue( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
- callHandler.handle.mockReturnValue( of({
- total: { value: 1 },
- hits: [{},],
- }));
+// it('Should return an Observable with a page of type PageDto', (done) => {
+// executionContext.getRequest.mockReturnValue( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
+// callHandler.handle.mockReturnValue( of({
+// total: { value: 1 },
+// hits: [{},],
+// }));
- expect(pageInter.intercept(executionContext, callHandler)).toBeInstanceOf(Observable);
- pageInter.intercept(executionContext, callHandler).subscribe((data) => {
- expect(data).toBeInstanceOf(PageDto);
- done();
- });
- })
+// expect(pageInter.intercept(executionContext, callHandler)).toBeInstanceOf(Observable);
+// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
+// expect(data).toBeInstanceOf(PageDto);
+// done();
+// });
+// })
- it('Should hold content on the returned page', (done) => {
- executionContext.getRequest.mockReturnValueOnce( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
- callHandler.handle.mockReturnValueOnce(of({
- total: { value: 1 },
- hits: [{dummy: 'dum'}],
- }));
+// it('Should hold content on the returned page', (done) => {
+// executionContext.getRequest.mockReturnValueOnce( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
+// callHandler.handle.mockReturnValueOnce(of({
+// total: { value: 1 },
+// hits: [{dummy: 'dum'}],
+// }));
- pageInter.intercept(executionContext, callHandler).subscribe((data) => {
- expect(data).toEqual({
- data: expect.anything(),
- meta: expect.anything(),
- });
- done();
- });
- });
+// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
+// expect(data).toEqual({
+// data: expect.anything(),
+// meta: expect.anything(),
+// });
+// done();
+// });
+// });
- it('Should have next page', (done) => {
- executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 1, 5, 'desc') });
- callHandler.handle.mockReturnValue(of({
- total: { value: 10 },
- hits: Array(10).fill({dummy: 'dum'}, 0, 10),
- }));
+// it('Should have next page', (done) => {
+// executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 1, 5, 'desc') });
+// callHandler.handle.mockReturnValue(of({
+// total: { value: 10 },
+// hits: Array(10).fill({dummy: 'dum'}, 0, 10),
+// }));
- pageInter.intercept(executionContext, callHandler).subscribe((data) => {
- expect(data.meta.hasNext).toEqual(true);
- expect(data.meta.hasPrev).toEqual(false);
- done();
- });
- });
+// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
+// expect(data.meta.hasNext).toEqual(true);
+// expect(data.meta.hasPrev).toEqual(false);
+// done();
+// });
+// });
- it('Should have correct meta-data', (done) => {
- executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 2, 5, 'asc') });
- callHandler.handle.mockReturnValue(of({
- total: { value: 15 },
- hits: Array(15).fill({dummy: 'dum'}, 0, 15),
- }));
+// it('Should have correct meta-data', (done) => {
+// executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 2, 5, 'asc') });
+// callHandler.handle.mockReturnValue(of({
+// total: { value: 15 },
+// hits: Array(15).fill({dummy: 'dum'}, 0, 15),
+// }));
- pageInter.intercept(executionContext, callHandler).subscribe((data) => {
- expect(data.meta).toEqual({
- total: 15,
- pagenum: 2,
- order: Order.ASC,
- hasNext: true,
- hasPrev: true,
- pagesize: 5
- });
- done();
- });
- });
- });
+// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
+// expect(data.meta).toEqual({
+// total: 15,
+// pagenum: 2,
+// order: Order.ASC,
+// hasNext: true,
+// hasPrev: true,
+// pagesize: 5
+// });
+// done();
+// });
+// });
+// });
-});
\ No newline at end of file
+// });
\ No newline at end of file
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index 5c6406e..d9c5d58 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -1,103 +1,112 @@
-import { HttpService } from "@nestjs/axios";
-import { ConfigModule } from "@nestjs/config";
-import { Test } from "@nestjs/testing";
-import { of } from "rxjs";
-import { HttpResponseException } from "src/core/exceptions";
-import { SearchService } from "src/core/services/common/search.service";
+// import { HttpService } from "@nestjs/axios";
+// import { ConfigModule } from "@nestjs/config";
+// import { Test } from "@nestjs/testing";
+// import exp from "constants";
+// import { of } from "rxjs";
+// import { EsTime } from "src/core/domain/enums/es-time.enum";
+// import { HttpResponseException } from "src/core/exceptions";
+// import { SearchService } from "src/core/services/common/search.service";
-describe('Unit tests for SearchService', () => {
- let searchService: SearchService;
- let httpService: HttpService;
+// describe('Unit tests for SearchService', () => {
+// let searchService: SearchService;
+// let httpService: HttpService;
- beforeAll(async () => {
- const moduleRef = await Test.createTestingModule({
- providers: [
- SearchService,
- {
- provide: HttpService,
- useValue: {
- post: jest.fn(),
- },
- },
- ],
- imports: [
- ConfigModule.forRoot({
- isGlobal: true,
- cache: true,
- expandVariables: true,
- })
- ],
- }).compile();
+// beforeAll(async () => {
+// const moduleRef = await Test.createTestingModule({
+// providers: [
+// SearchService,
+// {
+// provide: HttpService,
+// useValue: {
+// post: jest.fn(),
+// },
+// },
+// ],
+// imports: [
+// ConfigModule.forRoot({
+// isGlobal: true,
+// cache: true,
+// expandVariables: true,
+// })
+// ],
+// }).compile();
- searchService = moduleRef.get(SearchService);
- httpService = moduleRef.get(HttpService);
- });
+// searchService = moduleRef.get(SearchService);
+// httpService = moduleRef.get(HttpService);
+// });
- describe('getPIT()', () => {
- it('Should touch HttpService.post() method', () => {
- let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
+// describe('getPIT()', () => {
+// it('Should touch HttpService.post() method', () => {
+// let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+// data: {id: '2567'},
+// status: 0,
+// statusText: '',
+// headers: {},
+// config: {},
+// }));
- searchService.getPIT();
- expect(postMock).toHaveBeenCalled();
- });
+// searchService.getPIT(1);
+// expect(postMock).toHaveBeenCalled();
+// });
- it('Should contain correct port in the URI from .env', () => {
- let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
+// it('Should contain correct port in the URI from .env', () => {
+// let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+// data: {id: '2567'},
+// status: 0,
+// statusText: '',
+// headers: {},
+// config: {},
+// }));
- searchService.getPIT();
- expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
- });
+// searchService.getPIT(1);
+// expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
+// });
- it('Should touch HttpService with correct URI when keep_alive is set as a parameter', () => {
- let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
+// it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
+// let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+// data: {id: '2567'},
+// status: 0,
+// statusText: '',
+// headers: {},
+// config: {},
+// }));
- let keep_alive = 2;
- searchService.getPIT(keep_alive);
- expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${keep_alive}m`);
- });
+// let time = 2;
+// let unit = EsTime.sec;
+
+// searchService.getPIT(time, unit);
+// expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
+// });
- it('Should return error exeception when HttpService fails', () => {
- jest.spyOn(httpService, 'post').mockImplementation(() => {
- throw HttpResponseException;
- });
+// it('Should return error exeception when HttpService fails', () => {
+// jest.spyOn(httpService, 'post').mockImplementation(() => {
+// throw HttpResponseException;
+// });
- expect(searchService.getPIT()).rejects.toEqual(HttpResponseException);
- });
+// expect(searchService.getPIT(1)).rejects.toEqual(HttpResponseException);
+// });
- it('Should return a non-empty string when HttpService request succeedes', () => {
- jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
+// it('Should return a non-empty string when HttpService request succeedes', () => {
+// jest.spyOn(httpService, 'post').mockReturnValue(of({
+// data: {id: '2567', keep_alive: '1m'},
+// status: 0,
+// statusText: '',
+// headers: {},
+// config: {},
+// }));
- expect(searchService.getPIT()).resolves.toBe('2567');
- });
- });
+// expect(searchService.getPIT(1)).resolves.toEqual({
+// id: '2567',
+// keep_alive: '1m',
+// });
+// });
- describe('deletePIT()', () => {
- it.todo('Should fail to delete, because the requested PIT ID is invalid');
- it.todo('Should call HttpService.delete() method with correct body');
- });
-});
\ No newline at end of file
+
+// });
+
+// describe('deletePIT()', () => {
+// it.todo('Should fail to delete, because the requested PIT ID is invalid');
+// it.todo('Should call HttpService.delete() method with correct body');
+// });
+// });
\ No newline at end of file
--
2.39.5
From da564323a0d7fbea4ee4acf8c8ec356e68a6bd9d Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Tue, 16 Aug 2022 16:57:56 +0300
Subject: [PATCH 04/23] Added versioning for the /papers controller
---
src/application/controller/papers.controller.ts | 5 ++++-
src/main.ts | 6 +++++-
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index a251822..4aefece 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -8,7 +8,10 @@ import { RequestDto } from "src/core/domain/dtos/request.dto";
/**
* /papers/ route controller
*/
-@Controller('papers')
+@Controller({
+ version: '1',
+ path: 'papers',
+})
export class PapersController {
constructor(private searchService: SearchService) {}
diff --git a/src/main.ts b/src/main.ts
index 5333fdb..4d8d5c2 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -1,5 +1,5 @@
import morgan from 'morgan';
-import { Logger, ValidationPipe } from '@nestjs/common';
+import { Logger, ValidationPipe, VersioningType } from '@nestjs/common';
import { NestFactory } from '@nestjs/core';
import { AppModule } from './infrastructure/modules/app.module';
import { SwaggerModule, DocumentBuilder, SwaggerDocumentOptions } from '@nestjs/swagger';
@@ -19,6 +19,10 @@ async function bootstrap() {
})
);
+ app.enableVersioning({
+ type: VersioningType.URI,
+ });
+
/**
* Configuration of the Swagger document
*/
--
2.39.5
From a64549865886c920ef3118637e4d2419c57aa505 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Tue, 16 Aug 2022 17:19:44 +0300
Subject: [PATCH 05/23] Fixed return format of the search results
---
src/core/interceptors/page.interceptor.ts | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 492b208..adb895e 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -2,6 +2,7 @@ import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
import { Observable, map, take } from "rxjs";
import { PageDto } from "../domain/dtos";
+import { EsHitDto } from "../domain/dtos/es-hit.dto";
import { EsQueryDto } from "../domain/dtos/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
@@ -135,6 +136,9 @@ export class PageInterceptor implements NestInterceptor {
reverse = false;
}
+ // Omitting the redundant info and leaving only the document
+ data = data.map((el) => el._source);
+
// Return the page
return new PageDto(data, meta);
})
--
2.39.5
From 569ef08f1fb50a85dc023aded7e4de70a2cd3143 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Tue, 16 Aug 2022 19:22:27 +0300
Subject: [PATCH 06/23] Minor code cleanup.
---
src/core/domain/dtos/es-hit.dto.ts | 2 +-
src/core/domain/dtos/index.ts | 11 +++--
src/core/domain/dtos/paper.dto.ts | 2 -
src/core/domain/dtos/request.dto.ts | 2 +-
src/core/domain/dtos/search-q.dto.ts | 2 +-
src/core/domain/dtos/search-result.dto.ts | 2 +-
src/core/domain/enums/es-time.enum.ts | 27 +++++++++++++
src/core/domain/enums/index.ts | 3 +-
src/core/domain/enums/page-order.enum.ts | 7 ++++
src/core/domain/index.ts | 4 +-
.../interfaces/es-query-string.interface.ts | 5 ---
src/core/domain/interfaces/index.ts | 7 +++-
src/core/interceptors/page.interceptor.ts | 4 +-
src/core/services/common/search.service.ts | 40 +------------------
src/infrastructure/config/env.validation.ts | 2 +-
src/infrastructure/modules/index.ts | 1 +
src/infrastructure/modules/search.module.ts | 2 +-
src/main.ts | 3 ++
18 files changed, 66 insertions(+), 60 deletions(-)
diff --git a/src/core/domain/dtos/es-hit.dto.ts b/src/core/domain/dtos/es-hit.dto.ts
index 1334729..37af015 100644
--- a/src/core/domain/dtos/es-hit.dto.ts
+++ b/src/core/domain/dtos/es-hit.dto.ts
@@ -1,5 +1,5 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { IsNotEmpty, IsOptional } from "class-validator";
import { PaperDto } from "./paper.dto";
/**
diff --git a/src/core/domain/dtos/index.ts b/src/core/domain/dtos/index.ts
index 32eeca0..09dfd59 100644
--- a/src/core/domain/dtos/index.ts
+++ b/src/core/domain/dtos/index.ts
@@ -1,3 +1,8 @@
-export * from './es-response.dto'
-export * from './page.dto'
-export * from './search-q.dto'
\ No newline at end of file
+export * from './es-query.dto';
+export * from './es-response.dto';
+export * from './es-hit.dto';
+export * from './page.dto';
+export * from './search-q.dto';
+export * from './search-result.dto';
+export * from './paper.dto';
+export * from './request.dto';
\ No newline at end of file
diff --git a/src/core/domain/dtos/paper.dto.ts b/src/core/domain/dtos/paper.dto.ts
index 5ee8e60..bd61c37 100644
--- a/src/core/domain/dtos/paper.dto.ts
+++ b/src/core/domain/dtos/paper.dto.ts
@@ -1,7 +1,5 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
-import { EsQueryDto } from "./es-query.dto";
-import { SearchQueryDto } from "./search-q.dto";
/**
* List of allowed properties in this DTO
diff --git a/src/core/domain/dtos/request.dto.ts b/src/core/domain/dtos/request.dto.ts
index fffc0ea..8fe1a0f 100644
--- a/src/core/domain/dtos/request.dto.ts
+++ b/src/core/domain/dtos/request.dto.ts
@@ -1,5 +1,5 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { IsDefined, IsNotEmpty, IsOptional } from "class-validator";
import { EsQueryDto } from "./es-query.dto";
import { SearchQueryDto } from "./search-q.dto";
diff --git a/src/core/domain/dtos/search-q.dto.ts b/src/core/domain/dtos/search-q.dto.ts
index 28bf733..e5ad8eb 100644
--- a/src/core/domain/dtos/search-q.dto.ts
+++ b/src/core/domain/dtos/search-q.dto.ts
@@ -1,5 +1,5 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
/**
* List of allowed properties in this DTO
diff --git a/src/core/domain/dtos/search-result.dto.ts b/src/core/domain/dtos/search-result.dto.ts
index 5097f64..c1c42bd 100644
--- a/src/core/domain/dtos/search-result.dto.ts
+++ b/src/core/domain/dtos/search-result.dto.ts
@@ -1,5 +1,5 @@
import { ApiProperty } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { IsArray, IsDefined, IsInt, IsNotEmpty } from "class-validator";
import { EsResponseDto } from "./es-response.dto";
/**
diff --git a/src/core/domain/enums/es-time.enum.ts b/src/core/domain/enums/es-time.enum.ts
index 7c5a5b6..8429795 100644
--- a/src/core/domain/enums/es-time.enum.ts
+++ b/src/core/domain/enums/es-time.enum.ts
@@ -2,11 +2,38 @@
* Elasticsearch time-units
*/
export enum EsTime {
+ /**
+ * Days
+ */
days = 'd',
+
+ /**
+ * Hours
+ */
hours = 'h',
+
+ /**
+ * Minutes
+ */
min = 'm',
+
+ /**
+ * Seconds
+ */
sec = 's',
+
+ /**
+ * Milliseconds
+ */
ms = 'ms',
+
+ /**
+ * Microseconds
+ */
us = 'micros',
+
+ /**
+ * Nanoseconds
+ */
ns = 'nanos'
}
\ No newline at end of file
diff --git a/src/core/domain/enums/index.ts b/src/core/domain/enums/index.ts
index dd8d8c9..8cb24ea 100644
--- a/src/core/domain/enums/index.ts
+++ b/src/core/domain/enums/index.ts
@@ -1,3 +1,4 @@
export * from './httpResponse'
export * from './roles.enum'
-export * from './page-order.enum'
\ No newline at end of file
+export * from './page-order.enum'
+export * from './es-time.enum'
\ No newline at end of file
diff --git a/src/core/domain/enums/page-order.enum.ts b/src/core/domain/enums/page-order.enum.ts
index 942cd68..ff4a505 100644
--- a/src/core/domain/enums/page-order.enum.ts
+++ b/src/core/domain/enums/page-order.enum.ts
@@ -2,6 +2,13 @@
* Page display order
*/
export enum Order {
+ /**
+ * Ascending order
+ */
ASC = 'asc',
+
+ /**
+ * Descending order
+ */
DESC = 'desc',
}
\ No newline at end of file
diff --git a/src/core/domain/index.ts b/src/core/domain/index.ts
index cea7a31..5806f60 100644
--- a/src/core/domain/index.ts
+++ b/src/core/domain/index.ts
@@ -1 +1,3 @@
-export * from './enums'
\ No newline at end of file
+export * from './enums'
+export * from './dtos'
+export * from './interfaces'
\ No newline at end of file
diff --git a/src/core/domain/interfaces/es-query-string.interface.ts b/src/core/domain/interfaces/es-query-string.interface.ts
index 55c1ee6..5f6dcc8 100644
--- a/src/core/domain/interfaces/es-query-string.interface.ts
+++ b/src/core/domain/interfaces/es-query-string.interface.ts
@@ -18,9 +18,4 @@
* Can't be specified with 'default_field'
*/
fields?: string[];
-
- /**
- *
- */
-
}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/index.ts b/src/core/domain/interfaces/index.ts
index 8c2a188..c751d45 100644
--- a/src/core/domain/interfaces/index.ts
+++ b/src/core/domain/interfaces/index.ts
@@ -1,4 +1,7 @@
-export * from './http-response.interface';
+export * from './http-response.interface'
export * from './page-meta.interface'
export * from './es-query.interface'
-export * from './es-query-string.interface'
\ No newline at end of file
+export * from './es-query-string.interface'
+export * from './es-response-hits.interface'
+export * from './es-pit.interface'
+export * from './search-info.interface'
\ No newline at end of file
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index adb895e..5f9d913 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -100,7 +100,9 @@ export class PageInterceptor implements NestInterceptor {
request.es_query.size += limit - 1;
reverse = true;
} else if (query.page == this.prevSearch.prevPage) {
- //...
+ // Caching should be HERE
+ request.es_query.sort = [{ _score: { order: 'asc' } }];
+ reverse = true;
}
} else {
this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index bcb3278..ea006f9 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -4,8 +4,6 @@ import { map, take } from "rxjs";
import { EsResponseDto } from "src/core/domain/dtos";
import { EsQueryDto } from "src/core/domain/dtos/es-query.dto";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
-import { EsTime } from "src/core/domain/enums/es-time.enum";
-import { EsPit } from "src/core/domain/interfaces/es-pit.interface";
/**
* Search service provider
@@ -87,40 +85,4 @@ export class SearchService {
}
});
}
-}
-
-// let ESQ: EsQueryDto = new EsQueryDto;
-
- // if (limit) ESQ.size = limit;
- // ESQ.query = {
- // query_string: {
- // query: query_str,
- // default_field: 'content',
- // }
- // }
- // this.getPIT(1).then((pit) => {
- // ESQ.pit = pit;
- // });
-
-/**
- * Context
- * // let es_query = { // DTO
- // query: { // Interface
- // query_string: { // Interface
- // query: query_str,
- // default_field: "content"
- // }
- // },
- // }
- */
-
-/**
- * Single
- * // let es_query = {
- // query: {
- // query_string: {
- // query: 'id:' + uuid
- // }
- // },
- // }
- */
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/src/infrastructure/config/env.validation.ts b/src/infrastructure/config/env.validation.ts
index c56d8d9..c92753c 100644
--- a/src/infrastructure/config/env.validation.ts
+++ b/src/infrastructure/config/env.validation.ts
@@ -1,5 +1,5 @@
import { plainToClass } from 'class-transformer';
-import { validateSync, IsOptional } from 'class-validator';
+import { validateSync } from 'class-validator';
/**
* env vatiables
diff --git a/src/infrastructure/modules/index.ts b/src/infrastructure/modules/index.ts
index da53f6a..c80e102 100644
--- a/src/infrastructure/modules/index.ts
+++ b/src/infrastructure/modules/index.ts
@@ -1 +1,2 @@
export * from './app.module';
+export * from './search.module'
\ No newline at end of file
diff --git a/src/infrastructure/modules/search.module.ts b/src/infrastructure/modules/search.module.ts
index bccc4e6..cbb486d 100644
--- a/src/infrastructure/modules/search.module.ts
+++ b/src/infrastructure/modules/search.module.ts
@@ -4,7 +4,7 @@ import { PapersController } from "src/application";
import { SearchService } from "../../core/services/common/search.service";
/**
- * search module
+ * Search module
*/
@Module({
imports: [
diff --git a/src/main.ts b/src/main.ts
index 4d8d5c2..eff9b48 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -19,6 +19,9 @@ async function bootstrap() {
})
);
+ /**
+ * Enabling URI-type versioning of the API
+ */
app.enableVersioning({
type: VersioningType.URI,
});
--
2.39.5
From 5eb20c4727c6f9af639ef6953fe9f768665771e0 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Wed, 17 Aug 2022 20:32:10 +0300
Subject: [PATCH 07/23] Changed exception handling in search service. Reworking
tests
---
.../controller/papers.controller.ts | 10 +-
src/core/interceptors/page.interceptor.ts | 2 +-
src/core/services/common/search.service.ts | 18 +-
src/test/page.interceptor.spec.ts | 233 ++++++-----
src/test/papers.endpoint.spec.ts | 5 +-
src/test/search.service.spec.ts | 388 +++++++++++++-----
6 files changed, 443 insertions(+), 213 deletions(-)
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 4aefece..6d0fab4 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -35,8 +35,8 @@ export class PapersController {
(response: SearchResultDto) => {
return response.data;
},
- (error: SearchResultDto) => {
- throw new HttpException(error.data, error.statusCode);
+ (error: HttpException) => {
+ throw error;
}
);
}
@@ -58,11 +58,11 @@ export class PapersController {
@HttpCode(200)
getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {
return this.searchService.findByID(uuid).then(
- (response) => {
+ (response: SearchResultDto) => {
return response.data;
},
- (error) => {
- throw new HttpException(error.data, error.status);
+ (error: HttpException) => {
+ throw error;
}
);
}
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 5f9d913..1c9e0fd 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -1,7 +1,7 @@
import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
import { Observable, map, take } from "rxjs";
-import { PageDto } from "../domain/dtos";
+import { EsResponseDto, PageDto } from "../domain/dtos";
import { EsHitDto } from "../domain/dtos/es-hit.dto";
import { EsQueryDto } from "../domain/dtos/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index ea006f9..a4a5d30 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,9 +1,10 @@
import { HttpService } from "@nestjs/axios";
-import { GatewayTimeoutException, Injectable } from "@nestjs/common";
+import { GatewayTimeoutException, HttpException, Injectable } from "@nestjs/common";
import { map, take } from "rxjs";
import { EsResponseDto } from "src/core/domain/dtos";
import { EsQueryDto } from "src/core/domain/dtos/es-query.dto";
import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
+import { HttpResponseException } from "src/core/exceptions";
/**
* Search service provider
@@ -43,17 +44,16 @@ export class SearchService {
data: ESQ,
headers: {'Content-Type': 'application/json'},
}))
- .pipe(take(1), map(axiosRes => axiosRes.data))
+ ?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- throw new GatewayTimeoutException;
- // reject(new SearchResultDto(504, {message: 'Timed Out'}));
+ reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
resolve(new SearchResultDto(200, res));
});
} catch (error) {
- reject(new SearchResultDto(700, error));
+ reject(error);
}
});
}
@@ -64,24 +64,22 @@ export class SearchService {
* @returns Elasticsearch hits or an error object
*/
async findByContext(es_query: EsQueryDto): Promise {
- console.log(`SEARCH|SERVICE: ${JSON.stringify(es_query, null, 2)}`);
return new Promise((resolve, reject) => {
try {
(this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
- .pipe(take(1), map(axiosRes => axiosRes.data))
+ ?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- throw new GatewayTimeoutException;
- // reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
+ reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
resolve(new SearchResultDto(200, res));
});
} catch (error) {
- reject(new SearchResultDto(700, error));
+ reject(error);
}
});
}
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index 057ec1c..8ac120e 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -1,112 +1,153 @@
-// // import { CallHandler, ExecutionContext } from "@nestjs/common";
-// import { HttpModule } from "@nestjs/axios";
-// import { Test } from "@nestjs/testing";
-// import { Observable, of } from "rxjs";
-// import { PapersController } from "src/application";
-// import { Order } from "src/core/domain";
-// import { PageDto, SearchQueryDto } from "src/core/domain/dtos";
-// import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-// import { SearchService } from "src/core/services/common/search.service";
+import { HttpModule } from "@nestjs/axios";
+import { Test } from "@nestjs/testing";
+import exp from "constants";
+import { Observable, of } from "rxjs";
+import { PapersController } from "src/application";
+import { Order } from "src/core/domain";
+import { PageDto, SearchQueryDto } from "src/core/domain/dtos";
+import { PageInterceptor } from "src/core/interceptors/page.interceptor";
+import { SearchService } from "src/core/services/common/search.service";
-// const executionContext = {
-// switchToHttp: jest.fn().mockReturnThis(),
-// getRequest: jest.fn().mockReturnThis(),
-// getHandler: jest.fn().mockReturnThis(),
-// getArgs: jest.fn().mockReturnThis(),
-// getArgByIndex: jest.fn().mockReturnThis(),
-// switchToRpc: jest.fn().mockReturnThis(),
-// switchToWs: jest.fn().mockReturnThis(),
-// getType: jest.fn().mockReturnThis(),
-// getClass: jest.fn().mockReturnThis(),
-// };
+const execCtxMock = {
+ switchToHttp: jest.fn().mockReturnThis(),
+ getRequest: jest.fn().mockReturnThis(),
+ getHandler: jest.fn().mockReturnThis(),
+ getArgs: jest.fn().mockReturnThis(),
+ getArgByIndex: jest.fn().mockReturnThis(),
+ switchToRpc: jest.fn().mockReturnThis(),
+ switchToWs: jest.fn().mockReturnThis(),
+ getType: jest.fn().mockReturnThis(),
+ getClass: jest.fn().mockReturnThis(),
+ };
-// const callHandler = {
-// handle: jest.fn(),
-// };
+const callHandlerMock = {
+ handle: jest.fn(),
+};
-// describe('Testing PageInterceptor', () => {
-// let pageInter: PageInterceptor;
-// let moduleRef;
+describe('Unit tests for PageInterceptor', () => {
+ let pageInter: PageInterceptor;
+ let moduleRef;
-// beforeEach(async () => {
-// moduleRef = await Test.createTestingModule({
-// imports: [HttpModule],
-// controllers: [PapersController],
-// providers: [SearchService, PageInterceptor],
-// }).compile();
+ beforeAll(async () => {
+ moduleRef = await Test.createTestingModule({
+ imports: [HttpModule],
+ controllers: [PapersController],
+ providers: [SearchService, PageInterceptor],
+ }).compile();
-// pageInter = moduleRef.get(PageInterceptor);
-// });
+ pageInter = moduleRef.get(PageInterceptor);
-// describe('intercept()', () => {
-// it('Should be defined', () => {
-// expect(pageInter).toBeDefined();
-// });
+ pageInter.getPIT = jest.fn().mockReturnValue({});
-// it('Should return an Observable with a page of type PageDto', (done) => {
-// executionContext.getRequest.mockReturnValue( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
-// callHandler.handle.mockReturnValue( of({
-// total: { value: 1 },
-// hits: [{},],
-// }));
+ execCtxMock.getRequest.mockReturnValue({
+ query: {
+ query: 'thisIsMyQuery',
+ page: 1,
+ limit: 5,
+ order: Order.DESC
+ }
+ });
+
+ callHandlerMock.handle.mockReturnValueOnce(
+ of({
+ total: { value: 1 },
+ hits: { hits: [{}] }
+ })
+ );
+ });
+
+ it('Should be defined', () => {
+ expect(pageInter).toBeDefined();
+ });
+
+ describe('intercept()', () => {
+ it('Should return a Promise', () => {
+ expect(pageInter.intercept(execCtxMock, callHandlerMock)).toBeInstanceOf(Promise);
+ });
+
+ it('Should return a Promise with Observable and PageDto inside', () => {
+ pageInter.intercept(execCtxMock, callHandlerMock).then((res) => {
+ expect(res).toBeInstanceOf(Observable);
+ res.subscribe((data) => {
+ expect(data).toBeInstanceOf(PageDto);
+ });
+ });
+ });
+
+ it.todo('Should touch CallHandler.handle() method');
+
+
+ // it('Should return an Observable with a page of type PageDto', (done) => {
+ // executionContext.getRequest.mockReturnValue( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
+ // callHandler.handle.mockReturnValue( of({
+ // total: { value: 1 },
+ // hits: [{},],
+ // }));
-// expect(pageInter.intercept(executionContext, callHandler)).toBeInstanceOf(Observable);
-// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
-// expect(data).toBeInstanceOf(PageDto);
-// done();
-// });
-// })
+ // expect(pageInter.intercept(executionContext, callHandler)).toBeInstanceOf(Promise);
+ // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
+ // expect(data).toBeInstanceOf(PageDto);
+ // done();
+ // }));
+ // })
-// it('Should hold content on the returned page', (done) => {
-// executionContext.getRequest.mockReturnValueOnce( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
-// callHandler.handle.mockReturnValueOnce(of({
-// total: { value: 1 },
-// hits: [{dummy: 'dum'}],
-// }));
+ // it('Should hold content on the returned page', (done) => {
+ // executionContext.getRequest.mockReturnValueOnce( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
+ // callHandler.handle.mockReturnValueOnce(of({
+ // total: { value: 1 },
+ // hits: [{dummy: 'dum'}],
+ // }));
-// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
-// expect(data).toEqual({
-// data: expect.anything(),
-// meta: expect.anything(),
-// });
-// done();
-// });
-// });
+ // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
+ // expect(data).toEqual({
+ // data: expect.anything(),
+ // meta: expect.anything(),
+ // });
+ // done();
+ // }));
+ // });
-// it('Should have next page', (done) => {
-// executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 1, 5, 'desc') });
-// callHandler.handle.mockReturnValue(of({
-// total: { value: 10 },
-// hits: Array(10).fill({dummy: 'dum'}, 0, 10),
-// }));
+ // it('Should have next page', (done) => {
+ // executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 1, 5, 'desc') });
+ // callHandler.handle.mockReturnValue(of({
+ // total: { value: 10 },
+ // hits: Array(10).fill({dummy: 'dum'}, 0, 10),
+ // }));
-// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
-// expect(data.meta.hasNext).toEqual(true);
-// expect(data.meta.hasPrev).toEqual(false);
-// done();
-// });
-// });
+ // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
+ // expect(data.meta.hasNext).toEqual(true);
+ // expect(data.meta.hasPrev).toEqual(false);
+ // done();
+ // }));
+ // });
-// it('Should have correct meta-data', (done) => {
-// executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 2, 5, 'asc') });
-// callHandler.handle.mockReturnValue(of({
-// total: { value: 15 },
-// hits: Array(15).fill({dummy: 'dum'}, 0, 15),
-// }));
+ // it('Should have correct meta-data', (done) => {
+ // executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 2, 5, 'asc') });
+ // callHandler.handle.mockReturnValue(of({
+ // total: { value: 15 },
+ // hits: Array(15).fill({dummy: 'dum'}, 0, 15),
+ // }));
-// pageInter.intercept(executionContext, callHandler).subscribe((data) => {
-// expect(data.meta).toEqual({
-// total: 15,
-// pagenum: 2,
-// order: Order.ASC,
-// hasNext: true,
-// hasPrev: true,
-// pagesize: 5
-// });
-// done();
-// });
-// });
-// });
+ // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
+ // expect(data.meta).toEqual({
+ // total: 15,
+ // pagenum: 2,
+ // order: Order.ASC,
+ // hasNext: true,
+ // hasPrev: true,
+ // pagesize: 5
+ // });
+ // done();
+ // }));
+ // });
+ });
-// });
\ No newline at end of file
+ // describe('getPIT()', () => {
+
+ // });
+
+ // describe('deletePIT()', () => {
+
+ // });
+});
\ No newline at end of file
diff --git a/src/test/papers.endpoint.spec.ts b/src/test/papers.endpoint.spec.ts
index b8f17be..2ed6b09 100644
--- a/src/test/papers.endpoint.spec.ts
+++ b/src/test/papers.endpoint.spec.ts
@@ -1,9 +1,6 @@
import { Test, TestingModule } from "@nestjs/testing";
import { INestApplication } from "@nestjs/common";
-import { SearchModule } from "src/infrastructure/modules/search.module";
import request from 'supertest'
-import { assert } from "console";
-import { resolve } from "path";
import { AppModule } from "src/infrastructure/modules";
describe('E2E Testing of /papers', () => {
@@ -18,7 +15,7 @@ describe('E2E Testing of /papers', () => {
await app.init();
});
- it('Should return one, exact item on page', async () => {
+ it('Should return one exact item on page', async () => {
return request(app.getHttpServer())
.get('/papers/eeeb2d01-8315-454e-b33f-3d6caa25db42')
.expect(200)
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index d9c5d58..2be5b00 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -1,112 +1,306 @@
-// import { HttpService } from "@nestjs/axios";
-// import { ConfigModule } from "@nestjs/config";
-// import { Test } from "@nestjs/testing";
-// import exp from "constants";
-// import { of } from "rxjs";
-// import { EsTime } from "src/core/domain/enums/es-time.enum";
-// import { HttpResponseException } from "src/core/exceptions";
-// import { SearchService } from "src/core/services/common/search.service";
+import { HttpService } from "@nestjs/axios";
+import { GatewayTimeoutException, HttpException } from "@nestjs/common";
+import { ConfigModule } from "@nestjs/config";
+import { Test } from "@nestjs/testing";
+import { of } from "rxjs";
+import { EsQueryDto, SearchResultDto } from "src/core/domain";
+import { SearchService } from "src/core/services/common/search.service";
-// describe('Unit tests for SearchService', () => {
-// let searchService: SearchService;
-// let httpService: HttpService;
+describe('Unit tests for SearchService', () => {
+ let searchService: SearchService;
+ let httpService: HttpService;
-// beforeAll(async () => {
-// const moduleRef = await Test.createTestingModule({
-// providers: [
-// SearchService,
-// {
-// provide: HttpService,
-// useValue: {
-// post: jest.fn(),
-// },
-// },
-// ],
-// imports: [
-// ConfigModule.forRoot({
-// isGlobal: true,
-// cache: true,
-// expandVariables: true,
-// })
-// ],
-// }).compile();
+ beforeAll(async () => {
+ const moduleRef = await Test.createTestingModule({
+ providers: [
+ SearchService,
+ {
+ provide: HttpService,
+ useValue: {
+ get: jest.fn(),
+ },
+ },
+ ],
+ imports: [
+ ConfigModule.forRoot({
+ isGlobal: true,
+ cache: true,
+ expandVariables: true,
+ })
+ ],
+ }).compile();
-// searchService = moduleRef.get(SearchService);
-// httpService = moduleRef.get(HttpService);
-// });
+ searchService = moduleRef.get(SearchService);
+ httpService = moduleRef.get(HttpService);
+ });
-// describe('getPIT()', () => {
-// it('Should touch HttpService.post() method', () => {
-// let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
-// data: {id: '2567'},
-// status: 0,
-// statusText: '',
-// headers: {},
-// config: {},
-// }));
+ describe('findByID()', () => {
+ it('Should touch HttpService.get() method', () => {
+ let httpGetSpy = jest.spyOn(httpService, 'get');
-// searchService.getPIT(1);
-// expect(postMock).toHaveBeenCalled();
-// });
+ searchService.findByID('');
+ expect(httpGetSpy).toHaveBeenCalled();
+ });
-// it('Should contain correct port in the URI from .env', () => {
-// let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
-// data: {id: '2567'},
-// status: 0,
-// statusText: '',
-// headers: {},
-// config: {},
-// }));
-
-// searchService.getPIT(1);
-// expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
-// });
-
-// it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
-// let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
-// data: {id: '2567'},
-// status: 0,
-// statusText: '',
-// headers: {},
-// config: {},
-// }));
-
-// let time = 2;
-// let unit = EsTime.sec;
+ it('Should send correct data via HttpService.get() body parameter', () => {
+ let httpGetSpy = jest.spyOn(httpService, 'get');
-// searchService.getPIT(time, unit);
-// expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
-// });
+ const uuid = 'thisIsUUID_Provided';
+ searchService.findByID(uuid);
+ expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
+ data: {
+ size: 1,
+ query: {
+ query_string: {
+ query: 'id:' + uuid
+ }
+ }
+ },
+ headers: { 'Content-Type': 'application/json' }
+ });
+ });
-// it('Should return error exeception when HttpService fails', () => {
-// jest.spyOn(httpService, 'post').mockImplementation(() => {
-// throw HttpResponseException;
-// });
+ it('Should call HttpService.get() with correct URI and port number', () => {
+ let httpGetSpy = jest.spyOn(httpService, 'get');
+
+ searchService.findByID('');
+ expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(
+ `http://localhost:${process.env.ES_PORT}/_search`,
+ expect.anything()
+ );
+ });
-// expect(searchService.getPIT(1)).rejects.toEqual(HttpResponseException);
-// });
+ it('Should return a Promise', () => {
+ expect(searchService.findByID('')).toBeInstanceOf(Promise);
+ });
-// it('Should return a non-empty string when HttpService request succeedes', () => {
-// jest.spyOn(httpService, 'post').mockReturnValue(of({
-// data: {id: '2567', keep_alive: '1m'},
-// status: 0,
-// statusText: '',
-// headers: {},
-// config: {},
-// }));
+ it('Should return a Promise with SearchResultDto', () => {
+ // Axios response mock
+ httpService.get = jest.fn().mockReturnValueOnce(
+ of({
+ status: undefined,
+ statusText: undefined,
+ headers: undefined,
+ config: undefined,
+ data: {
+ dummy: 'dum'
+ }
+ })
+ );
+
+ searchService.findByID('').then((res) => {
+ expect(res).toBeInstanceOf(SearchResultDto);
+ expect(res.data).toEqual({ dummy: 'dum' });
+ expect(res.statusCode).toBe(200);
+ });
+ });
-// expect(searchService.getPIT(1)).resolves.toEqual({
-// id: '2567',
-// keep_alive: '1m',
-// });
-// });
+ // Errors
+ it('Should throw 504 | GatewayTimeoutException', () => {
+ // Axios response mock
+ httpService.get = jest.fn().mockReturnValueOnce(
+ of({
+ status: undefined,
+ statusText: undefined,
+ headers: undefined,
+ config: undefined,
+ data: {
+ timed_out: true,
+ dummy: 'dum'
+ }
+ })
+ );
+
+ searchService.findByID('').catch((err) => {
+ expect(err).toBeInstanceOf(GatewayTimeoutException);
+ console.log(err)
+ });
+ });
+
+ it('Should throw an HttpException when HttpService.get() fails and throws', () => {
+ httpService.get = jest.fn().mockImplementationOnce(() => {
+ throw new HttpException({ oops: 'sorry' }, 999);
+ });
+
+ searchService.findByID('').catch((err) => {
+ expect(err).toBeInstanceOf(HttpException);
+ expect(err.response).toEqual({ oops: 'sorry' });
+ expect(err.status).toEqual(999);
+ });
+ });
+ });
+
+ describe('findByContext()', () => {
+ it('Should touch HttpService.get() method', () => {
+ let httpGetSpy = jest.spyOn(httpService, 'get');
+
+ searchService.findByContext(null);
+ expect(httpGetSpy).toHaveBeenCalled();
+ });
+
+ it('Should send correct data via HttpService.get() body parameter', () => {
+ let httpGetSpy = jest.spyOn(httpService, 'get');
+
+ let es_query = new EsQueryDto();
+ es_query = {
+ query: {
+ query_string: {
+ query: 'thisIsTheQuery!'
+ }
+ }
+ }
+
+ searchService.findByContext(es_query);
+ expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
+ data: es_query,
+ headers: { 'Content-Type': 'application/json' }
+ });
+ });
+
+ it('Should call HttpService.get() with correct URI and port number', () => {
+ let httpGetSpy = jest.spyOn(httpService, 'get');
+
+ searchService.findByContext(null);
+ expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(
+ `http://localhost:${process.env.ES_PORT}/_search`,
+ expect.anything()
+ );
+ });
+
+ it('Should return a Promise', () => {
+ expect(searchService.findByContext(null)).toBeInstanceOf(Promise);
+ });
+
+ it('Should return a Promise with SearchResultDto', () => {
+ // Axios response mock
+ httpService.get = jest.fn().mockReturnValueOnce(
+ of({
+ status: undefined,
+ statusText: undefined,
+ headers: undefined,
+ config: undefined,
+ data: {
+ dummy: 'dum'
+ }
+ })
+ );
+
+ searchService.findByContext(null).then((res) => {
+ expect(res).toBeInstanceOf(SearchResultDto);
+ expect(res.data).toEqual({ dummy: 'dum' });
+ expect(res.statusCode).toBe(200);
+ });
+ });
+
+ // Errors
+ it('Should throw 504 | GatewayTimeoutException', () => {
+ // Axios response mock
+ httpService.get = jest.fn().mockReturnValueOnce(
+ of({
+ status: undefined,
+ statusText: undefined,
+ headers: undefined,
+ config: undefined,
+ data: {
+ timed_out: true,
+ dummy: 'dum'
+ }
+ })
+ );
+
+ searchService.findByContext(null).catch((err) => {
+ expect(err).toBeInstanceOf(GatewayTimeoutException);
+ console.log(err)
+ });
+ });
+
+ it('Should throw an HttpException when HttpService.get() fails and throws', () => {
+ httpService.get = jest.fn().mockImplementationOnce(() => {
+ throw new HttpException({ oops: 'sorry' }, 999);
+ });
+
+ searchService.findByContext(null).catch((err) => {
+ expect(err).toBeInstanceOf(HttpException);
+ expect(err.response).toEqual({ oops: 'sorry' });
+ expect(err.status).toEqual(999);
+ });
+ });
+ });
+});
+
+/**
+ * describe('getPIT()', () => {
+ it('Should touch HttpService.post() method', () => {
+ let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ searchService.getPIT(1);
+ expect(postMock).toHaveBeenCalled();
+ });
+
+ it('Should contain correct port in the URI from .env', () => {
+ let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ searchService.getPIT(1);
+ expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
+ });
+
+ it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
+ let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ let time = 2;
+ let unit = EsTime.sec;
+
+ searchService.getPIT(time, unit);
+ expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
+ });
+
+ it('Should return error exeception when HttpService fails', () => {
+ jest.spyOn(httpService, 'post').mockImplementation(() => {
+ throw HttpResponseException;
+ });
+
+ expect(searchService.getPIT(1)).rejects.toEqual(HttpResponseException);
+ });
+
+ it('Should return a non-empty string when HttpService request succeedes', () => {
+ jest.spyOn(httpService, 'post').mockReturnValue(of({
+ data: {id: '2567', keep_alive: '1m'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ expect(searchService.getPIT(1)).resolves.toEqual({
+ id: '2567',
+ keep_alive: '1m',
+ });
+ });
-// });
+ });
-// describe('deletePIT()', () => {
-// it.todo('Should fail to delete, because the requested PIT ID is invalid');
-// it.todo('Should call HttpService.delete() method with correct body');
-// });
-// });
\ No newline at end of file
+ describe('deletePIT()', () => {
+ it.todo('Should fail to delete, because the requested PIT ID is invalid');
+ it.todo('Should call HttpService.delete() method with correct body');
+ });
+ */
\ No newline at end of file
--
2.39.5
From 26cd205738e960950a0c91c50c6343ede425aa58 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Thu, 18 Aug 2022 19:52:50 +0300
Subject: [PATCH 08/23] Test coverage for pagination and search service.
---
src/core/interceptors/page.interceptor.ts | 62 ++--
src/test/e2e/papers.endpoint.spec.ts | 82 ++++++
src/test/page.interceptor.spec.ts | 335 +++++++++++++++++-----
src/test/papers.endpoint.spec.ts | 47 ---
src/test/search.service.spec.ts | 81 +-----
5 files changed, 379 insertions(+), 228 deletions(-)
create mode 100644 src/test/e2e/papers.endpoint.spec.ts
delete mode 100644 src/test/papers.endpoint.spec.ts
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 1c9e0fd..934f058 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -1,8 +1,7 @@
import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
import { Observable, map, take } from "rxjs";
-import { EsResponseDto, PageDto } from "../domain/dtos";
-import { EsHitDto } from "../domain/dtos/es-hit.dto";
+import { PageDto } from "../domain/dtos";
import { EsQueryDto } from "../domain/dtos/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
@@ -10,12 +9,11 @@ import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
import { EsPit } from "../domain/interfaces/es-pit.interface";
-import { SearchInfo } from "../domain/interfaces/search-info.interface";
/**
* Previous search data storage
*/
-class PrevSearch implements SearchInfo {
+class PrevSearch {
/**
* Constructs an uninitialized object
*/
@@ -28,17 +26,35 @@ class PrevSearch implements SearchInfo {
/**
* PIT object of the previous search
*/
- pit: EsPit;
+ private pit: EsPit;
+ set _pit(pit: EsPit) {
+ this.pit = pit;
+ }
+ get _pit(): EsPit {
+ return this.pit;
+ }
/**
* Tiebreaker and sort parameters
*/
- tiebreaker: unknown[];
+ private tiebreaker: unknown[];
+ set _tiebreaker(tiebreaker: unknown[]) {
+ this.tiebreaker = tiebreaker;
+ }
+ get _tiebreaker(): unknown[] {
+ return this.tiebreaker;
+ }
/**
* Number of the previous page
*/
- prevPage: number;
+ private prevPage: number;
+ set _prevPage(page: number) {
+ this.prevPage = page;
+ }
+ get _prevPage(): number {
+ return this.prevPage;
+ }
/**
* Checks if there was the search before current one
@@ -89,23 +105,23 @@ export class PageInterceptor implements NestInterceptor {
];
if (this.prevSearch.isSet()) {
- request.es_query.pit = this.prevSearch.pit;
- request.es_query.search_after = this.prevSearch.tiebreaker;
+ request.es_query.pit = this.prevSearch._pit;
+ request.es_query.search_after = this.prevSearch._tiebreaker;
let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);
+ request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);
- if (query.page < this.prevSearch.prevPage) {
+ if (query.page < this.prevSearch._prevPage) {
request.es_query.sort = [{ _score: { order: 'asc' } }];
request.es_query.size += limit - 1;
reverse = true;
- } else if (query.page == this.prevSearch.prevPage) {
+ } else if (query.page == this.prevSearch._prevPage) {
// Caching should be HERE
request.es_query.sort = [{ _score: { order: 'asc' } }];
reverse = true;
}
} else {
- this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
+ this.prevSearch._pit = request.es_query.pit = await this.getPIT(1);
let limit = !query?.limit ? 10 : query.limit;
request.es_query.size = limit * query.page;
@@ -116,24 +132,24 @@ export class PageInterceptor implements NestInterceptor {
// Setting the page meta-data
let meta: PageMeta = {
total: res.hits.total.value,
- pagenum: !query?.page ? 1 : query.page,
+ pagenum: !query?.page ? 1 : +query.page,
order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
+ pagesize: !query?.limit ? 10 : query.limit,
hasNext: undefined,
hasPrev: undefined,
- pagesize: !query?.limit ? 10 : query.limit,
};
meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
meta.hasPrev = meta.pagenum != 1 ? true : false;
// Saving the search info
- this.prevSearch.pit.id = res.pit_id;
- this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
- this.prevSearch.prevPage = query.page;
+ this.prevSearch._pit.id = res.pit_id;
+ this.prevSearch._tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
+ this.prevSearch._prevPage = query.page;
- // Check if the performed search is a backward search
+ // Check if the performed search is a backwards search
let data = res.hits.hits.slice(-meta.pagesize);
if (reverse) {
- this.prevSearch.tiebreaker = data[0]?.sort;
+ this.prevSearch._tiebreaker = data[0]?.sort;
data.reverse();
reverse = false;
}
@@ -165,12 +181,12 @@ export class PageInterceptor implements NestInterceptor {
public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {
return new Promise((resolve, reject) => {
try {
- (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
.pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
+ .subscribe((res: EsPit) => {
res.keep_alive = alive + unit;
resolve(res);
- }));
+ });
} catch (error) {
reject(error);
}
diff --git a/src/test/e2e/papers.endpoint.spec.ts b/src/test/e2e/papers.endpoint.spec.ts
new file mode 100644
index 0000000..1fa3122
--- /dev/null
+++ b/src/test/e2e/papers.endpoint.spec.ts
@@ -0,0 +1,82 @@
+import { Test, TestingModule } from "@nestjs/testing";
+import { INestApplication } from "@nestjs/common";
+import request from 'supertest'
+import { AppModule } from "src/infrastructure/modules";
+
+describe('E2E Testing of /papers', () => {
+ let app: INestApplication;
+
+ beforeAll(async () => {
+ const moduleRef: TestingModule = await Test.createTestingModule({
+ imports: [AppModule],
+ }).compile();
+
+ app = moduleRef.createNestApplication();
+ await app.init();
+ });
+
+ it('GET /papers/{uuid} | Should return one exact item on page', async () => {
+ const test = await request(app.getHttpServer())
+ .get('/papers/eeeb2d01-8315-454e-b33f-3d6caa25db42') // ??? Fetch a random object from DB
+ .expect(200);
+
+ // Checking received data
+ expect(test.body.data).toBeDefined();
+
+ expect(test.body.data.length).toBe(1);
+ expect(test.body.data[0].id).toBeDefined();
+ expect(test.body.data[0].title).toBeDefined();
+ expect(test.body.data[0].authors).toBeDefined();
+ expect(test.body.data[0].summary).toBeDefined();
+ expect(test.body.data[0].tags).toBeDefined();
+ expect(test.body.data[0].content).toBeDefined();
+ expect(test.body.data[0].id).toBe('eeeb2d01-8315-454e-b33f-3d6caa25db42');
+
+ // Checking received meta
+ expect(test.body.meta).toBeDefined();
+
+ expect(test.body.meta.total).toBeDefined();
+ expect(test.body.meta.pagenum).toBeDefined();
+ expect(test.body.meta.order).toBeDefined();
+ expect(test.body.meta.pagesize).toBeDefined();
+ expect(test.body.meta.hasNext).toBeDefined();
+ expect(test.body.meta.hasPrev).toBeDefined();
+ expect(test.body.meta.total).toBe(1);
+ expect(test.body.meta.pagenum).toBe(1);
+ });
+
+ it('GET /papers/search? | Should return multiple items', async () => {
+ const test = await request(app.getHttpServer())
+ .get('/papers/search?query=at&page=1')
+ .expect(200);
+
+ // Checking received data
+ expect(test.body.data).toBeDefined();
+
+ expect(test.body.data.length).toBeGreaterThan(0);
+ for (const paper of test.body.data) {
+ expect(paper.id).toBeDefined();
+ expect(paper.title).toBeDefined();
+ expect(paper.authors).toBeDefined();
+ expect(paper.summary).toBeDefined();
+ expect(paper.tags).toBeDefined();
+ expect(paper.content).toBeDefined();
+ }
+
+ // Checking received meta
+ expect(test.body.meta).toBeDefined();
+
+ expect(test.body.meta.total).toBeDefined();
+ expect(test.body.meta.pagenum).toBeDefined();
+ expect(test.body.meta.order).toBeDefined();
+ expect(test.body.meta.pagesize).toBeDefined();
+ expect(test.body.meta.hasNext).toBeDefined();
+ expect(test.body.meta.hasPrev).toBeDefined();
+ expect(test.body.meta.total).toBeGreaterThan(0);
+ expect(test.body.meta.pagenum).toBe(1);
+ });
+
+ afterAll(async () => {
+ await app.close();
+ })
+});
\ No newline at end of file
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index 8ac120e..c6fe8a7 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -1,12 +1,12 @@
-import { HttpModule } from "@nestjs/axios";
+import { HttpService } from "@nestjs/axios";
+import { ConfigModule } from "@nestjs/config";
+import { ModuleRef } from "@nestjs/core";
import { Test } from "@nestjs/testing";
-import exp from "constants";
import { Observable, of } from "rxjs";
-import { PapersController } from "src/application";
-import { Order } from "src/core/domain";
-import { PageDto, SearchQueryDto } from "src/core/domain/dtos";
+import { EsTime, Order } from "src/core/domain";
+import { PageDto } from "src/core/domain/dtos";
+import { HttpResponseException } from "src/core/exceptions";
import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-import { SearchService } from "src/core/services/common/search.service";
const execCtxMock = {
switchToHttp: jest.fn().mockReturnThis(),
@@ -26,18 +26,31 @@ const callHandlerMock = {
describe('Unit tests for PageInterceptor', () => {
let pageInter: PageInterceptor;
- let moduleRef;
+ let httpService: HttpService;
beforeAll(async () => {
- moduleRef = await Test.createTestingModule({
- imports: [HttpModule],
- controllers: [PapersController],
- providers: [SearchService, PageInterceptor],
+ const moduleRef = await Test.createTestingModule({
+ providers: [
+ {
+ provide: HttpService,
+ useValue: {
+ post: jest.fn(),
+ delete: jest.fn()
+ },
+ },
+ PageInterceptor,
+ ],
+ imports: [
+ ConfigModule.forRoot({
+ isGlobal: true,
+ cache: true,
+ expandVariables: true,
+ })
+ ],
}).compile();
pageInter = moduleRef.get(PageInterceptor);
-
- pageInter.getPIT = jest.fn().mockReturnValue({});
+ httpService = moduleRef.get(HttpService);
execCtxMock.getRequest.mockReturnValue({
query: {
@@ -48,19 +61,32 @@ describe('Unit tests for PageInterceptor', () => {
}
});
- callHandlerMock.handle.mockReturnValueOnce(
+ callHandlerMock.handle.mockReturnValue(
of({
- total: { value: 1 },
- hits: { hits: [{}] }
+ hits: {
+ total: { value: 1 },
+ hits: [{}]
+ }
})
);
});
it('Should be defined', () => {
expect(pageInter).toBeDefined();
+ expect(httpService).toBeDefined();
});
describe('intercept()', () => {
+ let tmp;
+ beforeAll(() => {
+ tmp = pageInter.getPIT;
+ pageInter.getPIT = jest.fn().mockReturnValue({});
+ });
+
+ afterAll(() => {
+ pageInter.getPIT = tmp;
+ });
+
it('Should return a Promise', () => {
expect(pageInter.intercept(execCtxMock, callHandlerMock)).toBeInstanceOf(Promise);
});
@@ -73,81 +99,234 @@ describe('Unit tests for PageInterceptor', () => {
});
});
});
-
- it.todo('Should touch CallHandler.handle() method');
+ it('Should touch CallHandler.handle() method', () => {
+ let chHandleSpy = jest.spyOn(callHandlerMock, 'handle');
+ pageInter.intercept(execCtxMock, callHandlerMock);
+ expect(chHandleSpy).toBeCalled();
+ });
- // it('Should return an Observable with a page of type PageDto', (done) => {
- // executionContext.getRequest.mockReturnValue( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
- // callHandler.handle.mockReturnValue( of({
- // total: { value: 1 },
- // hits: [{},],
- // }));
-
-
- // expect(pageInter.intercept(executionContext, callHandler)).toBeInstanceOf(Promise);
- // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
- // expect(data).toBeInstanceOf(PageDto);
- // done();
- // }));
- // })
+ it('Should construct a page with proper data on it', () => {
+ callHandlerMock.handle.mockReturnValueOnce(
+ of({
+ hits: {
+ total: { value: 1 },
+ hits: [{
+ _source: {
+ dummy: 'dum'
+ }
+ }]
+ }
+ })
+ );
- // it('Should hold content on the returned page', (done) => {
- // executionContext.getRequest.mockReturnValueOnce( { query: new SearchQueryDto('someQuery', 1, 10, 'desc') });
- // callHandler.handle.mockReturnValueOnce(of({
- // total: { value: 1 },
- // hits: [{dummy: 'dum'}],
- // }));
+ pageInter.intercept(execCtxMock, callHandlerMock).then((res) => {
+ res.subscribe((page) => {
+ expect(page.data.length).toBe(1);
+ expect(page.data[0]).toEqual({ dummy: 'dum' });
+ });
+ });
+ });
- // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
- // expect(data).toEqual({
- // data: expect.anything(),
- // meta: expect.anything(),
- // });
- // done();
- // }));
- // });
+ it('Should construct correct meta-data of the page', () => {
+ execCtxMock.getRequest.mockReturnValueOnce({
+ query: {
+ page: 5,
+ order: 'desc',
+ limit: 100,
+ }
+ });
- // it('Should have next page', (done) => {
- // executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 1, 5, 'desc') });
- // callHandler.handle.mockReturnValue(of({
- // total: { value: 10 },
- // hits: Array(10).fill({dummy: 'dum'}, 0, 10),
- // }));
+ callHandlerMock.handle.mockReturnValueOnce(
+ of({
+ hits: {
+ total: { value: 921 },
+ hits: []
+ }
+ })
+ );
- // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
- // expect(data.meta.hasNext).toEqual(true);
- // expect(data.meta.hasPrev).toEqual(false);
- // done();
- // }));
- // });
+ pageInter.intercept(execCtxMock, callHandlerMock).then((res) => {
+ res.subscribe((page) => {
+ expect(page.meta).toEqual({
+ total: 921,
+ pagenum: 5,
+ order: 'desc',
+ hasNext: true,
+ hasPrev: true,
+ pagesize: 100
+ });
+ });
+ });
+ });
- // it('Should have correct meta-data', (done) => {
- // executionContext.getRequest.mockReturnValue({ query: new SearchQueryDto('someQuery', 2, 5, 'asc') });
- // callHandler.handle.mockReturnValue(of({
- // total: { value: 15 },
- // hits: Array(15).fill({dummy: 'dum'}, 0, 15),
- // }));
+ it('Should reverse the search results', () => {
+ execCtxMock.getRequest.mockReturnValueOnce({
+ query: {
+ page: 1,
+ order: 'desc',
+ limit: 3
+ }
+ });
- // pageInter.intercept(executionContext, callHandler).then(res => res.subscribe((data) => {
- // expect(data.meta).toEqual({
- // total: 15,
- // pagenum: 2,
- // order: Order.ASC,
- // hasNext: true,
- // hasPrev: true,
- // pagesize: 5
- // });
- // done();
- // }));
- // });
+ pageInter['prevSearch']._prevPage = 3;
+ pageInter['prevSearch'].isSet = jest.fn().mockImplementationOnce(() => {
+ return true;
+ })
+
+ callHandlerMock.handle.mockReturnValueOnce(
+ of({
+ hits: {
+ total: { value: 1 },
+ hits: [
+ { sort: ['1', 'less relevant'], _source: '1' },
+ { sort: ['2', 'average'], _source: '2' },
+ { sort: ['3', 'most relevant'], _source: '3' }
+ ]
+ }
+ })
+ );
+
+ pageInter.intercept(execCtxMock, callHandlerMock).then((res) => {
+ res.subscribe((page) => {
+ expect(pageInter['prevSearch']._tiebreaker).toEqual(['1', 'less relevant']);
+ expect(page.data).toEqual(['3', '2', '1']);
+ });
+ });
+ });
});
- // describe('getPIT()', () => {
+ describe('getPIT()', () => {
+ it('Should touch HttpService.post() method', () => {
+ let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
- // });
+ pageInter.getPIT(1);
+ expect(httpPostMock).toHaveBeenCalled();
+ });
+
+ it('Should contain correct port in the URI from .env', () => {
+ let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ pageInter.getPIT(1);
+ expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
+ });
+
+ it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
+ let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ data: {id: '2567'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ let time = 2;
+ let unit = EsTime.sec;
+
+ pageInter.getPIT(time, unit);
+ expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
+ });
+
+ it('Should return error exeception when HttpService fails', () => {
+ jest.spyOn(httpService, 'post').mockImplementationOnce(() => {
+ throw HttpResponseException;
+ });
+
+ expect(pageInter.getPIT(1)).rejects.toEqual(HttpResponseException);
+ });
+
+ it('Should return a non-empty string when HttpService request succeedes', () => {
+ jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ data: {id: '2567', keep_alive: '1m'},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
+
+ expect(pageInter.getPIT(1)).resolves.toEqual({
+ id: '2567',
+ keep_alive: '1m',
+ });
+ });
+ });
// describe('deletePIT()', () => {
+ // it('Should touch HttpService.delete() method', () => {
+ // let httpPostMock = jest.spyOn(httpService, 'delete').mockReturnValueOnce(of({
+ // data: {id: '2567'},
+ // status: 0,
+ // statusText: '',
+ // headers: {},
+ // config: {},
+ // }));
+ // pageInter.getPIT(1);
+ // expect(httpPostMock).toHaveBeenCalled();
+ // });
+
+ // it('Should contain correct port in the URI from .env', () => {
+ // let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ // data: {id: '2567'},
+ // status: 0,
+ // statusText: '',
+ // headers: {},
+ // config: {},
+ // }));
+
+ // pageInter.getPIT(1);
+ // expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
+ // });
+
+ // it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
+ // let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ // data: {id: '2567'},
+ // status: 0,
+ // statusText: '',
+ // headers: {},
+ // config: {},
+ // }));
+
+ // let time = 2;
+ // let unit = EsTime.sec;
+
+ // pageInter.getPIT(time, unit);
+ // expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
+ // });
+
+ // it('Should return error exeception when HttpService fails', () => {
+ // jest.spyOn(httpService, 'post').mockImplementationOnce(() => {
+ // throw HttpResponseException;
+ // });
+
+ // expect(pageInter.getPIT(1)).rejects.toEqual(HttpResponseException);
+ // });
+
+ // it('Should return a non-empty string when HttpService request succeedes', () => {
+ // jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ // data: {id: '2567', keep_alive: '1m'},
+ // status: 0,
+ // statusText: '',
+ // headers: {},
+ // config: {},
+ // }));
+
+ // expect(pageInter.getPIT(1)).resolves.toEqual({
+ // id: '2567',
+ // keep_alive: '1m',
+ // });
+ // });
// });
});
\ No newline at end of file
diff --git a/src/test/papers.endpoint.spec.ts b/src/test/papers.endpoint.spec.ts
deleted file mode 100644
index 2ed6b09..0000000
--- a/src/test/papers.endpoint.spec.ts
+++ /dev/null
@@ -1,47 +0,0 @@
-import { Test, TestingModule } from "@nestjs/testing";
-import { INestApplication } from "@nestjs/common";
-import request from 'supertest'
-import { AppModule } from "src/infrastructure/modules";
-
-describe('E2E Testing of /papers', () => {
- let app: INestApplication;
-
- beforeAll(async () => {
- const moduleRef: TestingModule = await Test.createTestingModule({
- imports: [AppModule],
- }).compile();
-
- app = moduleRef.createNestApplication();
- await app.init();
- });
-
- it('Should return one exact item on page', async () => {
- return request(app.getHttpServer())
- .get('/papers/eeeb2d01-8315-454e-b33f-3d6caa25db42')
- .expect(200)
- .expect((res) => {
- res.body.data.length === 1;
- })
- .expect((res) => {
- res.body.data[0]._source.id === 'eeeb2d01-8315-454e-b33f-3d6caa25db42';
- });
- });
-
- it('Should return multiple items', async () => {
- return request(app.getHttpServer())
- .get('/papers/search?query=at&page=1')
- .expect(200)
- .expect((res) => {
- res.body.data.length > 0;
- })
- .expect((res) => {
- for (const value of res.body.data) {
- if(Object.keys(value).length === 0) return false;
- }
- })
- });
-
- afterAll(async () => {
- await app.close();
- })
-});
\ No newline at end of file
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index 2be5b00..95ded23 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -10,7 +10,6 @@ describe('Unit tests for SearchService', () => {
let searchService: SearchService;
let httpService: HttpService;
-
beforeAll(async () => {
const moduleRef = await Test.createTestingModule({
providers: [
@@ -114,7 +113,6 @@ describe('Unit tests for SearchService', () => {
searchService.findByID('').catch((err) => {
expect(err).toBeInstanceOf(GatewayTimeoutException);
- console.log(err)
});
});
@@ -211,7 +209,6 @@ describe('Unit tests for SearchService', () => {
searchService.findByContext(null).catch((err) => {
expect(err).toBeInstanceOf(GatewayTimeoutException);
- console.log(err)
});
});
@@ -227,80 +224,4 @@ describe('Unit tests for SearchService', () => {
});
});
});
-});
-
-/**
- * describe('getPIT()', () => {
- it('Should touch HttpService.post() method', () => {
- let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
-
- searchService.getPIT(1);
- expect(postMock).toHaveBeenCalled();
- });
-
- it('Should contain correct port in the URI from .env', () => {
- let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
-
- searchService.getPIT(1);
- expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
- });
-
- it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
- let postMock = jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
-
- let time = 2;
- let unit = EsTime.sec;
-
- searchService.getPIT(time, unit);
- expect(postMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
- });
-
- it('Should return error exeception when HttpService fails', () => {
- jest.spyOn(httpService, 'post').mockImplementation(() => {
- throw HttpResponseException;
- });
-
- expect(searchService.getPIT(1)).rejects.toEqual(HttpResponseException);
- });
-
- it('Should return a non-empty string when HttpService request succeedes', () => {
- jest.spyOn(httpService, 'post').mockReturnValue(of({
- data: {id: '2567', keep_alive: '1m'},
- status: 0,
- statusText: '',
- headers: {},
- config: {},
- }));
-
- expect(searchService.getPIT(1)).resolves.toEqual({
- id: '2567',
- keep_alive: '1m',
- });
- });
-
-
- });
-
- describe('deletePIT()', () => {
- it.todo('Should fail to delete, because the requested PIT ID is invalid');
- it.todo('Should call HttpService.delete() method with correct body');
- });
- */
\ No newline at end of file
+});
\ No newline at end of file
--
2.39.5
From 22598ae2bc738859cfbf5c67241900901a5972b8 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Fri, 19 Aug 2022 03:14:06 +0300
Subject: [PATCH 09/23] Added more tests. Unit tests for PapersController.
---
.../controller/papers.controller.ts | 4 +-
....spec.ts => papers.controller.e2e.spec.ts} | 0
src/test/page.interceptor.spec.ts | 108 ++++++++----------
src/test/papers.controller.spec.ts | 99 ++++++++++++++++
4 files changed, 148 insertions(+), 63 deletions(-)
rename src/test/e2e/{papers.endpoint.spec.ts => papers.controller.e2e.spec.ts} (100%)
create mode 100644 src/test/papers.controller.spec.ts
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 6d0fab4..7a18f12 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -35,7 +35,7 @@ export class PapersController {
(response: SearchResultDto) => {
return response.data;
},
- (error: HttpException) => {
+ (error) => {
throw error;
}
);
@@ -61,7 +61,7 @@ export class PapersController {
(response: SearchResultDto) => {
return response.data;
},
- (error: HttpException) => {
+ (error) => {
throw error;
}
);
diff --git a/src/test/e2e/papers.endpoint.spec.ts b/src/test/e2e/papers.controller.e2e.spec.ts
similarity index 100%
rename from src/test/e2e/papers.endpoint.spec.ts
rename to src/test/e2e/papers.controller.e2e.spec.ts
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index c6fe8a7..25fafbd 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -1,7 +1,6 @@
import { HttpService } from "@nestjs/axios";
import { ConfigModule } from "@nestjs/config";
-import { ModuleRef } from "@nestjs/core";
-import { Test } from "@nestjs/testing";
+ import { Test } from "@nestjs/testing";
import { Observable, of } from "rxjs";
import { EsTime, Order } from "src/core/domain";
import { PageDto } from "src/core/domain/dtos";
@@ -263,70 +262,57 @@ describe('Unit tests for PageInterceptor', () => {
});
});
- // describe('deletePIT()', () => {
- // it('Should touch HttpService.delete() method', () => {
- // let httpPostMock = jest.spyOn(httpService, 'delete').mockReturnValueOnce(of({
- // data: {id: '2567'},
- // status: 0,
- // statusText: '',
- // headers: {},
- // config: {},
- // }));
+ describe('deletePIT()', () => {
+ it('Should touch HttpService.delete() method', () => {
+ let httpDeleteMock = jest.spyOn(httpService, 'delete').mockReturnValueOnce(
+ of({
+ data: {succeeded: true},
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
- // pageInter.getPIT(1);
- // expect(httpPostMock).toHaveBeenCalled();
- // });
+ pageInter.deletePIT('');
+ expect(httpDeleteMock).toHaveBeenCalled();
+ });
- // it('Should contain correct port in the URI from .env', () => {
- // let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
- // data: {id: '2567'},
- // status: 0,
- // statusText: '',
- // headers: {},
- // config: {},
- // }));
+ it('Should contain correct port in the URI from .env and passed PIT ID in the request body', () => {
+ let httpDeleteMock = jest.spyOn(httpService, 'delete').mockReturnValueOnce(
+ of({
+ data: { succeeded: true },
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
- // pageInter.getPIT(1);
- // expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
- // });
+ pageInter.deletePIT('thisIsIDSpecified');
+ expect(httpDeleteMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/_pit`, {
+ data: { id: 'thisIsIDSpecified' },
+ headers: { 'Content-Type': 'application/json' }
+ });
+ });
- // it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
- // let httpPostMock = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
- // data: {id: '2567'},
- // status: 0,
- // statusText: '',
- // headers: {},
- // config: {},
- // }));
+ it('Should return error exeception when HttpService fails', () => {
+ jest.spyOn(httpService, 'delete').mockImplementationOnce(() => {
+ throw HttpResponseException;
+ });
- // let time = 2;
- // let unit = EsTime.sec;
-
- // pageInter.getPIT(time, unit);
- // expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
- // });
+ expect(pageInter.deletePIT('')).rejects.toEqual(HttpResponseException);
+ });
- // it('Should return error exeception when HttpService fails', () => {
- // jest.spyOn(httpService, 'post').mockImplementationOnce(() => {
- // throw HttpResponseException;
- // });
+ it('Should return true when Elasticsearch successfully removed PIT', () => {
+ jest.spyOn(httpService, 'delete').mockReturnValueOnce(
+ of({
+ data: { succeeded: true },
+ status: 0,
+ statusText: '',
+ headers: {},
+ config: {},
+ }));
- // expect(pageInter.getPIT(1)).rejects.toEqual(HttpResponseException);
- // });
-
- // it('Should return a non-empty string when HttpService request succeedes', () => {
- // jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
- // data: {id: '2567', keep_alive: '1m'},
- // status: 0,
- // statusText: '',
- // headers: {},
- // config: {},
- // }));
-
- // expect(pageInter.getPIT(1)).resolves.toEqual({
- // id: '2567',
- // keep_alive: '1m',
- // });
- // });
- // });
+ expect(pageInter.deletePIT('')).resolves.toBe(true);
+ });
+ });
});
\ No newline at end of file
diff --git a/src/test/papers.controller.spec.ts b/src/test/papers.controller.spec.ts
new file mode 100644
index 0000000..a4e4382
--- /dev/null
+++ b/src/test/papers.controller.spec.ts
@@ -0,0 +1,99 @@
+import { HttpModule } from "@nestjs/axios";
+import { NotFoundException } from "@nestjs/common";
+import { Test } from "@nestjs/testing";
+import { PapersController } from "src/application";
+import { SearchService } from "src/core/services/common/search.service";
+
+
+describe('Unit tests for PapersController', () => {
+ let searchService: SearchService;
+ let papersController: PapersController;
+
+ beforeAll(async () => {
+ const moduleRef = await Test.createTestingModule({
+ providers: [
+ PapersController,
+ {
+ provide: SearchService,
+ useValue: {
+ findByContext: jest.fn(),
+ findByID: jest.fn()
+ }
+ }
+ ],
+ imports: [HttpModule]
+ }).compile();
+
+ papersController = moduleRef.get(PapersController);
+ searchService = moduleRef.get(SearchService);
+ });
+
+ it('Should be defined', () => {
+ expect(papersController).toBeDefined();
+ expect(searchService).toBeDefined();
+ });
+
+ describe('getByContext()', () => {
+ it('Should touch SearchService.findByContext() method', () => {
+ let findCtxMock = jest.spyOn(searchService, 'findByContext')
+ .mockResolvedValueOnce({
+ data: {
+ took: undefined,
+ timed_out: undefined,
+ hits: undefined,
+ _shards: undefined,
+ },
+ statusCode: 0
+ });
+
+ papersController.getByContext({ query: undefined });
+ expect(findCtxMock).toHaveBeenCalled();
+ });
+
+ it('Should resolve, when searched successfully', () => {
+ const searchResultMock = {
+ took: 1,
+ timed_out: false,
+ hits: {
+ total: {},
+ hits: [
+ {
+ _source: {
+ id: 'thisIsID',
+ title: 'andThisIsTheTitle',
+ authors: ['alsoAuthors'],
+ topic: 'andThatIsTheTopic',
+ summary: 'someSummaries',
+ tags: ['tag1', 'tag2'],
+ content: 'finallyContent!'
+ }
+ }
+ ],
+ },
+ _shards: undefined,
+ };
+
+ jest.spyOn(searchService, 'findByContext')
+ .mockResolvedValueOnce({
+ data: searchResultMock,
+ statusCode: 200
+ });
+
+ expect(papersController.getByContext({ query: undefined })).resolves.toEqual(searchResultMock);
+ });
+
+ it('Should throw, when search was unsuccessful', () => {
+ searchService.findByContext = jest.fn()
+ .mockRejectedValueOnce(new NotFoundException);
+
+ expect(papersController.getByContext({ query: undefined }))
+ .rejects.toThrow(NotFoundException)
+ });
+ });
+
+ describe('getByID()', () => {
+ it.todo('Should touch SearchService.findByID() method');
+ it.todo('Should resolve, when searched successfully');
+ it.todo('Should throw, when search was unsuccessful');
+ });
+});
\ No newline at end of file
--
2.39.5
From fa130ddf16e3c07e55356ea951667cbb17737bd5 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Wed, 24 Aug 2022 20:57:54 +0300
Subject: [PATCH 10/23] Full covered Swagger doc. added. + Fix on tests
---
docker-compose.yaml | 10 +-
.../classes/EnvironmentVariables.html | 2 +-
documentation/classes/EsHitDto.html | 23 +-
documentation/classes/EsQueryDto.html | 37 +-
documentation/classes/EsResponseDto.html | 47 +-
documentation/classes/PageDto.html | 23 +-
documentation/classes/PageMetaDto.html | 536 ++++++++++++++++++
documentation/classes/PaperDto.html | 19 +-
documentation/classes/PrevSearch.html | 415 ++++++++++----
documentation/classes/RequestDto.html | 29 +-
documentation/classes/SearchQueryDto.html | 15 +-
documentation/classes/SearchResultDto.html | 18 +-
.../controllers/PapersController.html | 100 ++--
documentation/coverage.html | 48 +-
documentation/graph/dependencies.svg | 204 +++----
.../injectables/PageInterceptor.html | 215 ++++---
documentation/injectables/SearchService.html | 130 ++---
documentation/interfaces/EqQueryString.html | 7 +-
documentation/interfaces/EsPit.html | 2 +-
documentation/interfaces/EsQuery.html | 2 +-
documentation/interfaces/EsResponseHits.html | 4 +-
documentation/interfaces/SearchInfo.html | 2 +-
documentation/js/menu-wc.js | 15 +-
documentation/js/menu-wc_es5.js | 2 +-
documentation/js/search/search_index.js | 4 +-
documentation/miscellaneous/variables.html | 196 ++++---
.../modules/CommonModule/dependencies.svg | 8 +-
documentation/modules/HttpResponseModule.html | 8 +-
documentation/modules/LoggerModule.html | 8 +-
.../modules/LoggerModule/dependencies.svg | 8 +-
documentation/modules/SearchModule.html | 6 +-
documentation/overview.html | 2 +-
package-lock.json | 20 +-
package.json | 7 +-
.../controller/papers.controller.ts | 63 +-
.../domain/dtos/{ => elastic}/es-hit.dto.ts | 9 +-
.../domain/dtos/{ => elastic}/es-query.dto.ts | 15 +-
.../dtos/{ => elastic}/es-response.dto.ts | 25 +-
src/core/domain/dtos/index.ts | 6 +-
src/core/domain/dtos/page-meta.dto.ts | 73 +++
src/core/domain/dtos/page.dto.ts | 13 +-
src/core/domain/dtos/paper.dto.ts | 3 +-
src/core/domain/dtos/request.dto.ts | 17 +-
src/core/domain/dtos/search-q.dto.ts | 3 +-
src/core/domain/dtos/search-result.dto.ts | 10 +-
.../{ => elastic}/es-pit.interface.ts | 0
.../es-query-string.interface.ts | 0
.../{ => elastic}/es-query.interface.ts | 0
.../es-response-hits.interface.ts | 2 +-
src/core/domain/interfaces/index.ts | 10 +-
.../interfaces/search-info.interface.ts | 2 +-
src/core/interceptors/page.interceptor.ts | 13 +-
src/core/services/common/search.service.ts | 24 +-
src/infrastructure/modules/search.module.ts | 2 +-
src/main.ts | 8 +-
src/test/e2e/papers.controller.e2e.spec.ts | 209 +++++--
src/test/jest-e2e.json | 9 +
src/test/page.interceptor.spec.ts | 6 +-
src/test/papers.controller.spec.ts | 69 ++-
src/test/search.service.spec.ts | 81 ++-
60 files changed, 1987 insertions(+), 857 deletions(-)
create mode 100644 documentation/classes/PageMetaDto.html
rename src/core/domain/dtos/{ => elastic}/es-hit.dto.ts (81%)
rename src/core/domain/dtos/{ => elastic}/es-query.dto.ts (81%)
rename src/core/domain/dtos/{ => elastic}/es-response.dto.ts (73%)
create mode 100644 src/core/domain/dtos/page-meta.dto.ts
rename src/core/domain/interfaces/{ => elastic}/es-pit.interface.ts (100%)
rename src/core/domain/interfaces/{ => elastic}/es-query-string.interface.ts (100%)
rename src/core/domain/interfaces/{ => elastic}/es-query.interface.ts (100%)
rename src/core/domain/interfaces/{ => elastic}/es-response-hits.interface.ts (84%)
create mode 100644 src/test/jest-e2e.json
diff --git a/docker-compose.yaml b/docker-compose.yaml
index 769d0f3..46a132b 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -3,8 +3,6 @@ version: '3.3'
services:
elasticsearch:
image: ${ES_IMAGE_NAME}:${ES_IMAGE_VERSION}
- build:
- context: .
container_name: ${ES_CONTAINER_NAME}
restart: always
ports:
@@ -12,6 +10,12 @@ services:
environment:
- xpack.security.enabled=false
- discovery.type=single-node
+
+
+
+
+
+
freeland:
image: ${IMAGE_NAME}:${IMAGE_VERSION}
build:
@@ -19,6 +23,8 @@ services:
dockerfile: Dockerfile
container_name: ${CONTAINER_NAME}
restart: always
+ links:
+ - "elasticsearch:localhost"
ports:
- "${LOCAL_PORT}:${NODE_PORT}"
environment:
diff --git a/documentation/classes/EnvironmentVariables.html b/documentation/classes/EnvironmentVariables.html
index a89af6a..b5795c3 100644
--- a/documentation/classes/EnvironmentVariables.html
+++ b/documentation/classes/EnvironmentVariables.html
@@ -92,7 +92,7 @@
import { plainToClass } from 'class-transformer';
-import { validateSync, IsOptional } from 'class-validator';
+import { validateSync } from 'class-validator';
/**
* env vatiables
diff --git a/documentation/classes/EsHitDto.html b/documentation/classes/EsHitDto.html
index bc158e2..fa7978b 100644
--- a/documentation/classes/EsHitDto.html
+++ b/documentation/classes/EsHitDto.html
@@ -63,7 +63,7 @@
File
@@ -143,13 +143,13 @@
Decorators :
- @IsOptional() @ApiProperty({description: 'Relevance score', example: 1.2355})
+ @IsOptional() @ApiPropertyOptional({description: 'Relevance score', example: 1.2355})
-
+
@@ -190,7 +190,7 @@
-
+
@@ -226,13 +226,13 @@
Decorators :
- @IsOptional() @ApiProperty({description: 'List of objects that represents how the hit was sorted', example: undefined})
+ @IsOptional() @ApiPropertyOptional({description: 'List of objects that represents how the hit was sorted', example: undefined})
-
+
@@ -257,9 +257,9 @@
-
import { ApiProperty } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
-import { PaperDto } from "./paper.dto";
+ import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
+import { IsNotEmpty, IsOptional } from "class-validator";
+import { PaperDto } from "../paper.dto";
/**
* List of allowed properties in this DTO
@@ -269,6 +269,7 @@ const allowedProperties = ['sort', '_source', '_sc
/**
* Structure of the document stored and retrieved from Elasticsearch
*/
+@ApiExtraModels()
export class EsHitDto {
/**
* Actual document stored in Elasticsearch
@@ -286,7 +287,7 @@ export class EsHitDto {
* List of objects that represents how the hit was sorted
*/
@IsOptional()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'List of objects that represents how the hit was sorted',
example: {}
})
@@ -296,7 +297,7 @@ export class EsHitDto {
* Hit relevance score
*/
@IsOptional()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'Relevance score',
example: 1.2355
})
diff --git a/documentation/classes/EsQueryDto.html b/documentation/classes/EsQueryDto.html
index 60b06b3..3064425 100644
--- a/documentation/classes/EsQueryDto.html
+++ b/documentation/classes/EsQueryDto.html
@@ -63,7 +63,7 @@
File
@@ -133,7 +133,7 @@
-
+
@@ -175,13 +175,13 @@
Decorators :
- @IsOptional() @IsObject() @ApiProperty({description: 'PIT object', example: undefined})
+ @IsOptional() @IsObject() @ApiPropertyOptional({description: 'PIT object', example: undefined})
-
+
@@ -222,7 +222,7 @@
-
+
@@ -258,13 +258,13 @@
Decorators :
- @IsOptional() @IsArray() @ApiProperty({description: '', example: undefined})
+ @IsOptional() @IsArray() @ApiPropertyOptional({description: '', example: undefined})
-
+
@@ -300,13 +300,13 @@
Decorators :
- @IsOptional() @IsDefined() @IsNumber() @IsInt() @ApiProperty({description: 'Maximum number of elements returned by Elasticsearch', example: 30})
+ @IsOptional() @IsDefined() @IsNumber() @IsInt() @ApiPropertyOptional({description: 'Maximum number of elements returned by Elasticsearch', example: 30})
-
+
@@ -342,13 +342,13 @@
Decorators :
- @IsOptional() @IsArray() @ApiProperty({description: '', example: undefined})
+ @IsOptional() @IsArray() @ApiPropertyOptional({description: '', example: undefined})
-
+
@@ -373,10 +373,10 @@
-
import { ApiProperty } from "@nestjs/swagger";
+ import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
import { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
-import { EsPit } from "../interfaces/es-pit.interface";
-import { EsQuery } from "../interfaces/es-query.interface"
+import { EsPit } from "../../interfaces/elastic/es-pit.interface";
+import { EsQuery } from "../../interfaces/elastic/es-query.interface"
/**
* List of allowed properties in this DTO
@@ -386,6 +386,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
/**
* Elasticsearch query DTO
*/
+ @ApiExtraModels()
export class EsQueryDto {
/**
* Maximum number of elements returned by Elasticsearch
@@ -394,7 +395,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
@IsDefined()
@IsNumber()
@IsInt()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'Maximum number of elements returned by Elasticsearch',
example: 30
})
@@ -416,7 +417,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
*/
@IsOptional()
@IsObject()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'PIT object',
example: {}
})
@@ -427,7 +428,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
*/
@IsOptional()
@IsArray()
- @ApiProperty({
+ @ApiPropertyOptional({
description: '',
example: []
})
@@ -438,7 +439,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
*/
@IsOptional()
@IsArray()
- @ApiProperty({
+ @ApiPropertyOptional({
description: '',
example: []
})
diff --git a/documentation/classes/EsResponseDto.html b/documentation/classes/EsResponseDto.html
index b147225..200f1e3 100644
--- a/documentation/classes/EsResponseDto.html
+++ b/documentation/classes/EsResponseDto.html
@@ -63,7 +63,7 @@
File
@@ -147,13 +147,13 @@
Decorators :
- @IsOptional() @IsObject() @ApiProperty({description: '_shards', example: undefined})
+ @IsOptional() @IsObject() @ApiProperty({description: 'Contains a count of Elasticsearch shards used to process the request', example: undefined})
-
+
@@ -189,13 +189,13 @@ used for the request
Decorators :
- @IsOptional() @IsObject() @ApiProperty({description: 'hits', example: undefined})
+ @IsOptional() @IsObject() @ApiProperty({description: 'Contains returned documents and metadata', example: undefined})
-
+
@@ -231,13 +231,13 @@ used for the request
Decorators :
- @IsString() @IsOptional() @ApiProperty({description: 'PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})
+ @IsString() @IsOptional() @ApiPropertyOptional({description: 'Contains PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})
-
+
@@ -272,13 +272,13 @@ used for the request
Decorators :
- @IsDefined() @IsNotEmpty() @IsBoolean() @ApiProperty({description: 'timed_out', example: false})
+ @IsDefined() @IsNotEmpty() @IsBoolean() @ApiProperty({description: 'Shows if request timed out before completion', example: false})
-
+
@@ -314,13 +314,13 @@ If 'true' - the request timed out before completion
Decorators :
- @IsDefined() @IsNotEmpty() @IsNumber() @ApiProperty({description: 'took', example: 5})
+ @IsDefined() @IsNotEmpty() @IsNumber() @ApiProperty({description: 'The time that it took Elasticsearch to process the query', example: 5})
-
+
@@ -346,9 +346,9 @@ took Elasticsearch to execute the request
-
import { ApiProperty } from "@nestjs/swagger";
+ import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
import { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from "class-validator";
-import { EsResponseHits } from "../interfaces/es-response-hits.interface";
+import { EsResponseHits } from "../../interfaces/elastic/es-response-hits.interface";
/**
* List of allowed properties in this DTO
@@ -358,6 +358,7 @@ const allowedProperties = ['took', 'timed_out', '_
/**
* Elasticsearch response DTO
*/
+@ApiExtraModels()
export class EsResponseDto {
/**
* Number of milliseconds it
@@ -367,7 +368,7 @@ export class EsResponseDto {
@IsNotEmpty()
@IsNumber()
@ApiProperty({
- description: 'took',
+ description: 'The time that it took Elasticsearch to process the query',
example: 5
})
took: number;
@@ -380,7 +381,7 @@ export class EsResponseDto {
@IsNotEmpty()
@IsBoolean()
@ApiProperty({
- description: 'timed_out',
+ description: 'Shows if request timed out before completion',
example: false,
})
timed_out: boolean;
@@ -392,7 +393,7 @@ export class EsResponseDto {
@IsOptional()
@IsObject()
@ApiProperty({
- description: '_shards',
+ description: 'Contains a count of Elasticsearch shards used to process the request',
example: {
total: 1,
successful: 1,
@@ -408,7 +409,7 @@ export class EsResponseDto {
@IsOptional()
@IsObject()
@ApiProperty({
- description: 'hits',
+ description: 'Contains returned documents and metadata',
example: {
total: {
value: 3,
@@ -419,12 +420,8 @@ export class EsResponseDto {
_index: 'papers',
_id: '01002',
_score: 1.2,
- _source: {
-
- },
- fields: {
-
- }
+ _source: {},
+ fields: {}
}],
}
})
@@ -435,8 +432,8 @@ export class EsResponseDto {
*/
@IsString()
@IsOptional()
- @ApiProperty({
- description: 'PIT ID used to search for results',
+ @ApiPropertyOptional({
+ description: 'Contains PIT ID used to search for results',
example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='
})
pit_id?: string;
diff --git a/documentation/classes/PageDto.html b/documentation/classes/PageDto.html
index 48a5b98..18a1357 100644
--- a/documentation/classes/PageDto.html
+++ b/documentation/classes/PageDto.html
@@ -122,7 +122,7 @@
-
+
@@ -202,13 +202,13 @@
Decorators :
- @IsArray() @ApiProperty({description: 'All data the page contains', isArray: true})
+ @IsArray() @ApiProperty({description: 'All data (papers) the page contains', isArray: true, type: PaperDto})
-
+
@@ -235,7 +235,7 @@
- Type : PageMeta
+ Type : PageMetaDto
@@ -250,7 +250,7 @@
-
+
@@ -275,9 +275,11 @@
-
import { ApiProperty } from "@nestjs/swagger";
+ import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
import { IsArray } from "class-validator";
+import { Order } from "../enums";
import { PageMeta } from "../interfaces/page-meta.interface";
+import { PageMetaDto } from "./page-meta.dto";
import { PaperDto } from "./paper.dto";
/**
@@ -288,14 +290,16 @@ const allowedProperties = ['data', 'meta'];
/**
* Page model for pagination
*/
+@ApiExtraModels()
export class PageDto {
/**
* Data block of the page
*/
@IsArray()
@ApiProperty({
- description: 'All data the page contains',
+ description: 'All data (papers) the page contains',
isArray: true,
+ type: PaperDto
})
readonly data: PaperDto[];
@@ -304,9 +308,10 @@ export class PageDto {
*/
@ApiProperty({
description: 'Metadata for the page',
- // example: [],
+ // example: {},
+
})
- readonly meta: PageMeta;
+ readonly meta: PageMetaDto;
/**
* Constructs an object with provided parameters
diff --git a/documentation/classes/PageMetaDto.html b/documentation/classes/PageMetaDto.html
new file mode 100644
index 0000000..17aa765
--- /dev/null
+++ b/documentation/classes/PageMetaDto.html
@@ -0,0 +1,536 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ PageMetaDto
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Page model for pagination
+
+
+
+
+
Implements
+
+
+
+
+
+ Index
+
+
+
+
+ Properties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ hasNext
+
+
+
+
+
+
+ Type : boolean
+
+
+
+
+
+ Decorators :
+
+
+ @ApiProperty({description: 'Flag, that shows if there's a page following the current one', example: true})
+
+
+
+
+
+
+
+
+
+
+
+ Flag, that shows if there's a page following the current one
+
+
+
+
+
+
+
+
+
+
+
+
+ hasPrev
+
+
+
+
+
+
+ Type : boolean
+
+
+
+
+
+ Decorators :
+
+
+ @ApiProperty({description: 'Flag, that shows if there's a page preceding the current one', example: true})
+
+
+
+
+
+
+
+
+
+
+
+ Flag, that shows if there's a page preceding the current one
+
+
+
+
+
+
+
+
+
+
+
+
+ order
+
+
+
+
+
+
+ Type : Order
+
+
+
+
+
+ Decorators :
+
+
+ @ApiProperty({description: 'Order of the elements on the page', example: undefined})
+
+
+
+
+
+
+
+
+
+
+
+ Order of the elements on the page
+
+
+
+
+
+
+
+
+
+
+
+
+ pagenum
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+ Decorators :
+
+
+ @ApiProperty({description: 'Current page number', minimum: 1, example: 3})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ pagesize
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+ Decorators :
+
+
+ @ApiProperty({description: 'Maximum number of elements on the page', minimum: 1, example: 20})
+
+
+
+
+
+
+
+
+
+
+
+ Maximum number of elements on the page
+
+
+
+
+
+
+
+
+
+
+
+
+ total
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+ Decorators :
+
+
+ @IsArray() @ApiProperty({description: 'Total number of hits (results) acquired from the search', example: 314})
+
+
+
+
+
+
+
+
+
+
+
+ Total number of hits (results) acquired from the search
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
+import { IsArray } from "class-validator";
+import { Order } from "../enums";
+import { PageMeta } from "../interfaces/page-meta.interface";
+import { PaperDto } from "./paper.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize'];
+
+/**
+ * Page model for pagination
+ */
+@ApiExtraModels()
+export class PageMetaDto implements PageMeta {
+ /**
+ * Total number of hits (results) acquired from the search
+ */
+ @IsArray()
+ @ApiProperty({
+ description: 'Total number of hits (results) acquired from the search',
+ example: 314
+ })
+ total: number;
+
+ /**
+ * Current page number
+ */
+ @ApiProperty({
+ description: 'Current page number',
+ minimum: 1,
+ example: 3
+ })
+ pagenum: number;
+
+ /**
+ * Order of the elements on the page
+ */
+ @ApiProperty({
+ description: 'Order of the elements on the page',
+ example: Order.DESC
+ })
+ order: Order;
+
+ /**
+ * Flag, that shows if there's a page following the current one
+ */
+ @ApiProperty({
+ description: 'Flag, that shows if there\'s a page following the current one',
+ example: true
+ })
+ hasNext: boolean;
+
+ /**
+ * Flag, that shows if there's a page preceding the current one
+ */
+ @ApiProperty({
+ description: 'Flag, that shows if there\'s a page preceding the current one',
+ example: true
+ })
+ hasPrev: boolean;
+
+ /**
+ * Maximum number of elements on the page
+ */
+ @ApiProperty({
+ description: 'Maximum number of elements on the page',
+ minimum: 1,
+ example: 20
+ })
+ pagesize: number;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/PaperDto.html b/documentation/classes/PaperDto.html
index 0cde5ce..c0b6e85 100644
--- a/documentation/classes/PaperDto.html
+++ b/documentation/classes/PaperDto.html
@@ -158,7 +158,7 @@
-
+
@@ -199,7 +199,7 @@
-
+
@@ -240,7 +240,7 @@
-
+
@@ -281,7 +281,7 @@
-
+
@@ -322,7 +322,7 @@
-
+
@@ -363,7 +363,7 @@
-
+
@@ -404,7 +404,7 @@
-
+
@@ -429,10 +429,8 @@
-
import { ApiProperty } from "@nestjs/swagger";
+ import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
-import { EsQueryDto } from "./es-query.dto";
-import { SearchQueryDto } from "./search-q.dto";
/**
* List of allowed properties in this DTO
@@ -442,6 +440,7 @@ const allowedProperties = ['id', 'title', 'authors
/**
* Structure of the document stored and retrieved from Elasticsearch
*/
+@ApiExtraModels()
export class PaperDto {
/**
* Unique ID of the paper
diff --git a/documentation/classes/PrevSearch.html b/documentation/classes/PrevSearch.html
index 13b2553..c87872c 100644
--- a/documentation/classes/PrevSearch.html
+++ b/documentation/classes/PrevSearch.html
@@ -76,12 +76,6 @@
- Implements
-
-
@@ -97,12 +91,15 @@
@@ -129,6 +126,26 @@
+
+
+ Accessors
+
+
+
+
+
+
+
@@ -144,7 +161,7 @@
-
+
@@ -169,6 +186,7 @@
+ Private
pit
@@ -182,7 +200,7 @@
-
+
@@ -201,6 +219,7 @@
+ Private
prevPage
@@ -214,7 +233,7 @@
-
+
@@ -233,6 +252,7 @@
+ Private
tiebreaker
@@ -246,7 +266,7 @@
-
+
@@ -288,8 +308,8 @@
-
+
@@ -319,30 +339,238 @@
+
+
+ Accessors
+
+
+
+
+
+
+ _pit
+
+
+
+
+
+ get _pit()
+
+
+
+
+
+
+
+
+
+
+ set _pit(pit: EsPit )
+
+
+
+
+
+
+
+
+
+
+
+
Parameters :
+
+
+
+ Name
+ Type
+ Optional
+
+
+
+
+ pit
+
+
+ EsPit
+
+
+
+ No
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _tiebreaker
+
+
+
+
+
+ get _tiebreaker()
+
+
+
+
+
+
+
+
+
+
+ set _tiebreaker(tiebreaker: [])
+
+
+
+
+
+
+
+
+
+
+
+
Parameters :
+
+
+
+ Name
+ Type
+ Optional
+
+
+
+
+ tiebreaker
+
+
+ []
+
+
+
+ No
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _prevPage
+
+
+
+
+
+ get _prevPage()
+
+
+
+
+
+
+
+
+
+
+ set _prevPage(page: number )
+
+
+
+
+
+
+
+
+
+
+
+
Parameters :
+
+
+
+ Name
+ Type
+ Optional
+
+
+
+
+ page
+
+
+ number
+
+
+
+ No
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
-import { reverse } from "dns";
import { Observable, map, take } from "rxjs";
-import { EsResponseDto, PageDto } from "../domain/dtos";
-import { EsQueryDto } from "../domain/dtos/es-query.dto";
+import { PageDto } from "../domain/dtos";
+import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
-import { SearchResultDto } from "../domain/dtos/search-result.dto";
import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
-import { EsPit } from "../domain/interfaces/es-pit.interface";
-import { SearchInfo } from "../domain/interfaces/search-info.interface";
-import { SearchService } from "../services/common/search.service";
+import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
/**
* Previous search data storage
*/
-class PrevSearch implements SearchInfo {
+class PrevSearch {
/**
* Constructs an uninitialized object
*/
@@ -355,17 +583,35 @@ class PrevSearch implements SearchInfo {
/**
* PIT object of the previous search
*/
- pit: EsPit;
+ private pit: EsPit;
+ set _pit(pit: EsPit) {
+ this.pit = pit;
+ }
+ get _pit(): EsPit {
+ return this.pit;
+ }
/**
* Tiebreaker and sort parameters
*/
- tiebreaker: unknown[];
+ private tiebreaker: unknown[];
+ set _tiebreaker(tiebreaker: unknown[]) {
+ this.tiebreaker = tiebreaker;
+ }
+ get _tiebreaker(): unknown[] {
+ return this.tiebreaker;
+ }
/**
* Number of the previous page
*/
- prevPage: number;
+ private prevPage: number;
+ set _prevPage(page: number) {
+ this.prevPage = page;
+ }
+ get _prevPage(): number {
+ return this.prevPage;
+ }
/**
* Checks if there was the search before current one
@@ -416,22 +662,26 @@ export class PageInterceptor implements NestInterceptor {
];
if (this.prevSearch.isSet()) {
- request.es_query.pit = this.prevSearch.pit;
- request.es_query.search_after = this.prevSearch.tiebreaker;
+ request.es_query.pit = this.prevSearch._pit;
+ request.es_query.search_after = this.prevSearch._tiebreaker;
let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);
+ request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);
- if (query.page < this.prevSearch.prevPage) {
+ if (query.page < this.prevSearch._prevPage) {
request.es_query.sort = [{ _score: { order: 'asc' } }];
request.es_query.size += limit - 1;
reverse = true;
- } else if (query.page == this.prevSearch.prevPage) {
- //...
+ } else if (query.page == this.prevSearch._prevPage) {
+ // Caching should be HERE
+ request.es_query.sort = [{ _score: { order: 'asc' } }];
+ reverse = true;
}
} else {
- this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
- request.es_query.size = !query?.limit ? 10 : query.limit;
+ this.prevSearch._pit = request.es_query.pit = await this.getPIT(1);
+
+ let limit = !query?.limit ? 10 : query.limit;
+ request.es_query.size = limit * query.page;
}
return next.handle().pipe(
@@ -439,28 +689,31 @@ export class PageInterceptor implements NestInterceptor {
// Setting the page meta-data
let meta: PageMeta = {
total: res.hits.total.value,
- pagenum: !query?.page ? 1 : query.page,
+ pagenum: !query?.page ? 1 : +query.page,
order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
- hasNext: false,
- hasPrev: false,
pagesize: !query?.limit ? 10 : query.limit,
+ hasNext: undefined,
+ hasPrev: undefined,
};
- // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;
- // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;
+ meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
+ meta.hasPrev = meta.pagenum != 1 ? true : false;
// Saving the search info
- this.prevSearch.pit.id = res.pit_id;
- this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;
- this.prevSearch.prevPage = query.page;
+ this.prevSearch._pit.id = res.pit_id;
+ this.prevSearch._tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
+ this.prevSearch._prevPage = query.page;
+ // Check if the performed search is a backwards search
let data = res.hits.hits.slice(-meta.pagesize);
if (reverse) {
- console.log('REVERSE');
- this.prevSearch.tiebreaker = data[0].sort;
+ this.prevSearch._tiebreaker = data[0]?.sort;
data.reverse();
reverse = false;
}
+ // Omitting the redundant info and leaving only the document
+ data = data.map((el) => el._source);
+
// Return the page
return new PageDto(data, meta);
})
@@ -472,6 +725,11 @@ export class PageInterceptor implements NestInterceptor {
*/
private readonly ES_PORT = process.env.ES_PORT;
+ /**
+ * Elastichsearch IP address
+ */
+ private readonly ES_IP = process.env.ES_CONTAINER_NAME;
+
/**
* Info about previously completed search
*/
@@ -485,12 +743,12 @@ export class PageInterceptor implements NestInterceptor {
public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise<EsPit> {
return new Promise((resolve, reject) => {
try {
- (this.httpService.post<EsPit>(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ this.httpService.post<EsPit>(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
.pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
+ .subscribe((res: EsPit) => {
res.keep_alive = alive + unit;
resolve(res);
- }));
+ });
} catch (error) {
reject(error);
}
@@ -505,7 +763,7 @@ export class PageInterceptor implements NestInterceptor {
async deletePIT(pitID: string): Promise<boolean> {
return new Promise((resolve, reject) => {
try {
- this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {
+ this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
data: { id: pitID },
headers: { 'Content-Type': 'application/json' },
})
@@ -518,72 +776,7 @@ export class PageInterceptor implements NestInterceptor {
}
})
}
-}
-/*
-public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {
- this.pit.id = pit.id;
- this.pit.keep_alive = pit.keep_alive;
-
- this.tiebreaker = tiebreaker.slice();
-
- this.prevPage = page;
- }
-
- public clearInfo() {
- this.pit = undefined;
- this.tiebreaker = undefined;
- this.prevPage = -1;
- }*/
-
- // getQueryParams(str: string): any {
- // let parameters: object = {};
- // let pairs: string[] = str.split(',');
- // parameters['main'] = pairs[0];
- // pairs.shift();
-
- // if(!pairs || pairs[0] === '') return parameters;
-
- // for (const pair of pairs) {
- // const key: string = pair.substring(0, pair.indexOf('='));
- // const value: string = pair.substring(pair.indexOf('=') + 1);
- // parameters[key] = value;
- // }
-
- // return parameters;
- // }
-
-
- /**
- * OLD WAY PAGINATION
- * // Setting the page data
- // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);
- */
-
-
- // if (query.page == 1) {
- // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
- // } else {
- // if (!this.prevSearch.isSet()) {
- // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
-
- // request.es_query.size = query.limit * (query.page - 1);
- // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {
- // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;
- // });
- // } else {
- // if (query.page == this.prevSearch.prevPage) {
- // return;
- // } else {
- // request.es_query.pit = this.prevSearch.pit;
- // request.es_query.search_after = this.prevSearch.tiebreaker;
- // request.es_query.size = (query.page - this.prevSearch.prevPage);
- // }
-
- // // request.es_query.pit = this.prevSearch.pit;
- // // request.es_query.search_after = this.prevSearch.tiebreaker;
- // }
- // }
-
+}
diff --git a/documentation/classes/RequestDto.html b/documentation/classes/RequestDto.html
index 0ea9fc6..15d9429 100644
--- a/documentation/classes/RequestDto.html
+++ b/documentation/classes/RequestDto.html
@@ -121,7 +121,7 @@
-
+
@@ -201,13 +201,13 @@
Decorators :
- @IsOptional() @ApiProperty({description: '', example: undefined})
+ @IsOptional() @ApiPropertyOptional({type: EsQueryDto, description: 'Elasticsearch query body constructed by pagination mechanism', example: undefined})
-
+
@@ -242,13 +242,13 @@
Decorators :
- @IsDefined() @IsNotEmpty() @ApiProperty({description: '', example: undefined})
+ @IsDefined() @IsNotEmpty() @ApiProperty({type: SearchQueryDto, description: 'Actual query with parameters acquired from the request', example: undefined})
-
+
@@ -273,9 +273,9 @@
-
import { ApiProperty } from "@nestjs/swagger";
-import { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
-import { EsQueryDto } from "./es-query.dto";
+ import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
+import { IsDefined, IsNotEmpty, IsOptional } from "class-validator";
+import { EsQueryDto } from "./elastic/es-query.dto";
import { SearchQueryDto } from "./search-q.dto";
/**
@@ -286,6 +286,7 @@ const allowedProperties = ['query', 'es_query'];
/**
* Request object, which contains query parameters and Elasticsearch query object
*/
+@ApiExtraModels()
export class RequestDto {
/**
* Query parameters object
@@ -293,7 +294,8 @@ export class RequestDto {
@IsDefined()
@IsNotEmpty()
@ApiProperty({
- description: '',
+ type: SearchQueryDto,
+ description: 'Actual query with parameters acquired from the request',
example: {}
})
query: SearchQueryDto;
@@ -302,8 +304,9 @@ export class RequestDto {
* Elasticsearch query object
*/
@IsOptional()
- @ApiProperty({
- description: '',
+ @ApiPropertyOptional({
+ type: EsQueryDto,
+ description: 'Elasticsearch query body constructed by pagination mechanism',
example: {},
})
es_query?: EsQueryDto;
@@ -313,10 +316,10 @@ export class RequestDto {
* @param query
* @param es_query
*/
- constructor(query: SearchQueryDto, es_query: EsQueryDto) {
+ constructor(query: SearchQueryDto, es_query: EsQueryDto) {
this.query = query;
this.es_query = es_query;
- }
+ }
}
diff --git a/documentation/classes/SearchQueryDto.html b/documentation/classes/SearchQueryDto.html
index 16bb309..e30b687 100644
--- a/documentation/classes/SearchQueryDto.html
+++ b/documentation/classes/SearchQueryDto.html
@@ -126,7 +126,7 @@
-
+
@@ -235,7 +235,7 @@
-
+
@@ -276,7 +276,7 @@
-
+
@@ -317,7 +317,7 @@
-
+
@@ -358,7 +358,7 @@
-
+
@@ -384,8 +384,8 @@ search on.
-
import { ApiProperty } from "@nestjs/swagger";
-import { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+ import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
+import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
/**
* List of allowed properties in this DTO
@@ -395,6 +395,7 @@ const allowedProperties = ['query', 'pagen', 'limi
/**
* Elasticsearch response DTO
*/
+@ApiExtraModels()
export class SearchQueryDto {
/**
* Given query string to perform the
diff --git a/documentation/classes/SearchResultDto.html b/documentation/classes/SearchResultDto.html
index 7212a1c..84dcf2c 100644
--- a/documentation/classes/SearchResultDto.html
+++ b/documentation/classes/SearchResultDto.html
@@ -120,7 +120,7 @@
-
+
@@ -205,7 +205,7 @@
-
+
@@ -246,7 +246,7 @@
-
+
@@ -271,9 +271,9 @@
-
import { ApiProperty } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
-import { EsResponseDto } from "./es-response.dto";
+ import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
+import { IsArray, IsDefined, IsInt, IsNotEmpty } from "class-validator";
+import { EsResponseDto } from "./elastic/es-response.dto";
/**
* List of allowed properties in this DTO
@@ -283,6 +283,7 @@ const allowedProperties = ['data', 'status'];
/**
* Elasticsearch response DTO
*/
+@ApiExtraModels()
export class SearchResultDto {
/**
* Status code
@@ -305,7 +306,10 @@ export class SearchResultDto {
@ApiProperty({
description: 'Data acquired from the Elasticsearch',
example: {
-
+ took: 1,
+ timed_out: false,
+ _shards: {},
+ hits: {}
},
})
data: EsResponseDto;
diff --git a/documentation/controllers/PapersController.html b/documentation/controllers/PapersController.html
index 0657b0d..4de01ed 100644
--- a/documentation/controllers/PapersController.html
+++ b/documentation/controllers/PapersController.html
@@ -59,12 +59,6 @@
src/application/controller/papers.controller.ts
- Prefix
-
-
-getByContext(query: RequestDto )
+getByContext(request: RequestDto )
@@ -135,14 +129,14 @@
Decorators :
- @ApiOperation({summary: 'Finds papers by context based on the query.'}) @ApiResponse({status: 200, description: 'Returns back acquired papers.', type: SearchResultDto}) @Get('search') @UseInterceptors(PageInterceptor) @HttpCode(200)
+ @ApiTags('Search') @ApiOperation({summary: 'Finds papers by context based on the query'}) @ApiResponse({status: 200, description: 'Returns back a page with acquired papers', type: PageDto}) @ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'}) @Get('search') @UseInterceptors(PageInterceptor) @HttpCode(200)
-
+
@@ -165,7 +159,7 @@
- query
+ request
RequestDto
@@ -182,7 +176,7 @@
@@ -214,14 +208,14 @@
Decorators :
- @ApiOperation({summary: 'Finds paper by its UUID.'}) @ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto}) @Get(':uuid') @UseInterceptors(PageInterceptor) @HttpCode(200)
+ @ApiTags('Search') @ApiOperation({summary: 'Finds paper by its UUID', tags: undefined}) @ApiResponse({status: 200, description: 'Returns back a paper', type: PaperDto}) @ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'}) @Get(':uuid') @HttpCode(200)
-
+
@@ -261,7 +255,7 @@
@@ -276,17 +270,21 @@
-
import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from "@nestjs/common";
+ import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Req, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
-import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
-import { ApiOperation, ApiResponse } from "@nestjs/swagger";
-import { RequestDto } from "src/core/domain/dtos/request.dto";
+import { PageInterceptor } from "../../core/interceptors/page.interceptor";
+import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from "@nestjs/swagger";
+import { RequestDto } from "../../core/domain/dtos/request.dto";
+import { EsHitDto, EsResponseDto, PageDto, PaperDto } from "../../core/domain";
/**
* /papers/ route controller
*/
-@Controller('papers')
+@Controller({
+ version: '1',
+ path: 'papers',
+})
+@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)
export class PapersController {
constructor(private searchService: SearchService) {}
@@ -296,22 +294,28 @@ export class PapersController {
* @param response
* @returns a response with a set of matching papers
*/
- @ApiOperation({ summary: 'Finds papers by context based on the query.' })
- @ApiResponse({
- status: 200,
- description: 'Returns back acquired papers.',
- type: SearchResultDto,
- })
+ @ApiTags('Search')
+ @ApiOperation({
+ summary: 'Finds papers by context based on the query',
+ })
+ @ApiResponse({
+ status: 200,
+ description: 'Returns back a page with acquired papers',
+ type: PageDto
+ })
+ @ApiGatewayTimeoutResponse({
+ description: 'Elasticsearch request timed out'
+ })
@Get('search')
@UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByContext(@Req() query: RequestDto): object {
- return this.searchService.findByContext(query.es_query).then(
- (response: SearchResultDto) => {
- return response.data;
+ getByContext(@Req() request: RequestDto): Promise<EsResponseDto> {
+ return this.searchService.findByContext(request.es_query).then(
+ (response) => {
+ return response;
},
- (error: SearchResultDto) => {
- throw new HttpException(error.data, error.statusCode);
+ (error) => {
+ throw error;
}
);
}
@@ -322,22 +326,28 @@ export class PapersController {
* @param response
* @returns a response with a requested object
*/
- @ApiOperation({ summary: 'Finds paper by its UUID.' })
- @ApiResponse({
- status: 200,
- description: 'Returns back acquired paper.',
- type: SearchResultDto,
- })
+ @ApiTags('Search')
+ @ApiOperation({
+ summary: 'Finds paper by its UUID',
+ tags: ['Search']
+ })
+ @ApiResponse({
+ status: 200,
+ description: 'Returns back a paper',
+ type: PaperDto
+ })
+ @ApiGatewayTimeoutResponse({
+ description: 'Elasticsearch request timed out'
+ })
@Get(':uuid')
- @UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {
+ getByID(@Param('uuid', ParseUUIDPipe) uuid: string): Promise<PaperDto> {
return this.searchService.findByID(uuid).then(
- (response) => {
- return response.data;
+ (response: EsResponseDto) => {
+ return response.hits.hits[0]._source;
},
(error) => {
- throw new HttpException(error.data, error.status);
+ throw error;
}
);
}
diff --git a/documentation/coverage.html b/documentation/coverage.html
index c1e0b91..b75c0b0 100644
--- a/documentation/coverage.html
+++ b/documentation/coverage.html
@@ -143,7 +143,7 @@
- src/core/domain/dtos/es-hit.dto.ts
+ src/core/domain/dtos/elastic/es-hit.dto.ts
class
EsHitDto
@@ -155,7 +155,7 @@
- src/core/domain/dtos/es-hit.dto.ts
+ src/core/domain/dtos/elastic/es-hit.dto.ts
variable
allowedProperties
@@ -167,7 +167,7 @@
- src/core/domain/dtos/es-query.dto.ts
+ src/core/domain/dtos/elastic/es-query.dto.ts
class
EsQueryDto
@@ -179,7 +179,7 @@
- src/core/domain/dtos/es-query.dto.ts
+ src/core/domain/dtos/elastic/es-query.dto.ts
variable
allowedProperties
@@ -191,7 +191,7 @@
- src/core/domain/dtos/es-response.dto.ts
+ src/core/domain/dtos/elastic/es-response.dto.ts
class
EsResponseDto
@@ -203,7 +203,31 @@
- src/core/domain/dtos/es-response.dto.ts
+ src/core/domain/dtos/elastic/es-response.dto.ts
+
+ variable
+ allowedProperties
+
+ 100 %
+ (1/1)
+
+
+
+
+
+ src/core/domain/dtos/page-meta.dto.ts
+
+ class
+ PageMetaDto
+
+ 100 %
+ (7/7)
+
+
+
+
+
+ src/core/domain/dtos/page-meta.dto.ts
variable
allowedProperties
@@ -335,7 +359,7 @@
- src/core/domain/interfaces/es-pit.interface.ts
+ src/core/domain/interfaces/elastic/es-pit.interface.ts
interface
EsPit
@@ -347,7 +371,7 @@
- src/core/domain/interfaces/es-query-string.interface.ts
+ src/core/domain/interfaces/elastic/es-query-string.interface.ts
interface
EqQueryString
@@ -359,7 +383,7 @@
- src/core/domain/interfaces/es-query.interface.ts
+ src/core/domain/interfaces/elastic/es-query.interface.ts
interface
EsQuery
@@ -371,7 +395,7 @@
- src/core/domain/interfaces/es-response-hits.interface.ts
+ src/core/domain/interfaces/elastic/es-response-hits.interface.ts
interface
EsResponseHits
@@ -545,7 +569,7 @@
PageInterceptor
100 %
- (7/7)
+ (8/8)
@@ -593,7 +617,7 @@
SearchService
100 %
- (5/5)
+ (6/6)
diff --git a/documentation/graph/dependencies.svg b/documentation/graph/dependencies.svg
index d77ef52..7a7c66e 100644
--- a/documentation/graph/dependencies.svg
+++ b/documentation/graph/dependencies.svg
@@ -4,217 +4,217 @@
-
-
+
+
dependencies
-
-dependencies
-
-cluster_AppModule
-
-
-
-cluster_AppModule_imports
-
-
-
-cluster_CommonModule
-
-
-
-cluster_CommonModule_imports
-
-
-
-cluster_CommonModule_exports
-
-
-
-cluster_HttpResponseModule
-
-
-
-cluster_HttpResponseModule_exports
-
-
-
-cluster_HttpResponseModule_providers
-
-
-
-cluster_LoggerModule
-
-
-
-cluster_LoggerModule_exports
-
-
-
-cluster_LoggerModule_providers
-
-
+
+dependencies
cluster_SearchModule
-
+
cluster_SearchModule_exports
-
+
cluster_SearchModule_providers
-
+
+
+
+cluster_AppModule
+
+
+
+cluster_AppModule_imports
+
+
+
+cluster_CommonModule
+
+
+
+cluster_CommonModule_imports
+
+
+
+cluster_CommonModule_exports
+
+
+
+cluster_HttpResponseModule
+
+
+
+cluster_HttpResponseModule_exports
+
+
+
+cluster_HttpResponseModule_providers
+
+
+
+cluster_LoggerModule
+
+
+
+cluster_LoggerModule_exports
+
+
+
+cluster_LoggerModule_providers
+
CommonModule
-
-CommonModule
+
+CommonModule
AppModule
-
-AppModule
+
+AppModule
CommonModule->AppModule
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
CommonModule->HttpResponseModule
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
CommonModule->LoggerModule
-
-
+
+
SearchModule
-
-SearchModule
+
+SearchModule
SearchModule->AppModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchModule->SearchService
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
HttpResponseModule->CommonModule
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseModule->HttpResponseService
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
LoggerModule->CommonModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerModule->LoggerService
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseService->HttpResponseModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerService->LoggerModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchService->SearchModule
-
-
+
+
diff --git a/documentation/injectables/PageInterceptor.html b/documentation/injectables/PageInterceptor.html
index 423a2cb..2a1c737 100644
--- a/documentation/injectables/PageInterceptor.html
+++ b/documentation/injectables/PageInterceptor.html
@@ -85,6 +85,11 @@
+
+ Private
+ Readonly
+ ES_IP
+
Private
Readonly
@@ -142,7 +147,7 @@
-
+
@@ -209,8 +214,8 @@
-
+
@@ -289,8 +294,8 @@
-
+
@@ -388,8 +393,8 @@
-
+
@@ -458,6 +463,39 @@
+
+
+
+
+
+
+ Private
+ Readonly
+ ES_IP
+
+
+
+
+
+
+ Default value : process.env.ES_CONTAINER_NAME
+
+
+
+
+
+
+
+
+
+
+ Elastichsearch IP address
+
+
+
+
+
+
@@ -478,7 +516,7 @@
-
+
@@ -511,7 +549,7 @@
-
+
@@ -532,24 +570,20 @@
import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
-import { reverse } from "dns";
import { Observable, map, take } from "rxjs";
-import { EsResponseDto, PageDto } from "../domain/dtos";
-import { EsQueryDto } from "../domain/dtos/es-query.dto";
+import { PageDto } from "../domain/dtos";
+import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
-import { SearchResultDto } from "../domain/dtos/search-result.dto";
import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
-import { EsPit } from "../domain/interfaces/es-pit.interface";
-import { SearchInfo } from "../domain/interfaces/search-info.interface";
-import { SearchService } from "../services/common/search.service";
+import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
/**
* Previous search data storage
*/
-class PrevSearch implements SearchInfo {
+class PrevSearch {
/**
* Constructs an uninitialized object
*/
@@ -562,17 +596,35 @@ class PrevSearch implements SearchInfo {
/**
* PIT object of the previous search
*/
- pit: EsPit;
+ private pit: EsPit;
+ set _pit(pit: EsPit) {
+ this.pit = pit;
+ }
+ get _pit(): EsPit {
+ return this.pit;
+ }
/**
* Tiebreaker and sort parameters
*/
- tiebreaker: unknown[];
+ private tiebreaker: unknown[];
+ set _tiebreaker(tiebreaker: unknown[]) {
+ this.tiebreaker = tiebreaker;
+ }
+ get _tiebreaker(): unknown[] {
+ return this.tiebreaker;
+ }
/**
* Number of the previous page
*/
- prevPage: number;
+ private prevPage: number;
+ set _prevPage(page: number) {
+ this.prevPage = page;
+ }
+ get _prevPage(): number {
+ return this.prevPage;
+ }
/**
* Checks if there was the search before current one
@@ -623,22 +675,26 @@ export class PageInterceptor implements NestInterceptor {
];
if (this.prevSearch.isSet()) {
- request.es_query.pit = this.prevSearch.pit;
- request.es_query.search_after = this.prevSearch.tiebreaker;
+ request.es_query.pit = this.prevSearch._pit;
+ request.es_query.search_after = this.prevSearch._tiebreaker;
let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);
+ request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);
- if (query.page < this.prevSearch.prevPage) {
+ if (query.page < this.prevSearch._prevPage) {
request.es_query.sort = [{ _score: { order: 'asc' } }];
request.es_query.size += limit - 1;
reverse = true;
- } else if (query.page == this.prevSearch.prevPage) {
- //...
+ } else if (query.page == this.prevSearch._prevPage) {
+ // Caching should be HERE
+ request.es_query.sort = [{ _score: { order: 'asc' } }];
+ reverse = true;
}
} else {
- this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
- request.es_query.size = !query?.limit ? 10 : query.limit;
+ this.prevSearch._pit = request.es_query.pit = await this.getPIT(1);
+
+ let limit = !query?.limit ? 10 : query.limit;
+ request.es_query.size = limit * query.page;
}
return next.handle().pipe(
@@ -646,28 +702,31 @@ export class PageInterceptor implements NestInterceptor {
// Setting the page meta-data
let meta: PageMeta = {
total: res.hits.total.value,
- pagenum: !query?.page ? 1 : query.page,
+ pagenum: !query?.page ? 1 : +query.page,
order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
- hasNext: false,
- hasPrev: false,
pagesize: !query?.limit ? 10 : query.limit,
+ hasNext: undefined,
+ hasPrev: undefined,
};
- // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;
- // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;
+ meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
+ meta.hasPrev = meta.pagenum != 1 ? true : false;
// Saving the search info
- this.prevSearch.pit.id = res.pit_id;
- this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;
- this.prevSearch.prevPage = query.page;
+ this.prevSearch._pit.id = res.pit_id;
+ this.prevSearch._tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
+ this.prevSearch._prevPage = query.page;
+ // Check if the performed search is a backwards search
let data = res.hits.hits.slice(-meta.pagesize);
if (reverse) {
- console.log('REVERSE');
- this.prevSearch.tiebreaker = data[0].sort;
+ this.prevSearch._tiebreaker = data[0]?.sort;
data.reverse();
reverse = false;
}
+ // Omitting the redundant info and leaving only the document
+ data = data.map((el) => el._source);
+
// Return the page
return new PageDto(data, meta);
})
@@ -679,6 +738,11 @@ export class PageInterceptor implements NestInterceptor {
*/
private readonly ES_PORT = process.env.ES_PORT;
+ /**
+ * Elastichsearch IP address
+ */
+ private readonly ES_IP = process.env.ES_CONTAINER_NAME;
+
/**
* Info about previously completed search
*/
@@ -692,12 +756,12 @@ export class PageInterceptor implements NestInterceptor {
public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise<EsPit> {
return new Promise((resolve, reject) => {
try {
- (this.httpService.post<EsPit>(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ this.httpService.post<EsPit>(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
.pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
+ .subscribe((res: EsPit) => {
res.keep_alive = alive + unit;
resolve(res);
- }));
+ });
} catch (error) {
reject(error);
}
@@ -712,7 +776,7 @@ export class PageInterceptor implements NestInterceptor {
async deletePIT(pitID: string): Promise<boolean> {
return new Promise((resolve, reject) => {
try {
- this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {
+ this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
data: { id: pitID },
headers: { 'Content-Type': 'application/json' },
})
@@ -725,72 +789,7 @@ export class PageInterceptor implements NestInterceptor {
}
})
}
-}
-/*
-public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {
- this.pit.id = pit.id;
- this.pit.keep_alive = pit.keep_alive;
-
- this.tiebreaker = tiebreaker.slice();
-
- this.prevPage = page;
- }
-
- public clearInfo() {
- this.pit = undefined;
- this.tiebreaker = undefined;
- this.prevPage = -1;
- }*/
-
- // getQueryParams(str: string): any {
- // let parameters: object = {};
- // let pairs: string[] = str.split(',');
- // parameters['main'] = pairs[0];
- // pairs.shift();
-
- // if(!pairs || pairs[0] === '') return parameters;
-
- // for (const pair of pairs) {
- // const key: string = pair.substring(0, pair.indexOf('='));
- // const value: string = pair.substring(pair.indexOf('=') + 1);
- // parameters[key] = value;
- // }
-
- // return parameters;
- // }
-
-
- /**
- * OLD WAY PAGINATION
- * // Setting the page data
- // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);
- */
-
-
- // if (query.page == 1) {
- // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
- // } else {
- // if (!this.prevSearch.isSet()) {
- // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);
-
- // request.es_query.size = query.limit * (query.page - 1);
- // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {
- // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;
- // });
- // } else {
- // if (query.page == this.prevSearch.prevPage) {
- // return;
- // } else {
- // request.es_query.pit = this.prevSearch.pit;
- // request.es_query.search_after = this.prevSearch.tiebreaker;
- // request.es_query.size = (query.page - this.prevSearch.prevPage);
- // }
-
- // // request.es_query.pit = this.prevSearch.pit;
- // // request.es_query.search_after = this.prevSearch.tiebreaker;
- // }
- // }
-
+}
diff --git a/documentation/injectables/SearchService.html b/documentation/injectables/SearchService.html
index 20c8e3d..a80d7ea 100644
--- a/documentation/injectables/SearchService.html
+++ b/documentation/injectables/SearchService.html
@@ -85,6 +85,11 @@
+
+ Private
+ Readonly
+ ES_IP
+
Private
Readonly
@@ -133,7 +138,7 @@
-
+
@@ -242,7 +247,7 @@ HTTPService instance
@@ -275,8 +280,8 @@ HTTPService instance
-
+
@@ -316,7 +321,7 @@ HTTPService instance
@@ -333,6 +338,39 @@ HTTPService instance
+
+
+
+
+
+
+ Private
+ Readonly
+ ES_IP
+
+
+
+
+
+
+ Default value : process.env.ES_CONTAINER_NAME
+
+
+
+
+
+
+
+
+
+
+ Elasticsearch IP address
+
+
+
+
+
+
@@ -353,7 +391,7 @@ HTTPService instance
-
+
@@ -373,13 +411,10 @@ HTTPService instance
import { HttpService } from "@nestjs/axios";
-import { GatewayTimeoutException, Injectable } from "@nestjs/common";
+import { GatewayTimeoutException, HttpException, Injectable } from "@nestjs/common";
import { map, take } from "rxjs";
-import { EsResponseDto } from "src/core/domain/dtos";
-import { EsQueryDto } from "src/core/domain/dtos/es-query.dto";
-import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
-import { EsTime } from "src/core/domain/enums/es-time.enum";
-import { EsPit } from "src/core/domain/interfaces/es-pit.interface";
+import { EsResponseDto} from "../../domain/dtos";
+import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
/**
* Search service provider
@@ -398,12 +433,17 @@ export class SearchService {
*/
private readonly ES_PORT = process.env.ES_PORT;
+ /**
+ * Elasticsearch IP address
+ */
+ private readonly ES_IP = process.env.ES_CONTAINER_NAME;
+
/**
* Finds a paper by its own ID
* @param uuid
* @returns Elasticsearch hits or an error object
*/
- async findByID(uuid: string): Promise<SearchResultDto> { // Should I change 'object' to specific DTO?
+ async findByID(uuid: string): Promise<EsResponseDto> { // Should I change 'object' to specific DTO?
let ESQ: EsQueryDto = new EsQueryDto;
ESQ.size = 1;
@@ -415,21 +455,19 @@ export class SearchService {
return new Promise((resolve, reject) => {
try {
- (this.httpService.get<EsResponseDto>(`http://localhost:${this.ES_PORT}/_search`, {
+ (this.httpService.get<EsResponseDto>(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
data: ESQ,
headers: {'Content-Type': 'application/json'},
}))
- .pipe(take(1), map(axiosRes => axiosRes.data))
+ ?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- throw new GatewayTimeoutException;
- // reject(new SearchResultDto(504, {message: 'Timed Out'}));
+ reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
-
- resolve(new SearchResultDto(200, res));
+ resolve(res);
});
} catch (error) {
- reject(new SearchResultDto(700, error));
+ reject(error);
}
});
}
@@ -439,65 +477,27 @@ export class SearchService {
* @param query, <EsQueryDto>
* @returns Elasticsearch hits or an error object
*/
- async findByContext(es_query: EsQueryDto): Promise<SearchResultDto> {
- console.log(`SEARCH|SERVICE: ${JSON.stringify(es_query, null, 2)}`);
+ async findByContext(es_query: EsQueryDto): Promise<EsResponseDto> {
return new Promise((resolve, reject) => {
try {
- (this.httpService.get<EsResponseDto>(`http://localhost:${this.ES_PORT}/_search`, {
+ (this.httpService.get<EsResponseDto>(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
- .pipe(take(1), map(axiosRes => axiosRes.data))
+ ?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
- throw new GatewayTimeoutException;
- // reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));
+ reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
- resolve(new SearchResultDto(200, res));
+ resolve(res);
});
} catch (error) {
- reject(new SearchResultDto(700, error));
+ reject(error);
}
});
}
-}
-
-// let ESQ: EsQueryDto = new EsQueryDto;
-
- // if (limit) ESQ.size = limit;
- // ESQ.query = {
- // query_string: {
- // query: query_str,
- // default_field: 'content',
- // }
- // }
- // this.getPIT(1).then((pit) => {
- // ESQ.pit = pit;
- // });
-
-/**
- * Context
- * // let es_query = { // DTO
- // query: { // Interface
- // query_string: { // Interface
- // query: query_str,
- // default_field: "content"
- // }
- // },
- // }
- */
-
-/**
- * Single
- * // let es_query = {
- // query: {
- // query_string: {
- // query: 'id:' + uuid
- // }
- // },
- // }
- */
+}
diff --git a/documentation/interfaces/EqQueryString.html b/documentation/interfaces/EqQueryString.html
index 7ad3c14..c9b9dab 100644
--- a/documentation/interfaces/EqQueryString.html
+++ b/documentation/interfaces/EqQueryString.html
@@ -66,7 +66,7 @@
File
@@ -273,11 +273,6 @@ Can't be specified with 'default_field'
* Can't be specified with 'default_field'
*/
fields?: string[];
-
- /**
- *
- */
-
}
diff --git a/documentation/interfaces/EsPit.html b/documentation/interfaces/EsPit.html
index ad224a2..1d69180 100644
--- a/documentation/interfaces/EsPit.html
+++ b/documentation/interfaces/EsPit.html
@@ -66,7 +66,7 @@
File
diff --git a/documentation/interfaces/EsQuery.html b/documentation/interfaces/EsQuery.html
index 13a5a04..1be216b 100644
--- a/documentation/interfaces/EsQuery.html
+++ b/documentation/interfaces/EsQuery.html
@@ -66,7 +66,7 @@
File
diff --git a/documentation/interfaces/EsResponseHits.html b/documentation/interfaces/EsResponseHits.html
index 6323b5a..137408a 100644
--- a/documentation/interfaces/EsResponseHits.html
+++ b/documentation/interfaces/EsResponseHits.html
@@ -66,7 +66,7 @@
File
@@ -248,7 +248,7 @@
-
import { EsHitDto } from "../dtos/es-hit.dto";
+ import { EsHitDto } from "../../dtos/elastic/es-hit.dto";
/**
* Structure of 'hits' object of Elasticsearch response
diff --git a/documentation/interfaces/SearchInfo.html b/documentation/interfaces/SearchInfo.html
index 28775d4..2d4d921 100644
--- a/documentation/interfaces/SearchInfo.html
+++ b/documentation/interfaces/SearchInfo.html
@@ -198,7 +198,7 @@ Indicates the starting point of next search
-
import { EsPit } from "./es-pit.interface";
+ import { EsPit } from "./elastic/es-pit.interface";
/**
* Structure of search metadata
diff --git a/documentation/js/menu-wc.js b/documentation/js/menu-wc.js
index 47fe941..a3eb3db 100644
--- a/documentation/js/menu-wc.js
+++ b/documentation/js/menu-wc.js
@@ -121,13 +121,13 @@ customElements.define('compodoc-menu', class extends HTMLElement {
SearchModule
-
+
PapersController
@@ -135,13 +135,13 @@ customElements.define('compodoc-menu', class extends HTMLElement {
-
+
SearchService
@@ -189,6 +189,9 @@ customElements.define('compodoc-menu', class extends HTMLElement {
PageDto
+
+ PageMetaDto
+
PaperDto
diff --git a/documentation/js/menu-wc_es5.js b/documentation/js/menu-wc_es5.js
index 3510704..18be1da 100644
--- a/documentation/js/menu-wc_es5.js
+++ b/documentation/js/menu-wc_es5.js
@@ -51,7 +51,7 @@ customElements.define('compodoc-menu', /*#__PURE__*/function (_HTMLElement) {
}, {
key: "render",
value: function render(isNormalMode) {
- var tp = lithtml.html("\n \n \n \n LoggerModule \n \n \n \n Injectables \n \n
\n \n \n \n \n SearchModule \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
+ var tp = lithtml.html("\n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
this.innerHTML = tp.strings;
}
}]);
diff --git a/documentation/js/search/search_index.js b/documentation/js/search/search_index.js
index 5362fdc..eb53ef2 100644
--- a/documentation/js/search/search_index.js
+++ b/documentation/js/search/search_index.js
@@ -1,4 +1,4 @@
var COMPODOC_SEARCH_INDEX = {
- "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.263,1,2.395]],["body/modules/AppModule.html",[0,2.213,1,4.61,2,2.666,3,2.584,4,3.416,5,3.416,6,4.078,7,0.024,8,4.078,9,2.994,10,2.127,11,1.85,12,0.337,13,0.271,14,0.271,15,3.021,16,0.407,17,3.332,18,3.557,19,0.703,20,5.238,21,4.015,22,1.134,23,5.83,24,3.021,25,4.015,26,3.416,27,3.25,28,4.015,29,3.941,30,4.015,31,3.557,32,4.015,33,3.416,34,4.015,35,4.015,36,3.416,37,3.416,38,4.015,39,1.626,40,1.203,41,3.941,42,3.416,43,3.416,44,3.021,45,3.021,46,4.015,47,4.015,48,4.015,49,4.015,50,4.015,51,2.686,52,3.416,53,4.015,54,2.727,55,4.456,56,5.238,57,2.295,58,0.337,59,0.149,60,0.017,61,0.017]],["title/modules/CommonModule.html",[0,1.263,6,2.189]],["body/modules/CommonModule.html",[0,2.075,2,2.033,3,2.859,6,4.408,7,0.023,9,3.313,10,2.495,11,2.17,12,0.396,13,0.318,14,0.318,18,3.935,19,0.637,22,1.33,33,4.93,58,0.396,59,0.175,60,0.019,61,0.019,62,4.007,63,4.007,64,4.007,65,4.45,66,4.45,67,4.71,68,3.935]],["title/classes/EnvironmentVariables.html",[59,0.131,69,2.654]],["body/classes/EnvironmentVariables.html",[7,0.024,12,0.368,13,0.296,14,0.296,16,0.445,19,0.562,40,1.659,51,2.019,58,0.368,59,0.226,60,0.018,61,0.018,69,4.169,70,1.668,71,3.297,72,4.169,73,5.54,74,4.382,75,3.728,76,4.382,77,3.149,78,1.775,79,2.976,80,2.719,81,4.382,82,2.976,83,3.728,84,2.976,85,5.54,86,2.976,87,2.976,88,4.382,89,3.728,90,4.804,91,1.393,92,3.728,93,1.668,94,4.382,95,2.719,96,3.728,97,3.728,98,5.54,99,4.382,100,4.382,101,3.728,102,4.382,103,4.382,104,2.719,105,4.382,106,3.297,107,3.297,108,2.019,109,4.382,110,1.775]],["title/interfaces/EqQueryString.html",[111,0.737,112,2.395]],["body/interfaces/EqQueryString.html",[7,0.023,12,0.369,13,0.297,14,0.297,16,0.446,58,0.369,60,0.018,61,0.018,111,0.917,112,3.767,113,1.778,114,2.51,115,2.825,116,3.736,117,2.166,118,2.024,119,2.024,120,0.527,121,0.956,122,1.508,123,4.57,124,4.57,125,1.996,126,0.73,127,2.737,128,5.436,129,5.064,130,2.269,131,4.339,132,3.767,133,5.548,134,4.72,135,2.394]],["title/classes/EsHitDto.html",[59,0.131,136,2.395]],["body/classes/EsHitDto.html",[7,0.023,12,0.311,13,0.25,14,0.25,16,0.607,19,0.568,39,2.526,40,1.108,58,0.311,59,0.185,60,0.016,61,0.016,70,1.408,77,2.761,78,1.498,79,4.062,117,2.447,120,0.444,121,0.965,122,1.412,126,0.672,136,3.369,137,3.419,138,2.783,139,4.361,140,5.464,141,3.733,142,2.3,143,3.711,144,4.501,145,4.501,146,1.576,147,2.267,148,4.22,149,5.981,150,5.089,151,2.771,152,4.961,153,1.169,154,3.698,155,6.422,156,3.473,157,3.698,158,4.062,159,3.369,160,2.447,161,3.698,162,5.981,163,5.981,164,3.698,165,2.95,166,1.596,167,2.295,168,1.96,169,2.511,170,2.114,171,2.628,172,2.114,173,3.146,174,1.498,175,1.498,176,1.596,177,1.704,178,3.698]],["title/interfaces/EsPit.html",[111,0.737,179,1.74]],["body/interfaces/EsPit.html",[7,0.023,12,0.414,13,0.333,14,0.333,16,0.5,58,0.414,60,0.019,61,0.019,111,1.03,113,1.996,114,2.817,117,2.431,120,0.592,121,1.027,125,1.954,126,0.715,177,3.189,179,2.939,180,4.193,181,3.36,182,3.709,183,3.661,184,1.662,185,5.006,186,5.958]],["title/interfaces/EsQuery.html",[111,0.737,187,2.395]],["body/interfaces/EsQuery.html",[7,0.023,12,0.411,13,0.331,14,0.331,16,0.497,19,0.497,58,0.411,60,0.019,61,0.019,111,1.022,112,4.507,113,1.981,114,2.797,115,2.585,117,2.926,118,2.733,119,2.733,120,0.587,121,1.022,125,1.675,126,0.587,130,2.001,184,2.001,187,4.028,188,4.163,189,4.507,190,5.932,191,5.047,192,5.047,193,3.036,194,4.893]],["title/classes/EsQueryDto.html",[59,0.131,195,1.74]],["body/classes/EsQueryDto.html",[7,0.024,12,0.494,13,0.211,14,0.211,16,0.619,19,0.565,39,1.265,40,0.936,58,0.263,59,0.164,60,0.014,61,0.014,70,1.189,77,2.898,78,1.265,115,2.673,120,0.375,121,0.883,122,1.512,126,0.705,130,1.878,137,3.583,142,2.364,145,4.19,146,1.938,147,2.379,151,2.848,153,1.274,160,3.092,165,3.008,166,1.349,167,3.179,168,2.714,170,2.525,171,1.656,174,1.265,175,2.075,176,1.349,177,2.035,179,2.527,181,3.158,183,2.525,184,2.159,187,3.479,195,2.179,196,2.351,197,5.123,198,4.737,199,1.95,200,4.417,201,2.659,202,3.125,203,4.417,204,2.999,205,3.125,206,5.568,207,3.125,208,4.417,209,2.999,210,3.125,211,4.737,212,4.19,213,3.781,214,4.417,215,3.125,216,3.125,217,4.417,218,3.758,219,4.359,220,3.758,221,1.939,222,3.125,223,2.74,224,3.125,225,2.122,226,2.351,227,2.351,228,3.125]],["title/classes/EsResponseDto.html",[59,0.131,229,1.869]],["body/classes/EsResponseDto.html",[7,0.023,11,2.007,12,0.257,13,0.207,14,0.207,16,0.615,19,0.514,39,1.24,40,0.917,51,2.007,58,0.257,59,0.162,60,0.018,61,0.014,70,1.166,77,2.722,78,1.24,104,2.702,106,3.277,119,2.007,120,0.368,121,0.873,122,1.028,124,2.08,125,1.229,126,0.7,130,1.861,137,3.463,142,2.17,143,1.9,144,2.305,146,1.925,147,2.361,151,2.836,153,1.218,160,2.148,165,2.988,166,1.322,168,2.685,171,2.685,172,2.489,174,1.24,175,2.052,176,1.322,177,2.543,181,2.722,184,1.469,201,3.705,213,2.957,218,3.705,219,4.311,220,2.606,229,2.307,230,2.305,231,1.815,232,5.154,233,4.232,234,4.695,235,5.154,236,5.419,237,3.063,238,4.153,239,4.355,240,3.759,241,3.142,242,3.441,243,3.063,244,3.705,245,3.063,246,4.355,247,3.063,248,2.489,249,3.063,250,3.063,251,2.007,252,3.705,253,4.355,254,4.355,255,3.063,256,2.957,257,3.063,258,4.355,259,4.355,260,4.355,261,3.063,262,2.702,263,2.307,264,3.063,265,3.063,266,2.606,267,1.411,268,2.305,269,3.063,270,3.063,271,2.606,272,4.355,273,3.063,274,2.606,275,3.063,276,3.063]],["title/interfaces/EsResponseHits.html",[111,0.737,242,2.395]],["body/interfaces/EsResponseHits.html",[7,0.023,12,0.384,13,0.309,14,0.309,16,0.464,19,0.464,58,0.384,60,0.022,61,0.018,111,0.955,113,1.851,114,2.613,117,2.806,120,0.549,121,0.98,122,1.343,126,0.744,130,2.186,136,4.401,142,2.037,146,1.968,150,4.84,184,2.249,211,4.84,231,2.218,233,4.616,242,3.863,262,4.021,271,5.514,277,3.889,278,5.689,279,5.689,280,4.571,281,4.571]],["title/controllers/HealthController.html",[282,2.189,283,2.395]],["body/controllers/HealthController.html",[7,0.024,12,0.494,13,0.276,14,0.276,16,0.414,19,0.537,22,1.152,57,2.332,58,0.343,59,0.231,60,0.017,61,0.017,91,1.682,93,2.015,110,1.652,120,0.49,125,1.659,147,1.652,153,0.852,199,1.553,204,4.222,231,2.104,251,3.041,282,3.857,283,3.594,284,3.471,285,3.471,286,5.717,287,2.439,288,5.616,289,4.08,290,4.08,291,4.503,292,5.293,293,5.293,294,2.284,295,5.293,296,3.177,297,5.293,298,5.293,299,5.293,300,3.07,301,4.08,302,1.652,303,2.332,304,2.162,305,3.471,306,4.503]],["title/modules/HealthModule.html",[0,1.263,307,2.654]],["body/modules/HealthModule.html",[0,2.185,2,2.214,7,0.023,12,0.431,13,0.347,14,0.347,18,3.483,19,0.684,22,1.448,57,3.488,58,0.431,59,0.191,60,0.019,61,0.019,283,4.424,300,3.86,307,4.592,308,5.129,309,5.192,310,2.932,311,6.102,312,5.129]],["title/interfaces/HttpResponse.html",[111,0.737,313,2.189]],["body/interfaces/HttpResponse.html",[7,0.023,12,0.348,13,0.28,14,0.28,16,0.684,58,0.348,60,0.017,61,0.017,79,4.727,111,1.116,113,1.676,120,0.497,121,0.921,125,1.949,126,0.841,135,2.859,146,1.88,158,3.628,213,3.628,231,2.472,251,3.148,296,2.918,313,3.314,314,3.521,315,3.521,316,4.139,317,4.111,318,5.342,319,5.342,320,6.25,321,4.545,322,5.342,323,5.342,324,4.545,325,3.314,326,5.342]],["title/classes/HttpResponseException.html",[59,0.131,327,2.654]],["body/classes/HttpResponseException.html",[0,2.035,7,0.023,12,0.383,13,0.308,14,0.308,16,0.577,19,0.577,22,1.288,58,0.383,59,0.17,60,0.018,61,0.018,70,1.736,91,1.449,122,1.077,126,0.547,135,2.452,153,0.953,199,1.736,231,2.433,296,3.435,302,2.301,313,4.018,327,4.275,328,4.833,329,3.88,330,3.247,331,4.873,332,4.833,333,4.833,334,5.264,335,4.833,336,4.561,337,5.681,338,1.538,339,1.449,340,3.097,341,4.561,342,4.561,343,5.681]],["title/modules/HttpResponseModule.html",[0,1.263,65,2.189]],["body/modules/HttpResponseModule.html",[0,2.137,2,2.132,3,2.943,7,0.023,9,3.411,10,2.618,11,2.277,12,0.415,13,0.334,14,0.334,19,0.606,22,1.395,54,4.052,58,0.415,59,0.184,60,0.019,61,0.019,65,4.347,68,4.052,344,4.203,345,4.203,346,4.203,347,4.477,348,4.941,349,4.941,350,3.718]],["title/injectables/HttpResponseService.html",[347,2.189,351,1.263]],["body/injectables/HttpResponseService.html",[7,0.024,12,0.255,13,0.205,14,0.205,16,0.703,19,0.512,22,0.858,40,0.911,44,3.797,45,3.797,58,0.255,59,0.113,60,0.014,61,0.014,91,1.976,93,2.42,110,2.227,120,0.365,122,1.298,125,1.893,126,0.777,127,1.5,135,2.743,146,2.131,153,1.149,223,1.886,231,2.277,251,3.22,267,1.401,287,1.996,296,3.308,302,1.754,304,3.428,313,3.412,317,4.16,338,1.855,339,1.748,340,2.064,347,2.687,351,1.551,352,1.738,353,4.946,354,2.586,355,4.293,356,4.331,357,4.331,358,4.331,359,3.04,360,3.04,361,4.331,362,4.331,363,5.5,364,4.331,365,4.331,366,3.04,367,6.043,368,4.331,369,3.04,370,4.331,371,3.04,372,3.04,373,2.586,374,4.293,375,4.293,376,2.586,377,2.586,378,3.04,379,3.04,380,3.04,381,3.04,382,3.04]],["title/injectables/LoggerInterceptor.html",[31,2.395,351,1.263]],["body/injectables/LoggerInterceptor.html",[7,0.024,12,0.263,13,0.211,14,0.211,16,0.52,19,0.597,22,0.884,31,3.003,40,1.978,58,0.263,59,0.116,60,0.014,61,0.014,91,1.771,93,2.121,108,2.037,110,1.791,120,0.376,121,0.762,122,1.044,126,0.615,127,1.544,146,1.629,153,1.071,183,2.528,231,1.836,241,2.529,267,1.442,287,2.037,294,1.908,296,3.009,302,1.791,304,3.233,330,1.789,338,1.491,339,1.405,350,2.355,351,1.584,352,1.789,383,2.663,384,5.191,385,5.191,386,2.931,387,3.858,388,4.193,389,4.422,390,3.327,391,4.259,392,3.233,393,4.193,394,3.13,395,4.741,396,3.394,397,4.422,398,3.858,399,4.422,400,6.513,401,3.13,402,4.422,403,2.125,404,3.762,405,2.931,406,4.422,407,3.13,408,3.327,409,1.942,410,4.422,411,3.13,412,2.355,413,5.127,414,5.127,415,4.422,416,3.13,417,4.422,418,4.422,419,3.13,420,3.13,421,4.422,422,3.13,423,3.13,424,3.13,425,3.13,426,2.125,427,3.13,428,4.422,429,1.942,430,3.762,431,3.13,432,3.13,433,3.13]],["title/modules/LoggerModule.html",[0,1.263,66,2.189]],["body/modules/LoggerModule.html",[0,2.137,2,2.132,3,2.943,7,0.023,9,3.411,10,2.618,11,2.277,12,0.415,13,0.334,14,0.334,19,0.606,22,1.395,54,4.052,58,0.415,59,0.184,60,0.019,61,0.019,66,4.347,68,4.052,125,1.395,350,3.718,405,4.125,434,4.203,435,4.203,436,4.203,437,4.941]],["title/injectables/LoggerService.html",[351,1.263,405,2.016]],["body/injectables/LoggerService.html",[7,0.024,12,0.199,13,0.16,14,0.16,16,0.6,19,0.365,22,0.668,51,1.09,58,0.199,59,0.088,60,0.011,61,0.011,91,2.089,93,2.307,108,1.659,110,1.765,120,0.284,121,0.62,122,1.459,125,1.99,126,0.742,153,1.291,199,1.659,256,1.606,287,1.659,294,2.86,302,1.458,304,3.211,317,4.431,330,1.352,338,1.995,339,1.88,351,1.289,352,1.352,384,5.259,386,3.156,387,4.902,396,3.376,403,3.559,405,2.996,438,2.012,439,3.6,440,4.358,441,3.6,442,3.758,443,4.145,444,2.445,445,3.6,446,4.871,447,3.6,448,3.6,449,3.6,450,3.6,451,2.365,452,3.6,453,3.6,454,7.035,455,2.365,456,6.372,457,3.6,458,2.365,459,3.6,460,3.6,461,2.365,462,3.6,463,3.6,464,3.6,465,2.365,466,3.6,467,2.365,468,3.6,469,2.365,470,3.6,471,2.365,472,3.6,473,3.6,474,2.365,475,2.365,476,2.365,477,2.365,478,2.365,479,2.365,480,2.365,481,2.365,482,2.365,483,2.365,484,2.365,485,2.365,486,2.365,487,2.365,488,2.365]],["title/classes/PageDto.html",[59,0.131,489,2.189]],["body/classes/PageDto.html",[7,0.024,12,0.321,13,0.258,14,0.258,16,0.578,19,0.615,39,1.549,40,1.146,51,2.338,58,0.321,59,0.189,60,0.016,61,0.016,70,1.456,78,1.549,91,1.612,118,3.164,119,2.793,120,0.459,121,0.981,122,0.903,126,0.683,135,2.987,147,2.054,151,1.651,153,1.189,156,4.023,165,2.808,166,1.651,167,3.761,173,3.254,174,1.549,175,1.549,176,1.651,184,1.711,199,1.456,209,3.445,238,3.817,335,4.316,338,1.92,339,1.215,386,3.706,489,3.148,490,2.878,491,5.073,492,4.617,493,3.706,494,5.073,495,3.148,496,2.338,497,3.825,498,3.825,499,5.073,500,3.254,501,3.825,502,3.825,503,3.254,504,3.825]],["title/injectables/PageInterceptor.html",[351,1.263,505,2.189]],["body/injectables/PageInterceptor.html",[7,0.024,12,0.332,13,0.11,14,0.11,16,0.346,19,0.615,22,0.459,40,1.307,51,1.57,58,0.137,59,0.1,60,0.009,61,0.009,80,1.66,91,1.255,93,1.786,104,3.077,108,2.01,110,2.173,111,0.559,115,1.083,118,2.285,119,1.233,120,0.195,121,0.461,122,0.932,123,1.105,125,1.4,126,0.563,127,1.32,130,1.149,131,3.186,135,1.883,142,0.958,143,1.009,146,1.576,153,0.98,160,1.947,177,2.473,179,1.681,181,2.904,183,2.257,184,1.149,185,2.013,189,1.105,195,1.32,199,1.018,204,2.314,209,2.314,221,1.009,223,1.66,225,1.817,227,2.564,229,0.862,241,1.681,248,1.529,262,1.009,263,3.063,267,2.162,287,1.233,294,1.154,303,0.93,304,2.628,310,0.93,330,1.529,338,1.673,339,1.255,340,1.105,351,0.958,352,0.93,386,2.494,388,2.971,390,2.013,391,2.681,392,2.092,393,2.971,396,1.417,398,1.224,408,2.971,409,1.009,426,1.105,429,1.66,442,2.682,489,1.009,492,2.314,493,1.529,496,1.233,505,1.66,506,1.224,507,2.276,508,2.276,509,2.564,510,3.368,511,3.644,512,2.675,513,2.675,514,1.384,515,3.531,516,2.446,517,1.627,518,2.276,519,1.627,520,2.276,521,2.899,522,2.276,523,3.186,524,2.276,525,2.276,526,1.817,527,2.276,528,2.276,529,3.992,530,2.681,531,1.627,532,2.276,533,2.013,534,3.359,535,3.359,536,2.276,537,2.276,538,1.627,539,2.276,540,2.092,541,2.013,542,1.627,543,2.013,544,1.66,545,1.817,546,1.627,547,2.276,548,2.013,549,3.359,550,1.224,551,1.224,552,1.224,553,1.384,554,1.384,555,1.009,556,1.529,557,1.384,558,1.417,559,2.276,560,1.105,561,1.417,562,1.105,563,1.384,564,1.224,565,1.948,566,1.384,567,1.224,568,1.384,569,1.66,570,1.384,571,1.384,572,1.384,573,3.359,574,3.359,575,2.013,576,1.384,577,1.384,578,1.384,579,1.384,580,1.384,581,1.384,582,1.384,583,1.384,584,1.384,585,1.384,586,1.384,587,1.384,588,1.384,589,1.384,590,1.384,591,1.384,592,2.276,593,1.384,594,1.384,595,1.224,596,2.276,597,3.712,598,3.712,599,3.359,600,3.712,601,1.66,602,2.276,603,2.899,604,2.899,605,1.384,606,3.359,607,4.219,608,2.276,609,1.384,610,1.224,611,1.384,612,1.384,613,2.276,614,1.224,615,1.224,616,1.224,617,1.384,618,1.384,619,3.712,620,1.384,621,1.384,622,1.384,623,1.384,624,1.384,625,1.384,626,2.276,627,1.384,628,1.384,629,1.384,630,1.384,631,1.384,632,2.013,633,2.013,634,2.013,635,1.384,636,2.013,637,2.013,638,2.013,639,2.013,640,1.384,641,1.384,642,2.013,643,2.276,644,1.384,645,1.105,646,1.224,647,1.384,648,1.384,649,2.276,650,1.384,651,1.384,652,2.276,653,1.384,654,1.384,655,1.384,656,1.224,657,1.384,658,1.384,659,1.384,660,1.384,661,1.384,662,1.224,663,1.384,664,1.384,665,2.276,666,2.276,667,1.384,668,1.384]],["title/interfaces/PageMeta.html",[111,0.737,493,2.016]],["body/interfaces/PageMeta.html",[7,0.023,12,0.339,13,0.273,14,0.273,16,0.41,19,0.41,58,0.339,60,0.02,61,0.017,111,0.844,113,1.636,117,2.594,118,3.237,119,2.423,120,0.485,121,0.906,126,0.79,130,1.773,146,2.244,212,4.66,248,3.763,262,4.084,392,2.786,493,3.006,565,3.963,567,3.04,610,4.66,614,4.66,615,4.66,616,4.66,669,3.437,670,3.437,671,6.193,672,4.66,673,6.193,674,4.474,675,4.039]],["title/classes/PaperDto.html",[59,0.131,156,2.189]],["body/classes/PaperDto.html",[7,0.023,12,0.22,13,0.177,14,0.177,16,0.619,19,0.52,39,2.523,40,0.784,58,0.22,59,0.145,60,0.012,61,0.012,70,0.996,77,1.291,78,1.06,117,2.285,120,0.314,121,0.798,125,1.875,126,0.713,130,0.883,139,2.638,140,3.305,141,2.923,142,1.391,147,2.405,151,2.866,153,1.241,156,2.41,159,4.793,160,1.916,165,3.009,166,1.13,167,2.874,168,1.387,169,1.777,170,1.496,171,3.146,172,3.13,174,1.06,175,1.06,176,1.13,177,2.811,191,4.361,193,1.624,195,1.291,324,4.361,444,2.638,500,2.227,540,2.716,555,1.624,558,1.387,560,1.777,676,1.97,677,5.189,678,4.59,679,5.189,680,4.59,681,5.189,682,3.885,683,2.617,684,3.857,685,3.885,686,5.126,687,3.885,688,2.617,689,5.126,690,5.126,691,3.885,692,3.885,693,3.885,694,3.885,695,3.885,696,2.617,697,5.126,698,4.361,699,3.857,700,3.305,701,5.126,702,5.126,703,5.126,704,3.885,705,3.305,706,3.885,707,3.305,708,3.305,709,3.885,710,3.885,711,3.885,712,3.885,713,3.885,714,3.885,715,3.885,716,3.885,717,2.617,718,5.126,719,5.126,720,5.126,721,5.126,722,2.617,723,3.885,724,3.305,725,3.885,726,3.885,727,3.885,728,2.617,729,3.885,730,2.617,731,2.617,732,2.617,733,2.617,734,2.617,735,2.617,736,2.617,737,2.617,738,2.617,739,2.617]],["title/controllers/PapersController.html",[282,2.189,740,2.395]],["body/controllers/PapersController.html",[7,0.024,12,0.27,13,0.217,14,0.217,16,0.602,19,0.624,22,0.906,57,1.835,58,0.27,59,0.119,60,0.014,61,0.018,91,1.885,93,2.453,107,3.387,108,2.074,110,2.282,115,2.403,120,0.385,122,1.063,125,1.468,126,0.738,147,1.823,153,0.94,159,3.826,166,1.385,184,2.074,231,2.309,241,2.779,251,2.074,274,5.573,282,3.225,285,2.731,287,2.074,294,1.942,303,1.835,334,2.731,338,1.518,339,1.43,392,1.7,395,4.794,396,2.385,505,1.991,516,2.564,556,3.221,561,3.144,562,2.179,678,3.387,740,3.056,741,2.731,742,4.501,743,4.501,744,4.501,745,3.209,746,4.501,747,4.794,748,3.387,749,3.209,750,4.794,751,4.794,752,4.794,753,3.209,754,3.209,755,4.501,756,3.387,757,3.209,758,3.209,759,3.209,760,3.209,761,4.501,762,4.794,763,3.829,764,3.209,765,4.501,766,3.209,767,3.209,768,2.731,769,3.209,770,2.731,771,3.209,772,1.835,773,5.198,774,5.198,775,3.209,776,3.209,777,3.209,778,4.501,779,4.501,780,3.209,781,3.209,782,4.501,783,4.501,784,3.209,785,3.209,786,3.209,787,3.209,788,3.209]],["title/classes/PrevSearch.html",[59,0.131,510,2.395]],["body/classes/PrevSearch.html",[7,0.024,12,0.302,13,0.119,14,0.119,19,0.627,22,0.496,40,1.361,51,1.656,58,0.148,59,0.106,60,0.009,61,0.009,70,0.669,80,1.09,91,1.314,93,1.852,104,3.18,108,2.094,110,2.234,111,0.367,115,1.154,118,2.46,119,0.81,120,0.211,121,0.491,122,0.415,123,1.193,125,1.283,126,0.545,130,0.961,131,2.441,135,1.961,142,0.629,143,1.09,146,1.629,153,1.071,160,2.039,177,2.094,179,2.4,181,2.796,183,1.629,184,0.961,185,1.322,189,1.193,195,1.405,199,1.368,204,1.935,209,1.935,221,1.09,223,1.768,225,1.935,227,2.704,229,0.931,241,1.405,248,2.054,262,1.09,263,3.072,267,1.656,287,1.313,294,1.23,303,1.004,304,1.904,310,1.004,330,2.054,338,1.394,339,0.558,340,1.193,351,1.02,386,2.054,388,1.322,390,1.322,391,1.935,392,1.51,393,2.144,396,0.931,398,1.322,403,1.935,408,2.704,409,1.09,426,1.193,429,1.09,442,3.24,489,1.09,492,2.441,493,1.629,496,0.81,505,1.09,506,1.322,507,1.495,508,1.495,509,1.322,510,3.086,511,2.441,515,2.704,516,1.773,518,1.495,520,1.495,521,2.424,522,1.495,523,2.441,524,1.495,525,1.495,526,1.193,527,1.495,528,1.495,529,3.058,530,1.935,532,1.495,533,1.322,534,2.424,535,2.424,536,1.495,537,1.495,539,1.495,540,1.904,541,1.322,543,1.322,544,1.09,545,1.193,547,1.495,548,1.322,549,3.517,550,1.322,551,1.322,552,1.322,553,1.495,554,1.495,555,1.09,556,1.629,557,1.495,558,1.51,559,2.424,560,1.193,561,1.51,562,1.193,563,1.495,564,1.322,565,2.054,566,1.495,567,1.322,568,1.495,569,2.23,570,1.495,571,1.495,572,1.495,573,3.517,574,3.517,575,3.661,576,3.058,577,2.424,578,1.495,579,1.495,580,1.495,581,1.495,582,1.495,583,3.517,584,3.517,585,1.495,586,1.495,587,1.495,588,1.495,589,1.495,590,1.495,591,1.495,592,2.424,593,1.495,594,1.495,595,1.322,596,2.424,597,3.866,598,3.866,599,3.517,600,3.866,601,1.768,602,2.424,603,3.058,604,3.058,605,1.495,606,3.517,607,4.36,608,2.424,609,1.495,610,1.322,611,1.495,612,1.495,613,2.424,614,1.322,615,1.322,616,1.322,617,1.495,618,1.495,619,3.866,620,1.495,621,1.495,622,1.495,623,1.495,624,1.495,625,1.495,626,2.424,627,1.495,628,1.495,629,1.495,630,1.495,631,1.495,632,2.144,633,2.144,634,2.144,635,1.495,636,2.144,637,2.144,638,2.144,639,2.144,640,1.495,641,1.495,642,2.144,643,2.424,644,1.495,645,1.193,646,1.322,647,1.495,648,1.495,649,2.424,650,1.495,651,1.495,652,2.424,653,1.495,654,1.495,655,1.495,656,1.322,657,1.495,658,1.495,659,1.495,660,1.495,661,1.495,662,1.322,663,1.495,664,1.495,665,2.424,666,2.424,667,1.495,668,1.495,789,2.849,790,1.757,791,1.757,792,1.757,793,1.757,794,1.757,795,1.757,796,1.757]],["title/classes/RequestDto.html",[59,0.131,556,2.016]],["body/classes/RequestDto.html",[7,0.024,12,0.315,13,0.253,14,0.253,16,0.572,19,0.61,39,1.517,40,1.122,58,0.315,59,0.186,60,0.016,61,0.016,70,1.426,77,2.468,78,1.517,91,1.59,115,2.857,120,0.45,121,0.971,122,1.33,126,0.676,130,1.264,142,2.153,147,2.026,148,3.187,151,2.595,153,1.177,160,2.468,165,2.779,166,1.617,168,2.651,169,2.544,170,2.142,171,2.651,172,2.142,174,1.517,175,1.517,176,1.617,184,2.307,193,2.325,195,3.18,199,1.426,226,2.819,238,3.765,241,2.468,338,2.22,339,1.191,495,3.105,496,2.306,555,2.325,556,2.86,558,3.415,560,2.544,797,2.819,798,5.095,799,4.257,800,5.004,801,3.747,802,3.747,803,3.747]],["title/guards/RolesGuard.html",[804,2.395,805,2.654]],["body/guards/RolesGuard.html",[7,0.024,12,0.325,13,0.261,14,0.261,16,0.58,19,0.618,22,1.09,24,2.906,40,1.529,51,2.635,58,0.325,59,0.144,60,0.016,61,0.016,91,1.622,93,2.316,110,2.067,120,0.464,122,1.205,126,0.613,147,1.564,153,1.067,158,3.467,174,2.067,199,1.47,248,2.918,287,2.352,291,4.343,302,2.067,303,2.207,330,2.207,338,1.722,339,1.622,351,1.828,377,3.285,391,4.132,396,3.224,426,2.622,804,4.571,805,3.842,806,3.861,807,3.285,808,3.884,809,6.085,810,3.861,811,6.812,812,3.861,813,5.105,814,5.727,815,5.105,816,3.861,817,4.762,818,4.343,819,3.467,820,4.343,821,2.906,822,5.105,823,3.861,824,3.861,825,3.861,826,3.861,827,3.861]],["title/interfaces/SearchInfo.html",[111,0.737,569,2.189]],["body/interfaces/SearchInfo.html",[7,0.023,12,0.389,13,0.312,14,0.312,16,0.469,19,0.469,58,0.389,60,0.018,61,0.018,111,0.966,113,1.872,117,2.826,119,2.64,120,0.555,121,0.987,126,0.688,130,2.299,142,2.052,179,3.21,181,3.362,182,4.311,193,2.869,221,2.869,223,2.869,240,3.555,392,3.036,569,3.555,575,5.129,672,4.311,674,4.874,828,3.933,829,3.933,830,5.729,831,4.874,832,5.729]],["title/modules/SearchModule.html",[0,1.263,8,2.189]],["body/modules/SearchModule.html",[0,2.336,2,2.009,3,2.838,7,0.023,8,4.294,9,3.289,10,2.467,11,2.145,12,0.391,13,0.315,14,0.315,16,0.472,18,3.161,19,0.662,22,1.314,54,3.907,57,3.289,58,0.391,59,0.173,60,0.018,61,0.018,68,3.907,130,1.941,309,4.895,310,2.661,516,3.533,740,4.241,770,3.961,833,3.961,834,3.961,835,3.961,836,4.655,837,4.655]],["title/classes/SearchQueryDto.html",[59,0.131,558,1.869]],["body/classes/SearchQueryDto.html",[7,0.023,12,0.271,13,0.218,14,0.218,16,0.604,19,0.459,39,1.308,40,0.967,58,0.271,59,0.168,60,0.014,61,0.014,70,1.229,77,2.573,78,1.308,91,1.795,115,2.721,118,3.124,120,0.388,121,0.899,122,0.763,125,1.914,126,0.714,129,3.402,130,1.525,142,1.619,146,2.209,147,2.288,151,2.786,153,1.242,165,2.934,166,1.394,168,2.764,169,2.193,170,2.982,171,2.764,172,2.982,174,1.308,175,2.112,176,1.394,184,1.525,199,1.229,212,4.252,225,3.07,226,2.431,231,1.619,268,3.402,338,1.759,339,1.026,495,2.805,496,2.083,558,2.395,565,3.84,601,4.168,772,3.523,799,3.846,838,2.431,839,4.521,840,3.23,841,3.23,842,5.65,843,5.65,844,3.23,845,3.846,846,2.748,847,3.23,848,3.402,849,3.23,850,4.521,851,4.521,852,3.23,853,3.402,854,2.748,855,3.23,856,3.23,857,3.23]],["title/classes/SearchResultDto.html",[59,0.131,561,1.869]],["body/classes/SearchResultDto.html",[7,0.023,12,0.32,13,0.257,14,0.257,16,0.576,19,0.576,39,1.54,40,1.139,58,0.32,59,0.188,60,0.016,61,0.016,70,1.448,77,1.876,78,1.54,91,1.606,120,0.457,121,0.978,122,0.898,126,0.681,135,3.022,142,2.166,146,2.001,147,2.047,151,2.61,153,1.186,160,1.876,165,2.8,166,1.641,167,3.136,168,3.008,170,2.889,171,3.008,172,2.174,174,1.54,175,2.299,176,1.641,184,1.704,193,2.36,199,1.448,229,3.43,231,1.81,251,2.901,325,4.099,338,1.914,339,1.209,430,4.829,495,3.136,496,2.329,503,3.236,561,2.678,750,4.3,752,5.146,772,3.458,846,3.236,858,2.862,859,5.054,860,5.054,861,3.803,862,3.803,863,3.803,864,3.803]],["title/injectables/SearchService.html",[351,1.263,516,1.74]],["body/injectables/SearchService.html",[7,0.024,11,1.711,12,0.207,13,0.166,14,0.166,16,0.25,19,0.608,22,0.696,58,0.207,59,0.092,60,0.012,61,0.012,91,1.42,93,1.893,107,2.794,108,2.584,110,1.504,111,0.776,114,1.408,115,2.483,120,0.296,121,0.64,122,1.055,123,2.521,125,1.507,126,0.641,127,1.215,130,1.252,132,1.673,135,1.602,137,1.408,142,1.781,146,1.18,153,1.039,159,2.521,175,1.504,177,2.292,179,1.215,181,1.215,184,1.8,189,3.377,195,2.955,199,0.938,221,1.529,229,2.367,233,3.377,244,3.159,251,1.135,252,3.159,263,1.305,267,1.135,287,1.711,294,2.585,302,2.014,303,1.408,304,2.367,310,1.408,317,2.304,338,1.507,339,1.42,351,1.33,352,1.408,386,2.843,396,2.367,409,1.529,495,2.304,509,3.362,511,3.809,514,2.096,515,4.613,516,1.831,523,3.377,530,1.673,540,2.635,541,2.794,543,2.794,544,2.304,545,2.521,551,1.854,552,1.854,555,1.529,561,1.305,562,1.673,564,1.854,601,2.304,632,2.794,633,2.794,634,2.794,636,2.794,637,2.794,638,2.794,639,2.794,642,2.794,645,2.521,646,2.794,747,4.231,762,4.231,768,3.159,772,1.408,798,3.743,853,2.794,865,2.096,866,3.713,867,3.713,868,3.713,869,2.464,870,3.713,871,3.713,872,3.713,873,2.464,874,3.713,875,2.521,876,3.713,877,2.464,878,2.464,879,4.468,880,2.464,881,2.096,882,2.096,883,4.468,884,3.713,885,3.713,886,3.713,887,3.713,888,4.974,889,3.713,890,3.713,891,3.713,892,3.713,893,2.464,894,2.464,895,2.464,896,1.673,897,2.464,898,3.713,899,2.464,900,2.464,901,2.464]],["title/interfaces/ValidationPipeOptions.html",[111,0.737,902,2.654]],["body/interfaces/ValidationPipeOptions.html",[7,0.023,12,0.379,13,0.305,14,0.305,16,0.458,19,0.458,58,0.379,59,0.168,60,0.018,61,0.018,72,4.245,78,1.826,95,3.5,101,3.837,111,0.942,113,1.826,120,0.541,121,0.972,122,1.599,126,0.739,248,3.873,294,2.434,331,4.245,333,4.799,902,4.245,903,3.837,904,3.831,905,5.641,906,5.641,907,6.156,908,6.451,909,6.451,910,6.451,911,5.641,912,5.641,913,5.641,914,5.641,915,5.641]],["title/interfaces/VirtualBankOptions.html",[111,0.737,916,2.189]],["body/interfaces/VirtualBankOptions.html",[7,0.024,12,0.334,13,0.269,14,0.269,16,0.403,19,0.403,27,3.6,40,1.191,58,0.488,60,0.017,61,0.017,72,2.992,79,4.451,80,3.229,82,4.451,83,4.427,84,4.451,86,4.451,87,4.451,93,1.513,95,2.467,111,0.831,113,1.61,120,0.477,121,0.897,126,0.696,146,2.177,153,1.087,916,4.066,917,2.7,918,5.204,919,4.366,920,4.427,921,5.204,922,3.916,923,5.204,924,5.204,925,6.155,926,5.204,927,5.204,928,5.204,929,5.204,930,5.204,931,3.916,932,3.976,933,4.427,934,3.382,935,3.976,936,3.382,937,3.382,938,3.382]],["title/coverage.html",[939,4.087]],["body/coverage.html",[7,0.023,14,0.199,15,2.217,27,1.828,29,2.217,31,2.001,41,2.217,59,0.245,60,0.014,61,0.014,69,2.217,71,3.187,95,3.912,106,2.217,108,1.358,111,1.341,112,2.001,114,3.099,115,1.193,116,2.507,126,0.354,136,2.001,137,3.419,138,3.187,156,1.828,176,2.721,179,1.453,180,2.507,187,2.001,188,2.507,195,1.453,196,3.187,229,1.561,230,3.187,231,1.055,242,2.001,277,2.507,282,2.628,283,2.001,284,2.507,313,1.828,314,2.507,315,2.507,327,2.217,328,2.507,329,2.507,347,1.828,351,2.057,353,2.507,354,2.507,383,2.507,405,1.684,438,2.507,442,1.684,489,1.828,490,3.187,493,1.684,505,1.828,506,3.187,510,2.001,516,1.453,556,1.684,558,1.561,561,1.561,569,1.828,669,2.507,670,2.507,676,3.187,740,2.001,741,2.507,772,3.099,797,3.187,804,2.001,805,2.217,807,2.507,808,2.001,821,2.217,828,2.507,829,2.507,838,3.187,858,3.187,865,2.507,902,2.217,903,2.507,916,1.828,917,2.876,931,2.217,939,2.507,940,2.217,941,2.947,942,2.947,943,7.285,944,4.959,945,5.422,946,3.604,947,6.778,948,2.507,949,7.054,950,3.604,951,6.305,952,4.236,953,4.236,954,4.959,955,2.947,956,2.947,957,2.947,958,2.947,959,2.507,960,4.887,961,2.507,962,2.507,963,2.507,964,2.507,965,2.507,966,2.947,967,4.236,968,2.947,969,2.507,970,2.507,971,2.947,972,2.507]],["title/dependencies.html",[3,2.091,973,2.22]],["body/dependencies.html",[3,2.286,7,0.023,22,1.308,24,3.487,26,3.942,36,3.942,37,3.942,52,3.942,59,0.213,60,0.018,61,0.018,75,3.942,78,1.877,119,2.135,166,2,300,3.487,310,2.649,409,2.875,412,3.487,511,3.147,974,4.634,975,4.634,976,4.634,977,4.634,978,4.634,979,4.634,980,4.634,981,4.634,982,6.232,983,4.634,984,4.634,985,4.634,986,4.634,987,4.634,988,4.634,989,4.634,990,4.634,991,4.634,992,4.634,993,4.634,994,5.738,995,4.634,996,5.738,997,4.634,998,4.634,999,4.634,1000,4.634,1001,4.634,1002,4.634,1003,3.942,1004,4.634,1005,4.634,1006,4.634,1007,4.634,1008,4.634,1009,4.634]],["title/miscellaneous/enumerations.html",[1010,1.687,1011,3.607]],["body/miscellaneous/enumerations.html",[7,0.023,10,1.309,17,0.845,60,0.008,61,0.01,80,0.917,82,1.003,84,1.003,86,1.003,87,1.003,104,0.917,108,1.138,110,1.289,118,0.681,120,0.177,124,1.003,126,0.382,128,3.521,131,1.677,132,1.003,139,1.677,141,1.112,142,0.529,153,0.516,158,1.003,174,1.289,183,1.82,213,1.677,231,1.603,240,1.975,241,3.439,251,2.295,256,1.003,263,0.783,266,3.521,267,3.352,268,1.112,294,1.374,296,1.835,302,1.289,305,2.708,317,1.533,325,3.404,373,2.102,374,2.102,375,2.102,376,2.102,385,2.708,392,0.783,429,2.568,442,1.412,444,1.003,496,0.681,530,1.677,533,1.112,540,2.371,544,4.207,548,2.395,550,1.112,565,1.82,595,1.859,645,1.003,672,1.859,699,1.112,700,1.257,756,1.859,763,4.403,808,1.677,817,3.575,819,1.677,845,2.102,848,1.112,853,2.395,875,1.677,881,1.257,882,1.257,896,1.003,916,1.975,917,1.003,919,1.112,922,1.112,933,1.257,934,2.102,1003,3.807,1010,0.845,1011,1.257,1012,1.257,1013,1.257,1014,2.47,1015,1.477,1016,1.477,1017,1.477,1018,1.477,1019,1.477,1020,2.47,1021,1.477,1022,1.477,1023,1.477,1024,1.257,1025,1.477,1026,1.257,1027,1.477,1028,1.477,1029,1.477,1030,2.47,1031,1.477,1032,1.477,1033,1.477,1034,1.477,1035,3.72,1036,2.47,1037,2.47,1038,3.183,1039,1.477,1040,1.477,1041,1.477,1042,1.477,1043,4.475,1044,3.183,1045,3.183,1046,1.477,1047,4.475,1048,1.477,1049,1.477,1050,1.477,1051,4.139,1052,2.47,1053,1.477,1054,3.165,1055,3.72,1056,1.477,1057,5.915,1058,2.47,1059,2.47,1060,4.403,1061,1.477,1062,1.677,1063,1.257,1064,1.477,1065,1.257,1066,1.257,1067,1.257,1068,1.257,1069,2.47,1070,1.477,1071,1.477,1072,1.257,1073,1.477,1074,2.47,1075,3.183,1076,1.477,1077,1.477,1078,2.708,1079,2.47,1080,2.47,1081,2.47,1082,1.477,1083,3.165,1084,1.477,1085,2.47,1086,1.477,1087,1.477,1088,2.102,1089,1.477,1090,1.477,1091,1.257,1092,1.477,1093,3.183,1094,2.47,1095,1.477,1096,2.47,1097,5.342,1098,3.183,1099,1.477,1100,1.859,1101,1.477,1102,4.475,1103,2.47,1104,2.47,1105,2.708,1106,2.395,1107,2.47,1108,2.47,1109,2.47,1110,1.477,1111,2.102,1112,2.102,1113,1.477,1114,2.47,1115,2.47,1116,1.477,1117,2.47,1118,2.47,1119,2.47,1120,3.183,1121,1.477,1122,2.102,1123,3.72,1124,1.477,1125,2.47,1126,2.47,1127,1.477,1128,3.183,1129,3.72,1130,3.183,1131,2.47,1132,1.477,1133,2.47,1134,1.477,1135,2.47,1136,2.47,1137,1.477,1138,1.477,1139,1.257,1140,1.477,1141,2.47,1142,1.477,1143,2.47,1144,2.47,1145,1.477,1146,1.477,1147,1.477,1148,1.477,1149,1.477,1150,4.139,1151,2.47,1152,1.477,1153,1.257,1154,1.477,1155,1.477,1156,3.72,1157,2.47,1158,1.112,1159,3.183,1160,2.47,1161,1.477,1162,1.477,1163,1.477,1164,2.47,1165,2.47,1166,1.257,1167,2.47,1168,2.47,1169,2.47,1170,1.477,1171,1.477,1172,2.47,1173,3.183,1174,1.477,1175,2.47,1176,1.477,1177,2.47,1178,2.47,1179,2.47,1180,1.257,1181,3.72,1182,1.477,1183,1.477,1184,1.477,1185,1.477,1186,1.477,1187,1.477,1188,1.477,1189,1.257,1190,2.47,1191,2.47,1192,1.477,1193,2.47,1194,1.477,1195,1.477,1196,1.477,1197,2.47,1198,1.477,1199,1.477,1200,1.477,1201,1.477,1202,1.477,1203,1.477,1204,1.477,1205,1.477,1206,1.477,1207,1.477,1208,1.477,1209,1.257,1210,1.477,1211,2.47,1212,1.477,1213,2.47,1214,1.477,1215,2.47,1216,1.859,1217,1.477,1218,1.477,1219,2.102,1220,2.47,1221,1.477,1222,1.477,1223,1.477,1224,2.708,1225,2.47,1226,1.257,1227,1.477,1228,2.47,1229,1.477,1230,2.47,1231,3.183,1232,1.477,1233,2.47,1234,1.477,1235,2.47,1236,1.477,1237,1.477,1238,2.47,1239,1.477,1240,1.477,1241,1.477,1242,1.477,1243,1.477,1244,2.47,1245,2.395,1246,1.477,1247,3.165,1248,2.47,1249,2.102,1250,3.72,1251,1.257,1252,1.477,1253,2.47,1254,1.477,1255,2.47,1256,2.47,1257,1.477,1258,1.477,1259,2.47,1260,1.477,1261,1.477,1262,2.47,1263,1.477,1264,1.477,1265,2.47,1266,1.477,1267,1.477,1268,1.477,1269,2.47,1270,1.859,1271,1.477,1272,1.477,1273,1.477,1274,1.257,1275,1.477,1276,1.477,1277,1.477,1278,1.477,1279,1.477,1280,1.112,1281,1.477,1282,2.47,1283,1.477,1284,1.477,1285,1.477,1286,1.477,1287,1.477,1288,1.477,1289,1.477,1290,1.477,1291,1.477,1292,2.708,1293,3.183,1294,3.183,1295,2.47,1296,2.47,1297,1.477,1298,1.477,1299,1.477,1300,1.477,1301,2.47,1302,2.47]],["title/miscellaneous/functions.html",[1010,1.687,1303,3.607]],["body/miscellaneous/functions.html",[7,0.022,16,0.66,17,2.207,29,3.842,60,0.016,61,0.016,71,2.906,89,4.866,90,3.842,92,3.285,93,2.316,96,3.285,97,4.343,120,0.464,122,1.535,125,1.441,126,0.78,127,1.905,146,2.139,175,2.633,182,2.906,231,1.383,241,1.905,267,1.779,294,2.862,296,2.821,302,2.633,331,3.842,338,2.193,339,2.066,387,5.126,403,2.622,523,3.467,698,3.285,896,2.622,904,2.622,931,4.304,959,3.285,960,3.285,961,4.343,962,4.343,963,4.343,964,4.343,965,4.343,969,3.285,970,4.866,1010,2.207,1224,3.285,1303,3.285,1304,3.861,1305,3.861,1306,6.328,1307,3.861,1308,3.861,1309,3.861,1310,3.861,1311,3.861,1312,5.105,1313,3.861,1314,3.861,1315,3.861,1316,3.861,1317,3.861,1318,3.861,1319,3.285,1320,3.861,1321,5.105,1322,5.105,1323,3.861,1324,3.861,1325,5.105,1326,5.105,1327,3.861,1328,3.285,1329,3.861]],["title/index.html",[120,0.354,1330,2.51,1331,2.51]],["body/index.html",[7,0.021,13,0.297,17,3.654,39,2.068,60,0.014,61,0.014,90,3.309,127,1.532,151,1.34,240,1.927,286,3.741,288,3.741,302,2.068,306,3.741,321,3.741,325,3.776,355,3.741,443,2.642,496,1.431,526,2.109,545,2.986,662,2.337,684,2.337,748,2.337,751,2.642,756,2.337,817,4.178,819,3.467,875,2.109,919,3.309,940,4.41,972,2.642,973,2.337,1026,4.344,1054,4.344,1062,3.467,1065,2.642,1072,2.642,1100,2.337,1106,3.842,1111,2.642,1216,2.337,1280,2.337,1328,2.642,1332,4.398,1333,5.861,1334,3.309,1335,6.086,1336,4.398,1337,3.106,1338,3.106,1339,6.086,1340,5.106,1341,4.398,1342,3.106,1343,4.398,1344,5.106,1345,4.398,1346,4.398,1347,4.398,1348,3.106,1349,3.106,1350,3.741,1351,3.106,1352,3.106,1353,3.106,1354,3.106,1355,3.106,1356,4.398,1357,3.106,1358,3.106,1359,4.398,1360,4.398,1361,3.106,1362,3.106,1363,3.106,1364,3.106,1365,3.106,1366,3.106,1367,3.106,1368,3.106,1369,2.337,1370,5.553,1371,3.106,1372,3.106,1373,3.106,1374,4.398,1375,4.398,1376,3.106,1377,5.323,1378,5.106,1379,6.086,1380,5.106,1381,6.086,1382,3.106,1383,3.106,1384,3.106,1385,3.106,1386,3.106,1387,3.106,1388,3.106,1389,3.106,1390,3.106,1391,3.106,1392,4.398,1393,4.398,1394,4.398,1395,4.398,1396,4.398,1397,3.106,1398,3.106,1399,3.106,1400,2.642,1401,3.106,1402,3.106,1403,4.398,1404,4.398,1405,3.106,1406,3.106,1407,3.106,1408,3.106,1409,3.106,1410,3.106,1411,3.106,1412,3.106,1413,5.553,1414,4.398,1415,3.106,1416,3.106,1417,6.086,1418,3.106,1419,3.106,1420,3.106,1421,2.642,1422,3.106,1423,3.106,1424,2.642,1425,3.106,1426,3.106,1427,3.106,1428,3.106,1429,3.106,1430,2.642,1431,3.106,1432,3.106,1433,3.106,1434,3.106,1435,3.106,1436,4.398,1437,5.106,1438,2.337,1439,3.106,1440,3.106,1441,3.106,1442,3.106,1443,3.106,1444,3.106,1445,3.106,1446,3.106,1447,3.106,1448,3.106,1449,3.106,1450,3.106,1451,3.106,1452,3.106,1453,3.106,1454,3.106,1455,3.106,1456,2.642,1457,3.106,1458,3.106,1459,2.642,1460,3.106,1461,3.106]],["title/license.html",[1330,2.51,1331,2.51,1462,2.22]],["body/license.html",[7,0.011,11,0.742,13,0.39,14,0.349,16,0.163,19,0.163,27,0.999,55,1.371,59,0.06,60,0.008,61,0.008,82,2.665,113,0.652,118,0.742,124,1.094,129,1.212,132,1.094,134,2.258,139,1.094,151,0.695,153,0.337,184,1.575,192,4.995,263,0.854,302,0.652,325,2.1,332,1.371,339,1.076,404,1.371,412,1.997,444,1.094,496,2,526,1.094,540,0.854,680,1.212,684,1.212,699,2.953,705,1.371,707,1.371,708,5.321,724,1.371,748,1.212,818,1.371,819,1.094,820,1.371,831,1.371,848,1.997,875,1.094,920,1.371,922,1.212,940,2.547,1024,1.371,1060,4.685,1062,1.094,1063,1.371,1066,2.258,1067,2.258,1068,2.88,1078,1.371,1083,1.371,1088,1.371,1091,1.371,1100,4.144,1105,4.549,1106,1.212,1112,1.371,1122,1.371,1139,1.371,1153,4.39,1158,1.212,1166,3.693,1180,2.258,1189,2.88,1209,3.339,1216,1.997,1219,1.371,1226,1.371,1245,1.212,1247,3.339,1249,1.371,1251,1.371,1270,2.547,1274,2.88,1280,1.212,1292,1.371,1319,1.371,1350,2.258,1369,1.212,1377,2.88,1400,1.371,1421,2.88,1424,2.258,1430,1.371,1438,1.212,1456,1.371,1459,2.258,1462,5.114,1463,3.339,1464,3.385,1465,1.611,1466,1.611,1467,1.611,1468,5.347,1469,3.925,1470,4.341,1471,1.611,1472,6.049,1473,5.507,1474,1.611,1475,1.371,1476,5.507,1477,5.871,1478,4.67,1479,2.654,1480,1.611,1481,4.341,1482,1.611,1483,1.611,1484,3.925,1485,2.654,1486,1.611,1487,3.385,1488,2.654,1489,2.654,1490,1.611,1491,1.611,1492,6.254,1493,3.925,1494,2.654,1495,4.67,1496,1.611,1497,2.654,1498,1.611,1499,1.611,1500,1.611,1501,1.611,1502,1.611,1503,1.611,1504,1.611,1505,3.385,1506,1.611,1507,3.385,1508,2.654,1509,5.871,1510,1.611,1511,4.67,1512,5.347,1513,3.925,1514,1.611,1515,1.611,1516,1.611,1517,1.611,1518,1.611,1519,2.654,1520,1.611,1521,1.611,1522,6.796,1523,3.385,1524,2.654,1525,1.611,1526,5.347,1527,1.611,1528,2.654,1529,6.31,1530,1.611,1531,1.611,1532,1.611,1533,1.611,1534,1.611,1535,1.611,1536,2.654,1537,2.654,1538,1.611,1539,1.611,1540,1.611,1541,1.611,1542,1.611,1543,3.925,1544,4.341,1545,1.611,1546,2.654,1547,3.925,1548,2.654,1549,1.611,1550,4.341,1551,2.654,1552,1.611,1553,1.611,1554,3.385,1555,1.611,1556,1.611,1557,1.611,1558,2.654,1559,1.611,1560,1.611,1561,1.611,1562,3.385,1563,1.611,1564,1.611,1565,3.385,1566,1.611,1567,1.611,1568,1.611,1569,3.925,1570,5.507,1571,1.611,1572,2.654,1573,3.385,1574,2.654,1575,2.654,1576,2.654,1577,2.654,1578,2.654,1579,2.654,1580,3.385,1581,2.654,1582,2.654,1583,2.654,1584,2.654,1585,1.611,1586,2.654,1587,1.611,1588,4.341,1589,4.938,1590,3.385,1591,2.654,1592,2.654,1593,2.654,1594,1.611,1595,1.611,1596,3.385,1597,2.654,1598,1.611,1599,1.611,1600,1.611,1601,3.385,1602,1.611,1603,1.611,1604,1.611,1605,2.654,1606,2.654,1607,1.611,1608,1.611,1609,1.611,1610,1.611,1611,1.611,1612,1.611,1613,1.611,1614,2.654,1615,1.611,1616,1.611,1617,1.611,1618,1.611,1619,1.611,1620,1.611,1621,1.611,1622,1.611,1623,1.611,1624,1.611,1625,1.611,1626,1.611,1627,5.16,1628,1.611,1629,1.611,1630,1.611,1631,1.611,1632,1.611,1633,3.925,1634,2.654,1635,3.925,1636,1.611,1637,1.611,1638,3.385,1639,1.611,1640,1.611,1641,1.611,1642,1.611,1643,2.654,1644,1.611,1645,1.611,1646,4.341,1647,1.611,1648,1.611,1649,1.611,1650,1.611,1651,1.611,1652,3.385,1653,3.925,1654,1.611,1655,1.611,1656,1.611,1657,1.611,1658,1.611,1659,1.611,1660,1.611,1661,1.611,1662,1.611,1663,2.654,1664,1.611,1665,2.654,1666,1.611,1667,1.611,1668,1.611,1669,1.611,1670,1.611,1671,1.611,1672,1.611,1673,3.925,1674,3.385,1675,3.385,1676,3.385,1677,2.654,1678,3.385,1679,2.654,1680,2.654,1681,2.654,1682,1.611,1683,1.611,1684,1.611,1685,1.611,1686,1.611,1687,1.611,1688,1.611,1689,2.654,1690,1.611,1691,1.611,1692,1.611,1693,4.341,1694,1.611,1695,1.611,1696,1.611,1697,1.611,1698,1.611,1699,1.611,1700,1.611,1701,1.611,1702,1.611,1703,4.341,1704,1.611,1705,1.611,1706,1.611,1707,1.611,1708,1.611,1709,1.611,1710,1.611,1711,1.611,1712,1.611,1713,1.611,1714,1.611,1715,1.611,1716,1.611,1717,1.611,1718,1.611,1719,3.385,1720,1.611,1721,1.611,1722,1.611,1723,2.654,1724,1.611,1725,1.611,1726,1.611,1727,1.611,1728,1.611,1729,1.611,1730,1.611,1731,1.611,1732,1.611,1733,1.611,1734,1.611,1735,1.611,1736,1.611,1737,1.611,1738,1.611,1739,1.611,1740,2.654,1741,2.654,1742,1.611,1743,1.611,1744,1.611,1745,1.611,1746,1.611,1747,1.611,1748,1.611,1749,1.611,1750,1.611,1751,1.611,1752,1.611,1753,1.611,1754,1.611,1755,1.611,1756,1.611,1757,1.611,1758,1.611]],["title/modules.html",[2,2.073]],["body/modules.html",[1,3.565,2,2.266,6,3.257,7,0.02,8,3.257,60,0.02,61,0.02,65,3.257,66,3.257,307,3.95,1062,3.565,1245,5.214,1759,6.929,1760,6.929,1761,7.022,1762,5.25]],["title/overview.html",[1334,3.615]],["body/overview.html",[1,4.565,2,1.887,3,2.729,4,3.72,5,3.72,6,4.325,7,0.023,8,4.17,9,3.163,10,2.317,11,2.015,57,2.5,60,0.018,61,0.018,62,3.72,63,3.72,64,3.72,65,4.358,66,4.358,70,1.664,113,1.771,256,2.969,263,2.317,344,3.72,345,3.72,346,3.72,347,4.235,352,2.5,405,3.902,434,3.72,435,3.72,436,3.72,516,3.367,804,2.969,833,3.72,834,3.72,835,3.72,896,2.969,1334,3.29,1475,3.72,1763,4.373,1764,4.373]],["title/properties.html",[121,0.731,973,2.22]],["body/properties.html",[7,0.023,16,0.546,17,3.073,60,0.02,61,0.02,121,0.926,240,3.335,296,2.652,544,3.335,1270,4.045,1369,4.045,1438,4.045,1462,4.045,1463,4.574,1765,5.376,1766,5.376,1767,5.376,1768,5.376,1769,5.376,1770,5.376]],["title/miscellaneous/variables.html",[904,2.879,1010,1.687]],["body/miscellaneous/variables.html",[2,2.003,7,0.023,15,2.524,17,1.917,27,3.302,39,2.712,41,3.492,42,2.853,43,2.853,44,2.524,45,2.524,51,1.545,60,0.015,61,0.015,84,2.277,86,2.277,87,2.277,95,2.081,115,2.155,120,0.403,121,1.123,125,1.31,126,0.804,127,3.411,135,2.003,137,3.042,138,3.492,143,2.081,144,2.524,145,3.492,153,0.701,174,2.639,175,2.639,176,3.015,177,1.545,181,1.654,196,3.492,198,2.853,230,3.492,232,2.853,233,2.277,234,2.853,235,2.853,236,2.853,251,1.545,267,3.187,429,2.081,442,3.283,490,2.524,492,2.277,540,1.777,565,1.917,601,2.081,656,2.524,676,2.524,677,2.853,678,2.524,679,2.853,680,2.524,681,2.853,772,2.653,797,2.524,798,2.524,808,4.342,814,2.853,821,3.492,838,3.492,854,2.853,858,3.492,904,2.277,916,2.081,917,2.277,936,2.853,937,2.853,938,2.853,946,2.853,948,3.948,950,2.853,1010,1.917,1012,2.853,1013,4.527,1158,2.524,1771,3.354,1772,3.354,1773,3.354,1774,4.641,1775,4.641,1776,3.354,1777,4.641,1778,3.354,1779,3.354,1780,3.354,1781,3.354,1782,3.354,1783,3.354]],["title/routes.html",[1784,4.087]],["body/routes.html",[7,0.021,60,0.021,61,0.021,1784,4.831]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"coverage.html":{}}}],["0.0.1",{"_index":1765,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":981,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1418,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":1006,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":993,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":1001,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":992,"title":{},"body":{"dependencies.html":{}}}],["0/8",{"_index":966,"title":{},"body":{"coverage.html":{}}}],["01002",{"_index":276,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":263,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":975,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":272,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1.2355",{"_index":152,"title":{},"body":{"classes/EsHitDto.html":{}}}],["1/1",{"_index":949,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":225,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":943,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":381,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11",{"_index":1764,"title":{},"body":{"overview.html":{}}}],["11/11",{"_index":968,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":1089,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["14.0.1",{"_index":1004,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":1182,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1979",{"_index":712,"title":{},"body":{"classes/PaperDto.html":{}}}],["1998",{"_index":1198,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1].sort",{"_index":626,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["2",{"_index":896,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1464,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":983,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":944,"title":{},"body":{"coverage.html":{}}}],["200",{"_index":750,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1466,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1388,"title":{},"body":{"index.html":{}}}],["2324",{"_index":1205,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":268,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":1008,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":980,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":998,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":945,"title":{},"body":{"coverage.html":{}}}],["3/4",{"_index":957,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":214,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["4",{"_index":1298,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["4.6.0",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":951,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1223,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":1146,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":1218,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":1214,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":1229,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1234,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["46toawmdawr5bxv1awqykwzub2rlxzmaaaaaaaaaacobywadawr4bxv1awqxagzub2rlxzeaaaaaaaaaaaebyqadawr5bxv1awqykgzub2rlxziaaaaaaaaaaawbygacbxv1awqyaaafdxvpzdeaaqltyxrjaf9hbgw_gaaaaa",{"_index":246,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["495c",{"_index":693,"title":{},"body":{"classes/PaperDto.html":{}}}],["5",{"_index":256,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":996,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":967,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1500,"title":{},"body":{"license.html":{}}}],["504",{"_index":897,"title":{},"body":{"injectables/SearchService.html":{}}}],["6",{"_index":1763,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":954,"title":{},"body":{"coverage.html":{}}}],["6/7",{"_index":953,"title":{},"body":{"coverage.html":{}}}],["60",{"_index":709,"title":{},"body":{"classes/PaperDto.html":{}}}],["69c45ca738ff",{"_index":695,"title":{},"body":{"classes/PaperDto.html":{}}}],["7.5.5",{"_index":1009,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":958,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1457,"title":{},"body":{"index.html":{}}}],["75",{"_index":956,"title":{},"body":{"coverage.html":{}}}],["8.0.0",{"_index":982,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":986,"title":{},"body":{"dependencies.html":{}}}],["8/8",{"_index":955,"title":{},"body":{"coverage.html":{}}}],["85",{"_index":952,"title":{},"body":{"coverage.html":{}}}],["8dfa",{"_index":694,"title":{},"body":{"classes/PaperDto.html":{}}}],["9",{"_index":1475,"title":{},"body":{"license.html":{},"overview.html":{}}}],["_id",{"_index":275,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":273,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_score",{"_index":143,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["_shard_doc",{"_index":594,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_shards",{"_index":232,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":144,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["above",{"_index":1656,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":851,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":1143,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":1141,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1721,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1719,"title":{},"body":{"license.html":{}}}],["access",{"_index":1111,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1254,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["according",{"_index":1142,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":752,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":532,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["act",{"_index":1727,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1249,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":1231,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1701,"title":{},"body":{"license.html":{}}}],["actual",{"_index":158,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1347,"title":{},"body":{"index.html":{}}}],["add",{"_index":1459,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1645,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1646,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1545,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":977,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":1162,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1302,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1337,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1717,"title":{},"body":{"license.html":{}}}],["against",{"_index":1606,"title":{},"body":{"license.html":{}}}],["agent",{"_index":1075,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1730,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1676,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1660,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1352,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1343,"title":{},"body":{"index.html":{}}}],["algol",{"_index":701,"title":{},"body":{"classes/PaperDto.html":{}}}],["algol):vii",{"_index":704,"title":{},"body":{"classes/PaperDto.html":{}}}],["alive",{"_index":204,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["alleging",{"_index":1611,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":174,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":176,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1602,"title":{},"body":{"license.html":{}}}],["along",{"_index":1639,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1644,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1420,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":1081,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":928,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amongst",{"_index":279,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["amount",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1724,"title":{},"body":{"license.html":{}}}],["andrews",{"_index":703,"title":{},"body":{"classes/PaperDto.html":{}}}],["annotations",{"_index":1533,"title":{},"body":{"license.html":{}}}],["another",{"_index":1117,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["anything",{"_index":1132,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1463,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":318,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apioperation",{"_index":773,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation({summary",{"_index":746,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":165,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":500,"title":{},"body":{"classes/PageDto.html":{},"classes/PaperDto.html":{}}}],["apiresponse",{"_index":774,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1451,"title":{},"body":{"index.html":{}}}],["app",{"_index":1417,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1642,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1528,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1674,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":312,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":646,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["applies",{"_index":1595,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1424,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":820,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1688,"title":{},"body":{"license.html":{}}}],["april",{"_index":1201,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1348,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1333,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1751,"title":{},"body":{"license.html":{}}}],["args",{"_index":454,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":486,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":456,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1707,"title":{},"body":{"license.html":{}}}],["array",{"_index":278,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["asc",{"_index":845,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1736,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":1095,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":724,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["assume",{"_index":1690,"title":{},"body":{"license.html":{}}}],["async",{"_index":511,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1739,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1527,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1255,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1633,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":1148,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":1125,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1768,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1275,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1479,"title":{},"body":{"license.html":{}}}],["authors",{"_index":677,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["authorship",{"_index":1523,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1365,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1268,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["await",{"_index":665,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["axiosres.data",{"_index":638,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["b",{"_index":1624,"title":{},"body":{"license.html":{}}}],["back",{"_index":751,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":1224,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1248,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":1118,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":926,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":748,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1390,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1386,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1391,"title":{},"body":{"index.html":{}}}],["basic",{"_index":316,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1677,"title":{},"body":{"license.html":{}}}],["before",{"_index":253,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["behalf",{"_index":1550,"title":{},"body":{"license.html":{}}}],["being",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1400,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1504,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1542,"title":{},"body":{"license.html":{}}}],["block",{"_index":499,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1369,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":248,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":970,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1741,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1761,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1759,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1335,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1392,"title":{},"body":{"index.html":{}}}],["building",{"_index":1374,"title":{},"body":{"index.html":{}}}],["c",{"_index":1630,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":397,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1405,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":393,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["calling",{"_index":1436,"title":{},"body":{"index.html":{}}}],["can't",{"_index":133,"title":{},"body":{"interfaces/EqQueryString.html":{}}}],["canactivate",{"_index":809,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":815,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":1137,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1625,"title":{},"body":{"license.html":{}}}],["case",{"_index":319,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":642,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["cause",{"_index":1489,"title":{},"body":{"license.html":{}}}],["caused",{"_index":1077,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cc3c3cca",{"_index":691,"title":{},"body":{"classes/PaperDto.html":{}}}],["cd",{"_index":1370,"title":{},"body":{"index.html":{}}}],["cell",{"_index":727,"title":{},"body":{"classes/PaperDto.html":{}}}],["certain",{"_index":191,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{}}}],["change",{"_index":882,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1629,"title":{},"body":{"license.html":{}}}],["character",{"_index":1706,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":1140,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1580,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1412,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1410,"title":{},"body":{"index.html":{}}}],["check",{"_index":288,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":291,"title":{},"body":{"controllers/HealthController.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1277,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1720,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1608,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1597,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["clearinfo",{"_index":583,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["cleint_error",{"_index":1295,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":1003,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1367,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1414,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":344,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":345,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":346,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":434,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":435,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":436,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":833,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":834,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":835,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":325,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":1207,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":487,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1603,"title":{},"body":{"license.html":{}}}],["comission",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1454,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1745,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1714,"title":{},"body":{"license.html":{}}}],["commision",{"_index":927,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":929,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":332,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1554,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1518,"title":{},"body":{"license.html":{}}}],["complete",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":548,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["completion",{"_index":254,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1754,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1650,"title":{},"body":{"license.html":{}}}],["comply",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1455,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":974,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1356,"title":{},"body":{"index.html":{}}}],["computer",{"_index":705,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["condition",{"_index":1241,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":1110,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":192,"title":{},"body":{"interfaces/EsQuery.html":{},"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1427,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1432,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":1156,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1358,"title":{},"body":{"index.html":{}}}],["connection",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1705,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1726,"title":{},"body":{"license.html":{}}}],["console.log('reverse",{"_index":628,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["console.log(`search|service",{"_index":893,"title":{},"body":{"injectables/SearchService.html":{}}}],["conspicuously",{"_index":1566,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1612,"title":{},"body":{"license.html":{}}}],["constructor",{"_index":199,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":859,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":448,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":335,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":514,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["constructor(private",{"_index":303,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":799,"title":{},"body":{"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":810,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":495,"title":{},"body":{"classes/PageDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1647,"title":{},"body":{"license.html":{}}}],["contained",{"_index":1226,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["containing",{"_index":537,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["contains",{"_index":238,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/RequestDto.html":{}}}],["content",{"_index":540,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["contents",{"_index":684,"title":{},"body":{"classes/PaperDto.html":{},"index.html":{},"license.html":{}}}],["context",{"_index":396,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":825,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":423,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":824,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":425,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":415,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":426,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":427,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":414,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1494,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1544,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1601,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1652,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1570,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1613,"title":{},"body":{"license.html":{}}}],["control",{"_index":1209,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1483,"title":{},"body":{"license.html":{}}}],["controller",{"_index":282,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":301,"title":{},"body":{"controllers/HealthController.html":{}}}],["controller('papers",{"_index":776,"title":{},"body":{"controllers/PapersController.html":{}}}],["controllername",{"_index":422,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":433,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":337,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":813,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1520,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1620,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1477,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":932,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":770,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":1221,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":1082,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["counterclaim",{"_index":1609,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1355,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":939,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1435,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":441,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":450,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":452,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1353,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1607,"title":{},"body":{"license.html":{}}}],["current",{"_index":1157,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1257,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":363,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1669,"title":{},"body":{"license.html":{}}}],["customer",{"_index":923,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["damages",{"_index":1703,"title":{},"body":{"license.html":{}}}],["daniil",{"_index":731,"title":{},"body":{"classes/PaperDto.html":{}}}],["data",{"_index":135,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":342,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.reverse",{"_index":630,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["data.status",{"_index":343,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data[0].sort",{"_index":629,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["date",{"_index":1617,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":413,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["davie",{"_index":716,"title":{},"body":{"classes/PaperDto.html":{}}}],["days",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["db",{"_index":979,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":443,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":453,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1318,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1312,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1780,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":147,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":127,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":123,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["defaults",{"_index":535,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["defend",{"_index":1732,"title":{},"body":{"license.html":{}}}],["defined",{"_index":153,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1485,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1471,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":522,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletepit",{"_index":512,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletepit(pitid",{"_index":518,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletes",{"_index":520,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletion",{"_index":527,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deliberate",{"_index":1698,"title":{},"body":{"license.html":{}}}],["denis",{"_index":733,"title":{},"body":{"classes/PaperDto.html":{}}}],["depended",{"_index":1232,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":1230,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":525,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deploy",{"_index":1375,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1338,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1433,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1428,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":488,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":708,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["derived",{"_index":1530,"title":{},"body":{"license.html":{}}}],["desc",{"_index":595,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1670,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1351,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1568,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1441,"title":{},"body":{"index.html":{}}}],["details",{"_index":295,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1687,"title":{},"body":{"license.html":{}}}],["developed",{"_index":710,"title":{},"body":{"classes/PaperDto.html":{}}}],["development",{"_index":1409,"title":{},"body":{"index.html":{}}}],["different",{"_index":1106,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1487,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1490,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":912,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":908,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1672,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1563,"title":{},"body":{"license.html":{}}}],["display",{"_index":848,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["displayed",{"_index":843,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1588,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1638,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1470,"title":{},"body":{"license.html":{}}}],["dns",{"_index":550,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1458,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1403,"title":{},"body":{"index.html":{}}}],["document",{"_index":139,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":940,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":244,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":553,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/es",{"_index":554,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/request.dto",{"_index":557,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/search",{"_index":559,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums",{"_index":377,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/es",{"_index":563,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums/page",{"_index":566,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces",{"_index":340,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces/es",{"_index":568,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces/search",{"_index":570,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["don't",{"_index":1744,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":994,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":1086,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":175,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["dtos/es",{"_index":280,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["due",{"_index":1120,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1265,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1749,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1357,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1531,"title":{},"body":{"license.html":{}}}],["elaborations",{"_index":1534,"title":{},"body":{"license.html":{}}}],["elastichsearch",{"_index":543,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":142,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["electronic",{"_index":1551,"title":{},"body":{"license.html":{}}}],["elements",{"_index":212,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/PageMeta.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":320,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1740,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1239,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1738,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1437,"title":{},"body":{"index.html":{}}}],["entities",{"_index":1139,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1308,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":933,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":1011,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums/page",{"_index":675,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1310,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1359,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":934,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":270,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["eqquerystring",{"_index":112,"title":{"interfaces/EqQueryString.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"coverage.html":{}}}],["error",{"_index":294,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":457,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":420,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":482,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.status",{"_index":788,"title":{},"body":{"controllers/PapersController.html":{}}}],["error.statuscode",{"_index":784,"title":{},"body":{"controllers/PapersController.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es",{"_index":193,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchResultDto.html":{}}}],["es_port",{"_index":509,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["es_query",{"_index":798,"title":{},"body":{"classes/RequestDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["eshitdto",{"_index":136,"title":{"classes/EsHitDto.html":{}},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["espit",{"_index":179,"title":{"interfaces/EsPit.html":{}},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esq",{"_index":883,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.pit",{"_index":900,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.query",{"_index":885,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.size",{"_index":884,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquery",{"_index":187,"title":{"interfaces/EsQuery.html":{}},"body":{"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esquerydto",{"_index":195,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":229,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsehits",{"_index":242,"title":{"interfaces/EsResponseHits.html":{}},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["estime",{"_index":530,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["estime.min",{"_index":536,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["evaluated",{"_index":1170,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1716,"title":{},"body":{"license.html":{}}}],["event",{"_index":1694,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":1195,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":151,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1590,"title":{},"body":{"license.html":{}}}],["exception",{"_index":331,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":909,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["excerpt",{"_index":697,"title":{},"body":{"classes/PaperDto.html":{}}}],["exchangeable",{"_index":1361,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1565,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1579,"title":{},"body":{"license.html":{}}}],["execute",{"_index":259,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["executed",{"_index":1661,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":391,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1692,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1506,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1402,"title":{},"body":{"index.html":{}}}],["expand",{"_index":995,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":931,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1309,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":1192,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":1191,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":1190,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":1210,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1654,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1450,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":412,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":333,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":1187,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1425,"title":{},"body":{"index.html":{}}}],["f763",{"_index":692,"title":{},"body":{"classes/PaperDto.html":{}}}],["facilitates",{"_index":1363,"title":{},"body":{"index.html":{}}}],["factory",{"_index":913,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":266,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":1228,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1712,"title":{},"body":{"license.html":{}}}],["faker",{"_index":999,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":920,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":128,"title":{},"body":{"interfaces/EqQueryString.html":{},"miscellaneous/enumerations.html":{}}}],["fields",{"_index":124,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1498,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1618,"title":{},"body":{"license.html":{}}}],["files",{"_index":1421,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":867,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(es_query",{"_index":872,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":868,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":876,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":747,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":1147,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1683,"title":{},"body":{"license.html":{}}}],["flag",{"_index":671,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["flow",{"_index":997,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1444,"title":{},"body":{"index.html":{}}}],["following",{"_index":1377,"title":{},"body":{"index.html":{},"license.html":{}}}],["fools",{"_index":1202,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":1128,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1509,"title":{},"body":{"license.html":{}}}],["format",{"_index":444,"title":{},"body":{"injectables/LoggerService.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":460,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":462,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":463,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":473,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1399,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":1161,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":1102,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1582,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1266,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":1130,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1243,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":321,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1246,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1303,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":1098,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1250,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1262,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gatewaytimeoutexception",{"_index":879,"title":{},"body":{"injectables/SearchService.html":{}}}],["gathered",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":355,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":359,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1519,"title":{},"body":{"license.html":{}}}],["generates",{"_index":361,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":1138,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":785,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":777,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":289,"title":{},"body":{"controllers/HealthController.html":{}}}],["getbycontext",{"_index":743,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@req",{"_index":780,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(query",{"_index":745,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":744,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":786,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":757,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":356,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":365,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":357,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":368,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":513,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["getpit(alive",{"_index":528,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["getqueryparams(str",{"_index":648,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["gets",{"_index":367,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getting",{"_index":1330,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":358,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":370,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1366,"title":{},"body":{"index.html":{}}}],["give",{"_index":1430,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":853,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":1159,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1710,"title":{},"body":{"license.html":{}}}],["gorbunov",{"_index":734,"title":{},"body":{"classes/PaperDto.html":{}}}],["governing",{"_index":1757,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1573,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1508,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1480,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1576,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1762,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1699,"title":{},"body":{"license.html":{}}}],["guard",{"_index":804,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":806,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["handle",{"_index":1258,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":395,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":424,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1734,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":614,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["hasprev",{"_index":615,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["header",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":645,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":286,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":299,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":297,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":283,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":307,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1770,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1339,"title":{},"body":{"index.html":{}}}],["help",{"_index":1378,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1398,"title":{},"body":{"index.html":{}}}],["hence",{"_index":1217,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1575,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1657,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1332,"title":{},"body":{"index.html":{}}}],["hit",{"_index":155,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto",{"_index":281,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["hit.dto.ts",{"_index":138,"title":{},"body":{"classes/EsHitDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["hit.dto.ts:24",{"_index":161,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:34",{"_index":164,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:44",{"_index":154,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hits",{"_index":233,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hits.interface",{"_index":261,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["hits.interface.ts",{"_index":277,"title":{},"body":{"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["hold",{"_index":1733,"title":{},"body":{"license.html":{}}}],["hop",{"_index":1196,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hours",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":296,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1453,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1442,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1448,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1467,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1756,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1269,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":764,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":779,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":334,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{}}}],["httpexception(error.data",{"_index":783,"title":{},"body":{"controllers/PapersController.html":{}}}],["httphealthindicator",{"_index":298,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":309,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":313,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":373,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":379,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":327,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1325,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":374,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":378,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":347,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":375,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":376,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":380,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":322,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1368,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":515,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["httpstatus",{"_index":372,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":1206,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1287,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":1197,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":177,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["identification",{"_index":1750,"title":{},"body":{"license.html":{}}}],["identified",{"_index":1135,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":941,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1743,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":1200,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["if(!pairs",{"_index":654,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["ii",{"_index":1496,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1503,"title":{},"body":{"license.html":{}}}],["image",{"_index":1404,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1406,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":1211,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":507,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["implements",{"_index":330,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1680,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1564,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1708,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":1220,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1704,"title":{},"body":{"license.html":{}}}],["include",{"_index":1189,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":1180,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1636,"title":{},"body":{"license.html":{}}}],["including",{"_index":1512,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1548,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1572,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1735,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1731,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1722,"title":{},"body":{"license.html":{}}}],["index",{"_index":120,"title":{"index.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1525,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":672,"title":{},"body":{"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1488,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1505,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["info.interface",{"_index":571,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["info.interface.ts",{"_index":829,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["inform",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":819,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1292,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1461,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1600,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1614,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":351,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":352,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":870,"title":{},"body":{"injectables/SearchService.html":{}}}],["install",{"_index":1380,"title":{},"body":{"index.html":{}}}],["instance",{"_index":871,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":481,"title":{},"body":{"injectables/LoggerService.html":{}}}],["institute",{"_index":1604,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1411,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":1227,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1546,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":388,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["intercept(context",{"_index":390,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interceptor",{"_index":508,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interface",{"_index":111,"title":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":113,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/es",{"_index":220,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["interfaces/page",{"_index":501,"title":{},"body":{"classes/PageDto.html":{}}}],["interim",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1289,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1238,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":1176,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1252,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invariant",{"_index":725,"title":{},"body":{"classes/PaperDto.html":{}}}],["irrevocable",{"_index":1583,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":948,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":167,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":497,"title":{},"body":{"classes/PageDto.html":{}}}],["isboolean",{"_index":260,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":168,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@apiproperty({description",{"_index":801,"title":{},"body":{"classes/RequestDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":861,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":249,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":846,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":255,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":849,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isobject()@apiproperty({description",{"_index":205,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":169,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["isint",{"_index":170,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":171,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty()@apiproperty({description",{"_index":157,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isnotempty()@isarray()@apiproperty({description",{"_index":682,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnotempty()@isstring()@apiproperty({description",{"_index":689,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnumber",{"_index":218,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isobject",{"_index":219,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isoptional()@apiproperty({description",{"_index":148,"title":{},"body":{"classes/EsHitDto.html":{},"classes/RequestDto.html":{}}}],["isoptional()@isarray()@apiproperty({description",{"_index":208,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isdefined()@isnumber()@isint()@apiproperty({description",{"_index":210,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":840,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":201,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":844,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1778,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isset",{"_index":584,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["isstring",{"_index":172,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isstring()@isoptional()@apiproperty({description",{"_index":245,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["issue",{"_index":1559,"title":{},"body":{"license.html":{}}}],["itself",{"_index":1149,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1465,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":1203,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["json.stringify(es_query",{"_index":894,"title":{},"body":{"injectables/SearchService.html":{}}}],["k8s",{"_index":1415,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1422,"title":{},"body":{"index.html":{}}}],["keep_alive",{"_index":185,"title":{},"body":{"interfaces/EsPit.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["keeps",{"_index":924,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":656,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1783,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1679,"title":{},"body":{"license.html":{}}}],["knowledge",{"_index":720,"title":{},"body":{"classes/PaperDto.html":{}}}],["known",{"_index":1163,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1423,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1340,"title":{},"body":{"index.html":{}}}],["language",{"_index":707,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["large",{"_index":1283,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":1174,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":1000,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1675,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1610,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1267,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1481,"title":{},"body":{"license.html":{}}}],["length",{"_index":1167,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":1164,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1362,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1693,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1702,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1598,"title":{},"body":{"license.html":{}}}],["license",{"_index":1462,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1753,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1615,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1476,"title":{},"body":{"license.html":{}}}],["limit",{"_index":601,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1681,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1758,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1513,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1237,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":842,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":1134,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1541,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1440,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1557,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1605,"title":{},"body":{"license.html":{}}}],["live",{"_index":186,"title":{},"body":{"interfaces/EsPit.html":{}}}],["liveness",{"_index":292,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":1085,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":445,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":464,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":387,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":476,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":405,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":478,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":406,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":439,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":389,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":399,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":384,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1284,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":1160,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1354,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1709,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1715,"title":{},"body":{"license.html":{}}}],["m",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["machine",{"_index":1407,"title":{},"body":{"index.html":{}}}],["made",{"_index":1524,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1556,"title":{},"body":{"license.html":{}}}],["main",{"_index":698,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1261,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1438,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1360,"title":{},"body":{"index.html":{}}}],["making",{"_index":1510,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":1121,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1713,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1561,"title":{},"body":{"license.html":{}}}],["management",{"_index":1491,"title":{},"body":{"license.html":{}}}],["manager",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1341,"title":{},"body":{"index.html":{}}}],["many",{"_index":1235,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":551,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["map(axiosres",{"_index":637,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["markdown",{"_index":686,"title":{},"body":{"classes/PaperDto.html":{}}}],["marked",{"_index":1567,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1666,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["math.abs(query.page",{"_index":605,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["max_score",{"_index":271,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{}}}],["maxim",{"_index":735,"title":{},"body":{"classes/PaperDto.html":{}}}],["maximum",{"_index":211,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/EsResponseHits.html":{}}}],["md",{"_index":687,"title":{},"body":{"classes/PaperDto.html":{}}}],["mean",{"_index":1473,"title":{},"body":{"license.html":{}}}],["means",{"_index":1216,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1515,"title":{},"body":{"license.html":{}}}],["media",{"_index":1219,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1621,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1622,"title":{},"body":{"license.html":{}}}],["memory",{"_index":978,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1682,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1540,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1446,"title":{},"body":{"index.html":{}}}],["message",{"_index":317,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":911,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":1193,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":492,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["meta.hasnext",{"_index":617,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.hasprev",{"_index":620,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.interface",{"_index":502,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.interface.ts",{"_index":670,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":664,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.pagesize",{"_index":619,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["metadata",{"_index":119,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"dependencies.html":{}}}],["metainformation",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":429,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":432,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":1133,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":287,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1447,"title":{},"body":{"index.html":{}}}],["micros",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mikhaylov",{"_index":732,"title":{},"body":{"classes/PaperDto.html":{}}}],["milliseconds",{"_index":258,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["min",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["minute",{"_index":921,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":534,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["miscellaneous",{"_index":1010,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":491,"title":{},"body":{"classes/PageDto.html":{}}}],["modifications",{"_index":1511,"title":{},"body":{"license.html":{}}}],["modified",{"_index":1112,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1643,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1648,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1769,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1371,"title":{},"body":{"index.html":{}}}],["money",{"_index":925,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1342,"title":{},"body":{"index.html":{}}}],["more",{"_index":922,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["morrison",{"_index":714,"title":{},"body":{"classes/PaperDto.html":{}}}],["moved",{"_index":1278,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":1094,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ms",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mucosal",{"_index":723,"title":{},"body":{"classes/PaperDto.html":{}}}],["multiple",{"_index":1276,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":961,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1311,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":339,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1665,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1426,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1431,"title":{},"body":{"index.html":{}}}],["nanos",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["necessarily",{"_index":1599,"title":{},"body":{"license.html":{}}}],["need",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":533,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1697,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1700,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":1087,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":408,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["nestjs",{"_index":976,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":310,"title":{},"body":{"modules/HealthModule.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":984,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":166,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":300,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1767,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":472,"title":{},"body":{"injectables/LoggerService.html":{}}}],["neurobiology",{"_index":737,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuroimaging",{"_index":739,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuron",{"_index":738,"title":{},"body":{"classes/PaperDto.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":392,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":416,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["no_content",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1766,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1274,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":1183,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1641,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":1136,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":1131,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1244,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":1108,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":404,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1526,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1627,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1655,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1379,"title":{},"body":{"index.html":{}}}],["ns",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["null",{"_index":895,"title":{},"body":{"injectables/SearchService.html":{}}}],["num",{"_index":1316,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":146,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":184,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["objects",{"_index":162,"title":{},"body":{"classes/EsHitDto.html":{}}}],["obligations",{"_index":1723,"title":{},"body":{"license.html":{}}}],["observable",{"_index":398,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["obtain",{"_index":1755,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1592,"title":{},"body":{"license.html":{}}}],["ok",{"_index":305,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["old",{"_index":661,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["one",{"_index":1083,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1344,"title":{},"body":{"index.html":{}}}],["optional",{"_index":122,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":919,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":565,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":613,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["order.desc",{"_index":592,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["order.enum",{"_index":567,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["order.enum.ts",{"_index":1020,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1537,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1495,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["output",{"_index":1328,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1501,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":1186,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1260,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":539,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["overview",{"_index":1334,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1478,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1497,"title":{},"body":{"license.html":{}}}],["package",{"_index":973,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1396,"title":{},"body":{"index.html":{}}}],["page",{"_index":118,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["pagedto",{"_index":489,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":631,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pageinterceptor",{"_index":505,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagemeta",{"_index":493,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagen",{"_index":854,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":610,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["pagesize",{"_index":616,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["pagination",{"_index":209,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair",{"_index":655,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair.indexof",{"_index":658,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair.substring(0",{"_index":657,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pair.substring(pair.indexof",{"_index":659,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pairs",{"_index":649,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pairs.shift",{"_index":653,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pairs[0",{"_index":652,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["paper",{"_index":159,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["paper.dto",{"_index":173,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{}}}],["paperdto",{"_index":156,"title":{"classes/PaperDto.html":{}},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"coverage.html":{}}}],["papers",{"_index":274,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":755,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":761,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":740,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":338,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parameters['main",{"_index":651,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["parameters[key",{"_index":660,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["parseuuidpipe",{"_index":765,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1635,"title":{},"body":{"license.html":{}}}],["partial",{"_index":1080,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":1079,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["particle",{"_index":850,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1684,"title":{},"body":{"license.html":{}}}],["party",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["passed",{"_index":206,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["patent",{"_index":1589,"title":{},"body":{"license.html":{}}}],["pattern",{"_index":1349,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":1172,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1281,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":1126,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1499,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1315,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":129,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":1109,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":1096,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":1115,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1279,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":818,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1507,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1577,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1634,"title":{},"body":{"license.html":{}}}],["physics",{"_index":729,"title":{},"body":{"classes/PaperDto.html":{}}}],["pipe(take(1",{"_index":636,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["pipeline",{"_index":906,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":181,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["pit.id",{"_index":579,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pit.interface",{"_index":221,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"injectables/SearchService.html":{}}}],["pit.interface.ts",{"_index":180,"title":{},"body":{"interfaces/EsPit.html":{},"coverage.html":{}}}],["pit.keep_alive",{"_index":581,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pit_id",{"_index":234,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":521,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["places",{"_index":1319,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":182,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":545,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1346,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1718,"title":{},"body":{"license.html":{}}}],["pot",{"_index":1208,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1486,"title":{},"body":{"license.html":{}}}],["precondition",{"_index":1169,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":1168,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":1091,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":285,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}}}],["prepare",{"_index":1585,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":1154,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":673,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["presented",{"_index":685,"title":{},"body":{"classes/PaperDto.html":{}}}],["prevented",{"_index":1242,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":674,"title":{},"body":{"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{}}}],["previously",{"_index":547,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevpage",{"_index":576,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevsearch",{"_index":510,"title":{"classes/PrevSearch.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["print",{"_index":1401,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1748,"title":{},"body":{"license.html":{}}}],["private",{"_index":304,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1443,"title":{},"body":{"index.html":{}}}],["process",{"_index":1173,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":938,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_port",{"_index":541,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":936,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":937,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1321,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":962,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1320,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":963,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1323,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":1152,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1667,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1384,"title":{},"body":{"index.html":{}}}],["programming",{"_index":706,"title":{},"body":{"classes/PaperDto.html":{}}}],["project",{"_index":293,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":1002,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1626,"title":{},"body":{"license.html":{}}}],["promise",{"_index":523,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":632,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["properties",{"_index":121,"title":{"properties.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1273,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":496,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":866,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":134,"title":{},"body":{"interfaces/EqQueryString.html":{},"license.html":{}}}],["proxy",{"_index":1150,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":1144,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":442,"title":{},"body":{"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1586,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1562,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1484,"title":{},"body":{"license.html":{}}}],["put",{"_index":766,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":560,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{}}}],["q.dto.ts",{"_index":838,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:24",{"_index":852,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:36",{"_index":847,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:47",{"_index":841,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:58",{"_index":839,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":115,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.'})@apiresponse({status",{"_index":749,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto",{"_index":555,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{}}}],["query.dto.ts",{"_index":196,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:26",{"_index":215,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:37",{"_index":207,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:48",{"_index":202,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:59",{"_index":216,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:70",{"_index":200,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface",{"_index":222,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface.ts",{"_index":188,"title":{},"body":{"interfaces/EsQuery.html":{},"coverage.html":{}}}],["query.limit",{"_index":603,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.order",{"_index":593,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.page",{"_index":607,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.query",{"_index":589,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.limit",{"_index":602,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order",{"_index":591,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order?.touppercase",{"_index":612,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.page",{"_index":611,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query_str",{"_index":898,"title":{},"body":{"injectables/SearchService.html":{}}}],["query_string",{"_index":189,"title":{},"body":{"interfaces/EsQuery.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["range",{"_index":1181,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1236,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1637,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":386,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1737,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1668,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1263,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1251,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1623,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1746,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":1093,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1294,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1689,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1619,"title":{},"body":{"license.html":{}}}],["references",{"_index":1099,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":1005,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":811,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":1165,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":1129,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1662,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1336,"title":{},"body":{"index.html":{}}}],["reject",{"_index":633,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reject(error",{"_index":643,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["reject(new",{"_index":888,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":269,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevance",{"_index":149,"title":{},"body":{"classes/EsHitDto.html":{}}}],["relevant",{"_index":874,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1538,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":1116,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1742,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1535,"title":{},"body":{"license.html":{}}}],["representation",{"_index":1092,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":1084,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1555,"title":{},"body":{"license.html":{}}}],["represents",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1584,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1671,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1469,"title":{},"body":{"license.html":{}}}],["req",{"_index":767,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":418,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":421,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":241,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.es_query",{"_index":587,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.pit",{"_index":597,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.query",{"_index":588,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.search_after",{"_index":599,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.size",{"_index":604,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.sort",{"_index":590,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.query",{"_index":586,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request_timeout",{"_index":1151,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requestdto",{"_index":556,"title":{"classes/RequestDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"coverage.html":{}}}],["requested",{"_index":763,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":1179,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":385,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1247,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":822,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":827,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":1124,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":768,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["res.data.hits.hits[res.data.hits.hits.length",{"_index":668,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits.slice",{"_index":627,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits[(meta.pagenum",{"_index":621,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits[meta.pagenum",{"_index":618,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.hits[res.hits.hits.length",{"_index":625,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.slice((meta.pagenum",{"_index":663,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.hits.total.value",{"_index":609,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.keep_alive",{"_index":640,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.pit_id",{"_index":624,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.timed_out",{"_index":887,"title":{},"body":{"injectables/SearchService.html":{}}}],["reserved",{"_index":1127,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":1074,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":1103,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":890,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res",{"_index":641,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resolve(res.succeeded",{"_index":647,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resource",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":1113,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":231,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":326,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":782,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto",{"_index":863,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["response.dto.ts",{"_index":230,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:25",{"_index":257,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:38",{"_index":250,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:55",{"_index":237,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:83",{"_index":243,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:94",{"_index":247,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":329,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":336,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":315,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":349,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":354,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":369,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":366,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":371,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":360,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1729,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1686,"title":{},"body":{"license.html":{}}}],["result",{"_index":526,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"index.html":{},"license.html":{}}}],["result.dto",{"_index":562,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":858,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:24",{"_index":862,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:38",{"_index":860,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1514,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1631,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":141,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1782,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":213,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["reverse",{"_index":549,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["revisions",{"_index":1532,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":1204,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1725,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":1007,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1691,"title":{},"body":{"license.html":{}}}],["role",{"_index":814,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":808,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":821,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":805,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["ron",{"_index":713,"title":{},"body":{"classes/PaperDto.html":{}}}],["rounded",{"_index":1317,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1314,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":742,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1784,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1581,"title":{},"body":{"license.html":{}}}],["run",{"_index":1381,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1387,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1394,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1395,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1393,"title":{},"body":{"index.html":{}}}],["running",{"_index":1413,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":409,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":411,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["s",{"_index":700,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["same",{"_index":1747,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1416,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1286,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["saved",{"_index":830,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["saveinfo",{"_index":789,"title":{},"body":{"classes/PrevSearch.html":{}}}],["saveinfo(pit",{"_index":577,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["saving",{"_index":622,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["schemas",{"_index":1452,"title":{},"body":{"index.html":{}}}],["score",{"_index":150,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{}}}],["script",{"_index":1397,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1385,"title":{},"body":{"index.html":{}}}],["search",{"_index":130,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["search_after",{"_index":197,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["searchinfo",{"_index":569,"title":{"interfaces/SearchInfo.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":558,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":561,"title":{"classes/SearchResultDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":891,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(504",{"_index":889,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto(700",{"_index":892,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchresultdto})@get(':uuid')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":759,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchresultdto})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":753,"title":{},"body":{"controllers/PapersController.html":{}}}],["searchservice",{"_index":516,"title":{"injectables/SearchService.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["sec",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["section",{"_index":1088,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1474,"title":{},"body":{"license.html":{}}}],["see",{"_index":1280,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":1107,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":1090,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":1188,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1593,"title":{},"body":{"license.html":{}}}],["sent",{"_index":1078,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1539,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1659,"title":{},"body":{"license.html":{}}}],["server",{"_index":544,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1296,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":1212,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":302,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1419,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1429,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1434,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1256,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":350,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["services/common/search.service",{"_index":572,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["set",{"_index":756,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["setmetadata(is_public_key",{"_index":1779,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1781,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setting",{"_index":608,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["shall",{"_index":1472,"title":{},"body":{"license.html":{}}}],["shards",{"_index":239,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1502,"title":{},"body":{"license.html":{}}}],["short",{"_index":324,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/PaperDto.html":{}}}],["show",{"_index":718,"title":{},"body":{"classes/PaperDto.html":{}}}],["similar",{"_index":1145,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["single",{"_index":901,"title":{},"body":{"injectables/SearchService.html":{}}}],["size",{"_index":198,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":265,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1350,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1728,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1685,"title":{},"body":{"license.html":{}}}],["sort",{"_index":145,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["sorted",{"_index":163,"title":{},"body":{"classes/EsHitDto.html":{}}}],["sorting",{"_index":217,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":831,"title":{},"body":{"interfaces/SearchInfo.html":{},"license.html":{}}}],["specific",{"_index":132,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":131,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":1184,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["specifies",{"_index":190,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["src/.../app.module.ts",{"_index":1776,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1305,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":1012,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1307,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1013,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":1015,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":1016,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":1018,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":1017,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1304,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":1019,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../page.dto.ts",{"_index":1771,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../paper.dto.ts",{"_index":1772,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1775,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../request.dto.ts",{"_index":1773,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1777,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":1021,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1774,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1306,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application",{"_index":837,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/application/controller/health.controller.ts",{"_index":284,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":290,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":741,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:30",{"_index":754,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:56",{"_index":760,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":946,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":950,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos",{"_index":880,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/domain/dtos/es",{"_index":137,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":490,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:23",{"_index":498,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:32",{"_index":494,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts",{"_index":676,"title":{},"body":{"classes/PaperDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/paper.dto.ts:24",{"_index":696,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:35",{"_index":728,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:46",{"_index":683,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:57",{"_index":730,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:68",{"_index":717,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:79",{"_index":722,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:88",{"_index":688,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/request.dto",{"_index":775,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/domain/dtos/request.dto.ts",{"_index":797,"title":{},"body":{"classes/RequestDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/request.dto.ts:24",{"_index":802,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/request.dto.ts:34",{"_index":800,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/search",{"_index":772,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/es",{"_index":881,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1271,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1297,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1291,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1299,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1300,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/es",{"_index":114,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/http",{"_index":314,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":669,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/search",{"_index":828,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":328,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":807,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":816,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":812,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":959,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":960,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":383,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":407,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":394,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":401,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":771,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":506,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:137",{"_index":542,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:142",{"_index":546,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:149",{"_index":531,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:169",{"_index":519,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:17",{"_index":790,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:24",{"_index":791,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:25",{"_index":793,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:26",{"_index":792,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:28",{"_index":796,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:37",{"_index":794,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:43",{"_index":795,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:53",{"_index":517,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:64",{"_index":538,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":308,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":348,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":437,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":903,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":353,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":438,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":471,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":449,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":451,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":465,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":458,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":469,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":455,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":467,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":461,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":865,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:14",{"_index":869,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:25",{"_index":878,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:32",{"_index":877,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:68",{"_index":873,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":917,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":836,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":969,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sssss",{"_index":178,"title":{},"body":{"classes/EsHitDto.html":{}}}],["st",{"_index":702,"title":{},"body":{"classes/PaperDto.html":{}}}],["stages",{"_index":1373,"title":{},"body":{"index.html":{}}}],["start",{"_index":402,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1383,"title":{},"body":{"index.html":{}}}],["started",{"_index":1331,"title":{"index.html":{},"license.html":{}},"body":{}}],["starting",{"_index":832,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["starttime",{"_index":400,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":1158,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1591,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1649,"title":{},"body":{"license.html":{}}}],["statements",{"_index":942,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":440,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1628,"title":{},"body":{"license.html":{}}}],["status",{"_index":251,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1445,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":430,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1711,"title":{},"body":{"license.html":{}}}],["stored",{"_index":140,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{}}}],["stores",{"_index":203,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["str.split",{"_index":650,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["string",{"_index":125,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["string.interface",{"_index":194,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["string.interface.ts",{"_index":116,"title":{},"body":{"interfaces/EqQueryString.html":{},"coverage.html":{}}}],["structure",{"_index":117,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"interfaces/SearchInfo.html":{}}}],["subject",{"_index":1574,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1587,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1651,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1549,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1547,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":639,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["subsequently",{"_index":1571,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1293,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":264,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1492,"title":{},"body":{"license.html":{}}}],["summary",{"_index":678,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["super(httpexception.createbody(data",{"_index":341,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1301,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1658,"title":{},"body":{"license.html":{}}}],["support",{"_index":1245,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":1178,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1439,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1760,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1449,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1272,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":1122,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1558,"title":{},"body":{"license.html":{}}}],["t",{"_index":726,"title":{},"body":{"classes/PaperDto.html":{}}}],["table",{"_index":972,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":971,"title":{},"body":{"coverage.html":{}}}],["tags",{"_index":679,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["take",{"_index":552,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["taken",{"_index":935,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1313,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":410,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1288,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":1104,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1259,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":1114,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ten",{"_index":736,"title":{},"body":{"classes/PaperDto.html":{}}}],["terminate",{"_index":1616,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":311,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1468,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1460,"title":{},"body":{"index.html":{}}}],["test",{"_index":1364,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1382,"title":{},"body":{"index.html":{}}}],["tested",{"_index":1171,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":699,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1695,"title":{},"body":{"license.html":{}}}],["thereof",{"_index":1543,"title":{},"body":{"license.html":{}}}],["third",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":477,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":503,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.es_query",{"_index":803,"title":{},"body":{"classes/RequestDto.html":{}}}],["this.getdescription(status",{"_index":364,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":362,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getpit(1",{"_index":666,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.getpit(1).then((pit",{"_index":899,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.gettype(status",{"_index":382,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://localhost:${this.es_port}/_pit",{"_index":644,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.httpservice.get(`http://localhost:${this.es_port}/_search",{"_index":886,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://localhost:${this.es_port}/papers/_pit?keep_alive=${alive+unit",{"_index":635,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.limit",{"_index":856,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":475,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":484,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":480,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":431,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":419,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":479,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":485,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":483,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":417,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":504,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":857,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.page",{"_index":855,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.pit",{"_index":227,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.pit.id",{"_index":578,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.pit.keep_alive",{"_index":580,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevpage",{"_index":574,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch",{"_index":585,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.isset",{"_index":596,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.pit",{"_index":598,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.pit.id",{"_index":623,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.prevpage",{"_index":606,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.tiebreaker",{"_index":600,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.query",{"_index":226,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":823,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.searchservice.findbycontext(query.es_query).then",{"_index":781,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbycontext(request.es_query).then((res",{"_index":667,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":787,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.size",{"_index":224,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.sort",{"_index":228,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.statuscode",{"_index":864,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["this.tiebreaker",{"_index":573,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["those",{"_index":1596,"title":{},"body":{"license.html":{}}}],["through",{"_index":1456,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["throwed",{"_index":1322,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1329,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":1222,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["tiebreaker",{"_index":575,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["tiebreaker.slice",{"_index":582,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["time",{"_index":183,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["time.enum",{"_index":564,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["time.enum.ts",{"_index":1014,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timed",{"_index":252,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":235,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1264,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1282,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":680,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["todo",{"_index":1345,"title":{},"body":{"index.html":{}}}],["tony",{"_index":715,"title":{},"body":{"classes/PaperDto.html":{}}}],["too_many_requests",{"_index":1233,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":236,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["topic",{"_index":681,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["topics/fields",{"_index":719,"title":{},"body":{"classes/PaperDto.html":{}}}],["tort",{"_index":1696,"title":{},"body":{"license.html":{}}}],["total",{"_index":262,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["touching",{"_index":721,"title":{},"body":{"classes/PaperDto.html":{}}}],["tracking",{"_index":1560,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1664,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1632,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1663,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":1199,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1372,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1594,"title":{},"body":{"license.html":{}}}],["transform",{"_index":910,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1516,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":914,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1517,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":524,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["try",{"_index":634,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1521,"title":{},"body":{"license.html":{}}}],["unable",{"_index":1225,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":1194,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":1123,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1290,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["under",{"_index":1105,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":1119,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1240,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["union",{"_index":1482,"title":{},"body":{"license.html":{}}}],["unique",{"_index":690,"title":{},"body":{"classes/PaperDto.html":{}}}],["unit",{"_index":529,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["units",{"_index":1022,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["university",{"_index":711,"title":{},"body":{"classes/PaperDto.html":{}}}],["unknown",{"_index":223,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["unless",{"_index":1653,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":1215,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":1213,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1285,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":1177,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":306,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":1073,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1253,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":1097,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":1175,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":1101,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":428,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":323,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1389,"title":{},"body":{"index.html":{}}}],["use",{"_index":1100,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":240,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":769,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":778,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":817,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":826,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":875,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1408,"title":{},"body":{"index.html":{}}}],["util",{"_index":474,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":762,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["uuid.'})@apiresponse({status",{"_index":758,"title":{},"body":{"controllers/PapersController.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":964,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1324,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":965,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1327,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":905,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":915,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":902,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":907,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":267,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1185,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":947,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":904,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1552,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":446,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":466,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":1270,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":1076,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":918,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":916,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":403,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PrevSearch.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":1155,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":447,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":468,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":470,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1678,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1673,"title":{},"body":{"license.html":{}}}],["way",{"_index":662,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"index.html":{}}}],["ways",{"_index":1376,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1640,"title":{},"body":{"license.html":{}}}],["whether",{"_index":1493,"title":{},"body":{"license.html":{}}}],["whole",{"_index":1536,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":930,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":1153,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":1166,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1522,"title":{},"body":{"license.html":{}}}],["works",{"_index":1529,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1578,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1569,"title":{},"body":{"license.html":{}}}],["written",{"_index":1553,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1326,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":459,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1752,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
- "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync, IsOptional } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EqQueryString.html":{"url":"interfaces/EqQueryString.html","title":"interface - EqQueryString","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EqQueryString\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-query-string.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n default_field\n \n \n \n Optional\n \n fields\n \n \n \n \n query\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n default_field\n \n \n \n \n \n \n \n \n default_field: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Default field to perform a search on, when\nno field is specified for the query\n\n \n \n \n \n \n \n \n \n \n fields\n \n \n \n \n \n \n \n \n fields: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Specific fields, to perform a search on\nCan't be specified with 'default_field'\n\n \n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n \n \n query: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Query string, that provides the data, to perform a search on\n\n \n \n \n \n \n \n\n\n \n export interface EqQueryString {\n /**\n * Query string, that provides the data, to perform a search on\n */\n query: string;\n\n /**\n * Default field to perform a search on, when \n * no field is specified for the query\n */\n default_field?: string;\n\n /**\n * Specific fields, to perform a search on\n * Can't be specified with 'default_field'\n */\n fields?: string[];\n\n /**\n * \n */\n\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsHitDto.html":{"url":"classes/EsHitDto.html","title":"class - EsHitDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsHitDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-hit.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n _score\n \n \n _source\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n _score\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiProperty({description: 'Relevance score', example: 1.2355})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-hit.dto.ts:44\n \n \n\n \n \n Hit relevance score\n\n \n \n\n \n \n \n \n \n \n \n \n _source\n \n \n \n \n \n \n Type : PaperDto\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@ApiProperty({description: 'Actual document (paper) stored in Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-hit.dto.ts:24\n \n \n\n \n \n Actual document stored in Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiProperty({description: 'List of objects that represents how the hit was sorted', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-hit.dto.ts:34\n \n \n\n \n \n List of objects that represents how the hit was sorted\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['sort', '_source', '_score'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\nexport class EsHitDto {\n /**\n * Actual document stored in Elasticsearch\n */\n @IsNotEmpty()\n @ApiProperty({\n description: 'Actual document (paper) stored in Elasticsearch',\n example: {\n id: 'sssss'\n }\n })\n _source: PaperDto;\n \n /**\n * List of objects that represents how the hit was sorted\n */\n @IsOptional()\n @ApiProperty({\n description: 'List of objects that represents how the hit was sorted',\n example: {}\n })\n sort?: [];\n\n /**\n * Hit relevance score\n */\n @IsOptional()\n @ApiProperty({\n description: 'Relevance score',\n example: 1.2355\n })\n _score?: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsPit.html":{"url":"interfaces/EsPit.html","title":"interface - EsPit","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsPit\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-pit.interface.ts\n \n\n\n \n Description\n \n \n Structure of PIT (Point-In-Time) object\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n PIT ID\n\n \n \n \n \n \n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n keep_alive: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Time to live of the PIT\n\n \n \n \n \n \n \n\n\n \n export interface EsPit {\n /**\n * PIT ID\n */\n id: string;\n\n /**\n * Time to live of the PIT\n */\n keep_alive: string;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsQuery.html":{"url":"interfaces/EsQuery.html","title":"interface - EsQuery","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsQuery\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-query.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n query_string: EqQueryString\n\n \n \n\n\n \n \n Type : EqQueryString\n\n \n \n\n\n\n\n\n \n \n Query string object, that specifies certain search conditions\n\n \n \n \n \n \n \n\n\n \n import { EqQueryString } from \"./es-query-string.interface\";\n\n/**\n * Structure of page metadata\n */\nexport interface EsQuery {\n /**\n * Query string object, that specifies certain search conditions\n */\n query_string: EqQueryString;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch query DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n pit\n \n \n query\n \n \n Optional\n search_after\n \n \n Optional\n size\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:70\n \n \n\n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'PIT object', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:48\n \n \n\n \n \n Object, that stores PIT ID and time alive\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : EsQuery\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsObject()@ApiProperty({description: 'Search query object passed to Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:37\n \n \n\n \n \n The search query object passed to Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n search_after\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:70\n \n \n\n \n \n Pagination info\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsDefined()@IsNumber()@IsInt()@ApiProperty({description: 'Maximum number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:26\n \n \n\n \n \n Maximum number of elements returned by Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-query.dto.ts:59\n \n \n\n \n \n Sorting info\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\nimport { EsPit } from \"../interfaces/es-pit.interface\";\nimport { EsQuery } from \"../interfaces/es-query.interface\"\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch query DTO\n */\n export class EsQueryDto {\n /**\n * Maximum number of elements returned by Elasticsearch\n */\n @IsOptional()\n @IsDefined()\n @IsNumber()\n @IsInt()\n @ApiProperty({\n description: 'Maximum number of elements returned by Elasticsearch',\n example: 30\n })\n size?: number;\n \n /**\n * The search query object passed to Elasticsearch\n */\n @IsDefined()\n @IsObject()\n @ApiProperty({\n description: 'Search query object passed to Elasticsearch',\n example: {},\n })\n query: EsQuery;\n\n /**\n * Object, that stores PIT ID and time alive\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'PIT object',\n example: {}\n })\n pit?: EsPit;\n\n /**\n * Sorting info\n */\n @IsOptional()\n @IsArray()\n @ApiProperty({\n description: '',\n example: []\n })\n sort?: unknown[];\n\n /**\n * Pagination info\n */\n @IsOptional()\n @IsArray()\n @ApiProperty({\n description: '',\n example: []\n })\n search_after?: unknown[];\n\n constructor() {\n this.size = 10;\n this.query = undefined;\n this.pit = undefined;\n this.sort = undefined;\n }\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n Optional\n pit_id\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: '_shards', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:55\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : EsResponseHits\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'hits', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:83\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n pit_id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsString()@IsOptional()@ApiProperty({description: 'PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:94\n \n \n\n \n \n ID of the PIT used in the search\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'timed_out', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:38\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'took', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/es-response.dto.ts:25\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseHits } from \"../interfaces/es-response-hits.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'took',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'timed_out',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: '_shards',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'hits',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {\n\n },\n fields: {\n\n }\n }],\n }\n })\n hits: EsResponseHits;\n\n /**\n * ID of the PIT used in the search\n */\n @IsString()\n @IsOptional()\n @ApiProperty({\n description: 'PIT ID used to search for results',\n example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='\n })\n pit_id?: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsResponseHits.html":{"url":"interfaces/EsResponseHits.html","title":"interface - EsResponseHits","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsResponseHits\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/es-response-hits.interface.ts\n \n\n\n \n Description\n \n \n Structure of 'hits' object of Elasticsearch response\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hits\n \n \n \n Optional\n \n max_score\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hits\n \n \n \n \n \n \n \n \n hits: EsHitDto[]\n\n \n \n\n\n \n \n Type : EsHitDto[]\n\n \n \n\n\n\n\n\n \n \n Array of search results\n\n \n \n \n \n \n \n \n \n \n max_score\n \n \n \n \n \n \n \n \n max_score: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Maximum score amongst all search results\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: object\n\n \n \n\n\n \n \n Type : object\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { EsHitDto } from \"../dtos/es-hit.dto\";\n\n/**\n * Structure of 'hits' object of Elasticsearch response\n */\nexport interface EsResponseHits {\n total: object;\n\n /**\n * Maximum score amongst all search results\n */\n max_score?: number;\n\n /**\n * Array of search results\n */\n hits: EsHitDto[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: PaperDto[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:32\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n PaperDto[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : PaperDto[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data the page contains', isArray: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:23\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMeta\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:32\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data the page contains',\n isArray: true,\n })\n readonly data: PaperDto[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: [],\n })\n readonly meta: PageMeta;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: PaperDto[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n Private\n prevSearch\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Public\n Async\n getPIT\n \n \n Async\n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService, searchService: SearchService)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:53\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n searchService\n \n \n SearchService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:169\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number, unit: EsTime)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:149\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n \n\n \n , amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n\n \n \n \n unit\n \n EsTime\n \n\n \n No\n \n\n \n EsTime.min\n \n\n \n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n PIT object containing PIT ID and keep_alive value\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n intercept\n \n \n \n \n \n \n \n intercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:64\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:137\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n prevSearch\n \n \n \n \n \n \n Type : PrevSearch\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:142\n \n \n\n \n \n Info about previously completed search\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { reverse } from \"dns\";\nimport { Observable, map, take } from \"rxjs\";\nimport { EsResponseDto, PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { SearchResultDto } from \"../domain/dtos/search-result.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/es-pit.interface\";\nimport { SearchInfo } from \"../domain/interfaces/search-info.interface\";\nimport { SearchService } from \"../services/common/search.service\";\n\nclass PrevSearch implements SearchInfo {\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n pit: EsPit;\n tiebreaker: unknown[];\n prevPage: number;\n\n public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {\n this.pit.id = pit.id;\n this.pit.keep_alive = pit.keep_alive;\n\n this.tiebreaker = tiebreaker.slice();\n\n this.prevPage = page;\n }\n\n public clearInfo() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n constructor(private readonly httpService: HttpService, private readonly searchService: SearchService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch.pit;\n request.es_query.search_after = this.prevSearch.tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 10 : query.limit,\n }; \n // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;\n // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n // Saving the search info\n this.prevSearch.pit.id = res.pit_id;\n this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;\n this.prevSearch.prevPage = query.page;\n\n let data = res.hits.hits.slice(-meta.pagesize);\n if (reverse) {\n console.log('REVERSE');\n this.prevSearch.tiebreaker = data[0].sort;\n data.reverse();\n reverse = false;\n }\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n res.keep_alive = alive + unit;\n resolve(res);\n }));\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n\n\n /**\n * OLD WAY PAGINATION\n * // Setting the page data\n // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n */\n\n\n // if (query.page == 1) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n // } else {\n // if (!this.prevSearch.isSet()) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n\n // request.es_query.size = query.limit * (query.page - 1);\n // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {\n // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;\n // });\n // } else {\n // if (query.page == this.prevSearch.prevPage) {\n // return;\n // } else {\n // request.es_query.pit = this.prevSearch.pit;\n // request.es_query.search_after = this.prevSearch.tiebreaker;\n // request.es_query.size = (query.page - this.prevSearch.prevPage);\n // }\n\n // // request.es_query.pit = this.prevSearch.pit;\n // // request.es_query.search_after = this.prevSearch.tiebreaker;\n // }\n // }\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Total search results\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Total search results\n */\n total: number;\n\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PaperDto.html":{"url":"classes/PaperDto.html","title":"class - PaperDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PaperDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/paper.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n authors\n \n \n content\n \n \n id\n \n \n summary\n \n \n tags\n \n \n title\n \n \n topic\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n authors\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of authors of the paper', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:46\n \n \n\n \n \n List of authors of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n content\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Contents of the paper presented in Markdown (.md) format', example: '...'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:88\n \n \n\n \n \n Contents of the paper [Markdown]\n\n \n \n\n \n \n \n \n \n \n \n \n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Unique ID of the paper', example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:24\n \n \n\n \n \n Unique ID of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n summary\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Summary of the paper. May be a short excerpt from the main text', example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:68\n \n \n\n \n \n Summary of the paper. May be a short excerpt from the main text.\n\n \n \n\n \n \n \n \n \n \n \n \n tags\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of tags, that show the certain topics/fields of knowledge paper is touching', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:79\n \n \n\n \n \n List of tags, that show the certain topics/fields of knowledge paper is touching\n\n \n \n\n \n \n \n \n \n \n \n \n title\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Title of the paper', example: 'Mucosal associated invariant T cell'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:35\n \n \n\n \n \n Title of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n topic\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Topic of the paper', example: 'Physics'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:57\n \n \n\n \n \n Topic of the paper\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { EsQueryDto } from \"./es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\nexport class PaperDto {\n /**\n * Unique ID of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Unique ID of the paper',\n example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'\n })\n id: string;\n \n /**\n * Title of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Title of the paper',\n example: 'Mucosal associated invariant T cell',\n })\n title: string;\n\n /**\n * List of authors of the paper\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of authors of the paper',\n example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']\n })\n authors: string[];\n\n /**\n * Topic of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Topic of the paper',\n example: 'Physics'\n })\n topic: string;\n\n /**\n * Summary of the paper. May be a short excerpt from the main text.\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Summary of the paper. May be a short excerpt from the main text',\n example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'\n })\n summary: string;\n\n /**\n * List of tags, that show the certain topics/fields of knowledge paper is touching\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',\n example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']\n })\n tags: string[];\n\n /**\n * Contents of the paper [Markdown]\n */\n @ApiProperty({\n description: 'Contents of the paper presented in Markdown (.md) format',\n example: '...'\n })\n content: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n \n Prefix\n \n \n papers\n \n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(query: RequestDto)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds papers by context based on the query.'})@ApiResponse({status: 200, description: 'Returns back acquired papers.', type: SearchResultDto})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:30\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n RequestDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiOperation({summary: 'Finds paper by its UUID.'})@ApiResponse({status: 200, description: 'Returns back acquired paper.', type: SearchResultDto})@Get(':uuid')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:56\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiOperation, ApiResponse } from \"@nestjs/swagger\";\nimport { RequestDto } from \"src/core/domain/dtos/request.dto\";\n\n/**\n * /papers/ route controller\n */\n@Controller('papers')\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiOperation({ summary: 'Finds papers by context based on the query.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired papers.',\n type: SearchResultDto,\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Req() query: RequestDto): object {\n return this.searchService.findByContext(query.es_query).then(\n (response: SearchResultDto) => {\n return response.data;\n },\n (error: SearchResultDto) => {\n throw new HttpException(error.data, error.statusCode);\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiOperation({ summary: 'Finds paper by its UUID.' })\n @ApiResponse({\n status: 200,\n description: 'Returns back acquired paper.',\n type: SearchResultDto,\n })\n @Get(':uuid')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response) => {\n return response.data;\n },\n (error) => {\n throw new HttpException(error.data, error.status);\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PrevSearch.html":{"url":"classes/PrevSearch.html","title":"class - PrevSearch","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PrevSearch\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n\n\n \n Implements\n \n \n SearchInfo\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n pit\n \n \n prevPage\n \n \n tiebreaker\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Public\n clearInfo\n \n \n Public\n isSet\n \n \n Public\n saveInfo\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:17\n \n \n\n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:24\n \n \n\n\n \n \n \n \n \n \n \n \n prevPage\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:26\n \n \n\n\n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:25\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Public\n clearInfo\n \n \n \n \n \n \n \n clearInfo()\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:37\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n isSet\n \n \n \n \n \n \n \n isSet()\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:43\n \n \n\n\n \n \n\n \n Returns : boolean\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n saveInfo\n \n \n \n \n \n \n \n saveInfo(pit: EsPit, tiebreaker: [], page: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:28\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n pit\n \n EsPit\n \n\n \n No\n \n\n\n \n \n tiebreaker\n \n []\n \n\n \n No\n \n\n\n \n \n page\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { reverse } from \"dns\";\nimport { Observable, map, take } from \"rxjs\";\nimport { EsResponseDto, PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { SearchResultDto } from \"../domain/dtos/search-result.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/es-pit.interface\";\nimport { SearchInfo } from \"../domain/interfaces/search-info.interface\";\nimport { SearchService } from \"../services/common/search.service\";\n\nclass PrevSearch implements SearchInfo {\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n pit: EsPit;\n tiebreaker: unknown[];\n prevPage: number;\n\n public saveInfo(pit: EsPit, tiebreaker: unknown[], page: number) {\n this.pit.id = pit.id;\n this.pit.keep_alive = pit.keep_alive;\n\n this.tiebreaker = tiebreaker.slice();\n\n this.prevPage = page;\n }\n\n public clearInfo() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n constructor(private readonly httpService: HttpService, private readonly searchService: SearchService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch.pit;\n request.es_query.search_after = this.prevSearch.tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch.prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n hasNext: false,\n hasPrev: false,\n pagesize: !query?.limit ? 10 : query.limit,\n }; \n // meta.hasNext = res.hits.hits[meta.pagenum * meta.pagesize] ? true : false;\n // meta.hasPrev = res.hits.hits[(meta.pagenum - 1) * meta.pagesize - 1] ? true: false;\n\n // Saving the search info\n this.prevSearch.pit.id = res.pit_id;\n this.prevSearch.tiebreaker = res.hits.hits[res.hits.hits.length - 1].sort;\n this.prevSearch.prevPage = query.page;\n\n let data = res.hits.hits.slice(-meta.pagesize);\n if (reverse) {\n console.log('REVERSE');\n this.prevSearch.tiebreaker = data[0].sort;\n data.reverse();\n reverse = false;\n }\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n res.keep_alive = alive + unit;\n resolve(res);\n }));\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n\n // getQueryParams(str: string): any {\n // let parameters: object = {};\n // let pairs: string[] = str.split(',');\n // parameters['main'] = pairs[0];\n // pairs.shift();\n\n // if(!pairs || pairs[0] === '') return parameters;\n\n // for (const pair of pairs) {\n // const key: string = pair.substring(0, pair.indexOf('='));\n // const value: string = pair.substring(pair.indexOf('=') + 1);\n // parameters[key] = value;\n // }\n\n // return parameters;\n // }\n\n\n /**\n * OLD WAY PAGINATION\n * // Setting the page data\n // const data = res.hits.slice((meta.pagenum - 1) * meta.pagesize, meta.pagenum * meta.pagesize);\n */\n\n\n // if (query.page == 1) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n // } else {\n // if (!this.prevSearch.isSet()) {\n // this.prevSearch.pit = request.es_query.pit = await this.getPIT(1);\n\n // request.es_query.size = query.limit * (query.page - 1);\n // this.searchService.findByContext(request.es_query).then((res: SearchResultDto) => {\n // request.es_query.search_after = res.data.hits.hits[res.data.hits.hits.length - 1].sort;\n // });\n // } else {\n // if (query.page == this.prevSearch.prevPage) {\n // return;\n // } else {\n // request.es_query.pit = this.prevSearch.pit;\n // request.es_query.search_after = this.prevSearch.tiebreaker;\n // request.es_query.size = (query.page - this.prevSearch.prevPage);\n // }\n\n // // request.es_query.pit = this.prevSearch.pit;\n // // request.es_query.search_after = this.prevSearch.tiebreaker;\n // }\n // }\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestDto.html":{"url":"classes/RequestDto.html","title":"class - RequestDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/request.dto.ts\n \n\n\n \n Description\n \n \n Request object, which contains query parameters and Elasticsearch query object\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n es_query\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: SearchQueryDto, es_query: EsQueryDto)\n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:34\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n SearchQueryDto\n \n \n \n No\n \n \n \n \n es_query\n \n \n EsQueryDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n es_query\n \n \n \n \n \n \n Type : EsQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:34\n \n \n\n \n \n Elasticsearch query object\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : SearchQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@ApiProperty({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:24\n \n \n\n \n \n Query parameters object\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { EsQueryDto } from \"./es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'es_query'];\n\n/**\n * Request object, which contains query parameters and Elasticsearch query object\n */\nexport class RequestDto {\n /**\n * Query parameters object\n */\n @IsDefined()\n @IsNotEmpty()\n @ApiProperty({\n description: '',\n example: {}\n })\n query: SearchQueryDto;\n \n /**\n * Elasticsearch query object\n */\n @IsOptional()\n @ApiProperty({\n description: '',\n example: {},\n })\n es_query?: EsQueryDto;\n\n /**\n * Constructs an object with provided parameters\n * @param query\n * @param es_query\n */\n constructor(query: SearchQueryDto, es_query: EsQueryDto) {\n this.query = query;\n this.es_query = es_query;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchInfo.html":{"url":"interfaces/SearchInfo.html","title":"interface - SearchInfo","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchInfo\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n\n\n \n Description\n \n \n Structure of search metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n pit\n \n \n \n \n \n \n \n \n pit: EsPit\n\n \n \n\n\n \n \n Type : EsPit\n\n \n \n\n\n\n\n\n \n \n Previous search saved PIT\n\n \n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n tiebreaker: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n Special tiebreaker used by Elasticsearch.\nIndicates the starting point of next search\n\n \n \n \n \n \n \n\n\n \n import { EsPit } from \"./es-pit.interface\";\n\n/**\n * Structure of search metadata\n */\nexport interface SearchInfo {\n /**\n * Previous search saved PIT\n */\n pit: EsPit;\n\n /**\n * Special tiebreaker used by Elasticsearch.\n * Indicates the starting point of next search\n */\n tiebreaker: unknown[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { PapersController } from \"src/application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\n\n/**\n * search module\n */\n@Module({\n imports: [\n HttpModule,\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:47\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:58\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:36\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:24\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n\n /**\n * Constructs an object with provided parameters\n * @param query \n * @param page \n * @param limit \n * @param order \n */\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.page = page;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: EsResponseDto)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:38\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n EsResponseDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : EsResponseDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:38\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:24\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseDto } from \"./es-response.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n \n },\n })\n data: EsResponseDto;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: EsResponseDto) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:14\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(es_query: EsQueryDto)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:68\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n es_query\n \n EsQueryDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:32\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:25\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { GatewayTimeoutException, Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { EsQueryDto } from \"src/core/domain/dtos/es-query.dto\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { EsTime } from \"src/core/domain/enums/es-time.enum\";\nimport { EsPit } from \"src/core/domain/interfaces/es-pit.interface\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let ESQ: EsQueryDto = new EsQueryDto;\n\n ESQ.size = 1;\n ESQ.query = {\n query_string: {\n query: ('id:' + uuid),\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: ESQ,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n throw new GatewayTimeoutException;\n // reject(new SearchResultDto(504, {message: 'Timed Out'}));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query, \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(es_query: EsQueryDto): Promise {\n console.log(`SEARCH|SERVICE: ${JSON.stringify(es_query, null, 2)}`);\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n throw new GatewayTimeoutException;\n // reject(new SearchResultDto(504, {status: 504, message: 'Timed Out'}));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(new SearchResultDto(700, error));\n }\n });\n }\n}\n\n// let ESQ: EsQueryDto = new EsQueryDto;\n\n // if (limit) ESQ.size = limit;\n // ESQ.query = {\n // query_string: {\n // query: query_str,\n // default_field: 'content',\n // }\n // }\n // this.getPIT(1).then((pit) => {\n // ESQ.pit = pit;\n // });\n\n/**\n * Context\n * // let es_query = { // DTO\n // query: { // Interface\n // query_string: { // Interface\n // query: query_str,\n // default_field: \"content\"\n // }\n // },\n // }\n */\n\n/**\n * Single\n * // let es_query = {\n // query: {\n // query_string: {\n // query: 'id:' + uuid\n // }\n // },\n // }\n */\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-hit.dto.ts\n \n class\n EsHitDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/es-hit.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n class\n EsQueryDto\n \n 85 %\n (6/7)\n \n \n \n \n \n src/core/domain/dtos/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n class\n PaperDto\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n class\n RequestDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/es-pit.interface.ts\n \n interface\n EsPit\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/interfaces/es-query-string.interface.ts\n \n interface\n EqQueryString\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/es-query.interface.ts\n \n interface\n EsQuery\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/domain/interfaces/es-response-hits.interface.ts\n \n interface\n EsResponseHits\n \n 75 %\n (3/4)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n interface\n SearchInfo\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n class\n PrevSearch\n \n 0 %\n (0/8)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 85 %\n (6/7)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n EsTime   (src/.../es-time.enum.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/es-time.enum.ts\n \n \n \n \n \n \n EsTime\n \n \n \n \n Elasticsearch time-units\n\n \n \n \n \n  days\n \n \n \n \n Value : d\n \n \n \n \n  hours\n \n \n \n \n Value : h\n \n \n \n \n  min\n \n \n \n \n Value : m\n \n \n \n \n  sec\n \n \n \n \n Value : s\n \n \n \n \n  ms\n \n \n \n \n Value : ms\n \n \n \n \n  us\n \n \n \n \n Value : micros\n \n \n \n \n  ns\n \n \n \n \n Value : nanos\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n Page display order\n\n \n \n \n \n  ASC\n \n \n \n \n Value : asc\n \n \n \n \n  DESC\n \n \n \n \n Value : desc\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 11 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 9 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../es-hit.dto.ts)\n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../paper.dto.ts)\n \n \n allowedProperties   (src/.../request.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/es-hit.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['sort', '_source', '_score']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/paper.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/request.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'es_query']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
+ "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.285,1,2.416]],["body/modules/AppModule.html",[0,2.25,1,4.651,2,2.704,3,2.291,4,3.437,5,3.437,6,4.117,7,0.023,8,4.117,9,3.025,10,2.15,11,1.756,12,0.329,13,0.265,14,0.265,15,3.043,16,0.362,17,3.367,18,3.587,19,0.685,20,5.266,21,4.035,22,1.157,23,5.863,24,3.043,25,4.035,26,3.437,27,3.28,28,4.035,29,3.971,30,4.035,31,3.587,32,4.035,33,3.437,34,4.035,35,4.035,36,3.437,37,3.437,38,4.035,39,1.552,40,1.157,41,3.971,42,3.437,43,3.437,44,3.043,45,3.043,46,4.035,47,4.035,48,4.035,49,4.035,50,4.035,51,2.551,52,3.437,53,4.035,54,2.748,55,4.485,56,5.266,57,2.318,58,0.329,59,0.118,60,0.016,61,0.016]],["title/modules/CommonModule.html",[0,1.285,6,2.209]],["body/modules/CommonModule.html",[0,2.111,2,2.06,3,2.536,6,4.453,7,0.023,9,3.348,10,2.523,11,2.06,12,0.386,13,0.31,14,0.31,18,3.97,19,0.621,22,1.358,33,4.965,58,0.386,59,0.138,60,0.018,61,0.018,62,4.033,63,4.033,64,4.033,65,4.495,66,4.495,67,4.736,68,3.97]],["title/classes/EnvironmentVariables.html",[59,0.104,69,2.675]],["body/classes/EnvironmentVariables.html",[7,0.023,12,0.36,13,0.289,14,0.289,16,0.396,19,0.548,40,1.6,51,1.921,58,0.36,59,0.179,60,0.017,61,0.017,69,4.207,70,1.599,71,3.329,72,4.207,73,5.579,74,4.415,75,3.76,76,4.415,77,1.697,78,3.007,79,2.75,80,4.415,81,3.007,82,3.76,83,3.259,84,3.007,85,5.579,86,3.007,87,3.007,88,4.415,89,3.76,90,4.846,91,1.422,92,3.76,93,1.697,94,4.415,95,2.75,96,3.76,97,3.76,98,5.579,99,4.415,100,4.415,101,3.76,102,4.415,103,4.415,104,2.535,105,4.415,106,3.76,107,3.76,108,2.192,109,4.415,110,1.804]],["title/interfaces/EqQueryString.html",[111,0.805,112,2.416]],["body/interfaces/EqQueryString.html",[7,0.023,12,0.362,13,0.291,14,0.291,16,0.399,58,0.362,60,0.017,61,0.017,111,1.009,112,3.816,113,1.816,114,2.768,115,2.702,116,3.785,117,2.206,118,1.816,119,2.063,120,0.516,121,0.932,122,1.552,123,5.113,124,4.618,125,2.043,126,0.713,127,2.781,128,5.487,129,5.113,130,2.184,131,4.388,132,3.816,133,5.602,134,4.772,135,2.438]],["title/classes/EsHitDto.html",[59,0.104,136,2.209]],["body/classes/EsHitDto.html",[7,0.023,12,0.304,13,0.244,14,0.244,16,0.541,19,0.554,39,2.415,40,1.07,58,0.304,59,0.146,60,0.016,61,0.016,70,1.351,77,1.434,78,4.103,83,3.004,117,2.482,120,0.433,121,0.938,122,1.451,126,0.655,136,3.114,137,3.46,138,2.812,139,4.404,140,5.507,141,3.769,142,2.208,143,3.752,144,4.542,145,3.752,146,1.519,147,2.168,148,4.999,149,6.024,150,5.131,151,2.643,152,4.999,153,1.135,154,3.73,155,6.466,156,3.004,157,3.73,158,3.752,159,3.405,160,2.32,161,3.73,162,6.024,163,6.024,164,3.73,165,2.175,166,2.32,167,3.84,168,1.524,169,2.663,170,2.812,171,1.434,172,1.434,173,1.524,174,1.731,175,3.73]],["title/interfaces/EsPit.html",[111,0.805,176,1.89]],["body/interfaces/EsPit.html",[7,0.023,12,0.404,13,0.325,14,0.325,16,0.445,58,0.404,60,0.019,61,0.019,111,1.125,113,2.026,114,3.087,117,2.461,120,0.576,121,0.997,125,1.997,126,0.696,174,3.233,176,3.193,177,4.222,178,3.651,179,3.737,180,3.432,181,1.692,182,5.047,183,5.993]],["title/interfaces/EsQuery.html",[111,0.805,184,2.416]],["body/interfaces/EsQuery.html",[7,0.023,12,0.401,13,0.323,14,0.323,16,0.442,19,0.484,58,0.401,60,0.019,61,0.019,111,1.117,112,4.547,113,2.011,114,3.064,115,2.469,117,2.962,118,2.439,119,2.769,120,0.572,121,0.993,125,1.711,126,0.572,130,1.921,181,2.037,184,4.064,185,4.191,186,4.547,187,5.967,188,5.082,189,5.082,190,4.92,191,4.92]],["title/classes/EsQueryDto.html",[59,0.104,192,1.89]],["body/classes/EsQueryDto.html",[7,0.023,12,0.477,13,0.201,14,0.201,16,0.546,19,0.545,39,1.179,40,0.88,58,0.25,59,0.128,60,0.014,61,0.014,70,1.111,77,1.179,83,3.12,115,2.54,120,0.356,121,0.846,122,1.542,126,0.68,130,1.784,137,3.597,142,2.255,145,3.451,146,1.85,147,2.251,151,2.7,153,1.225,160,2.971,165,1.9,166,2.027,167,3.988,168,1.253,169,1.634,171,1.179,172,1.955,173,1.253,174,2.027,176,2.709,178,3.41,180,2.326,181,2.255,184,3.463,192,2.326,193,2.313,194,5.085,195,4.719,196,1.955,197,4.367,198,2.168,199,3.719,200,3.067,201,3.067,202,4.367,203,2.974,204,3.067,205,5.541,206,3.067,207,4.367,208,2.508,209,3.067,210,4.178,211,3.774,212,3.774,213,4.367,214,3.067,215,3.067,216,4.367,217,3.167,218,2.92,219,2.974,220,3.719,221,4.331,222,3.719,223,2.089,224,3.067,225,2.72,226,3.067,227,2.089,228,2.313,229,2.313,230,3.067,231,3.067]],["title/classes/EsResponseDto.html",[59,0.104,232,2.037]],["body/classes/EsResponseDto.html",[7,0.023,11,2.351,12,0.237,13,0.19,14,0.19,16,0.536,19,0.485,39,1.116,40,0.833,51,1.827,58,0.237,59,0.123,60,0.017,61,0.013,70,1.052,77,1.116,83,2.879,104,2.411,106,3.576,115,1.614,119,2.508,120,0.337,121,0.82,122,1.011,124,1.978,125,1.204,126,0.666,130,1.74,137,3.432,142,2.228,143,1.809,144,2.19,146,1.816,147,2.204,151,2.668,153,1.154,160,1.949,165,1.827,166,2.661,167,2.86,168,1.187,169,2.628,171,1.116,172,1.896,173,1.187,174,2.508,178,2.879,180,2.237,181,1.433,212,3.68,218,2.832,220,3.576,221,4.2,222,2.473,232,2.411,233,2.19,234,1.786,235,4.074,236,3.292,237,4.602,238,4.074,239,4.757,240,4.199,241,4.922,242,4.199,243,5.404,244,3.929,245,4.602,246,3.317,247,2.904,248,3.359,249,4.602,250,2.904,251,2.904,252,4.199,253,2.904,254,2.237,255,2.904,256,3.576,257,4.074,258,4.074,259,5.404,260,2.904,261,2.084,262,2.904,263,2.86,264,2.904,265,4.199,266,4.199,267,4.199,268,3.166,269,2.904,270,2.237,271,1.827,272,2.904,273,2.904,274,2.473,275,1.348,276,1.978,277,2.904,278,2.904,279,2.473,280,4.199,281,2.904,282,2.19,283,2.904,284,2.904]],["title/interfaces/EsResponseHits.html",[111,0.805,248,2.416]],["body/interfaces/EsResponseHits.html",[7,0.023,12,0.502,13,0.294,14,0.294,16,0.402,19,0.441,58,0.365,60,0.021,61,0.017,111,1.018,113,1.832,114,2.792,117,2.797,120,0.521,121,0.937,122,1.357,126,0.716,130,2.081,136,4.025,142,1.923,146,1.872,150,4.798,181,2.355,210,4.248,234,2.231,236,4.007,248,3.837,270,3.443,279,5.505,285,3.819,286,5.634,287,5.634,288,4.248,289,4.483,290,4.483]],["title/controllers/HealthController.html",[291,2.209,292,2.416]],["body/controllers/HealthController.html",[7,0.023,12,0.481,13,0.269,14,0.269,16,0.368,19,0.523,22,1.176,57,2.355,58,0.334,59,0.183,60,0.017,61,0.017,91,1.714,93,2.046,110,1.676,120,0.476,125,1.695,147,1.577,153,0.825,196,1.577,203,4.259,234,2.14,261,3.296,291,3.894,292,3.625,293,3.493,294,4.101,295,5.757,296,2.47,297,5.655,298,4.101,299,4.101,300,3.625,301,5.322,302,5.322,303,2.316,304,5.322,305,3.217,306,5.322,307,5.322,308,5.322,309,3.092,310,4.101,311,1.676,312,2.355,313,2.185,314,3.493,315,4.533]],["title/modules/HealthModule.html",[0,1.285,316,2.675]],["body/modules/HealthModule.html",[0,2.223,2,2.245,7,0.023,12,0.42,13,0.338,14,0.338,18,3.514,19,0.667,22,1.48,57,3.526,58,0.42,59,0.151,60,0.019,61,0.019,292,4.464,309,3.89,316,4.629,317,5.159,318,5.229,319,2.963,320,6.139,321,5.159]],["title/interfaces/HttpResponse.html",[111,0.805,322,2.209]],["body/interfaces/HttpResponse.html",[7,0.023,12,0.339,13,0.273,14,0.273,16,0.609,58,0.339,60,0.017,61,0.017,78,4.769,111,1.22,113,1.7,120,0.483,121,0.894,125,1.992,126,0.819,135,2.9,146,1.808,158,3.345,199,5.355,212,3.658,234,2.515,261,3.412,305,2.953,322,3.345,323,3.543,324,3.543,325,4.16,326,4.54,327,5.371,328,5.371,329,4.575,330,5.371,331,5.371,332,4.575,333,3.345,334,5.371]],["title/classes/HttpResponseException.html",[59,0.104,335,2.675]],["body/classes/HttpResponseException.html",[0,2.069,7,0.023,12,0.374,13,0.301,14,0.301,16,0.513,19,0.562,22,1.315,58,0.374,59,0.134,60,0.018,61,0.018,70,1.66,91,1.477,122,1.104,126,0.533,135,2.486,153,0.923,196,1.763,234,2.475,305,3.478,311,2.335,322,4.058,335,4.308,336,4.866,337,3.905,338,3.044,339,4.913,340,4.866,341,4.866,342,4.693,343,4.866,344,4.585,345,5.713,346,1.565,347,1.477,348,3.123,349,4.585,350,4.585,351,5.713]],["title/modules/HttpResponseModule.html",[0,1.285,65,2.209]],["body/modules/HttpResponseModule.html",[0,2.174,2,2.162,3,2.612,7,0.022,9,3.447,10,2.647,11,2.162,12,0.405,13,0.326,14,0.326,19,0.59,22,1.425,54,4.088,58,0.405,59,0.145,60,0.019,61,0.019,65,4.39,68,4.088,352,4.232,353,4.232,354,4.232,355,4.522,356,4.969,357,4.969,358,3.747]],["title/injectables/HttpResponseService.html",[355,2.209,359,1.285]],["body/injectables/HttpResponseService.html",[7,0.023,12,0.249,13,0.2,14,0.2,16,0.626,19,0.499,22,0.876,40,0.876,44,3.825,45,3.825,58,0.249,59,0.089,60,0.014,61,0.014,91,2.014,93,2.458,110,2.26,120,0.355,122,1.332,125,1.935,126,0.756,127,1.516,135,2.782,146,2.05,153,1.113,225,1.901,234,2.315,261,3.49,275,1.417,296,2.02,305,3.349,311,1.779,313,3.467,322,3.444,326,4.594,346,1.888,347,1.781,348,2.079,355,2.711,359,1.576,360,1.753,361,4.979,362,2.6,363,4.32,364,4.353,365,4.353,366,4.353,367,3.053,368,3.053,369,4.353,370,4.353,371,5.529,372,4.353,373,4.353,374,3.053,375,6.077,376,4.353,377,3.053,378,4.353,379,3.053,380,3.053,381,2.6,382,4.32,383,4.32,384,2.6,385,2.6,386,3.053,387,3.053,388,3.053,389,3.053,390,3.053]],["title/injectables/LoggerInterceptor.html",[31,2.416,359,1.285]],["body/injectables/LoggerInterceptor.html",[7,0.023,12,0.256,13,0.206,14,0.206,16,0.463,19,0.581,22,0.902,31,3.026,40,1.905,58,0.256,59,0.092,60,0.014,61,0.014,91,1.804,93,2.154,108,2.206,110,1.816,120,0.365,121,0.739,122,1.07,126,0.599,127,1.56,146,1.566,153,1.037,180,2.367,234,1.867,246,2.559,275,1.459,296,2.062,303,1.933,305,3.046,311,1.816,313,3.269,338,1.675,346,1.517,347,1.431,358,2.37,359,1.609,360,1.805,391,2.677,392,5.226,393,5.226,394,2.96,395,3.886,396,4.224,397,4.444,398,3.351,399,4.296,400,3.269,401,4.224,402,3.143,403,4.771,404,3.432,405,4.444,406,3.886,407,4.444,408,6.551,409,3.143,410,4.444,411,2.141,412,3.785,413,2.96,414,4.444,415,3.143,416,3.351,417,1.958,418,4.444,419,3.143,420,2.37,421,5.154,422,5.154,423,4.444,424,3.143,425,4.444,426,4.444,427,3.143,428,3.143,429,4.444,430,3.143,431,3.143,432,3.143,433,3.143,434,2.141,435,3.143,436,4.444,437,1.958,438,3.785,439,3.143,440,3.143,441,3.143]],["title/modules/LoggerModule.html",[0,1.285,66,2.209]],["body/modules/LoggerModule.html",[0,2.174,2,2.162,3,2.612,7,0.022,9,3.447,10,2.647,11,2.162,12,0.405,13,0.326,14,0.326,19,0.59,22,1.425,54,4.088,58,0.405,59,0.145,60,0.019,61,0.019,66,4.39,68,4.088,125,1.425,358,3.747,413,4.17,442,4.232,443,4.232,444,4.232,445,4.969]],["title/injectables/LoggerService.html",[359,1.285,413,2.037]],["body/injectables/LoggerService.html",[7,0.023,12,0.193,13,0.156,14,0.156,16,0.534,19,0.355,22,0.681,51,1.033,58,0.193,59,0.069,60,0.011,61,0.011,91,2.129,93,2.343,108,1.795,110,1.79,120,0.276,121,0.602,122,1.497,125,2.034,126,0.722,153,1.251,196,1.684,263,1.617,296,1.678,303,2.9,311,1.478,313,3.247,326,4.893,338,1.265,346,2.031,347,1.916,359,1.309,360,1.364,392,5.294,394,3.188,395,4.941,404,3.414,411,3.588,413,3.026,446,2.022,447,3.616,448,4.379,449,3.616,450,3.798,451,4.17,452,2.463,453,3.616,454,4.896,455,3.616,456,3.616,457,3.616,458,3.616,459,2.374,460,3.616,461,3.616,462,7.078,463,2.374,464,6.408,465,3.616,466,2.374,467,3.616,468,3.616,469,2.374,470,3.616,471,3.616,472,3.616,473,2.374,474,3.616,475,2.374,476,3.616,477,2.374,478,3.616,479,2.374,480,3.616,481,3.616,482,2.374,483,2.374,484,2.374,485,2.374,486,2.374,487,2.374,488,2.374,489,2.374,490,2.374,491,2.374,492,2.374,493,2.374,494,2.374,495,2.374,496,2.374]],["title/classes/PageDto.html",[59,0.104,497,2.037]],["body/classes/PageDto.html",[7,0.023,12,0.302,13,0.243,14,0.243,16,0.504,19,0.634,39,1.424,40,1.062,51,2.164,58,0.302,59,0.145,60,0.015,61,0.015,70,1.341,77,1.424,91,1.602,118,2.828,119,2.788,120,0.43,121,0.935,122,0.892,126,0.728,135,3.011,147,1.913,151,1.513,153,1.13,156,3.57,165,2.164,166,2.608,168,1.513,170,2.792,171,1.424,172,1.424,173,1.513,181,1.698,196,1.424,198,2.47,208,2.857,217,3.741,241,3.751,282,3.751,343,4.237,346,1.918,347,1.192,394,3.706,497,2.857,498,2.792,499,4.237,500,4.624,501,3.2,502,4.975,503,2.309,504,3.153,505,3.702,506,4.975,507,3.826,508,2.792,509,3.153,510,1.838,511,3.153,512,3.153,513,3.153,514,3.702,515,3.153,516,3.702]],["title/injectables/PageInterceptor.html",[359,1.285,517,2.209]],["body/injectables/PageInterceptor.html",[3,1.286,7,0.023,12,0.302,13,0.12,14,0.12,16,0.333,19,0.58,22,0.526,40,0.526,51,0.798,58,0.149,59,0.086,60,0.009,61,0.009,79,1.84,91,1.604,93,2.013,104,1.697,108,2.314,110,2.298,111,0.671,115,1.136,118,2.035,119,1.371,120,0.213,121,0.491,122,1.024,123,1.384,125,1.064,126,0.579,127,1.841,130,1.604,131,3.392,135,1.614,142,1.009,143,1.143,145,1.143,146,1.709,153,1.054,160,1.973,174,2.61,176,2.483,178,3.341,180,2.265,181,1.7,182,2.228,186,1.25,192,1.574,196,1.136,198,0.911,203,2.526,208,1.697,223,1.25,225,2.31,227,2.012,229,3.206,246,1.841,254,1.574,258,2.228,270,0.978,271,2.028,275,2.163,288,2.228,296,1.371,300,1.25,303,1.286,312,1.054,313,3.202,319,1.054,338,0.978,346,1.591,347,1.369,348,1.25,359,1.07,360,1.054,394,3.008,396,3.206,398,2.228,399,2.896,400,2.265,401,3.206,404,1.574,406,1.384,416,3.206,417,1.143,434,1.25,437,1.84,450,2.442,497,1.054,500,2.526,501,1.574,503,1.371,510,1.841,517,1.84,518,1.384,519,2.516,520,2.516,521,2.797,522,2.797,523,3.567,524,3.83,525,2.955,526,2.955,527,1.563,528,3.949,529,1.835,530,2.516,531,3.206,532,2.516,533,3.159,534,2.516,535,1.835,536,2.516,537,3.159,538,2.516,539,3.392,540,3.159,541,2.516,542,2.012,543,2.516,544,2.516,545,4.242,546,3.206,547,1.835,548,2.516,549,3.621,550,3.621,551,2.516,552,1.835,553,2.516,554,2.265,555,2.228,556,1.835,557,3.206,558,2.228,559,2.012,560,2.228,561,1.835,562,1.84,563,2.012,564,1.835,565,2.516,566,2.228,567,1.384,568,1.384,569,1.563,570,1.563,571,1.25,572,1.697,573,1.563,574,1.697,575,1.563,576,1.384,577,1.563,578,1.563,579,1.563,580,1.384,581,1.563,582,2.526,583,1.563,584,3.621,585,3.621,586,2.31,587,1.563,588,1.563,589,2.797,590,1.563,591,1.563,592,1.563,593,1.563,594,1.563,595,1.25,596,1.143,597,1.563,598,1.384,599,1.384,600,1.563,601,0.911,602,1.563,603,1.563,604,1.563,605,1.563,606,1.563,607,1.563,608,1.563,609,1.563,610,2.228,611,1.563,612,1.563,613,1.384,614,1.563,615,1.563,616,1.563,617,1.563,618,1.563,619,2.012,620,2.516,621,2.516,622,1.563,623,1.563,624,1.563,625,2.516,626,1.563,627,1.563,628,1.143,629,1.563,630,1.563,631,2.516,632,1.143,633,1.143,634,1.143,635,1.563,636,1.563,637,1.563,638,1.563,639,1.563,640,2.228,641,2.228,642,2.228,643,1.563,644,2.228,645,2.228,646,2.228,647,2.228,648,1.563,649,1.563,650,2.228,651,2.228,652,1.563,653,1.25,654,1.384,655,1.563]],["title/interfaces/PageMeta.html",[111,0.805,501,1.89]],["body/interfaces/PageMeta.html",[7,0.023,12,0.331,13,0.266,14,0.266,16,0.364,19,0.399,58,0.331,60,0.019,61,0.016,111,0.922,113,1.659,117,2.625,118,2.889,119,2.454,120,0.472,121,0.879,126,0.769,130,1.703,146,2.159,211,4.242,254,3.528,270,3.528,400,2.817,501,2.817,510,3.462,580,3.061,582,3.601,628,3.879,632,3.879,633,3.879,634,3.879,656,3.458,657,3.458,658,5.305,659,4.697,660,6.229,661,4.06]],["title/classes/PageMetaDto.html",[59,0.104,507,2.416]],["body/classes/PageMetaDto.html",[7,0.023,12,0.237,13,0.191,14,0.191,16,0.553,19,0.564,39,1.118,40,0.834,51,2.353,58,0.237,59,0.123,60,0.019,61,0.013,70,1.053,77,1.118,118,2.886,120,0.338,121,0.821,126,0.694,130,1.741,146,2.114,147,2.298,151,2.732,153,1.203,156,1.549,160,1.35,165,1.829,166,2.861,168,1.188,170,2.193,171,1.118,172,1.118,173,1.188,208,2.414,210,4.077,211,4.298,217,2.618,236,3.105,254,2.881,256,5.375,270,3.362,271,2.353,276,2.863,338,2.239,499,3.58,501,2.63,504,2.477,507,2.863,508,4.325,509,2.477,510,3.283,511,2.477,512,2.477,513,2.477,595,4.552,596,3.931,610,2.193,628,3.368,632,3.368,633,3.368,634,3.368,658,5.375,662,4.648,663,2.193,664,5.978,665,4.077,666,2.908,667,5.407,668,2.908,669,2.908,670,5.407,671,2.908,672,4.203,673,2.908,674,3.683,675,4.203,676,2.908,677,4.203]],["title/classes/PaperDto.html",[59,0.104,156,1.89]],["body/classes/PaperDto.html",[7,0.023,12,0.217,13,0.175,14,0.175,16,0.553,19,0.387,39,2.418,40,0.764,58,0.217,59,0.115,60,0.012,61,0.012,70,0.964,77,1.024,83,1.419,117,2.329,120,0.309,121,0.78,125,1.92,126,0.697,139,2.684,140,3.356,141,2.971,142,1.345,147,2.306,151,2.736,153,1.207,156,2.099,159,4.842,160,1.829,165,1.715,166,2.858,168,1.088,169,3.195,171,1.024,172,1.024,173,1.088,174,2.858,188,4.416,217,2.922,218,1.529,219,1.813,268,4.173,332,4.416,452,2.684,508,2.008,554,2.762,678,2.008,679,5.244,680,4.643,681,4.643,682,4.643,683,5.244,684,3.941,685,2.663,686,3.91,687,3.941,688,5.185,689,3.941,690,2.663,691,5.185,692,5.185,693,3.941,694,3.941,695,3.941,696,3.941,697,3.941,698,2.663,699,5.185,700,4.416,701,3.91,702,3.356,703,5.185,704,5.185,705,5.185,706,3.941,707,3.356,708,3.941,709,3.356,710,3.356,711,3.941,712,3.941,713,3.941,714,3.941,715,3.941,716,3.941,717,3.941,718,3.941,719,2.663,720,5.185,721,5.185,722,5.185,723,5.185,724,2.663,725,3.941,726,3.356,727,3.941,728,3.941,729,3.941,730,2.663,731,3.941,732,2.663,733,2.663,734,2.663,735,2.663,736,2.663,737,2.663,738,2.663,739,2.663,740,2.663,741,2.663,742,2.663]],["title/controllers/PapersController.html",[291,2.209,743,2.416]],["body/controllers/PapersController.html",[7,0.023,11,1.876,12,0.245,13,0.197,14,0.197,16,0.559,19,0.612,22,0.864,57,1.73,58,0.245,59,0.088,60,0.013,61,0.017,91,1.873,93,2.45,107,3.672,110,2.246,115,1.936,118,1.762,120,0.35,122,1.038,125,1.444,126,0.703,130,0.97,136,2.685,142,1.876,147,1.657,153,0.867,156,2.297,159,3.743,165,1.311,168,1.231,181,2.065,232,2.476,234,2.307,246,3.267,257,4.144,261,2.14,271,1.311,282,4.89,291,3.423,296,2.001,303,2.391,312,1.73,342,2.271,346,1.472,347,1.388,400,1.605,403,4.681,404,2.297,497,2.476,517,1.876,572,3.156,586,2.685,601,2.499,674,2.936,680,3.25,681,3.25,743,2.936,744,2.565,745,4.311,746,4.311,747,4.311,748,3.012,749,4.311,750,4.681,751,3.25,752,3.012,753,4.681,754,4.681,755,3.012,756,3.012,757,3.012,758,4.311,759,3.012,760,4.953,761,3.012,762,3.012,763,3.012,764,3.012,765,4.311,766,3.672,767,2.565,768,3.012,769,4.311,770,3.012,771,3.012,772,2.565,773,3.012,774,2.565,775,3.012,776,3.135,777,1.73,778,2.565,779,5.034,780,5.034,781,5.034,782,3.012,783,3.012,784,3.012,785,3.012,786,2.051,787,3.012,788,3.012,789,4.311,790,3.012,791,4.311,792,4.311,793,3.012,794,3.012,795,3.012,796,3.012,797,3.012,798,3.012,799,3.012]],["title/classes/PrevSearch.html",[59,0.104,523,2.416]],["body/classes/PrevSearch.html",[3,0.839,7,0.023,12,0.25,13,0.126,14,0.126,16,0.173,19,0.588,22,0.553,40,0.553,51,0.839,58,0.157,59,0.09,60,0.01,61,0.01,70,0.698,79,1.201,91,1.64,93,2.132,104,1.765,108,2.372,110,2.336,111,0.438,115,1.182,118,2.183,119,0.895,120,0.224,121,0.511,122,0.923,123,1.454,125,0.553,126,0.621,130,1.841,131,2.611,135,1.903,142,0.658,143,1.201,145,1.914,146,1.781,153,1.204,160,2.03,174,2.218,176,2.955,178,3.295,180,1.638,181,1.738,182,1.454,186,1.313,192,1.638,196,1.474,198,1.526,203,2.093,208,1.107,223,1.313,225,2.387,227,2.093,229,3.298,246,1.526,254,2.042,258,3.298,270,1.027,271,1.903,275,0.895,288,1.454,296,1.427,300,2.093,303,1.337,312,1.107,313,3.245,319,1.107,338,1.027,346,1.631,347,1.234,348,1.313,359,1.113,394,2.202,396,1.454,398,1.454,399,2.093,400,1.638,401,2.318,404,1.027,406,1.454,411,2.611,416,2.89,417,1.201,434,1.313,437,1.201,450,2.512,497,1.107,500,2.611,501,1.638,503,0.895,510,1.903,517,1.201,518,1.454,519,1.642,520,1.642,521,1.454,522,1.454,523,3.254,524,2.611,528,3.298,530,1.642,531,2.318,532,1.642,533,3.265,534,1.642,536,1.642,537,2.618,538,1.642,539,2.611,540,3.265,541,1.642,542,1.313,543,1.642,544,1.642,545,3.265,546,2.318,548,1.642,549,2.618,550,2.618,551,1.642,553,1.642,554,2.042,555,1.454,557,2.318,558,1.454,559,1.313,560,1.454,562,1.201,563,1.313,565,1.642,566,1.454,567,1.454,568,1.454,569,1.642,570,1.642,571,1.313,572,1.765,573,1.642,574,1.765,575,1.642,576,1.454,577,1.642,578,1.642,579,1.642,580,1.454,581,1.642,582,3.468,583,2.618,584,3.725,585,3.725,586,2.387,587,1.642,588,3.265,589,4.028,590,1.642,591,3.265,592,3.265,593,1.642,594,3.265,595,2.093,596,1.914,597,2.618,598,2.318,599,2.318,600,3.725,601,0.957,602,1.642,603,1.642,604,1.642,605,1.642,606,1.642,607,1.642,608,1.642,609,1.642,610,2.318,611,1.642,612,1.642,613,1.454,614,1.642,615,1.642,616,1.642,617,1.642,618,1.642,619,2.093,620,2.618,621,2.618,622,1.642,623,1.642,624,1.642,625,2.618,626,1.642,627,1.642,628,1.201,629,1.642,630,1.642,631,2.618,632,1.201,633,1.201,634,1.201,635,1.642,636,1.642,637,1.642,638,1.642,639,1.642,640,2.318,641,2.318,642,2.318,643,1.642,644,2.318,645,2.318,646,2.318,647,2.318,648,1.642,649,1.642,650,2.318,651,2.318,652,1.642,653,1.313,654,1.454,655,1.642,800,3.074,801,1.928,802,1.928,803,1.928,804,1.928,805,1.928,806,1.928,807,1.928,808,1.928,809,1.928,810,1.928,811,1.928,812,1.928,813,1.928,814,1.928,815,1.928,816,1.928,817,1.928]],["title/classes/RequestDto.html",[59,0.104,572,2.037]],["body/classes/RequestDto.html",[7,0.023,12,0.292,13,0.235,14,0.235,16,0.557,19,0.583,39,1.38,40,1.03,58,0.292,59,0.142,60,0.015,61,0.015,70,1.3,77,1.38,83,2.596,91,1.569,115,2.753,120,0.417,121,0.92,122,1.332,126,0.72,130,1.156,142,2.183,147,1.873,151,2.424,153,1.113,158,3.035,160,2.262,165,2.12,166,2.262,167,3.318,168,1.467,169,2.596,171,1.38,172,1.38,173,1.467,181,2.329,192,3.545,196,1.38,198,2.419,208,2.798,218,2.798,228,2.707,241,3.674,246,2.945,346,2.303,347,1.156,503,2.262,571,2.445,572,2.798,574,3.822,576,2.707,674,3.318,818,2.707,819,5.087,820,4.15,821,4.872,822,3.59,823,4.15,824,4.872,825,4.872,826,3.59,827,3.59,828,2.707,829,3.59]],["title/guards/RolesGuard.html",[830,2.416,831,2.675]],["body/guards/RolesGuard.html",[7,0.023,12,0.316,13,0.254,14,0.254,16,0.516,19,0.602,22,1.113,24,2.926,40,1.472,51,2.502,58,0.316,59,0.113,60,0.016,61,0.016,91,1.653,93,2.353,110,2.098,120,0.451,122,1.236,126,0.596,147,1.492,153,1.033,158,3.197,171,1.973,196,1.492,254,2.735,296,2.382,300,3.496,311,2.098,312,2.229,338,2.067,346,1.752,347,1.653,359,1.859,385,3.305,399,4.168,404,3.261,434,2.643,830,4.612,831,3.87,832,3.88,833,3.305,834,3.917,835,6.12,836,3.88,837,6.853,838,3.88,839,5.133,840,5.767,841,5.133,842,3.88,843,4.799,844,4.371,845,3.496,846,4.371,847,2.926,848,5.133,849,3.88,850,3.88,851,3.88,852,3.88,853,3.88]],["title/interfaces/SearchInfo.html",[111,0.805,854,2.675]],["body/interfaces/SearchInfo.html",[7,0.023,12,0.379,13,0.305,14,0.305,16,0.417,19,0.457,58,0.379,60,0.018,61,0.018,111,1.055,113,1.9,117,2.861,119,2.675,120,0.54,121,0.959,126,0.669,130,2.208,142,1.967,176,3.488,178,3.654,179,4.345,223,3.166,225,2.895,244,3.589,400,3.07,582,3.925,589,5.171,659,4.345,828,3.505,854,4.345,855,3.959,856,3.959,857,5.762,858,4.908,859,5.762]],["title/modules/SearchModule.html",[0,1.285,8,2.209]],["body/modules/SearchModule.html",[0,2.377,2,2.037,3,2.518,7,0.023,8,4.336,9,3.324,10,2.494,11,2.037,12,0.381,13,0.307,14,0.307,16,0.42,18,3.188,19,0.645,22,1.342,54,3.941,57,3.324,58,0.381,59,0.137,60,0.018,61,0.018,68,3.941,130,1.864,318,4.929,319,2.688,601,3.578,743,4.279,774,3.987,860,3.987,861,3.987,862,3.987,863,4.681,864,4.681]],["title/classes/SearchQueryDto.html",[59,0.104,574,2.037]],["body/classes/SearchQueryDto.html",[7,0.023,12,0.264,13,0.212,14,0.212,16,0.536,19,0.446,39,1.245,40,0.929,58,0.264,59,0.133,60,0.014,61,0.014,70,1.173,77,1.245,83,2.791,91,1.828,115,2.597,118,2.786,120,0.376,121,0.871,122,0.78,125,1.955,126,0.694,129,3.422,130,1.462,142,1.549,146,2.125,147,2.183,151,2.653,153,1.203,165,1.975,166,2.774,168,1.324,169,2.791,171,1.245,172,2.014,173,1.324,181,1.549,196,1.245,198,2.253,211,3.866,218,3.009,219,3.568,227,3.091,228,2.442,234,1.644,268,3.95,276,3.091,346,1.789,347,1.043,503,2.107,510,3.354,574,2.607,619,4.601,777,3.558,820,3.865,865,2.442,866,4.538,867,3.239,868,3.239,869,5.677,870,5.677,871,3.239,872,3.865,873,2.759,874,3.239,875,3.422,876,3.239,877,4.538,878,4.538,879,3.239,880,3.422,881,2.759,882,3.239,883,3.239,884,3.239]],["title/classes/SearchResultDto.html",[59,0.104,776,2.209]],["body/classes/SearchResultDto.html",[7,0.023,12,0.307,13,0.247,14,0.247,16,0.508,19,0.557,39,1.447,40,1.08,58,0.307,59,0.147,60,0.016,61,0.016,70,1.363,77,1.447,91,1.62,104,2.162,120,0.437,121,0.942,122,0.907,126,0.658,135,3.059,142,2.064,146,1.915,147,1.934,151,2.471,153,1.14,160,1.747,165,2.189,166,2.63,168,1.539,169,3.018,171,1.447,172,2.178,173,1.539,181,1.717,196,1.447,198,2.497,217,3.133,218,3.254,219,3.426,232,3.724,234,1.822,235,2.839,236,2.162,238,2.839,239,2.839,261,3.128,271,1.638,333,4.123,346,1.934,347,1.212,438,4.825,503,2.335,515,3.206,674,4.118,753,4.284,776,3.133,777,3.473,828,2.839,873,3.206,885,2.839,886,5.03,887,5.03,888,3.765,889,3.765,890,3.765,891,3.765]],["title/injectables/SearchService.html",[359,1.285,601,1.761]],["body/injectables/SearchService.html",[7,0.023,11,1.791,12,0.23,13,0.185,14,0.185,16,0.254,19,0.582,22,0.811,58,0.23,59,0.083,60,0.013,61,0.013,91,1.564,93,2.052,108,2.411,110,1.683,115,2.052,120,0.328,121,0.685,122,1.17,125,1.627,126,0.659,127,2.044,130,1.326,132,1.925,135,1.791,137,1.623,142,2.021,146,1.251,153,1.141,159,2.804,172,1.087,174,2.254,181,1.936,186,1.925,192,3.154,196,1.087,198,2.044,232,2.789,236,3.064,249,3.507,257,3.105,271,1.23,275,1.911,296,1.911,303,2.576,311,2.181,312,1.623,313,3.154,319,1.623,342,2.131,346,1.658,347,1.564,359,1.491,360,1.623,394,3.51,404,2.194,417,1.76,521,3.662,522,3.662,524,4.032,527,2.407,528,4.815,539,3.634,554,2.194,555,3.105,557,3.105,558,3.105,559,2.804,560,3.105,562,2.564,563,2.804,567,2.131,568,2.131,571,1.925,601,2.044,640,3.105,641,3.105,642,3.105,644,3.105,645,3.105,646,3.105,647,3.105,650,3.105,651,3.105,653,2.804,654,3.105,750,4.545,760,4.136,767,2.407,772,3.507,776,1.76,777,1.623,778,2.407,819,3.105,880,3.105,892,2.407,893,4.117,894,4.117,895,4.117,896,2.827,897,4.117,898,4.117,899,4.117,900,2.827,901,4.117,902,2.804,903,4.117,904,2.827,905,2.827,906,2.827,907,2.827,908,2.407,909,4.117,910,2.827,911,2.827,912,4.117,913,4.117,914,4.117,915,4.117,916,4.117,917,4.117]],["title/interfaces/ValidationPipeOptions.html",[111,0.805,918,2.675]],["body/interfaces/ValidationPipeOptions.html",[7,0.023,12,0.369,13,0.297,14,0.297,16,0.407,19,0.446,58,0.369,59,0.132,60,0.018,61,0.018,72,4.278,77,1.743,95,3.533,101,3.861,111,1.029,113,1.853,120,0.527,121,0.944,122,1.642,126,0.719,254,3.631,303,2.468,339,4.278,341,4.832,918,4.278,919,3.861,920,3.864,921,5.673,922,5.673,923,6.192,924,6.489,925,6.489,926,6.489,927,5.673,928,5.673,929,5.673,930,5.673,931,5.673]],["title/interfaces/VirtualBankOptions.html",[111,0.805,932,2.209]],["body/interfaces/VirtualBankOptions.html",[7,0.023,12,0.325,13,0.262,14,0.262,16,0.359,19,0.393,27,3.634,40,1.146,58,0.475,60,0.016,61,0.016,72,3.013,78,4.49,79,3.259,81,4.49,82,4.456,84,4.49,86,4.49,87,4.49,93,1.536,95,2.488,111,0.907,113,1.633,120,0.464,121,0.87,126,0.678,146,2.094,153,1.053,932,4.106,933,2.721,934,5.232,935,4.399,936,4.456,937,5.232,938,3.945,939,5.232,940,5.232,941,6.19,942,5.232,943,5.232,944,5.232,945,5.232,946,5.232,947,3.945,948,3.995,949,4.456,950,3.403,951,3.995,952,3.403,953,3.403,954,3.403]],["title/coverage.html",[955,4.116]],["body/coverage.html",[7,0.023,14,0.19,15,2.186,27,1.806,29,2.186,31,1.975,41,2.186,59,0.195,60,0.013,61,0.013,69,2.186,71,3.163,95,3.928,108,1.439,111,1.459,112,1.975,114,3.363,115,1.115,116,2.47,126,0.337,136,1.806,137,3.43,138,3.163,156,1.545,173,2.626,176,1.545,177,2.47,184,1.975,185,2.47,192,1.545,193,3.163,232,1.665,233,3.163,234,1.05,248,1.975,285,2.47,291,2.612,292,1.975,293,2.47,322,1.806,323,2.47,324,2.47,335,2.186,336,2.47,337,2.47,355,1.806,359,2.075,361,2.47,362,2.47,391,2.47,413,1.665,446,2.47,450,1.665,497,1.665,498,3.163,501,1.545,507,1.975,517,1.806,518,3.163,523,1.975,572,1.665,574,1.665,601,1.439,656,2.47,657,2.47,662,3.163,663,3.163,678,3.163,743,1.975,744,2.47,776,1.806,777,3.101,818,3.163,830,1.975,831,2.186,833,2.47,834,1.975,847,2.186,854,2.186,855,2.47,856,2.47,865,3.163,885,3.163,892,2.47,918,2.186,919,2.47,932,1.806,933,2.857,947,2.186,955,2.47,956,2.186,957,2.9,958,2.9,959,7.35,960,4.928,961,5.4,962,3.572,963,6.842,964,2.47,965,7.101,966,3.572,967,6.426,968,4.928,969,5.729,970,4.194,971,2.47,972,4.88,973,2.47,974,2.47,975,2.47,976,2.47,977,2.47,978,2.9,979,2.9,980,2.47,981,2.47,982,2.9,983,2.47]],["title/dependencies.html",[3,1.855,984,2.237]],["body/dependencies.html",[3,2.027,7,0.023,22,1.336,24,3.513,26,3.968,36,3.968,37,3.968,52,3.968,59,0.169,60,0.018,61,0.018,75,3.968,77,1.791,119,2.163,168,1.904,309,3.513,319,2.676,417,2.902,420,3.513,524,3.173,985,4.659,986,4.659,987,4.659,988,4.659,989,4.659,990,4.659,991,4.659,992,4.659,993,6.269,994,4.659,995,4.659,996,4.659,997,4.659,998,4.659,999,4.659,1000,4.659,1001,4.659,1002,4.659,1003,4.659,1004,4.659,1005,5.771,1006,4.659,1007,5.771,1008,4.659,1009,4.659,1010,4.659,1011,4.659,1012,4.659,1013,4.659,1014,3.968,1015,4.659,1016,4.659,1017,4.659,1018,4.659,1019,4.659,1020,4.659]],["title/miscellaneous/enumerations.html",[1021,1.704,1022,3.632]],["body/miscellaneous/enumerations.html",[7,0.023,10,1.321,17,0.851,60,0.008,61,0.01,79,0.923,81,1.009,84,1.009,86,1.009,87,1.009,104,0.851,108,1.231,110,1.306,118,0.606,120,0.172,124,1.009,126,0.371,128,3.541,131,1.689,132,1.009,139,1.689,141,1.118,142,0.506,153,0.499,158,0.923,171,1.229,180,1.703,212,1.689,234,1.628,244,1.991,245,2.722,246,3.481,261,2.485,263,1.009,271,0.645,274,3.541,275,3.397,276,1.009,303,1.391,305,1.855,311,1.306,314,2.722,326,1.689,333,3.435,381,2.112,382,2.112,383,2.112,384,2.112,393,2.722,400,0.79,437,2.59,450,1.424,452,1.009,503,0.688,510,1.587,531,1.118,546,1.87,554,2.395,559,1.009,562,4.248,566,2.41,586,1.544,595,1.689,596,2.327,599,1.87,613,1.87,653,1.009,659,1.87,701,1.118,702,1.262,766,4.43,786,1.689,823,1.262,834,1.689,843,3.599,845,1.689,872,2.112,875,1.118,880,2.41,902,1.689,908,1.262,932,1.991,933,1.009,935,1.118,938,1.118,949,1.262,950,2.112,1014,3.829,1021,0.851,1022,1.262,1023,1.262,1024,1.262,1025,2.479,1026,1.482,1027,1.482,1028,1.482,1029,1.482,1030,1.262,1031,2.479,1032,1.482,1033,1.482,1034,1.482,1035,1.482,1036,1.262,1037,1.482,1038,1.262,1039,1.482,1040,1.482,1041,1.482,1042,2.479,1043,1.482,1044,1.482,1045,1.482,1046,1.482,1047,3.736,1048,2.479,1049,2.479,1050,3.196,1051,1.482,1052,1.482,1053,1.482,1054,1.482,1055,4.496,1056,3.196,1057,3.196,1058,1.482,1059,4.496,1060,1.482,1061,1.482,1062,1.482,1063,4.158,1064,2.479,1065,1.482,1066,3.182,1067,3.736,1068,1.482,1069,5.947,1070,2.479,1071,2.479,1072,4.43,1073,1.482,1074,1.689,1075,1.262,1076,1.482,1077,1.262,1078,1.262,1079,1.262,1080,1.262,1081,2.479,1082,1.482,1083,1.262,1084,1.482,1085,2.479,1086,3.196,1087,1.482,1088,1.482,1089,2.722,1090,2.479,1091,2.479,1092,2.479,1093,1.482,1094,1.482,1095,2.479,1096,1.482,1097,1.482,1098,2.112,1099,1.262,1100,1.482,1101,1.262,1102,1.482,1103,3.196,1104,2.479,1105,1.482,1106,2.479,1107,5.37,1108,3.196,1109,1.482,1110,1.87,1111,1.482,1112,4.496,1113,2.479,1114,2.479,1115,2.722,1116,2.41,1117,2.479,1118,2.479,1119,2.479,1120,1.482,1121,2.112,1122,2.112,1123,1.482,1124,2.479,1125,2.479,1126,1.482,1127,2.479,1128,2.479,1129,3.196,1130,1.482,1131,2.112,1132,3.736,1133,1.482,1134,2.479,1135,2.479,1136,1.482,1137,3.196,1138,3.736,1139,3.196,1140,2.479,1141,1.482,1142,2.479,1143,1.482,1144,2.479,1145,2.479,1146,1.482,1147,1.482,1148,1.262,1149,1.482,1150,2.479,1151,1.482,1152,2.479,1153,2.479,1154,1.482,1155,1.482,1156,1.482,1157,1.482,1158,1.482,1159,4.158,1160,2.479,1161,1.482,1162,1.262,1163,1.482,1164,1.482,1165,3.736,1166,1.118,1167,3.196,1168,2.479,1169,1.482,1170,1.482,1171,2.479,1172,2.479,1173,1.262,1174,2.479,1175,2.479,1176,2.479,1177,1.482,1178,1.482,1179,2.479,1180,1.482,1181,2.479,1182,1.482,1183,2.479,1184,2.479,1185,2.479,1186,1.262,1187,3.736,1188,1.482,1189,1.482,1190,1.482,1191,1.482,1192,1.482,1193,1.482,1194,1.482,1195,1.262,1196,2.479,1197,2.479,1198,1.482,1199,2.479,1200,1.482,1201,1.482,1202,1.482,1203,2.479,1204,1.482,1205,1.482,1206,1.482,1207,1.482,1208,1.482,1209,1.482,1210,1.482,1211,1.482,1212,1.482,1213,1.482,1214,1.482,1215,1.262,1216,1.482,1217,2.479,1218,1.482,1219,2.479,1220,1.482,1221,2.479,1222,1.87,1223,1.482,1224,1.482,1225,2.112,1226,2.479,1227,1.482,1228,1.482,1229,1.482,1230,2.722,1231,2.479,1232,1.262,1233,1.482,1234,2.479,1235,1.482,1236,2.479,1237,3.196,1238,1.482,1239,2.479,1240,1.482,1241,2.479,1242,1.482,1243,1.482,1244,2.479,1245,1.482,1246,1.482,1247,1.482,1248,1.482,1249,1.482,1250,2.479,1251,2.41,1252,1.482,1253,3.182,1254,2.479,1255,2.112,1256,3.736,1257,1.262,1258,1.482,1259,2.479,1260,1.482,1261,2.479,1262,2.479,1263,1.482,1264,1.482,1265,2.479,1266,1.482,1267,1.482,1268,2.479,1269,1.482,1270,1.482,1271,2.479,1272,1.482,1273,1.482,1274,1.482,1275,1.482,1276,2.479,1277,1.482,1278,1.482,1279,1.482,1280,1.262,1281,1.482,1282,1.482,1283,1.482,1284,1.482,1285,1.482,1286,1.118,1287,1.482,1288,2.479,1289,1.482,1290,1.482,1291,1.482,1292,1.482,1293,1.482,1294,1.482,1295,1.482,1296,1.482,1297,1.482,1298,2.722,1299,3.196,1300,3.196,1301,2.479,1302,2.479,1303,1.482,1304,1.118,1305,1.482,1306,1.482,1307,1.482,1308,2.479,1309,2.479]],["title/miscellaneous/functions.html",[1021,1.704,1310,3.632]],["body/miscellaneous/functions.html",[7,0.022,16,0.587,17,2.229,29,3.87,60,0.016,61,0.016,71,2.926,89,4.898,90,3.87,92,3.305,93,2.353,96,3.305,97,4.371,120,0.451,122,1.575,125,1.472,126,0.76,127,1.926,146,2.058,172,2.514,179,2.926,234,1.405,246,1.926,275,1.801,303,2.902,305,2.855,311,2.673,339,3.87,346,2.233,347,2.106,395,5.167,411,2.643,539,3.496,700,3.305,920,2.643,947,4.337,971,3.305,972,3.305,973,4.371,974,4.371,975,4.371,976,4.371,977,4.371,980,3.305,981,4.898,1021,2.229,1230,3.305,1304,2.926,1310,3.305,1311,3.88,1312,3.88,1313,6.365,1314,3.88,1315,3.88,1316,3.88,1317,3.88,1318,3.88,1319,5.133,1320,3.88,1321,3.88,1322,3.88,1323,3.88,1324,3.88,1325,3.88,1326,3.305,1327,3.88,1328,5.133,1329,5.133,1330,3.88,1331,3.88,1332,5.133,1333,5.133,1334,3.88,1335,3.305,1336,3.88]],["title/index.html",[120,0.345,1337,2.527,1338,2.527]],["body/index.html",[7,0.021,13,0.29,17,3.692,39,1.973,60,0.014,61,0.014,90,3.332,127,1.548,151,1.275,244,1.943,295,3.764,297,3.764,311,2.098,315,3.764,329,3.764,333,3.812,363,3.764,451,2.657,503,1.448,542,2.124,563,3.01,586,1.943,665,4.745,686,2.352,751,2.352,754,2.657,843,4.21,845,3.496,902,2.124,935,3.332,956,4.444,983,2.657,984,2.352,1038,4.371,1066,4.371,1074,3.496,1077,2.657,1083,2.657,1110,2.352,1116,3.87,1121,2.657,1222,2.352,1286,2.352,1335,2.657,1339,4.419,1340,5.893,1341,3.332,1342,6.12,1343,4.419,1344,3.119,1345,3.119,1346,6.12,1347,5.132,1348,4.419,1349,3.119,1350,4.419,1351,5.132,1352,4.419,1353,4.419,1354,4.419,1355,3.119,1356,3.119,1357,3.764,1358,3.119,1359,3.119,1360,3.119,1361,3.119,1362,3.119,1363,4.419,1364,3.119,1365,3.119,1366,4.419,1367,4.419,1368,3.119,1369,3.119,1370,3.119,1371,3.119,1372,3.119,1373,3.119,1374,3.119,1375,3.119,1376,2.352,1377,5.583,1378,3.119,1379,3.119,1380,3.119,1381,4.419,1382,4.419,1383,3.119,1384,5.132,1385,6.12,1386,5.132,1387,6.12,1388,3.119,1389,3.119,1390,3.119,1391,3.119,1392,3.119,1393,3.119,1394,3.119,1395,3.119,1396,3.119,1397,3.119,1398,4.419,1399,4.419,1400,4.419,1401,4.419,1402,4.419,1403,3.119,1404,3.119,1405,3.119,1406,2.657,1407,3.119,1408,3.119,1409,4.419,1410,4.419,1411,3.119,1412,3.119,1413,3.119,1414,3.119,1415,3.119,1416,3.119,1417,3.119,1418,3.119,1419,3.119,1420,5.583,1421,4.419,1422,3.119,1423,3.119,1424,6.12,1425,3.119,1426,3.119,1427,3.119,1428,2.657,1429,3.119,1430,3.119,1431,2.657,1432,3.119,1433,3.119,1434,3.119,1435,3.119,1436,3.119,1437,2.657,1438,3.119,1439,3.119,1440,3.119,1441,3.119,1442,3.119,1443,4.419,1444,5.132,1445,2.352,1446,3.119,1447,3.119,1448,3.119,1449,3.119,1450,3.119,1451,3.119,1452,3.119,1453,3.119,1454,3.119,1455,3.119,1456,3.119,1457,3.119,1458,3.119,1459,3.119,1460,3.119,1461,3.119,1462,3.119,1463,2.657,1464,3.119,1465,3.119,1466,2.657,1467,3.119,1468,3.119]],["title/license.html",[1337,2.527,1338,2.527,1469,2.237]],["body/license.html",[7,0.011,11,0.703,13,0.38,14,0.34,16,0.145,19,0.159,27,1.007,55,1.377,59,0.047,60,0.008,61,0.008,81,2.685,113,0.661,118,0.661,124,1.101,129,1.219,132,1.101,134,2.269,139,1.101,151,0.661,153,0.325,181,1.602,189,5.028,271,0.703,311,0.661,333,2.117,340,1.377,347,1.095,412,1.377,420,2.009,452,1.101,503,2.024,542,1.101,554,0.861,596,1.007,598,2.973,665,2.563,682,1.219,686,1.219,701,2.973,707,1.377,709,1.377,710,5.357,726,1.377,751,1.219,786,2.315,844,1.377,845,1.101,846,1.377,858,1.377,875,2.009,902,1.101,936,1.377,938,1.219,956,2.563,1036,1.377,1072,4.715,1074,1.101,1075,1.377,1078,2.269,1079,2.269,1080,2.895,1089,1.377,1098,1.377,1101,1.377,1110,4.174,1115,4.578,1116,1.219,1122,1.377,1131,1.377,1148,1.377,1162,4.417,1166,1.219,1173,3.714,1186,2.269,1195,2.895,1215,3.358,1222,2.009,1225,1.377,1232,1.377,1251,1.219,1253,3.358,1255,1.377,1257,1.377,1280,2.895,1286,1.219,1298,1.377,1326,1.377,1357,2.269,1376,1.219,1406,1.377,1428,2.895,1431,2.269,1437,1.377,1445,1.219,1463,1.377,1466,2.269,1469,5.155,1470,3.358,1471,3.399,1472,1.616,1473,1.616,1474,1.616,1475,5.375,1476,3.942,1477,4.361,1478,1.616,1479,6.082,1480,5.536,1481,1.616,1482,1.377,1483,5.536,1484,5.903,1485,4.693,1486,2.664,1487,1.616,1488,4.361,1489,1.616,1490,1.616,1491,3.942,1492,2.664,1493,1.616,1494,3.399,1495,2.664,1496,2.664,1497,1.616,1498,1.616,1499,6.289,1500,2.664,1501,4.693,1502,1.616,1503,2.664,1504,1.616,1505,1.616,1506,1.616,1507,1.616,1508,1.616,1509,1.616,1510,1.616,1511,3.399,1512,1.616,1513,3.399,1514,2.664,1515,5.903,1516,1.616,1517,4.693,1518,5.375,1519,3.942,1520,1.616,1521,1.616,1522,1.616,1523,1.616,1524,1.616,1525,2.664,1526,1.616,1527,1.616,1528,6.837,1529,3.399,1530,2.664,1531,1.616,1532,5.375,1533,1.616,1534,2.664,1535,6.346,1536,1.616,1537,1.616,1538,1.616,1539,1.616,1540,1.616,1541,1.616,1542,2.664,1543,2.664,1544,1.616,1545,1.616,1546,1.616,1547,1.616,1548,1.616,1549,3.942,1550,4.361,1551,1.616,1552,2.664,1553,3.942,1554,2.664,1555,1.616,1556,4.361,1557,2.664,1558,1.616,1559,1.616,1560,3.399,1561,1.616,1562,1.616,1563,1.616,1564,2.664,1565,1.616,1566,1.616,1567,1.616,1568,3.399,1569,1.616,1570,1.616,1571,3.399,1572,1.616,1573,1.616,1574,1.616,1575,3.942,1576,5.536,1577,1.616,1578,2.664,1579,3.399,1580,2.664,1581,2.664,1582,2.664,1583,2.664,1584,2.664,1585,2.664,1586,3.399,1587,2.664,1588,2.664,1589,2.664,1590,2.664,1591,1.616,1592,2.664,1593,1.616,1594,4.361,1595,4.963,1596,3.399,1597,2.664,1598,2.664,1599,2.664,1600,1.616,1601,1.616,1602,3.399,1603,2.664,1604,1.616,1605,1.616,1606,1.616,1607,3.399,1608,1.616,1609,1.616,1610,1.616,1611,2.664,1612,2.664,1613,1.616,1614,1.616,1615,1.616,1616,1.616,1617,1.616,1618,1.616,1619,1.616,1620,2.664,1621,1.616,1622,1.616,1623,1.616,1624,1.616,1625,1.616,1626,1.616,1627,1.616,1628,1.616,1629,1.616,1630,1.616,1631,1.616,1632,1.616,1633,5.187,1634,1.616,1635,1.616,1636,1.616,1637,1.616,1638,1.616,1639,3.942,1640,2.664,1641,3.942,1642,1.616,1643,1.616,1644,3.399,1645,1.616,1646,1.616,1647,1.616,1648,1.616,1649,2.664,1650,1.616,1651,1.616,1652,4.361,1653,1.616,1654,1.616,1655,1.616,1656,1.616,1657,1.616,1658,3.399,1659,3.942,1660,1.616,1661,1.616,1662,1.616,1663,1.616,1664,1.616,1665,1.616,1666,1.616,1667,1.616,1668,1.616,1669,2.664,1670,1.616,1671,2.664,1672,1.616,1673,1.616,1674,1.616,1675,1.616,1676,1.616,1677,1.616,1678,1.616,1679,3.942,1680,3.399,1681,3.399,1682,3.399,1683,2.664,1684,3.399,1685,2.664,1686,2.664,1687,2.664,1688,1.616,1689,1.616,1690,1.616,1691,1.616,1692,1.616,1693,1.616,1694,1.616,1695,2.664,1696,1.616,1697,1.616,1698,1.616,1699,4.361,1700,1.616,1701,1.616,1702,1.616,1703,1.616,1704,1.616,1705,1.616,1706,1.616,1707,1.616,1708,1.616,1709,4.361,1710,1.616,1711,1.616,1712,1.616,1713,1.616,1714,1.616,1715,1.616,1716,1.616,1717,1.616,1718,1.616,1719,1.616,1720,1.616,1721,1.616,1722,1.616,1723,1.616,1724,1.616,1725,3.399,1726,1.616,1727,1.616,1728,1.616,1729,2.664,1730,1.616,1731,1.616,1732,1.616,1733,1.616,1734,1.616,1735,1.616,1736,1.616,1737,1.616,1738,1.616,1739,1.616,1740,1.616,1741,1.616,1742,1.616,1743,1.616,1744,1.616,1745,1.616,1746,2.664,1747,2.664,1748,1.616,1749,1.616,1750,1.616,1751,1.616,1752,1.616,1753,1.616,1754,1.616,1755,1.616,1756,1.616,1757,1.616,1758,1.616,1759,1.616,1760,1.616,1761,1.616,1762,1.616,1763,1.616,1764,1.616]],["title/modules.html",[2,2.103]],["body/modules.html",[1,3.596,2,2.298,6,3.289,7,0.019,8,3.289,60,0.019,61,0.019,65,3.289,66,3.289,316,3.982,1074,3.596,1251,5.257,1765,6.972,1766,6.972,1767,7.066,1768,5.281]],["title/overview.html",[1341,3.644]],["body/overview.html",[1,4.606,2,1.912,3,2.421,4,3.744,5,3.744,6,4.368,7,0.022,8,4.212,9,3.195,10,2.342,11,1.912,57,2.524,60,0.017,61,0.017,62,3.744,63,3.744,64,3.744,65,4.401,66,4.401,70,1.592,113,1.796,263,2.994,271,1.912,352,3.744,353,3.744,354,3.744,355,4.277,360,2.524,413,3.944,442,3.744,443,3.744,444,3.744,601,3.409,830,2.994,860,3.744,861,3.744,862,3.744,1099,3.744,1304,3.314,1341,3.314,1482,3.744,1769,4.396]],["title/properties.html",[121,0.709,984,2.237]],["body/properties.html",[7,0.022,16,0.485,17,3.106,60,0.02,61,0.02,121,0.9,244,3.368,305,2.685,562,3.368,786,3.683,1376,4.078,1445,4.078,1469,4.078,1470,4.606,1770,5.408,1771,5.408,1772,5.408,1773,5.408,1774,5.408,1775,5.408]],["title/miscellaneous/variables.html",[920,2.904,1021,1.704]],["body/miscellaneous/variables.html",[2,1.979,7,0.023,15,2.45,17,1.866,27,3.269,39,2.599,41,3.43,42,2.768,43,2.768,44,2.45,45,2.45,51,1.414,60,0.014,61,0.014,84,2.213,86,2.213,87,2.213,95,2.024,115,2.018,120,0.377,121,1.098,125,1.305,126,0.785,127,3.455,135,1.979,137,3.014,138,3.43,143,2.024,144,2.45,145,2.833,153,0.654,171,2.538,172,2.538,173,2.884,174,1.508,178,1.731,193,3.43,195,2.768,233,3.43,235,2.45,236,1.866,237,2.768,238,2.45,239,2.45,261,1.613,270,1.731,275,3.231,437,2.024,450,3.265,498,2.45,500,2.213,510,2.258,554,1.731,619,2.213,628,2.024,632,2.024,633,2.024,634,2.024,662,2.45,663,3.43,678,2.45,679,2.768,680,2.45,681,2.45,682,2.45,683,2.768,777,2.612,818,2.45,819,2.45,834,4.336,840,2.768,847,3.43,865,3.43,881,2.768,885,3.43,920,2.213,932,2.024,933,2.213,952,2.768,953,2.768,954,2.768,962,2.768,964,3.874,966,2.768,1021,1.866,1023,2.768,1024,4.47,1030,2.768,1166,2.45,1776,3.25,1777,3.25,1778,3.25,1779,4.549,1780,4.549,1781,3.25,1782,4.549,1783,3.25,1784,3.25,1785,3.25,1786,3.25,1787,3.25,1788,3.25,1789,3.25]],["title/routes.html",[1790,4.116]],["body/routes.html",[7,0.02,60,0.02,61,0.02,1790,4.867]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{}}}],["0.0.1",{"_index":1770,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":992,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1425,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":1017,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":1004,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":1012,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":1000,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":1003,"title":{},"body":{"dependencies.html":{}}}],["01002",{"_index":284,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":271,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":986,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":280,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1.2355",{"_index":152,"title":{},"body":{"classes/EsHitDto.html":{}}}],["1/1",{"_index":965,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":227,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":959,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":389,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11/11",{"_index":979,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":1099,"title":{},"body":{"miscellaneous/enumerations.html":{},"overview.html":{}}}],["14.0.1",{"_index":1015,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":1188,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1979",{"_index":714,"title":{},"body":{"classes/PaperDto.html":{}}}],["1998",{"_index":1204,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["2",{"_index":1304,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1471,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":994,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":960,"title":{},"body":{"coverage.html":{}}}],["20",{"_index":672,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["200",{"_index":753,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1473,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1394,"title":{},"body":{"index.html":{}}}],["2324",{"_index":1211,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":276,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":1019,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":1009,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":1002,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":961,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":213,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["314",{"_index":675,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["4",{"_index":1305,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["4.6.0",{"_index":998,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":967,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1229,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":1155,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":1224,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":1220,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":1235,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1240,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["46toawmdawr5bxv1awqykwzub2rlxzmaaaaaaaaaacobywadawr4bxv1awqxagzub2rlxzeaaaaaaaaaaaebyqadawr5bxv1awqykgzub2rlxziaaaaaaaaaaawbygacbxv1awqyaaafdxvpzdeaaqltyxrjaf9hbgw_gaaaaa",{"_index":252,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["495c",{"_index":695,"title":{},"body":{"classes/PaperDto.html":{}}}],["5",{"_index":263,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":996,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":1007,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":978,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1506,"title":{},"body":{"license.html":{}}}],["6",{"_index":1769,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":969,"title":{},"body":{"coverage.html":{}}}],["60",{"_index":711,"title":{},"body":{"classes/PaperDto.html":{}}}],["69c45ca738ff",{"_index":697,"title":{},"body":{"classes/PaperDto.html":{}}}],["7.5.5",{"_index":1020,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":968,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1464,"title":{},"body":{"index.html":{}}}],["8.0.0",{"_index":993,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":997,"title":{},"body":{"dependencies.html":{}}}],["8/8",{"_index":970,"title":{},"body":{"coverage.html":{}}}],["8dfa",{"_index":696,"title":{},"body":{"classes/PaperDto.html":{}}}],["9",{"_index":1482,"title":{},"body":{"license.html":{},"overview.html":{}}}],["_id",{"_index":283,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":281,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_pit",{"_index":588,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_pit(pit",{"_index":587,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_prevpage",{"_index":594,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_prevpage(page",{"_index":593,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_score",{"_index":143,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["_shard_doc",{"_index":612,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_shards",{"_index":235,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":144,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_tiebreaker",{"_index":591,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_tiebreaker(tiebreaker",{"_index":590,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["above",{"_index":1662,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":878,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":1152,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":1150,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1727,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1725,"title":{},"body":{"license.html":{}}}],["access",{"_index":1121,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1260,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accessors",{"_index":800,"title":{},"body":{"classes/PrevSearch.html":{}}}],["according",{"_index":1151,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":674,"title":{},"body":{"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":548,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["act",{"_index":1733,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1255,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":1237,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1707,"title":{},"body":{"license.html":{}}}],["actual",{"_index":158,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1354,"title":{},"body":{"index.html":{}}}],["add",{"_index":1466,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1651,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1652,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1551,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":559,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1309,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1344,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1723,"title":{},"body":{"license.html":{}}}],["against",{"_index":1612,"title":{},"body":{"license.html":{}}}],["agent",{"_index":1086,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1736,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1682,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1666,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1359,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1350,"title":{},"body":{"index.html":{}}}],["algol",{"_index":703,"title":{},"body":{"classes/PaperDto.html":{}}}],["algol):vii",{"_index":706,"title":{},"body":{"classes/PaperDto.html":{}}}],["alive",{"_index":203,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["alleging",{"_index":1617,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":171,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":173,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1608,"title":{},"body":{"license.html":{}}}],["along",{"_index":1645,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1650,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1427,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":1092,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":944,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amongst",{"_index":287,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["amount",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1730,"title":{},"body":{"license.html":{}}}],["andrews",{"_index":705,"title":{},"body":{"classes/PaperDto.html":{}}}],["annotations",{"_index":1539,"title":{},"body":{"license.html":{}}}],["another",{"_index":599,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["anything",{"_index":1141,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1470,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":327,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apiextramodels",{"_index":165,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiextramodels(requestdto",{"_index":788,"title":{},"body":{"controllers/PapersController.html":{}}}],["apigatewaytimeoutresponse",{"_index":779,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation",{"_index":780,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":166,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":508,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{}}}],["apipropertyoptional",{"_index":167,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/RequestDto.html":{}}}],["apiresponse",{"_index":781,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1458,"title":{},"body":{"index.html":{}}}],["apitags",{"_index":782,"title":{},"body":{"controllers/PapersController.html":{}}}],["apitags('search",{"_index":789,"title":{},"body":{"controllers/PapersController.html":{}}}],["apitags('search')@apioperation({summary",{"_index":749,"title":{},"body":{"controllers/PapersController.html":{}}}],["app",{"_index":1424,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1648,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1534,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1680,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":321,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":654,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["applies",{"_index":1601,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1431,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":846,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1694,"title":{},"body":{"license.html":{}}}],["april",{"_index":1207,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1355,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1340,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1757,"title":{},"body":{"license.html":{}}}],["args",{"_index":462,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":494,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":464,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1713,"title":{},"body":{"license.html":{}}}],["array",{"_index":286,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["asc",{"_index":872,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1742,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":1105,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":726,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["assume",{"_index":1696,"title":{},"body":{"license.html":{}}}],["async",{"_index":524,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1745,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1533,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1261,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1639,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":1157,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":1134,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1773,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1281,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1486,"title":{},"body":{"license.html":{}}}],["authors",{"_index":679,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["authorship",{"_index":1529,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1372,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1274,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":1074,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["axiosres.data",{"_index":646,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["b",{"_index":1630,"title":{},"body":{"license.html":{}}}],["back",{"_index":754,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":1230,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1254,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":1127,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":942,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":751,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1396,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1392,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1397,"title":{},"body":{"index.html":{}}}],["basic",{"_index":325,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1683,"title":{},"body":{"license.html":{}}}],["before",{"_index":258,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["behalf",{"_index":1556,"title":{},"body":{"license.html":{}}}],["being",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1406,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1510,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1548,"title":{},"body":{"license.html":{}}}],["block",{"_index":506,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":823,"title":{},"body":{"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1376,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":254,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":981,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1747,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1767,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1765,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1342,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1398,"title":{},"body":{"index.html":{}}}],["building",{"_index":1381,"title":{},"body":{"index.html":{}}}],["c",{"_index":1636,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":405,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1411,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":401,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["calling",{"_index":1443,"title":{},"body":{"index.html":{}}}],["can't",{"_index":133,"title":{},"body":{"interfaces/EqQueryString.html":{}}}],["canactivate",{"_index":835,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":841,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":1146,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1631,"title":{},"body":{"license.html":{}}}],["case",{"_index":328,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":650,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["cause",{"_index":1496,"title":{},"body":{"license.html":{}}}],["caused",{"_index":1088,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cc3c3cca",{"_index":693,"title":{},"body":{"classes/PaperDto.html":{}}}],["cd",{"_index":1377,"title":{},"body":{"index.html":{}}}],["cell",{"_index":729,"title":{},"body":{"classes/PaperDto.html":{}}}],["certain",{"_index":188,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{}}}],["change",{"_index":908,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1635,"title":{},"body":{"license.html":{}}}],["character",{"_index":1712,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":1149,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1586,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1419,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1417,"title":{},"body":{"index.html":{}}}],["check",{"_index":297,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":300,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1283,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1726,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1614,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1603,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["cleint_error",{"_index":1301,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":1014,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1374,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1421,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":352,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":353,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":354,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":442,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":443,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":444,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":860,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":861,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":862,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":333,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":1213,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":495,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1609,"title":{},"body":{"license.html":{}}}],["comission",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1461,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1751,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1720,"title":{},"body":{"license.html":{}}}],["commision",{"_index":943,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":945,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":340,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1560,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1524,"title":{},"body":{"license.html":{}}}],["complete",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":566,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["completion",{"_index":259,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1760,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1656,"title":{},"body":{"license.html":{}}}],["comply",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1462,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1363,"title":{},"body":{"index.html":{}}}],["computer",{"_index":707,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["condition",{"_index":1247,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":1120,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":189,"title":{},"body":{"interfaces/EsQuery.html":{},"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1434,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1439,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":1165,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1365,"title":{},"body":{"index.html":{}}}],["connection",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1711,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1732,"title":{},"body":{"license.html":{}}}],["conspicuously",{"_index":1572,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1618,"title":{},"body":{"license.html":{}}}],["constructed",{"_index":824,"title":{},"body":{"classes/RequestDto.html":{}}}],["constructor",{"_index":196,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":886,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":456,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":343,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":527,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["constructor(private",{"_index":312,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":820,"title":{},"body":{"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":836,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":198,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1653,"title":{},"body":{"license.html":{}}}],["contained",{"_index":1232,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["containing",{"_index":288,"title":{},"body":{"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["contains",{"_index":241,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/RequestDto.html":{}}}],["content",{"_index":554,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["contents",{"_index":686,"title":{},"body":{"classes/PaperDto.html":{},"index.html":{},"license.html":{}}}],["context",{"_index":404,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":851,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":431,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":850,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":433,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":423,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":434,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":435,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":422,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1500,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1550,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1607,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1658,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1576,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1619,"title":{},"body":{"license.html":{}}}],["control",{"_index":1215,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1490,"title":{},"body":{"license.html":{}}}],["controller",{"_index":291,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":310,"title":{},"body":{"controllers/HealthController.html":{}}}],["controllername",{"_index":430,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":441,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":345,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":839,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1526,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1626,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1080,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1484,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":948,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":774,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":1227,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":1093,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["count",{"_index":242,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["counterclaim",{"_index":1615,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1362,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":955,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1442,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":449,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":458,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":460,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1360,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1613,"title":{},"body":{"license.html":{}}}],["current",{"_index":595,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1263,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":371,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1675,"title":{},"body":{"license.html":{}}}],["customer",{"_index":939,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["damages",{"_index":1709,"title":{},"body":{"license.html":{}}}],["daniil",{"_index":734,"title":{},"body":{"classes/PaperDto.html":{}}}],["data",{"_index":135,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":350,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.status",{"_index":351,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["date",{"_index":1623,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":421,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["davie",{"_index":718,"title":{},"body":{"classes/PaperDto.html":{}}}],["days",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["db",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":451,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":461,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1325,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1319,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1786,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":147,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":127,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":123,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["defaults",{"_index":550,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["defend",{"_index":1738,"title":{},"body":{"license.html":{}}}],["defined",{"_index":153,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1492,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1478,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":1073,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":538,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletepit",{"_index":525,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletepit(pitid",{"_index":534,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletes",{"_index":536,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletion",{"_index":543,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deliberate",{"_index":1704,"title":{},"body":{"license.html":{}}}],["denis",{"_index":736,"title":{},"body":{"classes/PaperDto.html":{}}}],["depended",{"_index":1238,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":1236,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":541,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deploy",{"_index":1382,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1345,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1440,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1435,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":496,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":710,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["derived",{"_index":1536,"title":{},"body":{"license.html":{}}}],["desc",{"_index":613,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1676,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1358,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1574,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1448,"title":{},"body":{"index.html":{}}}],["details",{"_index":304,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1693,"title":{},"body":{"license.html":{}}}],["developed",{"_index":712,"title":{},"body":{"classes/PaperDto.html":{}}}],["development",{"_index":1416,"title":{},"body":{"index.html":{}}}],["different",{"_index":1116,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1494,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1497,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":928,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":924,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1678,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1569,"title":{},"body":{"license.html":{}}}],["display",{"_index":875,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["displayed",{"_index":870,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1594,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1644,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1477,"title":{},"body":{"license.html":{}}}],["dns",{"_index":1275,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1465,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1409,"title":{},"body":{"index.html":{}}}],["document",{"_index":139,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":956,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":249,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":569,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/elastic/es",{"_index":570,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/request.dto",{"_index":573,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/search",{"_index":575,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums",{"_index":385,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/es",{"_index":577,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums/page",{"_index":579,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces",{"_index":348,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces/elastic/es",{"_index":581,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["don't",{"_index":1750,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":1005,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":1096,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":172,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["dtos/elastic/es",{"_index":289,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["due",{"_index":1129,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1271,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1755,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1364,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1537,"title":{},"body":{"license.html":{}}}],["el._source",{"_index":638,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["elaborations",{"_index":1540,"title":{},"body":{"license.html":{}}}],["elastic/es",{"_index":828,"title":{},"body":{"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchResultDto.html":{}}}],["elastichsearch",{"_index":557,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":142,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["electronic",{"_index":1557,"title":{},"body":{"license.html":{}}}],["elements",{"_index":211,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":199,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1746,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1245,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1744,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1444,"title":{},"body":{"index.html":{}}}],["entities",{"_index":1148,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1315,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":949,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":1022,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums",{"_index":511,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["enums/page",{"_index":661,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1317,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1366,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":950,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":278,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["eqquerystring",{"_index":112,"title":{"interfaces/EqQueryString.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"coverage.html":{}}}],["error",{"_index":303,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":465,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":428,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":490,"title":{},"body":{"injectables/LoggerService.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es",{"_index":190,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["es_ip",{"_index":521,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["es_port",{"_index":522,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["es_query",{"_index":819,"title":{},"body":{"classes/RequestDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["eshitdto",{"_index":136,"title":{"classes/EsHitDto.html":{}},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["espit",{"_index":176,"title":{"interfaces/EsPit.html":{}},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["esq",{"_index":909,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.query",{"_index":911,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.size",{"_index":910,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquery",{"_index":184,"title":{"interfaces/EsQuery.html":{}},"body":{"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esquerydto",{"_index":192,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":232,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsehits",{"_index":248,"title":{"interfaces/EsResponseHits.html":{}},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["estime",{"_index":546,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["estime.min",{"_index":551,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["evaluated",{"_index":1177,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1722,"title":{},"body":{"license.html":{}}}],["event",{"_index":1700,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":1201,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":151,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1596,"title":{},"body":{"license.html":{}}}],["exception",{"_index":339,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":925,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["excerpt",{"_index":699,"title":{},"body":{"classes/PaperDto.html":{}}}],["exchangeable",{"_index":1368,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1571,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1585,"title":{},"body":{"license.html":{}}}],["execute",{"_index":266,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["executed",{"_index":1667,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":399,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1698,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1512,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1408,"title":{},"body":{"index.html":{}}}],["expand",{"_index":1006,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":947,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1316,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":1198,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":1197,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":1196,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":1216,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1660,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1457,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":420,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":341,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":1193,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1432,"title":{},"body":{"index.html":{}}}],["f763",{"_index":694,"title":{},"body":{"classes/PaperDto.html":{}}}],["facilitates",{"_index":1370,"title":{},"body":{"index.html":{}}}],["factory",{"_index":929,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":274,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":1234,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1718,"title":{},"body":{"license.html":{}}}],["faker",{"_index":1010,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":936,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":128,"title":{},"body":{"interfaces/EqQueryString.html":{},"miscellaneous/enumerations.html":{}}}],["fields",{"_index":124,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1504,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1624,"title":{},"body":{"license.html":{}}}],["files",{"_index":1428,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":894,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(es_query",{"_index":899,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":895,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":903,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":750,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":1156,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1689,"title":{},"body":{"license.html":{}}}],["flag",{"_index":658,"title":{},"body":{"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{}}}],["flow",{"_index":1008,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1451,"title":{},"body":{"index.html":{}}}],["following",{"_index":665,"title":{},"body":{"classes/PageMetaDto.html":{},"index.html":{},"license.html":{}}}],["fools",{"_index":1208,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":1137,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1515,"title":{},"body":{"license.html":{}}}],["format",{"_index":452,"title":{},"body":{"injectables/LoggerService.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":468,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":470,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":471,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":481,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1405,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":1169,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":1112,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1588,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1272,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":1139,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1249,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":329,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1252,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1310,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":1108,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1256,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1268,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gatewaytimeoutexception",{"_index":767,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["gatewaytimeoutexception('elasticsearch",{"_index":915,"title":{},"body":{"injectables/SearchService.html":{}}}],["gathered",{"_index":1076,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":363,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":367,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1525,"title":{},"body":{"license.html":{}}}],["generates",{"_index":369,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":1147,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":796,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":790,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":298,"title":{},"body":{"controllers/HealthController.html":{}}}],["get_pit",{"_index":806,"title":{},"body":{"classes/PrevSearch.html":{}}}],["get_prevpage",{"_index":814,"title":{},"body":{"classes/PrevSearch.html":{}}}],["get_tiebreaker",{"_index":810,"title":{},"body":{"classes/PrevSearch.html":{}}}],["getbycontext",{"_index":746,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@req",{"_index":793,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(request",{"_index":748,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":747,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":797,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":759,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":364,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":373,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":365,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":376,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":526,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["getpit(alive",{"_index":544,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["gets",{"_index":375,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getschemapath",{"_index":783,"title":{},"body":{"controllers/PapersController.html":{}}}],["getting",{"_index":1337,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":366,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":378,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1373,"title":{},"body":{"index.html":{}}}],["give",{"_index":1437,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":880,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":1167,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1716,"title":{},"body":{"license.html":{}}}],["gorbunov",{"_index":737,"title":{},"body":{"classes/PaperDto.html":{}}}],["governing",{"_index":1763,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1579,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1514,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1487,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1582,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1768,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1705,"title":{},"body":{"license.html":{}}}],["guard",{"_index":830,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":832,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["handle",{"_index":1264,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":403,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":432,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1740,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":633,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["hasprev",{"_index":634,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["header",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":653,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":295,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":308,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":306,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":292,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":316,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1775,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1346,"title":{},"body":{"index.html":{}}}],["help",{"_index":1384,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1404,"title":{},"body":{"index.html":{}}}],["hence",{"_index":1223,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1581,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1663,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1339,"title":{},"body":{"index.html":{}}}],["hit",{"_index":155,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto",{"_index":290,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["hit.dto.ts",{"_index":138,"title":{},"body":{"classes/EsHitDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["hit.dto.ts:25",{"_index":161,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:35",{"_index":164,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:45",{"_index":154,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hits",{"_index":236,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageMetaDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hits.interface",{"_index":269,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["hits.interface.ts",{"_index":285,"title":{},"body":{"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["hold",{"_index":1739,"title":{},"body":{"license.html":{}}}],["hop",{"_index":1202,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hours",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":305,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1460,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1449,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1455,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1474,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1762,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1276,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":768,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":792,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":342,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["httphealthindicator",{"_index":307,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":318,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":322,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":381,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":387,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":335,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1332,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":382,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":386,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":355,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":383,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":384,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":388,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":330,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1375,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":528,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["httpstatus",{"_index":380,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":1212,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1293,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":1203,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":174,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["identification",{"_index":1756,"title":{},"body":{"license.html":{}}}],["identified",{"_index":1144,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":957,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1749,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":1206,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ii",{"_index":1502,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1509,"title":{},"body":{"license.html":{}}}],["image",{"_index":1410,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1412,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":1217,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":519,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["implements",{"_index":338,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1686,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1570,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1714,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":1226,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1710,"title":{},"body":{"license.html":{}}}],["include",{"_index":1195,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":1186,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1642,"title":{},"body":{"license.html":{}}}],["including",{"_index":1518,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1554,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1578,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1741,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1737,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1728,"title":{},"body":{"license.html":{}}}],["index",{"_index":120,"title":{"index.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1531,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":659,"title":{},"body":{"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1495,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1511,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["info.interface.ts",{"_index":856,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["inform",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":845,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1298,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1468,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1606,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1620,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":359,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":360,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":897,"title":{},"body":{"injectables/SearchService.html":{}}}],["injects",{"_index":530,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["install",{"_index":1386,"title":{},"body":{"index.html":{}}}],["instance",{"_index":898,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":489,"title":{},"body":{"injectables/LoggerService.html":{}}}],["instantiates",{"_index":532,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["institute",{"_index":1610,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1418,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":1233,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1552,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":396,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["intercept(context",{"_index":398,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interceptor",{"_index":520,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interface",{"_index":111,"title":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":113,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/elastic/es",{"_index":222,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["interfaces/page",{"_index":512,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["interim",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1295,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1244,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":1182,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1258,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invariant",{"_index":727,"title":{},"body":{"classes/PaperDto.html":{}}}],["ip",{"_index":558,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["irrevocable",{"_index":1589,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":964,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":217,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":504,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["isboolean",{"_index":267,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":218,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@apiproperty({type",{"_index":826,"title":{},"body":{"classes/RequestDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":888,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":255,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":873,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":262,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":876,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isobject()@apiproperty({description",{"_index":204,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":733,"title":{},"body":{"classes/PaperDto.html":{}}}],["isint",{"_index":219,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PaperDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":169,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty()@apiproperty({description",{"_index":157,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isnotempty()@isarray()@apiproperty({description",{"_index":684,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnotempty()@isstring()@apiproperty({description",{"_index":691,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnumber",{"_index":220,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isobject",{"_index":221,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["isoptional()@apipropertyoptional({description",{"_index":148,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isoptional()@apipropertyoptional({type",{"_index":822,"title":{},"body":{"classes/RequestDto.html":{}}}],["isoptional()@isarray()@apipropertyoptional({description",{"_index":207,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isdefined()@isnumber()@isint()@apipropertyoptional({description",{"_index":209,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":867,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":240,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional()@isobject()@apipropertyoptional({description",{"_index":200,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":871,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1783,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isset",{"_index":600,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["isstring",{"_index":268,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/SearchQueryDto.html":{}}}],["isstring()@isoptional()@apipropertyoptional({description",{"_index":251,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["issue",{"_index":1565,"title":{},"body":{"license.html":{}}}],["itself",{"_index":1158,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1472,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":1209,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["k8s",{"_index":1422,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1429,"title":{},"body":{"index.html":{}}}],["keep_alive",{"_index":182,"title":{},"body":{"interfaces/EsPit.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["keeps",{"_index":940,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":1784,"title":{},"body":{"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1789,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1685,"title":{},"body":{"license.html":{}}}],["knowledge",{"_index":722,"title":{},"body":{"classes/PaperDto.html":{}}}],["known",{"_index":1170,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1430,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1347,"title":{},"body":{"index.html":{}}}],["language",{"_index":709,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["large",{"_index":1289,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":1180,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":1011,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1681,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1616,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1273,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1488,"title":{},"body":{"license.html":{}}}],["length",{"_index":1174,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":1171,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1369,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1699,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1708,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1604,"title":{},"body":{"license.html":{}}}],["license",{"_index":1469,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1759,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1621,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1483,"title":{},"body":{"license.html":{}}}],["limit",{"_index":619,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1687,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1764,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1519,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1243,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":869,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":1143,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1547,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1447,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1563,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1611,"title":{},"body":{"license.html":{}}}],["live",{"_index":183,"title":{},"body":{"interfaces/EsPit.html":{}}}],["liveness",{"_index":301,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":1077,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":1095,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":453,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":472,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":395,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":484,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":413,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":486,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":414,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":447,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":397,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":407,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":392,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1290,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":1168,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1361,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1715,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1721,"title":{},"body":{"license.html":{}}}],["m",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["machine",{"_index":1413,"title":{},"body":{"index.html":{}}}],["made",{"_index":1530,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1562,"title":{},"body":{"license.html":{}}}],["main",{"_index":700,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1267,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1445,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1367,"title":{},"body":{"index.html":{}}}],["making",{"_index":1516,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":1130,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1719,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1567,"title":{},"body":{"license.html":{}}}],["management",{"_index":1498,"title":{},"body":{"license.html":{}}}],["manager",{"_index":1001,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1348,"title":{},"body":{"index.html":{}}}],["many",{"_index":1241,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":567,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["map(axiosres",{"_index":645,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["markdown",{"_index":688,"title":{},"body":{"classes/PaperDto.html":{}}}],["marked",{"_index":1573,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1672,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["math.abs(query.page",{"_index":623,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["max_score",{"_index":279,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{}}}],["maxim",{"_index":738,"title":{},"body":{"classes/PaperDto.html":{}}}],["maximum",{"_index":210,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageMetaDto.html":{}}}],["md",{"_index":689,"title":{},"body":{"classes/PaperDto.html":{}}}],["mean",{"_index":1480,"title":{},"body":{"license.html":{}}}],["means",{"_index":1222,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1521,"title":{},"body":{"license.html":{}}}],["mechanism",{"_index":825,"title":{},"body":{"classes/RequestDto.html":{}}}],["media",{"_index":1225,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1627,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1628,"title":{},"body":{"license.html":{}}}],["memory",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1688,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1546,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1453,"title":{},"body":{"index.html":{}}}],["message",{"_index":326,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":927,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":1199,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":500,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["meta.dto",{"_index":514,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.dto.ts",{"_index":663,"title":{},"body":{"classes/PageMetaDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["meta.dto.ts:25",{"_index":676,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:35",{"_index":671,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:44",{"_index":669,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:53",{"_index":666,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:62",{"_index":668,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:72",{"_index":673,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.hasnext",{"_index":635,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.interface",{"_index":513,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["meta.interface.ts",{"_index":657,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":636,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.pagesize",{"_index":637,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["metadata",{"_index":119,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"dependencies.html":{}}}],["metainformation",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":437,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":440,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":1142,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":296,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1454,"title":{},"body":{"index.html":{}}}],["micros",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mikhaylov",{"_index":735,"title":{},"body":{"classes/PaperDto.html":{}}}],["milliseconds",{"_index":265,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["min",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["minimum",{"_index":670,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["minute",{"_index":937,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":549,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["miscellaneous",{"_index":1021,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":499,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["modifications",{"_index":1517,"title":{},"body":{"license.html":{}}}],["modified",{"_index":1122,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1649,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1654,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1774,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1378,"title":{},"body":{"index.html":{}}}],["money",{"_index":941,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1349,"title":{},"body":{"index.html":{}}}],["more",{"_index":938,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["morrison",{"_index":716,"title":{},"body":{"classes/PaperDto.html":{}}}],["moved",{"_index":1284,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":1104,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ms",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mucosal",{"_index":725,"title":{},"body":{"classes/PaperDto.html":{}}}],["multiple",{"_index":1282,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":999,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":973,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1318,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":347,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1671,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1433,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1438,"title":{},"body":{"index.html":{}}}],["nanos",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["necessarily",{"_index":1605,"title":{},"body":{"license.html":{}}}],["need",{"_index":1082,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":531,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1703,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1706,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":1097,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":416,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["nestjs",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":319,"title":{},"body":{"modules/HealthModule.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":995,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":168,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":309,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1772,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":480,"title":{},"body":{"injectables/LoggerService.html":{}}}],["neurobiology",{"_index":740,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuroimaging",{"_index":742,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuron",{"_index":741,"title":{},"body":{"classes/PaperDto.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":400,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":424,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["no_content",{"_index":1081,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1771,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1280,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":1189,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1647,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":1145,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":1140,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1250,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":1118,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":412,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1532,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1633,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1661,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1385,"title":{},"body":{"index.html":{}}}],["ns",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["num",{"_index":1323,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":146,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":181,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["objects",{"_index":162,"title":{},"body":{"classes/EsHitDto.html":{}}}],["obligations",{"_index":1729,"title":{},"body":{"license.html":{}}}],["observable",{"_index":406,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["obtain",{"_index":1761,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1598,"title":{},"body":{"license.html":{}}}],["ok",{"_index":314,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["one",{"_index":596,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1351,"title":{},"body":{"index.html":{}}}],["optional",{"_index":122,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":935,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":510,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":631,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["order.desc",{"_index":610,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{}}}],["order.enum",{"_index":580,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["order.enum.ts",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":1075,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1543,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1501,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["out'})@get(':uuid')@httpcode(200",{"_index":763,"title":{},"body":{"controllers/PapersController.html":{}}}],["out'})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":756,"title":{},"body":{"controllers/PapersController.html":{}}}],["output",{"_index":1335,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1507,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":1192,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1266,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":553,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["overview",{"_index":1341,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1485,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1503,"title":{},"body":{"license.html":{}}}],["package",{"_index":984,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1402,"title":{},"body":{"index.html":{}}}],["page",{"_index":118,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["pagedto",{"_index":497,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":639,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pagedto})@apigatewaytimeoutresponse({description",{"_index":755,"title":{},"body":{"controllers/PapersController.html":{}}}],["pageinterceptor",{"_index":517,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagemeta",{"_index":501,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagemetadto",{"_index":507,"title":{"classes/PageMetaDto.html":{}},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"coverage.html":{}}}],["pagen",{"_index":881,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":628,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["pagesize",{"_index":632,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["pagination",{"_index":208,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{}}}],["paper",{"_index":159,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["paper.dto",{"_index":170,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["paperdto",{"_index":156,"title":{"classes/PaperDto.html":{}},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["paperdto})@apigatewaytimeoutresponse({description",{"_index":762,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers",{"_index":282,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":758,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":765,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":743,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":346,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parseuuidpipe",{"_index":769,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1641,"title":{},"body":{"license.html":{}}}],["partial",{"_index":1091,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":1090,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partialtype",{"_index":509,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["particle",{"_index":877,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1690,"title":{},"body":{"license.html":{}}}],["party",{"_index":1079,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["passed",{"_index":205,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["patent",{"_index":1595,"title":{},"body":{"license.html":{}}}],["path",{"_index":787,"title":{},"body":{"controllers/PapersController.html":{}}}],["pattern",{"_index":1356,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":1179,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1287,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":1135,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1505,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1322,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":129,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":1119,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":1106,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":1125,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1285,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":844,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1513,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1583,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1640,"title":{},"body":{"license.html":{}}}],["physics",{"_index":731,"title":{},"body":{"classes/PaperDto.html":{}}}],["pipe(take(1",{"_index":644,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["pipeline",{"_index":922,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":178,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/variables.html":{}}}],["pit.interface",{"_index":223,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["pit.interface.ts",{"_index":177,"title":{},"body":{"interfaces/EsPit.html":{},"coverage.html":{}}}],["pit_id",{"_index":237,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":537,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["places",{"_index":1326,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":179,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":563,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1353,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1724,"title":{},"body":{"license.html":{}}}],["pot",{"_index":1214,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1493,"title":{},"body":{"license.html":{}}}],["preceding",{"_index":667,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["precondition",{"_index":1176,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":1175,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":1101,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":294,"title":{},"body":{"controllers/HealthController.html":{}}}],["prepare",{"_index":1591,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":1163,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":660,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["presented",{"_index":687,"title":{},"body":{"classes/PaperDto.html":{}}}],["prevented",{"_index":1248,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":582,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["previously",{"_index":565,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevpage",{"_index":592,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevsearch",{"_index":523,"title":{"classes/PrevSearch.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["print",{"_index":1407,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1754,"title":{},"body":{"license.html":{}}}],["private",{"_index":313,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1450,"title":{},"body":{"index.html":{}}}],["process",{"_index":245,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":954,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_container_name",{"_index":555,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["process.env.es_port",{"_index":560,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":952,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":953,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1328,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":974,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1327,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":975,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1330,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":1161,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1673,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1390,"title":{},"body":{"index.html":{}}}],["programming",{"_index":708,"title":{},"body":{"classes/PaperDto.html":{}}}],["project",{"_index":302,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":1013,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1632,"title":{},"body":{"license.html":{}}}],["promise",{"_index":539,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":640,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["properties",{"_index":121,"title":{"properties.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1279,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":503,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":893,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":134,"title":{},"body":{"interfaces/EqQueryString.html":{},"license.html":{}}}],["proxy",{"_index":1159,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":1153,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":450,"title":{},"body":{"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1592,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1568,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1491,"title":{},"body":{"license.html":{}}}],["put",{"_index":770,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":576,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{}}}],["q.dto.ts",{"_index":865,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:25",{"_index":879,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:37",{"_index":874,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:48",{"_index":868,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:59",{"_index":866,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":115,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query'})@apiresponse({status",{"_index":752,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto",{"_index":571,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{}}}],["query.dto.ts",{"_index":193,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:27",{"_index":214,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:38",{"_index":206,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:49",{"_index":201,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:60",{"_index":215,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:71",{"_index":197,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface",{"_index":224,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface.ts",{"_index":185,"title":{},"body":{"interfaces/EsQuery.html":{},"coverage.html":{}}}],["query.limit",{"_index":621,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.order",{"_index":611,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.page",{"_index":625,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.query",{"_index":607,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.limit",{"_index":620,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order",{"_index":609,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order?.touppercase",{"_index":630,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.page",{"_index":629,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query_string",{"_index":186,"title":{},"body":{"interfaces/EsQuery.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["range",{"_index":1187,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1242,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1643,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":394,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1743,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1674,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1269,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1257,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1629,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1752,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":1103,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1300,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1695,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1625,"title":{},"body":{"license.html":{}}}],["references",{"_index":1109,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":1016,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":837,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":1172,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":1138,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1668,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1343,"title":{},"body":{"index.html":{}}}],["reject",{"_index":641,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reject(error",{"_index":651,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reject(new",{"_index":914,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":277,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevance",{"_index":149,"title":{},"body":{"classes/EsHitDto.html":{}}}],["relevant",{"_index":901,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1544,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":1126,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1748,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1541,"title":{},"body":{"license.html":{}}}],["representation",{"_index":1102,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":1094,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1561,"title":{},"body":{"license.html":{}}}],["represents",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1590,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1677,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1476,"title":{},"body":{"license.html":{}}}],["req",{"_index":771,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":426,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":429,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":246,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.es_query",{"_index":605,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.pit",{"_index":615,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.query",{"_index":606,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.search_after",{"_index":617,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.size",{"_index":622,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.sort",{"_index":608,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.query",{"_index":603,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request_timeout",{"_index":1160,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requestdto",{"_index":572,"title":{"classes/RequestDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"coverage.html":{}}}],["requested",{"_index":766,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":1185,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":393,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1253,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":848,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":853,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":1133,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":772,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["res.hits.total.value",{"_index":627,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.keep_alive",{"_index":648,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.timed_out",{"_index":913,"title":{},"body":{"injectables/SearchService.html":{}}}],["reserved",{"_index":1136,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":1085,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":1113,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":916,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res",{"_index":649,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resolve(res.succeeded",{"_index":655,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resource",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":1123,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":234,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":334,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":795,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.data.hits.hits[0]._source",{"_index":799,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto",{"_index":890,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["response.dto.ts",{"_index":233,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:26",{"_index":264,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:39",{"_index":260,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:56",{"_index":247,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:80",{"_index":250,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:91",{"_index":253,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":337,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":344,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":324,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":357,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":362,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":377,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":374,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":379,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":368,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1735,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1692,"title":{},"body":{"license.html":{}}}],["result",{"_index":542,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"index.html":{},"license.html":{}}}],["result.dto",{"_index":778,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":885,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:25",{"_index":889,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:42",{"_index":887,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1520,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1637,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":141,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1788,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":212,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["reverse",{"_index":604,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["revisions",{"_index":1538,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":1210,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1731,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":1018,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1697,"title":{},"body":{"license.html":{}}}],["role",{"_index":840,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":834,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":847,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":831,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["ron",{"_index":715,"title":{},"body":{"classes/PaperDto.html":{}}}],["rounded",{"_index":1324,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1321,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":745,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1790,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1587,"title":{},"body":{"license.html":{}}}],["run",{"_index":1387,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1393,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1400,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1401,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1399,"title":{},"body":{"index.html":{}}}],["running",{"_index":1420,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":417,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":419,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["s",{"_index":702,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["same",{"_index":1753,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1423,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1292,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["saved",{"_index":857,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["schemas",{"_index":1459,"title":{},"body":{"index.html":{}}}],["score",{"_index":150,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{}}}],["script",{"_index":1403,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1391,"title":{},"body":{"index.html":{}}}],["search",{"_index":130,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["search_after",{"_index":194,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["searchinfo",{"_index":854,"title":{"interfaces/SearchInfo.html":{}},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":574,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":776,"title":{"classes/SearchResultDto.html":{}},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":917,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchservice",{"_index":601,"title":{"injectables/SearchService.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["sec",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["section",{"_index":1098,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1481,"title":{},"body":{"license.html":{}}}],["see",{"_index":1286,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":1117,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":1100,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":1194,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1599,"title":{},"body":{"license.html":{}}}],["sent",{"_index":1089,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1545,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1665,"title":{},"body":{"license.html":{}}}],["server",{"_index":562,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1302,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":1218,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":311,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1426,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1436,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1441,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1262,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":358,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["set",{"_index":586,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["set_pit(pit",{"_index":808,"title":{},"body":{"classes/PrevSearch.html":{}}}],["set_prevpage(page",{"_index":816,"title":{},"body":{"classes/PrevSearch.html":{}}}],["set_tiebreaker(tiebreaker",{"_index":812,"title":{},"body":{"classes/PrevSearch.html":{}}}],["setmetadata(is_public_key",{"_index":1785,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1787,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setting",{"_index":626,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["shall",{"_index":1479,"title":{},"body":{"license.html":{}}}],["shards",{"_index":243,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1508,"title":{},"body":{"license.html":{}}}],["short",{"_index":332,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/PaperDto.html":{}}}],["show",{"_index":720,"title":{},"body":{"classes/PaperDto.html":{}}}],["showing",{"_index":597,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["shows",{"_index":256,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageMetaDto.html":{}}}],["similar",{"_index":1154,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["size",{"_index":195,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":273,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1357,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1734,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1691,"title":{},"body":{"license.html":{}}}],["sort",{"_index":145,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["sorted",{"_index":163,"title":{},"body":{"classes/EsHitDto.html":{}}}],["sorting",{"_index":216,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":858,"title":{},"body":{"interfaces/SearchInfo.html":{},"license.html":{}}}],["specific",{"_index":132,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":131,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":1190,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["specifies",{"_index":187,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["src/.../app.module.ts",{"_index":1781,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1312,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1314,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1311,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../page.dto.ts",{"_index":1776,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../paper.dto.ts",{"_index":1777,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1780,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../request.dto.ts",{"_index":1778,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1782,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1779,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1313,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application",{"_index":864,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/application/controller/health.controller.ts",{"_index":293,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":299,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":744,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:41",{"_index":757,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:74",{"_index":764,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":962,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":966,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain",{"_index":785,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/domain/dtos",{"_index":907,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/domain/dtos/elastic/es",{"_index":137,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page",{"_index":662,"title":{},"body":{"classes/PageMetaDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":498,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:27",{"_index":505,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:37",{"_index":502,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts",{"_index":678,"title":{},"body":{"classes/PaperDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/paper.dto.ts:23",{"_index":698,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:34",{"_index":730,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:45",{"_index":685,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:56",{"_index":732,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:67",{"_index":719,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:78",{"_index":724,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:87",{"_index":690,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/request.dto",{"_index":784,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/domain/dtos/request.dto.ts",{"_index":818,"title":{},"body":{"classes/RequestDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/request.dto.ts:26",{"_index":827,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/request.dto.ts:37",{"_index":821,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/search",{"_index":777,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/es",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1277,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1303,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1297,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1306,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1307,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/elastic/es",{"_index":114,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/http",{"_index":323,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":656,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/search",{"_index":855,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":336,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":833,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":842,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":838,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":971,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":972,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":391,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":415,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":402,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":409,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":775,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":518,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:16",{"_index":801,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:169",{"_index":561,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:174",{"_index":556,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:179",{"_index":564,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:186",{"_index":547,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:206",{"_index":535,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:29",{"_index":802,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:30",{"_index":809,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:33",{"_index":807,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:40",{"_index":804,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:41",{"_index":813,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:44",{"_index":811,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:51",{"_index":803,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:52",{"_index":817,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:55",{"_index":815,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:63",{"_index":805,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:73",{"_index":529,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:89",{"_index":552,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":317,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":356,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":445,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":919,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":361,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":446,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":479,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":457,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":459,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":473,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":466,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":477,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":463,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":475,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":469,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":892,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:12",{"_index":896,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:23",{"_index":906,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:28",{"_index":905,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:35",{"_index":904,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:70",{"_index":900,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":933,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":863,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":980,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sssss",{"_index":175,"title":{},"body":{"classes/EsHitDto.html":{}}}],["st",{"_index":704,"title":{},"body":{"classes/PaperDto.html":{}}}],["stages",{"_index":1380,"title":{},"body":{"index.html":{}}}],["start",{"_index":410,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1389,"title":{},"body":{"index.html":{}}}],["started",{"_index":1338,"title":{"index.html":{},"license.html":{}},"body":{}}],["starting",{"_index":859,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["starttime",{"_index":408,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":1166,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1597,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1655,"title":{},"body":{"license.html":{}}}],["statements",{"_index":958,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":448,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1634,"title":{},"body":{"license.html":{}}}],["status",{"_index":261,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1452,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":438,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1717,"title":{},"body":{"license.html":{}}}],["storage",{"_index":533,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["stored",{"_index":140,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{}}}],["stores",{"_index":202,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["string",{"_index":125,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["string.interface",{"_index":191,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["string.interface.ts",{"_index":116,"title":{},"body":{"interfaces/EqQueryString.html":{},"coverage.html":{}}}],["structure",{"_index":117,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"interfaces/SearchInfo.html":{}}}],["subject",{"_index":1580,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1593,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1657,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1555,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1553,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":647,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["subsequently",{"_index":1577,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1299,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":272,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1499,"title":{},"body":{"license.html":{}}}],["summary",{"_index":680,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["super(httpexception.createbody(data",{"_index":349,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1308,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1664,"title":{},"body":{"license.html":{}}}],["support",{"_index":1251,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":1184,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1446,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1766,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1456,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1278,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":1131,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1564,"title":{},"body":{"license.html":{}}}],["t",{"_index":728,"title":{},"body":{"classes/PaperDto.html":{}}}],["table",{"_index":983,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":982,"title":{},"body":{"coverage.html":{}}}],["tags",{"_index":681,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["take",{"_index":568,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["taken",{"_index":951,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1320,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":418,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1294,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":1114,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1265,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":1124,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ten",{"_index":739,"title":{},"body":{"classes/PaperDto.html":{}}}],["terminate",{"_index":1622,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":320,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1475,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1467,"title":{},"body":{"index.html":{}}}],["test",{"_index":1371,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1388,"title":{},"body":{"index.html":{}}}],["tested",{"_index":1178,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":701,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1701,"title":{},"body":{"license.html":{}}}],["there's",{"_index":664,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["there\\'s",{"_index":677,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["thereof",{"_index":1549,"title":{},"body":{"license.html":{}}}],["third",{"_index":1078,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":485,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":515,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.es_query",{"_index":829,"title":{},"body":{"classes/RequestDto.html":{}}}],["this.getdescription(status",{"_index":372,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":370,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.gettype(status",{"_index":390,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://${this.es_ip}:${this.es_port}/_pit",{"_index":652,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.httpservice.get(`http://${this.es_ip}:${this.es_port}/_search",{"_index":912,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://${this.es_ip}:${this.es_port}/papers/_pit?keep_alive=${alive+unit",{"_index":643,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.limit",{"_index":883,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":483,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":492,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":488,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":439,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":427,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":487,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":493,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":491,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":425,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":516,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":884,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.page",{"_index":882,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.pit",{"_index":229,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevpage",{"_index":585,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch",{"_index":602,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch._pit",{"_index":616,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch._prevpage",{"_index":624,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch._tiebreaker",{"_index":618,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.isset",{"_index":614,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.query",{"_index":228,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":849,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.search_after",{"_index":231,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.searchservice.findbycontext(request.es_query).then",{"_index":794,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":798,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.size",{"_index":226,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.sort",{"_index":230,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.statuscode",{"_index":891,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["this.tiebreaker",{"_index":584,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["those",{"_index":1602,"title":{},"body":{"license.html":{}}}],["through",{"_index":1463,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{}}}],["throwed",{"_index":1329,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1336,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":1228,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["tiebreaker",{"_index":589,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["time",{"_index":180,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["time.enum",{"_index":578,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["time.enum.ts",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timed",{"_index":257,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":238,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1270,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1288,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":682,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["todo",{"_index":1352,"title":{},"body":{"index.html":{}}}],["tony",{"_index":717,"title":{},"body":{"classes/PaperDto.html":{}}}],["too_many_requests",{"_index":1239,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":239,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["topic",{"_index":683,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["topics/fields",{"_index":721,"title":{},"body":{"classes/PaperDto.html":{}}}],["tort",{"_index":1702,"title":{},"body":{"license.html":{}}}],["total",{"_index":270,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["touching",{"_index":723,"title":{},"body":{"classes/PaperDto.html":{}}}],["tracking",{"_index":1566,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1670,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1638,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1669,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":1205,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1379,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1600,"title":{},"body":{"license.html":{}}}],["transform",{"_index":926,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1522,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":930,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1523,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":540,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["try",{"_index":642,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1527,"title":{},"body":{"license.html":{}}}],["unable",{"_index":1231,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":1200,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":1132,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1296,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["undefined})@apiresponse({status",{"_index":761,"title":{},"body":{"controllers/PapersController.html":{}}}],["under",{"_index":1115,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":1128,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1246,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uninitialized",{"_index":583,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["union",{"_index":1489,"title":{},"body":{"license.html":{}}}],["unique",{"_index":692,"title":{},"body":{"classes/PaperDto.html":{}}}],["unit",{"_index":545,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["units",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["university",{"_index":713,"title":{},"body":{"classes/PaperDto.html":{}}}],["unknown",{"_index":225,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["unless",{"_index":1659,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":1221,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":1219,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1291,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":1183,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":315,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":1084,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1259,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":1107,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":1181,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":1111,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":436,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":331,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1395,"title":{},"body":{"index.html":{}}}],["use",{"_index":1110,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":244,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":773,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":791,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":843,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":852,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":902,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1414,"title":{},"body":{"index.html":{}}}],["util",{"_index":482,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":760,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":976,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1331,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":977,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1334,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":921,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":931,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":918,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":923,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":275,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1191,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":963,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":920,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1558,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":454,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":474,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":786,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":1087,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":934,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":932,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":411,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PrevSearch.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":1164,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":1083,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":455,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":476,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":478,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1684,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1679,"title":{},"body":{"license.html":{}}}],["way",{"_index":1415,"title":{},"body":{"index.html":{}}}],["ways",{"_index":1383,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1646,"title":{},"body":{"license.html":{}}}],["whether",{"_index":598,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"license.html":{}}}],["whole",{"_index":1542,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":946,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":1162,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":1173,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1528,"title":{},"body":{"license.html":{}}}],["works",{"_index":1535,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1584,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1575,"title":{},"body":{"license.html":{}}}],["written",{"_index":1559,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1333,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":467,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1758,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
+ "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EqQueryString.html":{"url":"interfaces/EqQueryString.html","title":"interface - EqQueryString","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EqQueryString\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-query-string.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n default_field\n \n \n \n Optional\n \n fields\n \n \n \n \n query\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n default_field\n \n \n \n \n \n \n \n \n default_field: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Default field to perform a search on, when\nno field is specified for the query\n\n \n \n \n \n \n \n \n \n \n fields\n \n \n \n \n \n \n \n \n fields: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Specific fields, to perform a search on\nCan't be specified with 'default_field'\n\n \n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n \n \n query: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Query string, that provides the data, to perform a search on\n\n \n \n \n \n \n \n\n\n \n export interface EqQueryString {\n /**\n * Query string, that provides the data, to perform a search on\n */\n query: string;\n\n /**\n * Default field to perform a search on, when \n * no field is specified for the query\n */\n default_field?: string;\n\n /**\n * Specific fields, to perform a search on\n * Can't be specified with 'default_field'\n */\n fields?: string[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsHitDto.html":{"url":"classes/EsHitDto.html","title":"class - EsHitDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsHitDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n _score\n \n \n _source\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n _score\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({description: 'Relevance score', example: 1.2355})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:45\n \n \n\n \n \n Hit relevance score\n\n \n \n\n \n \n \n \n \n \n \n \n _source\n \n \n \n \n \n \n Type : PaperDto\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@ApiProperty({description: 'Actual document (paper) stored in Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:25\n \n \n\n \n \n Actual document stored in Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({description: 'List of objects that represents how the hit was sorted', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:35\n \n \n\n \n \n List of objects that represents how the hit was sorted\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsNotEmpty, IsOptional } from \"class-validator\";\nimport { PaperDto } from \"../paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['sort', '_source', '_score'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\n@ApiExtraModels()\nexport class EsHitDto {\n /**\n * Actual document stored in Elasticsearch\n */\n @IsNotEmpty()\n @ApiProperty({\n description: 'Actual document (paper) stored in Elasticsearch',\n example: {\n id: 'sssss'\n }\n })\n _source: PaperDto;\n \n /**\n * List of objects that represents how the hit was sorted\n */\n @IsOptional()\n @ApiPropertyOptional({\n description: 'List of objects that represents how the hit was sorted',\n example: {}\n })\n sort?: [];\n\n /**\n * Hit relevance score\n */\n @IsOptional()\n @ApiPropertyOptional({\n description: 'Relevance score',\n example: 1.2355\n })\n _score?: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsPit.html":{"url":"interfaces/EsPit.html","title":"interface - EsPit","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsPit\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-pit.interface.ts\n \n\n\n \n Description\n \n \n Structure of PIT (Point-In-Time) object\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n PIT ID\n\n \n \n \n \n \n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n keep_alive: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Time to live of the PIT\n\n \n \n \n \n \n \n\n\n \n export interface EsPit {\n /**\n * PIT ID\n */\n id: string;\n\n /**\n * Time to live of the PIT\n */\n keep_alive: string;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsQuery.html":{"url":"interfaces/EsQuery.html","title":"interface - EsQuery","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsQuery\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-query.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n query_string: EqQueryString\n\n \n \n\n\n \n \n Type : EqQueryString\n\n \n \n\n\n\n\n\n \n \n Query string object, that specifies certain search conditions\n\n \n \n \n \n \n \n\n\n \n import { EqQueryString } from \"./es-query-string.interface\";\n\n/**\n * Structure of page metadata\n */\nexport interface EsQuery {\n /**\n * Query string object, that specifies certain search conditions\n */\n query_string: EqQueryString;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch query DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n pit\n \n \n query\n \n \n Optional\n search_after\n \n \n Optional\n size\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:71\n \n \n\n \n \n Constructs an empty object\n\n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiPropertyOptional({description: 'PIT object', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:49\n \n \n\n \n \n Object, that stores PIT ID and time alive\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : EsQuery\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsObject()@ApiProperty({description: 'Search query object passed to Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:38\n \n \n\n \n \n The search query object passed to Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n search_after\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiPropertyOptional({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:71\n \n \n\n \n \n Pagination info\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsDefined()@IsNumber()@IsInt()@ApiPropertyOptional({description: 'Maximum number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:27\n \n \n\n \n \n Maximum number of elements returned by Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiPropertyOptional({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:60\n \n \n\n \n \n Sorting info\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\nimport { EsPit } from \"../../interfaces/elastic/es-pit.interface\";\nimport { EsQuery } from \"../../interfaces/elastic/es-query.interface\"\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch query DTO\n */\n @ApiExtraModels()\n export class EsQueryDto {\n /**\n * Maximum number of elements returned by Elasticsearch\n */\n @IsOptional()\n @IsDefined()\n @IsNumber()\n @IsInt()\n @ApiPropertyOptional({\n description: 'Maximum number of elements returned by Elasticsearch',\n example: 30\n })\n size?: number;\n \n /**\n * The search query object passed to Elasticsearch\n */\n @IsDefined()\n @IsObject()\n @ApiProperty({\n description: 'Search query object passed to Elasticsearch',\n example: {},\n })\n query: EsQuery;\n\n /**\n * Object, that stores PIT ID and time alive\n */\n @IsOptional()\n @IsObject()\n @ApiPropertyOptional({\n description: 'PIT object',\n example: {}\n })\n pit?: EsPit;\n\n /**\n * Sorting info\n */\n @IsOptional()\n @IsArray()\n @ApiPropertyOptional({\n description: '',\n example: []\n })\n sort?: unknown[];\n\n /**\n * Pagination info\n */\n @IsOptional()\n @IsArray()\n @ApiPropertyOptional({\n description: '',\n example: []\n })\n search_after?: unknown[];\n\n /**\n * Constructs an empty object\n */\n constructor() {\n this.size = 10;\n this.query = undefined;\n this.pit = undefined;\n this.sort = undefined;\n this.search_after = undefined;\n }\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n Optional\n pit_id\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'Contains a count of Elasticsearch shards used to process the request', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:56\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : EsResponseHits\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'Contains returned documents and metadata', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:80\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n pit_id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsString()@IsOptional()@ApiPropertyOptional({description: 'Contains PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:91\n \n \n\n \n \n ID of the PIT used in the search\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'Shows if request timed out before completion', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:39\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'The time that it took Elasticsearch to process the query', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:26\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseHits } from \"../../interfaces/elastic/es-response-hits.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'The time that it took Elasticsearch to process the query',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'Shows if request timed out before completion',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'Contains a count of Elasticsearch shards used to process the request',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'Contains returned documents and metadata',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {},\n fields: {}\n }],\n }\n })\n hits: EsResponseHits;\n\n /**\n * ID of the PIT used in the search\n */\n @IsString()\n @IsOptional()\n @ApiPropertyOptional({\n description: 'Contains PIT ID used to search for results',\n example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='\n })\n pit_id?: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsResponseHits.html":{"url":"interfaces/EsResponseHits.html","title":"interface - EsResponseHits","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsResponseHits\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-response-hits.interface.ts\n \n\n\n \n Description\n \n \n Structure of 'hits' object of Elasticsearch response\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hits\n \n \n \n Optional\n \n max_score\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hits\n \n \n \n \n \n \n \n \n hits: EsHitDto[]\n\n \n \n\n\n \n \n Type : EsHitDto[]\n\n \n \n\n\n\n\n\n \n \n Array of search results\n\n \n \n \n \n \n \n \n \n \n max_score\n \n \n \n \n \n \n \n \n max_score: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Maximum score amongst all search results\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: object\n\n \n \n\n\n \n \n Type : object\n\n \n \n\n\n\n\n\n \n \n Object containing info about hits\n\n \n \n \n \n \n \n\n\n \n import { EsHitDto } from \"../../dtos/elastic/es-hit.dto\";\n\n/**\n * Structure of 'hits' object of Elasticsearch response\n */\nexport interface EsResponseHits {\n /**\n * Object containing info about hits\n */\n total: object;\n\n /**\n * Maximum score amongst all search results\n */\n max_score?: number;\n\n /**\n * Array of search results\n */\n hits: EsHitDto[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: PaperDto[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n PaperDto[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : PaperDto[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data (papers) the page contains', isArray: true, type: PaperDto})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:27\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMetaDto\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:37\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, PartialType } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { Order } from \"../enums\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\nimport { PageMetaDto } from \"./page-meta.dto\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\n@ApiExtraModels()\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data (papers) the page contains',\n isArray: true,\n type: PaperDto\n })\n readonly data: PaperDto[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: {},\n \n })\n readonly meta: PageMetaDto;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: PaperDto[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n Private\n Readonly\n ES_PORT\n \n \n Private\n prevSearch\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Public\n Async\n getPIT\n \n \n Async\n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:73\n \n \n\n \n \n Injects needed dependencies and instantiates the storage object\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:206\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number, unit: EsTime)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:186\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n \n\n \n , amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n\n \n \n \n unit\n \n EsTime\n \n\n \n No\n \n\n \n EsTime.min\n \n\n \n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n PIT object containing PIT ID and keep_alive value\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n intercept\n \n \n \n \n \n \n \n intercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:89\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n \n \n \n \n Default value : process.env.ES_CONTAINER_NAME\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:174\n \n \n\n \n \n Elastichsearch IP address\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:169\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n prevSearch\n \n \n \n \n \n \n Type : PrevSearch\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:179\n \n \n\n \n \n Info about previously completed search\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { Observable, map, take } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/elastic/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/elastic/es-pit.interface\";\n\n/**\n * Previous search data storage\n */\nclass PrevSearch {\n /**\n * Constructs an uninitialized object\n */\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n /**\n * PIT object of the previous search\n */\n private pit: EsPit;\n set _pit(pit: EsPit) {\n this.pit = pit;\n }\n get _pit(): EsPit {\n return this.pit;\n }\n\n /**\n * Tiebreaker and sort parameters\n */\n private tiebreaker: unknown[];\n set _tiebreaker(tiebreaker: unknown[]) {\n this.tiebreaker = tiebreaker;\n }\n get _tiebreaker(): unknown[] {\n return this.tiebreaker;\n }\n\n /**\n * Number of the previous page\n */\n private prevPage: number;\n set _prevPage(page: number) {\n this.prevPage = page;\n }\n get _prevPage(): number {\n return this.prevPage;\n }\n\n /**\n * Checks if there was the search before current one\n * @returns true/false, showing whether or not there was another search before\n */\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Injects needed dependencies and instantiates the storage object\n * @param httpService \n * @param searchService \n */\n constructor(private readonly httpService: HttpService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch._pit;\n request.es_query.search_after = this.prevSearch._tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : +query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n pagesize: !query?.limit ? 10 : query.limit,\n hasNext: undefined,\n hasPrev: undefined,\n }; \n meta.hasNext = meta.pagenum * meta.pagesize el._source);\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Elastichsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsPit) => {\n res.keep_alive = alive + unit;\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Total search results\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Total search results\n */\n total: number;\n\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageMetaDto.html":{"url":"classes/PageMetaDto.html","title":"class - PageMetaDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageMetaDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n \n Implements\n \n \n PageMeta\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n hasNext\n \n \n hasPrev\n \n \n order\n \n \n pagenum\n \n \n pagesize\n \n \n total\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Flag, that shows if there's a page following the current one', example: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:53\n \n \n\n \n \n Flag, that shows if there's a page following the current one\n\n \n \n\n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Flag, that shows if there's a page preceding the current one', example: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:62\n \n \n\n \n \n Flag, that shows if there's a page preceding the current one\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : Order\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Order of the elements on the page', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:44\n \n \n\n \n \n Order of the elements on the page\n\n \n \n\n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Current page number', minimum: 1, example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:35\n \n \n\n \n \n Current page number\n\n \n \n\n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Maximum number of elements on the page', minimum: 1, example: 20})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:72\n \n \n\n \n \n Maximum number of elements on the page\n\n \n \n\n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'Total number of hits (results) acquired from the search', example: 314})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:25\n \n \n\n \n \n Total number of hits (results) acquired from the search\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, PartialType } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { Order } from \"../enums\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize'];\n\n/**\n * Page model for pagination\n */\n@ApiExtraModels()\nexport class PageMetaDto implements PageMeta {\n /**\n * Total number of hits (results) acquired from the search\n */\n @IsArray()\n @ApiProperty({\n description: 'Total number of hits (results) acquired from the search',\n example: 314\n })\n total: number;\n\n /**\n * Current page number\n */\n @ApiProperty({\n description: 'Current page number',\n minimum: 1,\n example: 3\n })\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n @ApiProperty({\n description: 'Order of the elements on the page',\n example: Order.DESC\n })\n order: Order;\n\n /**\n * Flag, that shows if there's a page following the current one\n */\n @ApiProperty({\n description: 'Flag, that shows if there\\'s a page following the current one',\n example: true\n })\n hasNext: boolean;\n\n /**\n * Flag, that shows if there's a page preceding the current one\n */\n @ApiProperty({\n description: 'Flag, that shows if there\\'s a page preceding the current one',\n example: true\n })\n hasPrev: boolean;\n\n /**\n * Maximum number of elements on the page\n */\n @ApiProperty({\n description: 'Maximum number of elements on the page',\n minimum: 1,\n example: 20\n })\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PaperDto.html":{"url":"classes/PaperDto.html","title":"class - PaperDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PaperDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/paper.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n authors\n \n \n content\n \n \n id\n \n \n summary\n \n \n tags\n \n \n title\n \n \n topic\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n authors\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of authors of the paper', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:45\n \n \n\n \n \n List of authors of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n content\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Contents of the paper presented in Markdown (.md) format', example: '...'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:87\n \n \n\n \n \n Contents of the paper [Markdown]\n\n \n \n\n \n \n \n \n \n \n \n \n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Unique ID of the paper', example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:23\n \n \n\n \n \n Unique ID of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n summary\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Summary of the paper. May be a short excerpt from the main text', example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:67\n \n \n\n \n \n Summary of the paper. May be a short excerpt from the main text.\n\n \n \n\n \n \n \n \n \n \n \n \n tags\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of tags, that show the certain topics/fields of knowledge paper is touching', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:78\n \n \n\n \n \n List of tags, that show the certain topics/fields of knowledge paper is touching\n\n \n \n\n \n \n \n \n \n \n \n \n title\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Title of the paper', example: 'Mucosal associated invariant T cell'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:34\n \n \n\n \n \n Title of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n topic\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Topic of the paper', example: 'Physics'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:56\n \n \n\n \n \n Topic of the paper\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\n@ApiExtraModels()\nexport class PaperDto {\n /**\n * Unique ID of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Unique ID of the paper',\n example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'\n })\n id: string;\n \n /**\n * Title of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Title of the paper',\n example: 'Mucosal associated invariant T cell',\n })\n title: string;\n\n /**\n * List of authors of the paper\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of authors of the paper',\n example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']\n })\n authors: string[];\n\n /**\n * Topic of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Topic of the paper',\n example: 'Physics'\n })\n topic: string;\n\n /**\n * Summary of the paper. May be a short excerpt from the main text.\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Summary of the paper. May be a short excerpt from the main text',\n example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'\n })\n summary: string;\n\n /**\n * List of tags, that show the certain topics/fields of knowledge paper is touching\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',\n example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']\n })\n tags: string[];\n\n /**\n * Contents of the paper [Markdown]\n */\n @ApiProperty({\n description: 'Contents of the paper presented in Markdown (.md) format',\n example: '...'\n })\n content: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(request: RequestDto)\n \n \n\n \n \n Decorators : \n \n @ApiTags('Search')@ApiOperation({summary: 'Finds papers by context based on the query'})@ApiResponse({status: 200, description: 'Returns back a page with acquired papers', type: PageDto})@ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:41\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n request\n \n RequestDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiTags('Search')@ApiOperation({summary: 'Finds paper by its UUID', tags: undefined})@ApiResponse({status: 200, description: 'Returns back a paper', type: PaperDto})@ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'})@Get(':uuid')@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:74\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, GatewayTimeoutException, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from \"@nestjs/swagger\";\nimport { RequestDto } from \"src/core/domain/dtos/request.dto\";\nimport { EsHitDto, EsResponseDto, PageDto, PaperDto } from \"src/core/domain\";\n\n/**\n * /papers/ route controller\n */\n@Controller({\n version: '1',\n path: 'papers',\n})\n@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiTags('Search')\n @ApiOperation({ \n summary: 'Finds papers by context based on the query',\n })\n @ApiResponse({\n status: 200,\n description: 'Returns back a page with acquired papers',\n type: PageDto\n })\n @ApiGatewayTimeoutResponse({\n description: 'Elasticsearch request timed out'\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Req() request: RequestDto): object {\n return this.searchService.findByContext(request.es_query).then(\n (response: SearchResultDto) => {\n return response.data;\n },\n (error) => {\n throw error;\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiTags('Search')\n @ApiOperation({ \n summary: 'Finds paper by its UUID',\n tags: ['Search']\n })\n @ApiResponse({\n status: 200,\n description: 'Returns back a paper',\n type: PaperDto\n })\n @ApiGatewayTimeoutResponse({\n description: 'Elasticsearch request timed out'\n })\n @Get(':uuid')\n // @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response: SearchResultDto) => {\n return response.data.hits.hits[0]._source;\n },\n (error) => {\n throw error;\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PrevSearch.html":{"url":"classes/PrevSearch.html","title":"class - PrevSearch","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PrevSearch\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Previous search data storage\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n pit\n \n \n Private\n prevPage\n \n \n Private\n tiebreaker\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Public\n isSet\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n _pit\n \n \n _tiebreaker\n \n \n _prevPage\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:16\n \n \n\n \n \n Constructs an uninitialized object\n\n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:29\n \n \n\n \n \n PIT object of the previous search\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n prevPage\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:51\n \n \n\n \n \n Number of the previous page\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n tiebreaker\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:40\n \n \n\n \n \n Tiebreaker and sort parameters\n\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Public\n isSet\n \n \n \n \n \n \n \n isSet()\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:63\n \n \n\n\n \n \n Checks if there was the search before current one\n\n\n \n \n \n Returns : boolean\n\n \n \n true/false, showing whether or not there was another search before\n\n \n \n \n \n \n\n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n _pit\n \n \n\n \n \n get_pit()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:33\n \n \n\n \n \n set_pit(pit: EsPit)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:30\n \n \n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n pit\n \n \n EsPit\n \n \n \n No\n \n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n _tiebreaker\n \n \n\n \n \n get_tiebreaker()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:44\n \n \n\n \n \n set_tiebreaker(tiebreaker: [])\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:41\n \n \n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n tiebreaker\n \n \n []\n \n \n \n No\n \n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n _prevPage\n \n \n\n \n \n get_prevPage()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:55\n \n \n\n \n \n set_prevPage(page: number)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:52\n \n \n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { Observable, map, take } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/elastic/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/elastic/es-pit.interface\";\n\n/**\n * Previous search data storage\n */\nclass PrevSearch {\n /**\n * Constructs an uninitialized object\n */\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n /**\n * PIT object of the previous search\n */\n private pit: EsPit;\n set _pit(pit: EsPit) {\n this.pit = pit;\n }\n get _pit(): EsPit {\n return this.pit;\n }\n\n /**\n * Tiebreaker and sort parameters\n */\n private tiebreaker: unknown[];\n set _tiebreaker(tiebreaker: unknown[]) {\n this.tiebreaker = tiebreaker;\n }\n get _tiebreaker(): unknown[] {\n return this.tiebreaker;\n }\n\n /**\n * Number of the previous page\n */\n private prevPage: number;\n set _prevPage(page: number) {\n this.prevPage = page;\n }\n get _prevPage(): number {\n return this.prevPage;\n }\n\n /**\n * Checks if there was the search before current one\n * @returns true/false, showing whether or not there was another search before\n */\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Injects needed dependencies and instantiates the storage object\n * @param httpService \n * @param searchService \n */\n constructor(private readonly httpService: HttpService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch._pit;\n request.es_query.search_after = this.prevSearch._tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : +query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n pagesize: !query?.limit ? 10 : query.limit,\n hasNext: undefined,\n hasPrev: undefined,\n }; \n meta.hasNext = meta.pagenum * meta.pagesize el._source);\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Elastichsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsPit) => {\n res.keep_alive = alive + unit;\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestDto.html":{"url":"classes/RequestDto.html","title":"class - RequestDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/request.dto.ts\n \n\n\n \n Description\n \n \n Request object, which contains query parameters and Elasticsearch query object\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n es_query\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: SearchQueryDto, es_query: EsQueryDto)\n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n SearchQueryDto\n \n \n \n No\n \n \n \n \n es_query\n \n \n EsQueryDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n es_query\n \n \n \n \n \n \n Type : EsQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({type: EsQueryDto, description: 'Elasticsearch query body constructed by pagination mechanism', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:37\n \n \n\n \n \n Elasticsearch query object\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : SearchQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@ApiProperty({type: SearchQueryDto, description: 'Actual query with parameters acquired from the request', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:26\n \n \n\n \n \n Query parameters object\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsDefined, IsNotEmpty, IsOptional } from \"class-validator\";\nimport { EsQueryDto } from \"./elastic/es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'es_query'];\n\n/**\n * Request object, which contains query parameters and Elasticsearch query object\n */\n@ApiExtraModels()\nexport class RequestDto {\n /**\n * Query parameters object\n */\n @IsDefined()\n @IsNotEmpty()\n @ApiProperty({\n type: SearchQueryDto,\n description: 'Actual query with parameters acquired from the request',\n example: {}\n })\n query: SearchQueryDto;\n \n /**\n * Elasticsearch query object\n */\n @IsOptional()\n @ApiPropertyOptional({\n type: EsQueryDto,\n description: 'Elasticsearch query body constructed by pagination mechanism',\n example: {},\n })\n es_query?: EsQueryDto;\n\n /**\n * Constructs an object with provided parameters\n * @param query\n * @param es_query\n */\n constructor(query: SearchQueryDto, es_query: EsQueryDto) {\n this.query = query;\n this.es_query = es_query;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchInfo.html":{"url":"interfaces/SearchInfo.html","title":"interface - SearchInfo","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchInfo\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n\n\n \n Description\n \n \n Structure of search metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n pit\n \n \n \n \n \n \n \n \n pit: EsPit\n\n \n \n\n\n \n \n Type : EsPit\n\n \n \n\n\n\n\n\n \n \n Previous search saved PIT\n\n \n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n tiebreaker: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n Special tiebreaker used by Elasticsearch.\nIndicates the starting point of next search\n\n \n \n \n \n \n \n\n\n \n import { EsPit } from \"./elastic/es-pit.interface\";\n\n/**\n * Structure of search metadata\n */\nexport interface SearchInfo {\n /**\n * Previous search saved PIT\n */\n pit: EsPit;\n\n /**\n * Special tiebreaker used by Elasticsearch.\n * Indicates the starting point of next search\n */\n tiebreaker: unknown[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n Search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { PapersController } from \"src/application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\n\n/**\n * Search module\n */\n@Module({\n imports: [\n HttpModule,\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:59\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:48\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:59\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:37\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:25\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n\n /**\n * Constructs an object with provided parameters\n * @param query \n * @param page \n * @param limit \n * @param order \n */\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.page = page;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: EsResponseDto)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:42\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n EsResponseDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : EsResponseDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:42\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:25\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty } from \"class-validator\";\nimport { EsResponseDto } from \"./elastic/es-response.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n took: 1,\n timed_out: false,\n _shards: {},\n hits: {}\n },\n })\n data: EsResponseDto;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: EsResponseDto) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:12\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(es_query: EsQueryDto)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:70\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n es_query\n \n EsQueryDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:35\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n \n \n \n \n Default value : process.env.ES_CONTAINER_NAME\n \n \n \n \n Defined in src/core/services/common/search.service.ts:28\n \n \n\n \n \n Elasticsearch IP address\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:23\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { GatewayTimeoutException, HttpException, Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { EsQueryDto } from \"src/core/domain/dtos/elastic/es-query.dto\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Elasticsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let ESQ: EsQueryDto = new EsQueryDto;\n\n ESQ.size = 1;\n ESQ.query = {\n query_string: {\n query: ('id:' + uuid),\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {\n data: ESQ,\n headers: {'Content-Type': 'application/json'},\n }))\n ?.pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new GatewayTimeoutException('Elasticsearch Timed Out'));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query, \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(es_query: EsQueryDto): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n ?.pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new GatewayTimeoutException('Elasticsearch Timed Out'));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n class\n EsHitDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n class\n EsQueryDto\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n class\n PageMetaDto\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n class\n PaperDto\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n class\n RequestDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-pit.interface.ts\n \n interface\n EsPit\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-query-string.interface.ts\n \n interface\n EqQueryString\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-query.interface.ts\n \n interface\n EsQuery\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-response-hits.interface.ts\n \n interface\n EsResponseHits\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n interface\n SearchInfo\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n class\n PrevSearch\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (6/6)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n EsTime   (src/.../es-time.enum.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/es-time.enum.ts\n \n \n \n \n \n \n EsTime\n \n \n \n \n Elasticsearch time-units\n\n \n \n \n \n  days\n \n \n \n \n Value : d\n \n \n \n \n  hours\n \n \n \n \n Value : h\n \n \n \n \n  min\n \n \n \n \n Value : m\n \n \n \n \n  sec\n \n \n \n \n Value : s\n \n \n \n \n  ms\n \n \n \n \n Value : ms\n \n \n \n \n  us\n \n \n \n \n Value : micros\n \n \n \n \n  ns\n \n \n \n \n Value : nanos\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n Page display order\n\n \n \n \n \n  ASC\n \n \n \n \n Value : asc\n \n \n \n \n  DESC\n \n \n \n \n Value : desc\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 12 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 9 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../page-meta.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../paper.dto.ts)\n \n \n allowedProperties   (src/.../request.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n allowedProperties   (src/.../es-hit.dto.ts)\n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/page-meta.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/paper.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/request.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'es_query']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['sort', '_source', '_score']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
}
diff --git a/documentation/miscellaneous/variables.html b/documentation/miscellaneous/variables.html
index 15e18c9..0861cca 100644
--- a/documentation/miscellaneous/variables.html
+++ b/documentation/miscellaneous/variables.html
@@ -62,13 +62,7 @@
-
src/core/domain/dtos/es-hit.dto.ts
+
src/core/domain/dtos/page-meta.dto.ts
@@ -131,77 +134,7 @@
- Default value : ['sort', '_source', '_score']
-
-
-
-
-
- List of allowed properties in this DTO
-
-
-
-
-
-
-
-
src/core/domain/dtos/es-query.dto.ts
-
-
-
-
-
-
-
- allowedProperties
-
-
-
-
-
-
- Type : []
-
-
-
-
-
- Default value : ['size', 'query', 'pit', 'sort']
-
-
-
-
-
- List of allowed properties in this DTO
-
-
-
-
-
-
-
-
src/core/domain/dtos/es-response.dto.ts
-
-
-
-
-
-
-
- allowedProperties
-
-
-
-
-
-
- Type : []
-
-
-
-
-
- Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']
+ Default value : ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize']
@@ -390,6 +323,111 @@
+
src/core/domain/dtos/elastic/es-hit.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['sort', '_source', '_score']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
+
src/core/domain/dtos/elastic/es-query.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['size', 'query', 'pit', 'sort']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
+
src/core/domain/dtos/elastic/es-response.dto.ts
+
+
+
+
+
+
+
+ allowedProperties
+
+
+
+
+
+
+ Type : []
+
+
+
+
+
+ Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']
+
+
+
+
+
+ List of allowed properties in this DTO
+
+
+
+
+
+
+
src/infrastructure/config/env.objects.ts
diff --git a/documentation/modules/CommonModule/dependencies.svg b/documentation/modules/CommonModule/dependencies.svg
index 17756f5..9675a86 100644
--- a/documentation/modules/CommonModule/dependencies.svg
+++ b/documentation/modules/CommonModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_CommonModule
-
-cluster_CommonModule_imports
-
-
cluster_CommonModule_exports
+
+cluster_CommonModule_imports
+
+
HttpResponseModule
diff --git a/documentation/modules/HttpResponseModule.html b/documentation/modules/HttpResponseModule.html
index f298ffb..a50283e 100644
--- a/documentation/modules/HttpResponseModule.html
+++ b/documentation/modules/HttpResponseModule.html
@@ -57,14 +57,14 @@
cluster_HttpResponseModule
-
-cluster_HttpResponseModule_exports
-
-
cluster_HttpResponseModule_providers
+
+cluster_HttpResponseModule_exports
+
+
HttpResponseService
diff --git a/documentation/modules/LoggerModule.html b/documentation/modules/LoggerModule.html
index 733b70a..d91a07c 100644
--- a/documentation/modules/LoggerModule.html
+++ b/documentation/modules/LoggerModule.html
@@ -57,14 +57,14 @@
cluster_LoggerModule
-
-cluster_LoggerModule_exports
-
-
cluster_LoggerModule_providers
+
+cluster_LoggerModule_exports
+
+
LoggerService
diff --git a/documentation/modules/LoggerModule/dependencies.svg b/documentation/modules/LoggerModule/dependencies.svg
index 5c106c0..0321adc 100644
--- a/documentation/modules/LoggerModule/dependencies.svg
+++ b/documentation/modules/LoggerModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_LoggerModule
-
-cluster_LoggerModule_providers
-
-
cluster_LoggerModule_exports
+
+cluster_LoggerModule_providers
+
+
LoggerService
diff --git a/documentation/modules/SearchModule.html b/documentation/modules/SearchModule.html
index d6ede70..fbcca7c 100644
--- a/documentation/modules/SearchModule.html
+++ b/documentation/modules/SearchModule.html
@@ -134,7 +134,7 @@
Description
search module
+ Search module
@@ -178,11 +178,11 @@
import { HttpModule } from "@nestjs/axios";
import { Module } from "@nestjs/common";
-import { PapersController } from "src/application";
+import { PapersController } from "../../application";
import { SearchService } from "../../core/services/common/search.service";
/**
- * search module
+ * Search module
*/
@Module({
imports: [
diff --git a/documentation/overview.html b/documentation/overview.html
index 5138f8f..91e00cb 100644
--- a/documentation/overview.html
+++ b/documentation/overview.html
@@ -301,7 +301,7 @@
-
11 Classes
+
12 Classes
diff --git a/package-lock.json b/package-lock.json
index fb8019a..a26b6a9 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4058,7 +4058,8 @@
"node_modules/asap": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
- "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA=="
+ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
+ "dev": true
},
"node_modules/ast-transform": {
"version": "0.0.0",
@@ -5302,6 +5303,7 @@
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz",
"integrity": "sha512-K7i4zNfT2kgQz3GylDw40ot9GAE47sFZ9EXHFSPP6zONLgH6kWXE0KWJchkbQJLBkRazq4APwZ4OwiFFlT95OQ==",
+ "dev": true,
"dependencies": {
"asap": "^2.0.0",
"wrappy": "1"
@@ -7047,6 +7049,7 @@
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
"integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true,
"engines": {
"node": ">=0.8.19"
}
@@ -12861,7 +12864,8 @@
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw=="
+ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
+ "dev": true
},
"node_modules/throat": {
"version": "6.0.1",
@@ -13695,6 +13699,7 @@
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz",
"integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==",
+ "dev": true,
"dependencies": {
"imurmurhash": "^0.1.4",
"signal-exit": "^3.0.7"
@@ -16733,7 +16738,8 @@
"asap": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
- "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA=="
+ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
+ "dev": true
},
"ast-transform": {
"version": "0.0.0",
@@ -17692,6 +17698,7 @@
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz",
"integrity": "sha512-K7i4zNfT2kgQz3GylDw40ot9GAE47sFZ9EXHFSPP6zONLgH6kWXE0KWJchkbQJLBkRazq4APwZ4OwiFFlT95OQ==",
+ "dev": true,
"requires": {
"asap": "^2.0.0",
"wrappy": "1"
@@ -18984,7 +18991,8 @@
"imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true
},
"inflight": {
"version": "1.0.6",
@@ -23388,7 +23396,8 @@
"text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw=="
+ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
+ "dev": true
},
"throat": {
"version": "6.0.1",
@@ -23985,6 +23994,7 @@
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz",
"integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==",
+ "dev": true,
"requires": {
"imurmurhash": "^0.1.4",
"signal-exit": "^3.0.7"
diff --git a/package.json b/package.json
index ca94796..10d3a13 100644
--- a/package.json
+++ b/package.json
@@ -19,7 +19,7 @@
"test:watch": "jest --watch",
"test:cov": "jest --coverage",
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
- "test:e2e": "jest --config ./test/jest-e2e.json",
+ "test:e2e": "jest --config ./src/test/jest-e2e.json",
"doc": "./node_modules/.bin/compodoc -p tsconfig.json -w -s -r 7000 --theme 'readthedocs'"
},
"dependencies": {
@@ -89,6 +89,11 @@
"collectCoverageFrom": [
"**/*.(t|j)s"
],
+ "coveragePathIgnorePatterns": [
+ "/dist/",
+ "/documentation",
+ "/.eslintrc.js"
+ ],
"coverageDirectory": "../coverage",
"testEnvironment": "node"
}
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 7a18f12..74efcdf 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -1,9 +1,9 @@
-import { Controller, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from "@nestjs/common";
+import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Req, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
-import { PageInterceptor } from "src/core/interceptors/page.interceptor";
-import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
-import { ApiOperation, ApiResponse } from "@nestjs/swagger";
-import { RequestDto } from "src/core/domain/dtos/request.dto";
+import { PageInterceptor } from "../../core/interceptors/page.interceptor";
+import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from "@nestjs/swagger";
+import { RequestDto } from "../../core/domain/dtos/request.dto";
+import { EsHitDto, EsResponseDto, PageDto, PaperDto } from "../../core/domain";
/**
* /papers/ route controller
@@ -12,6 +12,7 @@ import { RequestDto } from "src/core/domain/dtos/request.dto";
version: '1',
path: 'papers',
})
+@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)
export class PapersController {
constructor(private searchService: SearchService) {}
@@ -21,19 +22,25 @@ export class PapersController {
* @param response
* @returns a response with a set of matching papers
*/
- @ApiOperation({ summary: 'Finds papers by context based on the query.' })
- @ApiResponse({
- status: 200,
- description: 'Returns back acquired papers.',
- type: SearchResultDto,
- })
+ @ApiTags('Search')
+ @ApiOperation({
+ summary: 'Finds papers by context based on the query',
+ })
+ @ApiResponse({
+ status: 200,
+ description: 'Returns back a page with acquired papers',
+ type: PageDto
+ })
+ @ApiGatewayTimeoutResponse({
+ description: 'Elasticsearch request timed out'
+ })
@Get('search')
@UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByContext(@Req() query: RequestDto): object {
- return this.searchService.findByContext(query.es_query).then(
- (response: SearchResultDto) => {
- return response.data;
+ getByContext(@Req() request: RequestDto): Promise {
+ return this.searchService.findByContext(request.es_query).then(
+ (response) => {
+ return response;
},
(error) => {
throw error;
@@ -47,19 +54,25 @@ export class PapersController {
* @param response
* @returns a response with a requested object
*/
- @ApiOperation({ summary: 'Finds paper by its UUID.' })
- @ApiResponse({
- status: 200,
- description: 'Returns back acquired paper.',
- type: SearchResultDto,
- })
+ @ApiTags('Search')
+ @ApiOperation({
+ summary: 'Finds paper by its UUID',
+ tags: ['Search']
+ })
+ @ApiResponse({
+ status: 200,
+ description: 'Returns back a paper',
+ type: PaperDto
+ })
+ @ApiGatewayTimeoutResponse({
+ description: 'Elasticsearch request timed out'
+ })
@Get(':uuid')
- @UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {
+ getByID(@Param('uuid', ParseUUIDPipe) uuid: string): Promise {
return this.searchService.findByID(uuid).then(
- (response: SearchResultDto) => {
- return response.data;
+ (response: EsResponseDto) => {
+ return response.hits.hits[0]._source;
},
(error) => {
throw error;
diff --git a/src/core/domain/dtos/es-hit.dto.ts b/src/core/domain/dtos/elastic/es-hit.dto.ts
similarity index 81%
rename from src/core/domain/dtos/es-hit.dto.ts
rename to src/core/domain/dtos/elastic/es-hit.dto.ts
index 37af015..e2d6c28 100644
--- a/src/core/domain/dtos/es-hit.dto.ts
+++ b/src/core/domain/dtos/elastic/es-hit.dto.ts
@@ -1,6 +1,6 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
import { IsNotEmpty, IsOptional } from "class-validator";
-import { PaperDto } from "./paper.dto";
+import { PaperDto } from "../paper.dto";
/**
* List of allowed properties in this DTO
@@ -10,6 +10,7 @@ const allowedProperties = ['sort', '_source', '_score'];
/**
* Structure of the document stored and retrieved from Elasticsearch
*/
+@ApiExtraModels()
export class EsHitDto {
/**
* Actual document stored in Elasticsearch
@@ -27,7 +28,7 @@ export class EsHitDto {
* List of objects that represents how the hit was sorted
*/
@IsOptional()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'List of objects that represents how the hit was sorted',
example: {}
})
@@ -37,7 +38,7 @@ export class EsHitDto {
* Hit relevance score
*/
@IsOptional()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'Relevance score',
example: 1.2355
})
diff --git a/src/core/domain/dtos/es-query.dto.ts b/src/core/domain/dtos/elastic/es-query.dto.ts
similarity index 81%
rename from src/core/domain/dtos/es-query.dto.ts
rename to src/core/domain/dtos/elastic/es-query.dto.ts
index 5c9fd6b..0572933 100644
--- a/src/core/domain/dtos/es-query.dto.ts
+++ b/src/core/domain/dtos/elastic/es-query.dto.ts
@@ -1,7 +1,7 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
import { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
-import { EsPit } from "../interfaces/es-pit.interface";
-import { EsQuery } from "../interfaces/es-query.interface"
+import { EsPit } from "../../interfaces/elastic/es-pit.interface";
+import { EsQuery } from "../../interfaces/elastic/es-query.interface"
/**
* List of allowed properties in this DTO
@@ -11,6 +11,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
/**
* Elasticsearch query DTO
*/
+ @ApiExtraModels()
export class EsQueryDto {
/**
* Maximum number of elements returned by Elasticsearch
@@ -19,7 +20,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
@IsDefined()
@IsNumber()
@IsInt()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'Maximum number of elements returned by Elasticsearch',
example: 30
})
@@ -41,7 +42,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
*/
@IsOptional()
@IsObject()
- @ApiProperty({
+ @ApiPropertyOptional({
description: 'PIT object',
example: {}
})
@@ -52,7 +53,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
*/
@IsOptional()
@IsArray()
- @ApiProperty({
+ @ApiPropertyOptional({
description: '',
example: []
})
@@ -63,7 +64,7 @@ import { EsQuery } from "../interfaces/es-query.interface"
*/
@IsOptional()
@IsArray()
- @ApiProperty({
+ @ApiPropertyOptional({
description: '',
example: []
})
diff --git a/src/core/domain/dtos/es-response.dto.ts b/src/core/domain/dtos/elastic/es-response.dto.ts
similarity index 73%
rename from src/core/domain/dtos/es-response.dto.ts
rename to src/core/domain/dtos/elastic/es-response.dto.ts
index 84bc76b..9270953 100644
--- a/src/core/domain/dtos/es-response.dto.ts
+++ b/src/core/domain/dtos/elastic/es-response.dto.ts
@@ -1,6 +1,6 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
import { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from "class-validator";
-import { EsResponseHits } from "../interfaces/es-response-hits.interface";
+import { EsResponseHits } from "../../interfaces/elastic/es-response-hits.interface";
/**
* List of allowed properties in this DTO
@@ -10,6 +10,7 @@ const allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];
/**
* Elasticsearch response DTO
*/
+@ApiExtraModels()
export class EsResponseDto {
/**
* Number of milliseconds it
@@ -19,7 +20,7 @@ export class EsResponseDto {
@IsNotEmpty()
@IsNumber()
@ApiProperty({
- description: 'took',
+ description: 'The time that it took Elasticsearch to process the query',
example: 5
})
took: number;
@@ -32,7 +33,7 @@ export class EsResponseDto {
@IsNotEmpty()
@IsBoolean()
@ApiProperty({
- description: 'timed_out',
+ description: 'Shows if request timed out before completion',
example: false,
})
timed_out: boolean;
@@ -44,7 +45,7 @@ export class EsResponseDto {
@IsOptional()
@IsObject()
@ApiProperty({
- description: '_shards',
+ description: 'Contains a count of Elasticsearch shards used to process the request',
example: {
total: 1,
successful: 1,
@@ -60,7 +61,7 @@ export class EsResponseDto {
@IsOptional()
@IsObject()
@ApiProperty({
- description: 'hits',
+ description: 'Contains returned documents and metadata',
example: {
total: {
value: 3,
@@ -71,12 +72,8 @@ export class EsResponseDto {
_index: 'papers',
_id: '01002',
_score: 1.2,
- _source: {
-
- },
- fields: {
-
- }
+ _source: {},
+ fields: {}
}],
}
})
@@ -87,8 +84,8 @@ export class EsResponseDto {
*/
@IsString()
@IsOptional()
- @ApiProperty({
- description: 'PIT ID used to search for results',
+ @ApiPropertyOptional({
+ description: 'Contains PIT ID used to search for results',
example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='
})
pit_id?: string;
diff --git a/src/core/domain/dtos/index.ts b/src/core/domain/dtos/index.ts
index 09dfd59..d24be14 100644
--- a/src/core/domain/dtos/index.ts
+++ b/src/core/domain/dtos/index.ts
@@ -1,6 +1,6 @@
-export * from './es-query.dto';
-export * from './es-response.dto';
-export * from './es-hit.dto';
+export * from './elastic/es-query.dto';
+export * from './elastic/es-response.dto';
+export * from './elastic/es-hit.dto';
export * from './page.dto';
export * from './search-q.dto';
export * from './search-result.dto';
diff --git a/src/core/domain/dtos/page-meta.dto.ts b/src/core/domain/dtos/page-meta.dto.ts
new file mode 100644
index 0000000..2a89285
--- /dev/null
+++ b/src/core/domain/dtos/page-meta.dto.ts
@@ -0,0 +1,73 @@
+import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
+import { IsArray } from "class-validator";
+import { Order } from "../enums";
+import { PageMeta } from "../interfaces/page-meta.interface";
+import { PaperDto } from "./paper.dto";
+
+/**
+ * List of allowed properties in this DTO
+ */
+const allowedProperties = ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize'];
+
+/**
+ * Page model for pagination
+ */
+@ApiExtraModels()
+export class PageMetaDto implements PageMeta {
+ /**
+ * Total number of hits (results) acquired from the search
+ */
+ @IsArray()
+ @ApiProperty({
+ description: 'Total number of hits (results) acquired from the search',
+ example: 314
+ })
+ total: number;
+
+ /**
+ * Current page number
+ */
+ @ApiProperty({
+ description: 'Current page number',
+ minimum: 1,
+ example: 3
+ })
+ pagenum: number;
+
+ /**
+ * Order of the elements on the page
+ */
+ @ApiProperty({
+ description: 'Order of the elements on the page',
+ example: Order.DESC
+ })
+ order: Order;
+
+ /**
+ * Flag, that shows if there's a page following the current one
+ */
+ @ApiProperty({
+ description: 'Flag, that shows if there\'s a page following the current one',
+ example: true
+ })
+ hasNext: boolean;
+
+ /**
+ * Flag, that shows if there's a page preceding the current one
+ */
+ @ApiProperty({
+ description: 'Flag, that shows if there\'s a page preceding the current one',
+ example: true
+ })
+ hasPrev: boolean;
+
+ /**
+ * Maximum number of elements on the page
+ */
+ @ApiProperty({
+ description: 'Maximum number of elements on the page',
+ minimum: 1,
+ example: 20
+ })
+ pagesize: number;
+}
\ No newline at end of file
diff --git a/src/core/domain/dtos/page.dto.ts b/src/core/domain/dtos/page.dto.ts
index 8c0ab24..785b1e0 100644
--- a/src/core/domain/dtos/page.dto.ts
+++ b/src/core/domain/dtos/page.dto.ts
@@ -1,6 +1,8 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
import { IsArray } from "class-validator";
+import { Order } from "../enums";
import { PageMeta } from "../interfaces/page-meta.interface";
+import { PageMetaDto } from "./page-meta.dto";
import { PaperDto } from "./paper.dto";
/**
@@ -11,14 +13,16 @@ const allowedProperties = ['data', 'meta'];
/**
* Page model for pagination
*/
+@ApiExtraModels()
export class PageDto {
/**
* Data block of the page
*/
@IsArray()
@ApiProperty({
- description: 'All data the page contains',
+ description: 'All data (papers) the page contains',
isArray: true,
+ type: PaperDto
})
readonly data: PaperDto[];
@@ -27,9 +31,10 @@ export class PageDto {
*/
@ApiProperty({
description: 'Metadata for the page',
- // example: [],
+ // example: {},
+
})
- readonly meta: PageMeta;
+ readonly meta: PageMetaDto;
/**
* Constructs an object with provided parameters
diff --git a/src/core/domain/dtos/paper.dto.ts b/src/core/domain/dtos/paper.dto.ts
index bd61c37..07e1d7d 100644
--- a/src/core/domain/dtos/paper.dto.ts
+++ b/src/core/domain/dtos/paper.dto.ts
@@ -1,4 +1,4 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
import { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
/**
@@ -9,6 +9,7 @@ const allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags',
/**
* Structure of the document stored and retrieved from Elasticsearch
*/
+@ApiExtraModels()
export class PaperDto {
/**
* Unique ID of the paper
diff --git a/src/core/domain/dtos/request.dto.ts b/src/core/domain/dtos/request.dto.ts
index 8fe1a0f..973264d 100644
--- a/src/core/domain/dtos/request.dto.ts
+++ b/src/core/domain/dtos/request.dto.ts
@@ -1,6 +1,6 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
import { IsDefined, IsNotEmpty, IsOptional } from "class-validator";
-import { EsQueryDto } from "./es-query.dto";
+import { EsQueryDto } from "./elastic/es-query.dto";
import { SearchQueryDto } from "./search-q.dto";
/**
@@ -11,6 +11,7 @@ const allowedProperties = ['query', 'es_query'];
/**
* Request object, which contains query parameters and Elasticsearch query object
*/
+@ApiExtraModels()
export class RequestDto {
/**
* Query parameters object
@@ -18,7 +19,8 @@ export class RequestDto {
@IsDefined()
@IsNotEmpty()
@ApiProperty({
- description: '',
+ type: SearchQueryDto,
+ description: 'Actual query with parameters acquired from the request',
example: {}
})
query: SearchQueryDto;
@@ -27,8 +29,9 @@ export class RequestDto {
* Elasticsearch query object
*/
@IsOptional()
- @ApiProperty({
- description: '',
+ @ApiPropertyOptional({
+ type: EsQueryDto,
+ description: 'Elasticsearch query body constructed by pagination mechanism',
example: {},
})
es_query?: EsQueryDto;
@@ -38,8 +41,8 @@ export class RequestDto {
* @param query
* @param es_query
*/
- constructor(query: SearchQueryDto, es_query: EsQueryDto) {
+ constructor(query: SearchQueryDto, es_query: EsQueryDto) {
this.query = query;
this.es_query = es_query;
- }
+ }
}
\ No newline at end of file
diff --git a/src/core/domain/dtos/search-q.dto.ts b/src/core/domain/dtos/search-q.dto.ts
index e5ad8eb..8834657 100644
--- a/src/core/domain/dtos/search-q.dto.ts
+++ b/src/core/domain/dtos/search-q.dto.ts
@@ -1,4 +1,4 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
/**
@@ -9,6 +9,7 @@ const allowedProperties = ['query', 'pagen', 'limit', 'order'];
/**
* Elasticsearch response DTO
*/
+@ApiExtraModels()
export class SearchQueryDto {
/**
* Given query string to perform the
diff --git a/src/core/domain/dtos/search-result.dto.ts b/src/core/domain/dtos/search-result.dto.ts
index c1c42bd..c926308 100644
--- a/src/core/domain/dtos/search-result.dto.ts
+++ b/src/core/domain/dtos/search-result.dto.ts
@@ -1,6 +1,6 @@
-import { ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
import { IsArray, IsDefined, IsInt, IsNotEmpty } from "class-validator";
-import { EsResponseDto } from "./es-response.dto";
+import { EsResponseDto } from "./elastic/es-response.dto";
/**
* List of allowed properties in this DTO
@@ -10,6 +10,7 @@ const allowedProperties = ['data', 'status'];
/**
* Elasticsearch response DTO
*/
+@ApiExtraModels()
export class SearchResultDto {
/**
* Status code
@@ -32,7 +33,10 @@ export class SearchResultDto {
@ApiProperty({
description: 'Data acquired from the Elasticsearch',
example: {
-
+ took: 1,
+ timed_out: false,
+ _shards: {},
+ hits: {}
},
})
data: EsResponseDto;
diff --git a/src/core/domain/interfaces/es-pit.interface.ts b/src/core/domain/interfaces/elastic/es-pit.interface.ts
similarity index 100%
rename from src/core/domain/interfaces/es-pit.interface.ts
rename to src/core/domain/interfaces/elastic/es-pit.interface.ts
diff --git a/src/core/domain/interfaces/es-query-string.interface.ts b/src/core/domain/interfaces/elastic/es-query-string.interface.ts
similarity index 100%
rename from src/core/domain/interfaces/es-query-string.interface.ts
rename to src/core/domain/interfaces/elastic/es-query-string.interface.ts
diff --git a/src/core/domain/interfaces/es-query.interface.ts b/src/core/domain/interfaces/elastic/es-query.interface.ts
similarity index 100%
rename from src/core/domain/interfaces/es-query.interface.ts
rename to src/core/domain/interfaces/elastic/es-query.interface.ts
diff --git a/src/core/domain/interfaces/es-response-hits.interface.ts b/src/core/domain/interfaces/elastic/es-response-hits.interface.ts
similarity index 84%
rename from src/core/domain/interfaces/es-response-hits.interface.ts
rename to src/core/domain/interfaces/elastic/es-response-hits.interface.ts
index 32db4de..6bca2ef 100644
--- a/src/core/domain/interfaces/es-response-hits.interface.ts
+++ b/src/core/domain/interfaces/elastic/es-response-hits.interface.ts
@@ -1,4 +1,4 @@
-import { EsHitDto } from "../dtos/es-hit.dto";
+import { EsHitDto } from "../../dtos/elastic/es-hit.dto";
/**
* Structure of 'hits' object of Elasticsearch response
diff --git a/src/core/domain/interfaces/index.ts b/src/core/domain/interfaces/index.ts
index c751d45..6295a5f 100644
--- a/src/core/domain/interfaces/index.ts
+++ b/src/core/domain/interfaces/index.ts
@@ -1,7 +1,7 @@
export * from './http-response.interface'
export * from './page-meta.interface'
-export * from './es-query.interface'
-export * from './es-query-string.interface'
-export * from './es-response-hits.interface'
-export * from './es-pit.interface'
-export * from './search-info.interface'
\ No newline at end of file
+export * from './search-info.interface'
+export * from './elastic/es-query.interface'
+export * from './elastic/es-query-string.interface'
+export * from './elastic/es-response-hits.interface'
+export * from './elastic/es-pit.interface'
\ No newline at end of file
diff --git a/src/core/domain/interfaces/search-info.interface.ts b/src/core/domain/interfaces/search-info.interface.ts
index 4ad0b9c..1e1c995 100644
--- a/src/core/domain/interfaces/search-info.interface.ts
+++ b/src/core/domain/interfaces/search-info.interface.ts
@@ -1,4 +1,4 @@
-import { EsPit } from "./es-pit.interface";
+import { EsPit } from "./elastic/es-pit.interface";
/**
* Structure of search metadata
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 934f058..76e1934 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -2,13 +2,13 @@ import { HttpService } from "@nestjs/axios";
import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
import { Observable, map, take } from "rxjs";
import { PageDto } from "../domain/dtos";
-import { EsQueryDto } from "../domain/dtos/es-query.dto";
+import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
-import { EsPit } from "../domain/interfaces/es-pit.interface";
+import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
/**
* Previous search data storage
@@ -168,6 +168,11 @@ export class PageInterceptor implements NestInterceptor {
*/
private readonly ES_PORT = process.env.ES_PORT;
+ /**
+ * Elastichsearch IP address
+ */
+ private readonly ES_IP = process.env.ES_CONTAINER_NAME;
+
/**
* Info about previously completed search
*/
@@ -181,7 +186,7 @@ export class PageInterceptor implements NestInterceptor {
public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {
return new Promise((resolve, reject) => {
try {
- this.httpService.post(`http://localhost:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsPit) => {
res.keep_alive = alive + unit;
@@ -201,7 +206,7 @@ export class PageInterceptor implements NestInterceptor {
async deletePIT(pitID: string): Promise {
return new Promise((resolve, reject) => {
try {
- this.httpService.delete(`http://localhost:${this.ES_PORT}/_pit`, {
+ this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
data: { id: pitID },
headers: { 'Content-Type': 'application/json' },
})
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index a4a5d30..609ce0d 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,10 +1,8 @@
import { HttpService } from "@nestjs/axios";
import { GatewayTimeoutException, HttpException, Injectable } from "@nestjs/common";
import { map, take } from "rxjs";
-import { EsResponseDto } from "src/core/domain/dtos";
-import { EsQueryDto } from "src/core/domain/dtos/es-query.dto";
-import { SearchResultDto } from "src/core/domain/dtos/search-result.dto";
-import { HttpResponseException } from "src/core/exceptions";
+import { EsResponseDto} from "../../domain/dtos";
+import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
/**
* Search service provider
@@ -23,12 +21,17 @@ export class SearchService {
*/
private readonly ES_PORT = process.env.ES_PORT;
+ /**
+ * Elasticsearch IP address
+ */
+ private readonly ES_IP = process.env.ES_CONTAINER_NAME;
+
/**
* Finds a paper by its own ID
* @param uuid
* @returns Elasticsearch hits or an error object
*/
- async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?
+ async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?
let ESQ: EsQueryDto = new EsQueryDto;
ESQ.size = 1;
@@ -40,7 +43,7 @@ export class SearchService {
return new Promise((resolve, reject) => {
try {
- (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
+ (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
data: ESQ,
headers: {'Content-Type': 'application/json'},
}))
@@ -49,8 +52,7 @@ export class SearchService {
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
-
- resolve(new SearchResultDto(200, res));
+ resolve(res);
});
} catch (error) {
reject(error);
@@ -63,10 +65,10 @@ export class SearchService {
* @param query,
* @returns Elasticsearch hits or an error object
*/
- async findByContext(es_query: EsQueryDto): Promise {
+ async findByContext(es_query: EsQueryDto): Promise {
return new Promise((resolve, reject) => {
try {
- (this.httpService.get(`http://localhost:${this.ES_PORT}/_search`, {
+ (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
}))
@@ -76,7 +78,7 @@ export class SearchService {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
- resolve(new SearchResultDto(200, res));
+ resolve(res);
});
} catch (error) {
reject(error);
diff --git a/src/infrastructure/modules/search.module.ts b/src/infrastructure/modules/search.module.ts
index cbb486d..526c7d7 100644
--- a/src/infrastructure/modules/search.module.ts
+++ b/src/infrastructure/modules/search.module.ts
@@ -1,6 +1,6 @@
import { HttpModule } from "@nestjs/axios";
import { Module } from "@nestjs/common";
-import { PapersController } from "src/application";
+import { PapersController } from "../../application";
import { SearchService } from "../../core/services/common/search.service";
/**
diff --git a/src/main.ts b/src/main.ts
index eff9b48..c3efc9c 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -30,12 +30,14 @@ async function bootstrap() {
* Configuration of the Swagger document
*/
const config = new DocumentBuilder()
- .setTitle('Nestjs boilerplate')
- .setDescription('This is a nest clean architecture boilerplate')
+ .setTitle('Freeland')
+ .setDescription('Freeland open library API')
.setVersion('0.0.1')
.build();
- const document = SwaggerModule.createDocument(app, config);
+ const document = SwaggerModule.createDocument(app, config, {
+ deepScanRoutes: true,
+ });
SwaggerModule.setup('api', app, document);
try {
diff --git a/src/test/e2e/papers.controller.e2e.spec.ts b/src/test/e2e/papers.controller.e2e.spec.ts
index 1fa3122..922bdc0 100644
--- a/src/test/e2e/papers.controller.e2e.spec.ts
+++ b/src/test/e2e/papers.controller.e2e.spec.ts
@@ -1,79 +1,224 @@
import { Test, TestingModule } from "@nestjs/testing";
import { INestApplication } from "@nestjs/common";
import request from 'supertest'
-import { AppModule } from "src/infrastructure/modules";
+import { AppModule } from "../../infrastructure/modules";
+import { ConfigModule } from "@nestjs/config";
+import { HttpService } from "@nestjs/axios";
+import { of } from "rxjs";
+import { Order } from "../../core/domain";
describe('E2E Testing of /papers', () => {
let app: INestApplication;
+ let httpService: HttpService;
beforeAll(async () => {
const moduleRef: TestingModule = await Test.createTestingModule({
- imports: [AppModule],
+ imports: [
+ AppModule,
+ ConfigModule.forRoot({
+ isGlobal: true,
+ cache: true,
+ expandVariables: true
+ })
+ ],
+ providers: [
+ {
+ provide: HttpService,
+ useValue: {
+ get: jest.fn(),
+ post: jest.fn(),
+ delete: jest.fn()
+ }
+ }
+ ]
}).compile();
app = moduleRef.createNestApplication();
+ httpService = moduleRef.get(HttpService)
await app.init();
});
+
+ it('Should be defined', () => {
+ expect(app).toBeDefined();
+ expect(httpService).toBeDefined();
+ });
- it('GET /papers/{uuid} | Should return one exact item on page', async () => {
+ it('GET /papers/{uuid} | Should return one exact item', async () => {
+ const axiosRes = of({
+ status: 200,
+ statusText: 'statText',
+ headers: null,
+ config: null,
+ data: {
+ took: 5,
+ timed_out: false,
+ _shards: {},
+ hits: {
+ total: {},
+ hits: [
+ {
+ _source: {
+ id: 'thisIsIDofTheFirstObject',
+ title: 'thisIsTitle',
+ authors: ['A1', 'A2', 'A3'],
+ topic: 'thisIsTopic',
+ summary: 'thisIsSummary',
+ tags: ['T1', 'T2', 'T3'],
+ content: 'thisIsContent'
+ }
+ }
+ ]
+ }
+ }
+ });
+
+ let httpGetSpy = jest.spyOn(httpService, 'get').mockReturnValueOnce(axiosRes);
+
const test = await request(app.getHttpServer())
- .get('/papers/eeeb2d01-8315-454e-b33f-3d6caa25db42') // ??? Fetch a random object from DB
+ .get('/papers/2d3dc418-7778-abab-b33f-3d63aa25db41') // ??? Fetch a random object from DB
.expect(200);
+
+ // Expect HttpService.get() method to be touched
+ expect(httpGetSpy).toHaveBeenCalled();
+ expect(httpGetSpy).toHaveReturnedWith(axiosRes);
// Checking received data
- expect(test.body.data).toBeDefined();
-
- expect(test.body.data.length).toBe(1);
- expect(test.body.data[0].id).toBeDefined();
- expect(test.body.data[0].title).toBeDefined();
- expect(test.body.data[0].authors).toBeDefined();
- expect(test.body.data[0].summary).toBeDefined();
- expect(test.body.data[0].tags).toBeDefined();
- expect(test.body.data[0].content).toBeDefined();
- expect(test.body.data[0].id).toBe('eeeb2d01-8315-454e-b33f-3d6caa25db42');
+ expect(test.body).toBeDefined();
+ expect(test.body.id).toBeDefined();
+ expect(test.body.id).toBe('thisIsIDofTheFirstObject');
- // Checking received meta
- expect(test.body.meta).toBeDefined();
+ expect(test.body.title).toBeDefined();
+ expect(test.body.title).toBe('thisIsTitle');
- expect(test.body.meta.total).toBeDefined();
- expect(test.body.meta.pagenum).toBeDefined();
- expect(test.body.meta.order).toBeDefined();
- expect(test.body.meta.pagesize).toBeDefined();
- expect(test.body.meta.hasNext).toBeDefined();
- expect(test.body.meta.hasPrev).toBeDefined();
- expect(test.body.meta.total).toBe(1);
- expect(test.body.meta.pagenum).toBe(1);
+ expect(test.body.authors).toBeDefined();
+ expect(test.body.authors).toEqual(['A1', 'A2', 'A3']);
+
+ expect(test.body.topic).toBeDefined();
+ expect(test.body.topic).toBe('thisIsTopic');
+
+ expect(test.body.summary).toBeDefined();
+ expect(test.body.summary).toBe('thisIsSummary');
+
+ expect(test.body.tags).toBeDefined();
+ expect(test.body.tags).toEqual(['T1', 'T2', 'T3']);
+
+ expect(test.body.content).toBeDefined();
+ expect(test.body.content).toBe('thisIsContent');
});
- it('GET /papers/search? | Should return multiple items', async () => {
+ it('GET /papers/search? | Should return multiple items on the page and correct meta', async () => {
+ const axiosResGet = of({
+ status: 200,
+ statusText: 'statText',
+ headers: null,
+ config: null,
+ data: {
+ took: 5,
+ timed_out: false,
+ _shards: {},
+ hits: {
+ total: {
+ value: 2,
+ },
+ hits: [
+ {
+ _source: {
+ id: 'thisIsIDofTheFirstObject',
+ title: 'thisIsTitle1',
+ authors: ['A1', 'A2', 'A3'],
+ topic: 'thisIsTopic1',
+ summary: 'thisIsSummary1',
+ tags: ['T1', 'T2', 'T3'],
+ content: 'thisIsContent1'
+ }
+ },
+ {
+ _source: {
+ id: 'thisIsIDofTheSecondObject',
+ title: 'thisIsTitle2',
+ authors: ['A4', 'A5', 'A6'],
+ topic: 'thisIsTopic2',
+ summary: 'thisIsSummary2',
+ tags: ['T11', 'T2', 'T8'],
+ content: 'thisIsContent2'
+ }
+ }
+ ]
+ }
+ }
+ });
+
+ let httpGetSpy = jest.spyOn(httpService, 'get').mockReturnValueOnce(axiosResGet);
+ let httpPostSpy = jest.spyOn(httpService, 'post').mockReturnValueOnce(of({
+ data: {},
+ status: 200,
+ statusText: 'statText',
+ headers: null,
+ config: null,
+ }));
+
const test = await request(app.getHttpServer())
.get('/papers/search?query=at&page=1')
.expect(200);
+ // Expect HttpService.get() method to be touched
+ expect(httpGetSpy).toHaveBeenCalled();
+ expect(httpGetSpy).toHaveReturnedWith(axiosResGet);
+
// Checking received data
expect(test.body.data).toBeDefined();
+ expect(test.body.data.length).toBe(2);
- expect(test.body.data.length).toBeGreaterThan(0);
for (const paper of test.body.data) {
expect(paper.id).toBeDefined();
expect(paper.title).toBeDefined();
expect(paper.authors).toBeDefined();
+ expect(paper.topic).toBeDefined();
expect(paper.summary).toBeDefined();
expect(paper.tags).toBeDefined();
expect(paper.content).toBeDefined();
}
+
+ expect(test.body.data[0]).toEqual({
+ id: 'thisIsIDofTheFirstObject',
+ title: 'thisIsTitle1',
+ authors: ['A1', 'A2', 'A3'],
+ topic: 'thisIsTopic1',
+ summary: 'thisIsSummary1',
+ tags: ['T1', 'T2', 'T3'],
+ content: 'thisIsContent1'
+ });
- // Checking received meta
+ expect(test.body.data[1]).toEqual({
+ id: 'thisIsIDofTheSecondObject',
+ title: 'thisIsTitle2',
+ authors: ['A4', 'A5', 'A6'],
+ topic: 'thisIsTopic2',
+ summary: 'thisIsSummary2',
+ tags: ['T11', 'T2', 'T8'],
+ content: 'thisIsContent2'
+ });
+
+ // // Checking received meta
expect(test.body.meta).toBeDefined();
expect(test.body.meta.total).toBeDefined();
+ expect(test.body.meta.total).toBe(2);
+
expect(test.body.meta.pagenum).toBeDefined();
- expect(test.body.meta.order).toBeDefined();
- expect(test.body.meta.pagesize).toBeDefined();
- expect(test.body.meta.hasNext).toBeDefined();
- expect(test.body.meta.hasPrev).toBeDefined();
- expect(test.body.meta.total).toBeGreaterThan(0);
expect(test.body.meta.pagenum).toBe(1);
+
+ expect(test.body.meta.order).toBeDefined();
+ expect(test.body.meta.order).toBe(Order.DESC);
+
+ expect(test.body.meta.pagesize).toBeDefined();
+ expect(test.body.meta.pagesize).toBe(10);
+
+ expect(test.body.meta.hasNext).toBeDefined();
+ expect(test.body.meta.hasNext).toBe(false);
+
+ expect(test.body.meta.hasPrev).toBeDefined();
+ expect(test.body.meta.hasPrev).toBe(false);
});
afterAll(async () => {
diff --git a/src/test/jest-e2e.json b/src/test/jest-e2e.json
new file mode 100644
index 0000000..c27d4a0
--- /dev/null
+++ b/src/test/jest-e2e.json
@@ -0,0 +1,9 @@
+{
+ "moduleFileExtensions": ["js", "json", "ts"],
+ "rootDir": ".",
+ "testEnvironment": "node",
+ "testRegex": "e2e.spec.ts$",
+ "transform": {
+ "^.+\\.(t|j)s$": "ts-jest"
+ }
+}
\ No newline at end of file
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index 25fafbd..e3fda46 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -219,7 +219,7 @@ describe('Unit tests for PageInterceptor', () => {
}));
pageInter.getPIT(1);
- expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
+ expect(httpPostMock).toHaveBeenCalledWith(`http://${process.env.ES_CONTAINER_NAME}:${process.env.ES_PORT}/papers/_pit?keep_alive=1m`);
});
it('Should touch HttpService with correct URI when time alive and time-unit are set', () => {
@@ -235,7 +235,7 @@ describe('Unit tests for PageInterceptor', () => {
let unit = EsTime.sec;
pageInter.getPIT(time, unit);
- expect(httpPostMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
+ expect(httpPostMock).toHaveBeenCalledWith(`http://${process.env.ES_CONTAINER_NAME}:${process.env.ES_PORT}/papers/_pit?keep_alive=${time+unit}`);
});
it('Should return error exeception when HttpService fails', () => {
@@ -288,7 +288,7 @@ describe('Unit tests for PageInterceptor', () => {
}));
pageInter.deletePIT('thisIsIDSpecified');
- expect(httpDeleteMock).toHaveBeenCalledWith(`http://localhost:${process.env.ES_PORT}/_pit`, {
+ expect(httpDeleteMock).toHaveBeenCalledWith(`http://${process.env.ES_CONTAINER_NAME}:${process.env.ES_PORT}/_pit`, {
data: { id: 'thisIsIDSpecified' },
headers: { 'Content-Type': 'application/json' }
});
diff --git a/src/test/papers.controller.spec.ts b/src/test/papers.controller.spec.ts
index a4e4382..5a1ff79 100644
--- a/src/test/papers.controller.spec.ts
+++ b/src/test/papers.controller.spec.ts
@@ -37,13 +37,10 @@ describe('Unit tests for PapersController', () => {
it('Should touch SearchService.findByContext() method', () => {
let findCtxMock = jest.spyOn(searchService, 'findByContext')
.mockResolvedValueOnce({
- data: {
- took: undefined,
- timed_out: undefined,
- hits: undefined,
- _shards: undefined,
- },
- statusCode: 0
+ took: undefined,
+ timed_out: undefined,
+ hits: undefined,
+ _shards: undefined,
});
papersController.getByContext({ query: undefined });
@@ -74,10 +71,7 @@ describe('Unit tests for PapersController', () => {
};
jest.spyOn(searchService, 'findByContext')
- .mockResolvedValueOnce({
- data: searchResultMock,
- statusCode: 200
- });
+ .mockResolvedValueOnce(searchResultMock);
expect(papersController.getByContext({ query: undefined })).resolves.toEqual(searchResultMock);
});
@@ -92,8 +86,55 @@ describe('Unit tests for PapersController', () => {
});
describe('getByID()', () => {
- it.todo('Should touch SearchService.findByID() method');
- it.todo('Should resolve, when searched successfully');
- it.todo('Should throw, when search was unsuccessful');
+ it('Should touch SearchService.findByID() method', () => {
+ let findIDMock = jest.spyOn(searchService, 'findByID')
+ .mockResolvedValueOnce({
+ took: undefined,
+ timed_out: undefined,
+ hits: { total: {}, hits:[{ _source: undefined }] },
+ _shards: undefined,
+ });
+
+ papersController.getByID('');
+ expect(findIDMock).toHaveBeenCalled();
+ });
+
+ it('Should resolve the document, when searched successfully', () => {
+ const searchResultMock = {
+ took: 1,
+ timed_out: false,
+ hits: {
+ total: {},
+ hits: [
+ {
+ _source: {
+ id: 'thisIsID',
+ title: 'andThisIsTheTitle',
+ authors: ['alsoAuthors'],
+ topic: 'andThatIsTheTopic',
+ summary: 'someSummaries',
+ tags: ['tag1', 'tag2'],
+ content: 'finallyContent!'
+ }
+ }
+ ],
+ },
+ _shards: undefined,
+ };
+
+ jest.spyOn(searchService, 'findByID')
+ .mockResolvedValueOnce(searchResultMock);
+
+ expect(papersController.getByID(''))
+ .resolves.toEqual(searchResultMock.hits.hits[0]._source);
+ });
+
+ it('Should throw, when search was unsuccessful', () => {
+ searchService.findByID = jest.fn()
+ .mockRejectedValueOnce(new NotFoundException);
+
+ expect(papersController.getByID(''))
+ .rejects.toThrow(NotFoundException)
+ });
});
});
\ No newline at end of file
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index 95ded23..864f6c3 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -3,7 +3,7 @@ import { GatewayTimeoutException, HttpException } from "@nestjs/common";
import { ConfigModule } from "@nestjs/config";
import { Test } from "@nestjs/testing";
import { of } from "rxjs";
-import { EsQueryDto, SearchResultDto } from "src/core/domain";
+import { EsQueryDto, EsResponseDto } from "src/core/domain";
import { SearchService } from "src/core/services/common/search.service";
describe('Unit tests for SearchService', () => {
@@ -65,7 +65,7 @@ describe('Unit tests for SearchService', () => {
searchService.findByID('');
expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(
- `http://localhost:${process.env.ES_PORT}/_search`,
+ `http://${process.env.ES_CONTAINER_NAME}:${process.env.ES_PORT}/_search`,
expect.anything()
);
});
@@ -74,26 +74,27 @@ describe('Unit tests for SearchService', () => {
expect(searchService.findByID('')).toBeInstanceOf(Promise);
});
- it('Should return a Promise with SearchResultDto', () => {
- // Axios response mock
- httpService.get = jest.fn().mockReturnValueOnce(
- of({
- status: undefined,
- statusText: undefined,
- headers: undefined,
- config: undefined,
- data: {
- dummy: 'dum'
- }
- })
- );
+ // it('Should return a Promise with EsResponseDto', () => {
+ // // Axios response mock
+ // httpService.get = jest.fn().mockReturnValueOnce(
+ // of({
+ // status: undefined,
+ // statusText: undefined,
+ // headers: undefined,
+ // config: undefined,
+ // data: {
+ // took: 1,
+ // timed_out: false,
+ // hits: {
+ // total: {},
+ // hits: [{}]
+ // }
+ // },
+ // })
+ // );
- searchService.findByID('').then((res) => {
- expect(res).toBeInstanceOf(SearchResultDto);
- expect(res.data).toEqual({ dummy: 'dum' });
- expect(res.statusCode).toBe(200);
- });
- });
+ // expect(searchService.findByID('')).resolves.toBeInstanceOf(EsResponseDto)
+ // });
// Errors
it('Should throw 504 | GatewayTimeoutException', () => {
@@ -161,7 +162,7 @@ describe('Unit tests for SearchService', () => {
searchService.findByContext(null);
expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(
- `http://localhost:${process.env.ES_PORT}/_search`,
+ `http://${process.env.ES_CONTAINER_NAME}:${process.env.ES_PORT}/_search`,
expect.anything()
);
});
@@ -170,26 +171,22 @@ describe('Unit tests for SearchService', () => {
expect(searchService.findByContext(null)).toBeInstanceOf(Promise);
});
- it('Should return a Promise with SearchResultDto', () => {
- // Axios response mock
- httpService.get = jest.fn().mockReturnValueOnce(
- of({
- status: undefined,
- statusText: undefined,
- headers: undefined,
- config: undefined,
- data: {
- dummy: 'dum'
- }
- })
- );
-
- searchService.findByContext(null).then((res) => {
- expect(res).toBeInstanceOf(SearchResultDto);
- expect(res.data).toEqual({ dummy: 'dum' });
- expect(res.statusCode).toBe(200);
- });
- });
+ // it('Should return a Promise with EsResponseDto', () => {
+ // // Axios response mock
+ // httpService.get = jest.fn().mockReturnValueOnce(
+ // of({
+ // status: undefined,
+ // statusText: undefined,
+ // headers: undefined,
+ // config: undefined,
+ // data: {
+ // dummy: 'dum'
+ // }
+ // })
+ // );
+
+ // expect(searchService.findByContext(null)).resolves.toMatchObject(null);
+ // });
// Errors
it('Should throw 504 | GatewayTimeoutException', () => {
--
2.39.5
From d283cc22f13cb5f4af90f4d07316b6886297e230 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Thu, 25 Aug 2022 18:12:27 +0300
Subject: [PATCH 11/23] Dockerfile changes
---
.env.develop | 7 ++++++-
Dockerfile | 3 +++
docker-compose.yaml | 15 +++++++--------
3 files changed, 16 insertions(+), 9 deletions(-)
diff --git a/.env.develop b/.env.develop
index 868ed15..b7c3f27 100644
--- a/.env.develop
+++ b/.env.develop
@@ -8,4 +8,9 @@ CONTAINER_NAME="container-name"
ES_PORT=9200
ES_IMAGE_VERSION=8.3.2
ES_IMAGE_NAME="image-name"
-ES_CONTAINER_NAME="container-name"
\ No newline at end of file
+ES_CONTAINER_NAME="container-name"
+
+MDB_PORT=27017
+MDB_IMAGE_NAME="image-name"
+MDB_IMAGE_VERSION="latest"
+MDB_CONTAINER_NAME="container-name"
\ No newline at end of file
diff --git a/Dockerfile b/Dockerfile
index 22be726..1c66e2a 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -8,6 +8,9 @@ ENV MS_SCRIPTS="${MS_HOME}/scripts"
ENV USER_NAME=node USER_UID=1000 GROUP_NAME=node GROUP_UID=1000
+ENV ES_PORT=9200
+ENV MDB_PORT=27017
+
WORKDIR "${MS_HOME}"
# Build
diff --git a/docker-compose.yaml b/docker-compose.yaml
index 46a132b..85a9ae7 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -10,12 +10,12 @@ services:
environment:
- xpack.security.enabled=false
- discovery.type=single-node
-
-
-
-
-
-
+ mongo:
+ image: ${MDB_IMAGE_NAME}:${MDB_IMAGE_VERSION}
+ container_name: ${MDB_CONTAINER_NAME}
+ restart: always
+ ports:
+ - ${MDB_PORT}:${MDB_PORT}
freeland:
image: ${IMAGE_NAME}:${IMAGE_VERSION}
build:
@@ -29,5 +29,4 @@ services:
- "${LOCAL_PORT}:${NODE_PORT}"
environment:
- NODE_ENV= ${NODE_ENV}
- - NODE_PORT= ${NODE_PORT}
-
\ No newline at end of file
+ - NODE_PORT= ${NODE_PORT}
\ No newline at end of file
--
2.39.5
From 9f430dc54d88689afae634eb26f550fd5b2fb9f4 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Wed, 14 Sep 2022 12:26:03 +0300
Subject: [PATCH 12/23] Added config script for Elastcsearch
---
elastic/scripts/es_boot.sh | 208 +++++++++++++++++++++++++++++++++++++
1 file changed, 208 insertions(+)
create mode 100755 elastic/scripts/es_boot.sh
diff --git a/elastic/scripts/es_boot.sh b/elastic/scripts/es_boot.sh
new file mode 100755
index 0000000..5e5f2eb
--- /dev/null
+++ b/elastic/scripts/es_boot.sh
@@ -0,0 +1,208 @@
+#!/usr/bin/env bash
+
+__isint='^[0-9]+$'
+__isvalidstr='^[a-z0-9]+$'
+__isvalidaddr='^[a-z]+$|^((25[0-5]|2[0-4]?[0-9]|1[0-9]?[0-9]|[3-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4]?[0-9]|1[0-9]?[0-9]|[3-9][0-9]|[0-9])$'
+
+create_template() {
+ curl -H "Content-Type: application/json" -X PUT "$1:$2/_index_template/papers_t" -d '
+ {
+ "index_patterns": ["papers*"],
+ "priority": 1,
+ "template": {
+ "aliases": {
+ "papers": {}
+ },
+ "mappings": {
+ "properties": {
+ "id": {
+ "type": "keyword"
+ },
+ "title": {
+ "type": "text",
+ "analyzer": "title_analyzer"
+ },
+ "authors": {
+ "type": "text"
+ },
+ "topic": {
+ "type": "text"
+ },
+ "summary": {
+ "type": "text"
+ },
+ "tags": {
+ "type": "keyword"
+ },
+ "content": {
+ "type": "text"
+ },
+ "publisher": {
+ "type": "text"
+ }
+ }
+ },
+ "settings": {
+ "analysis": {
+ "analyzer": {
+ "title_analyzer": {
+ "type": "custom",
+ "tokenizer": "title_engram_tokenizer"
+ },
+ "content_analyzer_i": {
+ "type": "custom",
+ "tokenizer": "content_onchar_tokenizer",
+ "char_filter": [
+ "markdown_token_filter"
+ ]
+ },
+ "content_analyzer_s": {
+ "type": "custom",
+ "tokenizer": "content_onchar_tokenizer",
+ "char_filter": [
+ "markdown_token_filter"
+ ],
+ "filter": [
+ ]
+ },
+ "basic_analyzer": {
+
+ }
+ },
+ "tokenizer": {
+ "title_engram_tokenizer": {
+ "type": "edge_ngram",
+ "min_gram": 2,
+ "max_gram": 10,
+ "token_chars": [
+ "letter",
+ "digit"
+ ]
+ },
+ "content_onchar_tokenizer": {
+ "type": "char_group",
+ "tokenize_on_chars": [
+ "whitespace",
+ ".", ",", "(", ")", "-", "[", "]", "{",
+ "}", "#", ":", ";", "`", "!", "*"
+ ]
+ }
+ },
+ "char_filter": {
+ "markdown_token_filter": {
+ "type": "pattern_replace",
+ "pattern": "[[a-z][0-9]]*://[[a-z][0-9]]*.[a-z]*",
+ "replacement": ""
+ }
+ },
+ "filter": {
+ }
+ }
+ }
+ }
+ }
+ '
+}
+
+#=============================================================================================================================================================================
+
+create_index() {
+ curl -X PUT "$1:$2/papers-$3?pretty"
+}
+
+#=============================================================================================================================================================================
+
+__usage="
+ Usage: $(basename $0)
+ ---------------------------------------------------------------------------
+ | -c, --create-only | Skip template initialization and only create |
+ | | specified index. Result index name will be |
+ | | 'papers-{specified name}' |
+ | |
+ | -h | Help information |
+ | |
+ | -a | Specifies the address |
+ | |
+ | -p, --port | Specifies the port |
+ | |
+ | -i, --index-name | Specifies the index name: |
+ | | Must be lowercase, cannot include [\/*?\"<>| ,#:], |
+ | | cannot start with [.-_+], cannot be \".\" or \"..\" |
+ | | cannot be longer than 255 bytes (note: multi-byte |
+ | | characters will count towards the limit faster) |
+ | | Result index name will be 'papers-{specified name}' |
+ ---------------------------------------------------------------------------
+"
+#=============================================================================================================================================================================
+
+CTRL=0
+
+if [[ "$1" == "-h" ]]; then
+ echo "$__usage"
+else
+ while [[ $# -gt 0 ]]; do
+ case "$1" in
+ -p | --port)
+ if [[ -n "$2" && $2 =~ $__isint && "$2" -ge 1 && "$2" -le 65535 ]]; then
+ PORT="$2"
+ shift
+ else
+ echo "Invalid port number!"
+ fi
+ ;;
+ -a | --address)
+ if [[ -n "$2" ]]; then
+ IP="$2"
+ shift
+ else
+ echo "Address is not specified!"
+ fi
+ ;;
+ -i | --index-name)
+ if [[ -n "$2" && $2 =~ $__isvalidstr ]]; then
+ IND="$2"
+ shift
+ else
+ echo "Index name is not specified!"
+ fi
+ ;;
+ -c | --create-only)
+ CTRL=2
+ ;;
+ -*)
+ echo "Option '$1' is not supported"
+ exit
+ ;;
+ *)
+ if [[ $1 =~ $__isvalidaddr ]]; then
+ IP="$1"
+ elif [[ $1 =~ $__isint && "$1" -ge 1 && "$1" -le 65535 ]]; then
+ PORT="$1"
+ elif [[ $1 =~ $__isvalidstr ]]; then
+ IND="$1"
+ else
+ echo "Invalid argument!"
+ exit;
+ fi
+ ;;
+ esac
+ shift
+ done
+
+ echo "Specified: $IP:$PORT | Index name: $IND"
+
+ case $CTRL in
+ 0) # Default behaviour - full initialization (template creation and index creation)
+ create_template "$IP" "$PORT"
+ echo "Elasticsearch index template created"
+ create_index "$IP" "$PORT" "$IND"
+ echo "Elasticsearch index (papers-$IND) created"
+ exit
+ ;;
+ 2) # Create index, skip creating the template
+ create_index "$IP" "$PORT" "$IND"
+ echo "Elasticsearch index (papers-$IND) created"
+ exit
+ ;;
+ esac
+fi
\ No newline at end of file
--
2.39.5
From b6287509ad9e5e4ae4c07f0351606634a0cacad2 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Wed, 14 Sep 2022 13:12:51 +0300
Subject: [PATCH 13/23] Implemented In-Memory-Caching with default CacheModule
---
.../controller/papers.controller.ts | 3 +-
src/core/interceptors/page.interceptor.ts | 234 +++++++-----------
src/infrastructure/modules/search.module.ts | 3 +-
src/test/e2e/papers.controller.e2e.spec.ts | 2 +-
src/test/page.interceptor.spec.ts | 20 +-
src/test/papers.controller.spec.ts | 7 +-
6 files changed, 108 insertions(+), 161 deletions(-)
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 74efcdf..3151334 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -1,4 +1,4 @@
-import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Req, UseInterceptors } from "@nestjs/common";
+import { CacheInterceptor, Controller, Get, HttpCode, Inject, Param, ParseUUIDPipe, Req, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
import { PageInterceptor } from "../../core/interceptors/page.interceptor";
import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from "@nestjs/swagger";
@@ -13,6 +13,7 @@ import { EsHitDto, EsResponseDto, PageDto, PaperDto } from "../../core/domain";
path: 'papers',
})
@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)
+// @UseInterceptors(CacheInterceptor)
export class PapersController {
constructor(private searchService: SearchService) {}
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 76e1934..01eda50 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -1,6 +1,6 @@
import { HttpService } from "@nestjs/axios";
-import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
-import { Observable, map, take } from "rxjs";
+import { CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, NestInterceptor } from "@nestjs/common";
+import { Observable, map, take, switchMap } from "rxjs";
import { PageDto } from "../domain/dtos";
import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
@@ -9,62 +9,7 @@ import { EsTime } from "../domain/enums/es-time.enum";
import { Order } from "../domain/enums/page-order.enum";
import { PageMeta } from "../domain/interfaces";
import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
-
-/**
- * Previous search data storage
- */
-class PrevSearch {
- /**
- * Constructs an uninitialized object
- */
- constructor() {
- this.pit = undefined;
- this.tiebreaker = undefined;
- this.prevPage = -1;
- }
-
- /**
- * PIT object of the previous search
- */
- private pit: EsPit;
- set _pit(pit: EsPit) {
- this.pit = pit;
- }
- get _pit(): EsPit {
- return this.pit;
- }
-
- /**
- * Tiebreaker and sort parameters
- */
- private tiebreaker: unknown[];
- set _tiebreaker(tiebreaker: unknown[]) {
- this.tiebreaker = tiebreaker;
- }
- get _tiebreaker(): unknown[] {
- return this.tiebreaker;
- }
-
- /**
- * Number of the previous page
- */
- private prevPage: number;
- set _prevPage(page: number) {
- this.prevPage = page;
- }
- get _prevPage(): number {
- return this.prevPage;
- }
-
- /**
- * Checks if there was the search before current one
- * @returns true/false, showing whether or not there was another search before
- */
- public isSet(): boolean {
- if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;
- return false;
- }
-}
+import { Cache } from 'cache-manager'
/**
* Pagination-implementing interceptor
@@ -73,95 +18,13 @@ class PrevSearch {
export class PageInterceptor implements NestInterceptor {
/**
* Injects needed dependencies and instantiates the storage object
- * @param httpService
- * @param searchService
+ * @param httpService
+ * @param searchService
*/
- constructor(private readonly httpService: HttpService) {
- this.prevSearch = new PrevSearch;
- }
-
- /**
- * Override of intercept() method, specified in NestInterceptor interface
- * @param context
- * @param next
- * @returns Page with content and metadata
- */
- async intercept(context: ExecutionContext, next: CallHandler): Promise> {
- let request: RequestDto = context.switchToHttp().getRequest();
- const query: SearchQueryDto = request.query;
- let reverse: boolean = false;
-
- request.es_query = new EsQueryDto();
-
- request.es_query.query = {
- query_string: {
- query: query.query,
- default_field: 'content',
- }
- };
- request.es_query.sort = [
- { _score: { order: !query?.order ? Order.DESC : query.order } },
- { _shard_doc: 'desc' }
- ];
-
- if (this.prevSearch.isSet()) {
- request.es_query.pit = this.prevSearch._pit;
- request.es_query.search_after = this.prevSearch._tiebreaker;
-
- let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);
-
- if (query.page < this.prevSearch._prevPage) {
- request.es_query.sort = [{ _score: { order: 'asc' } }];
- request.es_query.size += limit - 1;
- reverse = true;
- } else if (query.page == this.prevSearch._prevPage) {
- // Caching should be HERE
- request.es_query.sort = [{ _score: { order: 'asc' } }];
- reverse = true;
- }
- } else {
- this.prevSearch._pit = request.es_query.pit = await this.getPIT(1);
-
- let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * query.page;
- }
-
- return next.handle().pipe(
- map((res) => {
- // Setting the page meta-data
- let meta: PageMeta = {
- total: res.hits.total.value,
- pagenum: !query?.page ? 1 : +query.page,
- order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
- pagesize: !query?.limit ? 10 : query.limit,
- hasNext: undefined,
- hasPrev: undefined,
- };
- meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
- meta.hasPrev = meta.pagenum != 1 ? true : false;
-
- // Saving the search info
- this.prevSearch._pit.id = res.pit_id;
- this.prevSearch._tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
- this.prevSearch._prevPage = query.page;
-
- // Check if the performed search is a backwards search
- let data = res.hits.hits.slice(-meta.pagesize);
- if (reverse) {
- this.prevSearch._tiebreaker = data[0]?.sort;
- data.reverse();
- reverse = false;
- }
-
- // Omitting the redundant info and leaving only the document
- data = data.map((el) => el._source);
-
- // Return the page
- return new PageDto(data, meta);
- })
- );
- }
+ constructor(
+ private readonly httpService: HttpService,
+ @Inject(CACHE_MANAGER) private cacheManager: Cache
+ ) {}
/**
* Elastichsearch server port-number
@@ -174,9 +37,84 @@ export class PageInterceptor implements NestInterceptor {
private readonly ES_IP = process.env.ES_CONTAINER_NAME;
/**
- * Info about previously completed search
+ * Override of intercept() method, specified in NestInterceptor interface
+ * @param context
+ * @param next
+ * @returns Page with content and metadata
*/
- private prevSearch: PrevSearch;
+ async intercept(context: ExecutionContext, next: CallHandler): Promise> {
+ const request: RequestDto = context.switchToHttp().getRequest();
+ const query: SearchQueryDto = request.query;
+ let reverse: boolean = false;
+
+ request.es_query = new EsQueryDto();
+ request.es_query.query = {
+ query_string: {
+ query: query.query,
+ default_field: 'content',
+ }
+ };
+ request.es_query.sort = [
+ { _score: { order: !query?.order ? Order.DESC : query.order } },
+ { _shard_doc: 'desc' }
+ ];
+
+ const limit = !query?.limit ? 10 : query.limit;
+
+ if (await this.cacheManager.get('prevPage')) {
+ if (query.page == (await this.cacheManager.get('_pagenum'))) return await this.cacheManager.get('prevPage');
+
+ request.es_query.pit = await this.cacheManager.get('_pit');
+ request.es_query.search_after = await this.cacheManager.get('_sa');
+ request.es_query.size = limit * Math.abs(query.page - (await this.cacheManager.get('_pagenum')));
+
+ if (query.page < (await this.cacheManager.get('_pagenum'))) {
+ request.es_query.sort = [{ _score: { order: Order.ASC } }];
+ request.es_query.size += limit - 1;
+ reverse = true;
+ }
+ } else {
+ request.es_query.pit = await this.getPIT(1);
+ request.es_query.size = limit * query.page;
+ }
+
+ return next.handle().pipe(
+ switchMap(async (res) => {
+ // Setting the page meta-data
+ let meta: PageMeta = {
+ total: res.hits.total.value,
+ pagenum: !query?.page ? 1 : +query.page,
+ order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
+ pagesize: !query?.limit ? 10 : query.limit,
+ hasNext: undefined,
+ hasPrev: undefined,
+ };
+ meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
+ meta.hasPrev = meta.pagenum != 1 ? true : false;
+
+ // Saving the search info
+ await this.cacheManager.set('_pit', { id: res.pit_id, keep_alive: `1${EsTime.min}` })
+ await this.cacheManager.set('_sa', res.hits.hits[res.hits.hits.length - 1]?.sort);
+ await this.cacheManager.set('_pagenum', query.page);
+
+ // Check if the performed search is a backwards search
+ let data = res.hits.hits.slice(-meta.pagesize);
+ if (reverse) {
+ this.cacheManager.set('_sa', data[0]?.sort);
+ data.reverse();
+ reverse = false;
+ }
+
+ // Omitting the redundant info and leaving only the document
+ data = data.map((el) => el._source);
+
+ // Cache and return the page
+ const page: PageDto = new PageDto(data, meta);
+ await this.cacheManager.set('prevPage', page);
+ return page;
+ })
+ );
+ }
/**
* Acquires a PIT ID from Elasticsearch, needed for a request
diff --git a/src/infrastructure/modules/search.module.ts b/src/infrastructure/modules/search.module.ts
index 526c7d7..8fd2f60 100644
--- a/src/infrastructure/modules/search.module.ts
+++ b/src/infrastructure/modules/search.module.ts
@@ -1,5 +1,5 @@
import { HttpModule } from "@nestjs/axios";
-import { Module } from "@nestjs/common";
+import { CacheModule, Module } from "@nestjs/common";
import { PapersController } from "../../application";
import { SearchService } from "../../core/services/common/search.service";
@@ -9,6 +9,7 @@ import { SearchService } from "../../core/services/common/search.service";
@Module({
imports: [
HttpModule,
+ CacheModule.register(),
],
exports: [SearchService],
providers: [SearchService],
diff --git a/src/test/e2e/papers.controller.e2e.spec.ts b/src/test/e2e/papers.controller.e2e.spec.ts
index 922bdc0..2934683 100644
--- a/src/test/e2e/papers.controller.e2e.spec.ts
+++ b/src/test/e2e/papers.controller.e2e.spec.ts
@@ -75,7 +75,7 @@ describe('E2E Testing of /papers', () => {
let httpGetSpy = jest.spyOn(httpService, 'get').mockReturnValueOnce(axiosRes);
const test = await request(app.getHttpServer())
- .get('/papers/2d3dc418-7778-abab-b33f-3d63aa25db41') // ??? Fetch a random object from DB
+ .get('/papers/2d3dc418-7778-abab-b33f-3d63aa25db41')
.expect(200);
// Expect HttpService.get() method to be touched
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index e3fda46..5a60f02 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -1,4 +1,5 @@
import { HttpService } from "@nestjs/axios";
+import { CacheModule, CACHE_MANAGER } from "@nestjs/common";
import { ConfigModule } from "@nestjs/config";
import { Test } from "@nestjs/testing";
import { Observable, of } from "rxjs";
@@ -44,7 +45,8 @@ describe('Unit tests for PageInterceptor', () => {
isGlobal: true,
cache: true,
expandVariables: true,
- })
+ }),
+ CacheModule.register()
],
}).compile();
@@ -159,7 +161,7 @@ describe('Unit tests for PageInterceptor', () => {
});
});
- it('Should reverse the search results', () => {
+ it('Should reverse the search results', async () => {
execCtxMock.getRequest.mockReturnValueOnce({
query: {
page: 1,
@@ -168,10 +170,8 @@ describe('Unit tests for PageInterceptor', () => {
}
});
- pageInter['prevSearch']._prevPage = 3;
- pageInter['prevSearch'].isSet = jest.fn().mockImplementationOnce(() => {
- return true;
- })
+ await pageInter['cacheManager'].set('_pagenum', 3);
+ await pageInter['cacheManager'].set('prevPage', { set: "yes" });
callHandlerMock.handle.mockReturnValueOnce(
of({
@@ -187,8 +187,8 @@ describe('Unit tests for PageInterceptor', () => {
);
pageInter.intercept(execCtxMock, callHandlerMock).then((res) => {
- res.subscribe((page) => {
- expect(pageInter['prevSearch']._tiebreaker).toEqual(['1', 'less relevant']);
+ res.subscribe(async (page) => {
+ expect(await pageInter['cacheManager'].get('_sa')).toEqual(['1', 'less relevant']);
expect(page.data).toEqual(['3', '2', '1']);
});
});
@@ -315,4 +315,8 @@ describe('Unit tests for PageInterceptor', () => {
expect(pageInter.deletePIT('')).resolves.toBe(true);
});
});
+
+ afterEach(() => {
+ pageInter['cacheManager'].reset();
+ })
});
\ No newline at end of file
diff --git a/src/test/papers.controller.spec.ts b/src/test/papers.controller.spec.ts
index 5a1ff79..36c4eb4 100644
--- a/src/test/papers.controller.spec.ts
+++ b/src/test/papers.controller.spec.ts
@@ -1,5 +1,5 @@
import { HttpModule } from "@nestjs/axios";
-import { NotFoundException } from "@nestjs/common";
+import { CacheModule, NotFoundException } from "@nestjs/common";
import { Test } from "@nestjs/testing";
import { PapersController } from "src/application";
import { SearchService } from "src/core/services/common/search.service";
@@ -21,7 +21,10 @@ describe('Unit tests for PapersController', () => {
}
}
],
- imports: [HttpModule]
+ imports: [
+ HttpModule,
+ CacheModule.register()
+ ]
}).compile();
papersController = moduleRef.get(PapersController);
--
2.39.5
From 090ecb4ff7aeb3f240d81086855c45bfc11f2350 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Tue, 20 Sep 2022 14:38:26 +0300
Subject: [PATCH 14/23] Elasticsearch config-s[Ccript functionality implemented
---
elastic/samples/template.json | 95 +++++++++++++++++
elastic/scripts/es_boot.sh | 191 ++++++++++++++++------------------
2 files changed, 182 insertions(+), 104 deletions(-)
create mode 100644 elastic/samples/template.json
diff --git a/elastic/samples/template.json b/elastic/samples/template.json
new file mode 100644
index 0000000..b9fcdcc
--- /dev/null
+++ b/elastic/samples/template.json
@@ -0,0 +1,95 @@
+{
+ "index_patterns": ["papers*"],
+ "priority": 1,
+ "template": {
+ "aliases": {
+ "papers": {}
+ },
+ "mappings": {
+ "properties": {
+ "id": {
+ "type": "keyword"
+ },
+ "title": {
+ "type": "text",
+ "analyzer": "title_analyzer"
+ },
+ "authors": {
+ "type": "text"
+ },
+ "topic": {
+ "type": "text"
+ },
+ "summary": {
+ "type": "text"
+ },
+ "tags": {
+ "type": "keyword"
+ },
+ "content": {
+ "type": "text"
+ },
+ "publisher": {
+ "type": "text"
+ }
+ }
+ },
+ "settings": {
+ "analysis": {
+ "analyzer": {
+ "title_analyzer": {
+ "type": "custom",
+ "tokenizer": "title_engram_tokenizer"
+ },
+ "content_analyzer_i": {
+ "type": "custom",
+ "tokenizer": "content_onchar_tokenizer",
+ "char_filter": [
+ "markdown_token_filter"
+ ]
+ },
+ "content_analyzer_s": {
+ "type": "custom",
+ "tokenizer": "content_onchar_tokenizer",
+ "char_filter": [
+ "markdown_token_filter"
+ ],
+ "filter": [
+ ]
+ },
+ "basic_analyzer": {
+
+ }
+ },
+ "tokenizer": {
+ "title_engram_tokenizer": {
+ "type": "edge_ngram",
+ "min_gram": 2,
+ "max_gram": 10,
+ "token_chars": [
+ "letter",
+ "digit"
+ ]
+ },
+ "content_onchar_tokenizer": {
+ "type": "char_group",
+ "tokenize_on_chars": [
+ "whitespace",
+ ".", ",", "(", ")", "-", "[", "]", "{",
+ "}", "#", ":", ";", "`", "!", "*"
+ ]
+ }
+ },
+ "char_filter": {
+ "markdown_token_filter": {
+ "type": "pattern_replace",
+ "pattern": "[[a-z][0-9]]*://[[a-z][0-9]]*.[a-z]*",
+ "replacement": ""
+ }
+ },
+ "filter": {
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/elastic/scripts/es_boot.sh b/elastic/scripts/es_boot.sh
index 5e5f2eb..77c9650 100755
--- a/elastic/scripts/es_boot.sh
+++ b/elastic/scripts/es_boot.sh
@@ -3,105 +3,10 @@
__isint='^[0-9]+$'
__isvalidstr='^[a-z0-9]+$'
__isvalidaddr='^[a-z]+$|^((25[0-5]|2[0-4]?[0-9]|1[0-9]?[0-9]|[3-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4]?[0-9]|1[0-9]?[0-9]|[3-9][0-9]|[0-9])$'
+__isJSONfile='^[a-z0-9\_\-]+(\.json)$'
create_template() {
- curl -H "Content-Type: application/json" -X PUT "$1:$2/_index_template/papers_t" -d '
- {
- "index_patterns": ["papers*"],
- "priority": 1,
- "template": {
- "aliases": {
- "papers": {}
- },
- "mappings": {
- "properties": {
- "id": {
- "type": "keyword"
- },
- "title": {
- "type": "text",
- "analyzer": "title_analyzer"
- },
- "authors": {
- "type": "text"
- },
- "topic": {
- "type": "text"
- },
- "summary": {
- "type": "text"
- },
- "tags": {
- "type": "keyword"
- },
- "content": {
- "type": "text"
- },
- "publisher": {
- "type": "text"
- }
- }
- },
- "settings": {
- "analysis": {
- "analyzer": {
- "title_analyzer": {
- "type": "custom",
- "tokenizer": "title_engram_tokenizer"
- },
- "content_analyzer_i": {
- "type": "custom",
- "tokenizer": "content_onchar_tokenizer",
- "char_filter": [
- "markdown_token_filter"
- ]
- },
- "content_analyzer_s": {
- "type": "custom",
- "tokenizer": "content_onchar_tokenizer",
- "char_filter": [
- "markdown_token_filter"
- ],
- "filter": [
- ]
- },
- "basic_analyzer": {
-
- }
- },
- "tokenizer": {
- "title_engram_tokenizer": {
- "type": "edge_ngram",
- "min_gram": 2,
- "max_gram": 10,
- "token_chars": [
- "letter",
- "digit"
- ]
- },
- "content_onchar_tokenizer": {
- "type": "char_group",
- "tokenize_on_chars": [
- "whitespace",
- ".", ",", "(", ")", "-", "[", "]", "{",
- "}", "#", ":", ";", "`", "!", "*"
- ]
- }
- },
- "char_filter": {
- "markdown_token_filter": {
- "type": "pattern_replace",
- "pattern": "[[a-z][0-9]]*://[[a-z][0-9]]*.[a-z]*",
- "replacement": ""
- }
- },
- "filter": {
- }
- }
- }
- }
- }
- '
+ curl -H "Content-Type: application/json" -X PUT "$1:$2/_index_template/papers_t" -d @"$3"
}
#=============================================================================================================================================================================
@@ -112,13 +17,45 @@ create_index() {
#=============================================================================================================================================================================
+upload_files() {
+ _file="$4"
+ _dir="$5"
+
+ if [[ -n "$_file" ]]; then
+ curl -X POST "$1:$2/papers-$3/_doc/" \
+ -H "Content-Type: application/json" \
+ -d @"$_file"
+ elif [[ -n "$_dir" ]]; then
+ for file in "$_dir"/*; do
+ if [[ ! file =~ $__isJSONfile ]]; then
+ echo "$file is not identified as JSON. Skipping..."
+ continue;
+ fi
+
+ curl -X POST "$1:$2/papers-$3/_doc/" \
+ -H "Content-Type: application/json" \
+ -d @"$file"
+ done
+ fi
+}
+
+#=============================================================================================================================================================================
+
__usage="
- Usage: $(basename $0)
- ---------------------------------------------------------------------------
+ Usage: $(basename "$0")
+ #-------------------------------------------------------------------------#
+ | *MODES* |
+ | |
+ | Note: 2 modes cannot be specified in one call. |
+ | |
| -c, --create-only | Skip template initialization and only create |
| | specified index. Result index name will be |
| | 'papers-{specified name}' |
| |
+ | -u, --updload | Uploads the specified file(s) to specified index |
+ |-------------------------------------------------------------------------|
+ | *OPTIONS* |
+ | |
| -h | Help information |
| |
| -a | Specifies the address |
@@ -131,7 +68,14 @@ __usage="
| | cannot be longer than 255 bytes (note: multi-byte |
| | characters will count towards the limit faster) |
| | Result index name will be 'papers-{specified name}' |
- ---------------------------------------------------------------------------
+ | |
+ | -f, --file | Specify a JSON file that either a config or a |
+ | | document |
+ | |
+ | -d, --dir | Specify a directory containing documents to be |
+ | | uploaded to the index |
+ | |
+ #-------------------------------------------------------------------------#
"
#=============================================================================================================================================================================
@@ -139,6 +83,8 @@ CTRL=0
if [[ "$1" == "-h" ]]; then
echo "$__usage"
+elif [[ -z "$1" ]]; then
+ echo "Use -h or --help for usage information."
else
while [[ $# -gt 0 ]]; do
case "$1" in
@@ -166,9 +112,32 @@ else
echo "Index name is not specified!"
fi
;;
+ -f | --file)
+ if [[ -n "$2" && $2 =~ $__isJSONfile ]]; then
+ FPATH="$2"
+ shift
+ else
+ echo "Invalid file name!"
+ fi
+ ;;
+ -d | --dir)
+ if [[ -n "$2" && -d "$2" ]]; then
+ DIRPATH="$2"
+ shift
+ fi
+ ;;
-c | --create-only)
+ if [[ CTRL -ne 0 ]]; then echo "Incorrect use of modes. Use -h or --help.";
+ exit;
+ fi
CTRL=2
;;
+ -u | --upload)
+ if [[ CTRL -ne 0 ]]; then echo "Incorrect use of modes. Use -h or --help.";
+ exit;
+ fi
+ CTRL=3
+ ;;
-*)
echo "Option '$1' is not supported"
exit
@@ -180,6 +149,8 @@ else
PORT="$1"
elif [[ $1 =~ $__isvalidstr ]]; then
IND="$1"
+ elif [[ $1 =~ $__isJSONfile ]]; then
+ FPATH="$1"
else
echo "Invalid argument!"
exit;
@@ -190,18 +161,30 @@ else
done
echo "Specified: $IP:$PORT | Index name: $IND"
+ if [[ -z "$IP" || -z "$PORT" || -z "$IND" ]]; then
+ echo "Failed to identify target!"
+ exit
+ fi
case $CTRL in
0) # Default behaviour - full initialization (template creation and index creation)
- create_template "$IP" "$PORT"
- echo "Elasticsearch index template created"
+ if [[ -z "$FPATH" ]]; then
+ echo "Template config-file was not specified."
+ fi
+ create_template "$IP" "$PORT" "$FPATH"
+ echo -e "\nElasticsearch index template created"
create_index "$IP" "$PORT" "$IND"
- echo "Elasticsearch index (papers-$IND) created"
+ echo -e "\nElasticsearch index (papers-$IND) created"
exit
;;
2) # Create index, skip creating the template
create_index "$IP" "$PORT" "$IND"
- echo "Elasticsearch index (papers-$IND) created"
+ echo -e "\nElasticsearch index (papers-$IND) created"
+ exit
+ ;;
+ 3) # Uploads the specified file(s) to specified index
+ upload_files "$IP" "$PORT" "$IND" "$FPATH" "$DIRPATH"
+ echo -e "\nFinished uploading to index (papers-$IND)!"
exit
;;
esac
--
2.39.5
From d996bf679dbe3ff46924e2d3c3f9089faa80bca5 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Wed, 21 Sep 2022 15:14:57 +0300
Subject: [PATCH 15/23] Pagination redone
---
src/core/domain/dtos/elastic/es-query.dto.ts | 137 ++++++++++--------
src/core/domain/dtos/page-meta.dto.ts | 44 +-----
src/core/domain/dtos/page.dto.ts | 8 +-
src/core/domain/dtos/search-q.dto.ts | 71 ++++-----
src/core/domain/enums/page-order.enum.ts | 7 +
src/core/domain/interfaces/index.ts | 1 -
.../domain/interfaces/page-meta.interface.ts | 36 -----
src/core/interceptors/page.interceptor.ts | 118 ++++++---------
src/test/e2e/papers.controller.e2e.spec.ts | 12 --
src/test/page.interceptor.spec.ts | 35 +----
10 files changed, 168 insertions(+), 301 deletions(-)
delete mode 100644 src/core/domain/interfaces/page-meta.interface.ts
diff --git a/src/core/domain/dtos/elastic/es-query.dto.ts b/src/core/domain/dtos/elastic/es-query.dto.ts
index 0572933..693d24c 100644
--- a/src/core/domain/dtos/elastic/es-query.dto.ts
+++ b/src/core/domain/dtos/elastic/es-query.dto.ts
@@ -1,5 +1,5 @@
import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
+import { IsArray, IsDefined, IsInt, IsObject, IsOptional } from "class-validator";
import { EsPit } from "../../interfaces/elastic/es-pit.interface";
import { EsQuery } from "../../interfaces/elastic/es-query.interface"
@@ -13,71 +13,80 @@ import { EsQuery } from "../../interfaces/elastic/es-query.interface"
*/
@ApiExtraModels()
export class EsQueryDto {
- /**
- * Maximum number of elements returned by Elasticsearch
- */
- @IsOptional()
- @IsDefined()
- @IsNumber()
- @IsInt()
- @ApiPropertyOptional({
- 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: {},
- })
- query: EsQuery;
+ /**
+ * Offset from the start of the list of hits
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ description: 'Offset from the start of the list of hits',
+ example: 5,
+ })
+ from?: number;
- /**
- * Object, that stores PIT ID and time alive
- */
- @IsOptional()
- @IsObject()
- @ApiPropertyOptional({
- description: 'PIT object',
- example: {}
- })
- pit?: EsPit;
+ /**
+ * Maximum number of elements returned by Elasticsearch
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ 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: {},
+ })
+ query: EsQuery;
- /**
- * Sorting info
- */
- @IsOptional()
- @IsArray()
- @ApiPropertyOptional({
- description: '',
- example: []
- })
- sort?: unknown[];
+ /**
+ * Object, that stores PIT ID and time alive
+ */
+ @IsOptional()
+ @IsObject()
+ @ApiPropertyOptional({
+ description: 'PIT object',
+ example: {}
+ })
+ pit?: EsPit;
- /**
- * Pagination info
- */
- @IsOptional()
- @IsArray()
- @ApiPropertyOptional({
- description: '',
- example: []
- })
- search_after?: unknown[];
+ /**
+ * Sorting info
+ */
+ @IsOptional()
+ @IsArray()
+ @ApiPropertyOptional({
+ description: '',
+ example: []
+ })
+ sort?: unknown[];
- /**
- * Constructs an empty object
- */
- constructor() {
- this.size = 10;
- this.query = undefined;
- this.pit = undefined;
- this.sort = undefined;
- this.search_after = undefined;
- }
+ /**
+ * Pagination info
+ */
+ @IsOptional()
+ @IsArray()
+ @ApiPropertyOptional({
+ description: '',
+ example: []
+ })
+ search_after?: unknown[];
+
+ /**
+ * Constructs an empty object
+ */
+ constructor() {
+ this.size = 10;
+ this.query = undefined;
+ this.pit = undefined;
+ this.sort = undefined;
+ this.search_after = undefined;
+ }
}
\ No newline at end of file
diff --git a/src/core/domain/dtos/page-meta.dto.ts b/src/core/domain/dtos/page-meta.dto.ts
index 2a89285..0e4c321 100644
--- a/src/core/domain/dtos/page-meta.dto.ts
+++ b/src/core/domain/dtos/page-meta.dto.ts
@@ -1,8 +1,6 @@
-import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
+import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
import { IsArray } from "class-validator";
import { Order } from "../enums";
-import { PageMeta } from "../interfaces/page-meta.interface";
-import { PaperDto } from "./paper.dto";
/**
* List of allowed properties in this DTO
@@ -13,7 +11,7 @@ const allowedProperties = ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'p
* Page model for pagination
*/
@ApiExtraModels()
-export class PageMetaDto implements PageMeta {
+export class PageMetaDto {
/**
* Total number of hits (results) acquired from the search
*/
@@ -24,16 +22,6 @@ export class PageMetaDto implements PageMeta {
})
total: number;
- /**
- * Current page number
- */
- @ApiProperty({
- description: 'Current page number',
- minimum: 1,
- example: 3
- })
- pagenum: number;
-
/**
* Order of the elements on the page
*/
@@ -42,32 +30,4 @@ export class PageMetaDto implements PageMeta {
example: Order.DESC
})
order: Order;
-
- /**
- * Flag, that shows if there's a page following the current one
- */
- @ApiProperty({
- description: 'Flag, that shows if there\'s a page following the current one',
- example: true
- })
- hasNext: boolean;
-
- /**
- * Flag, that shows if there's a page preceding the current one
- */
- @ApiProperty({
- description: 'Flag, that shows if there\'s a page preceding the current one',
- example: true
- })
- hasPrev: boolean;
-
- /**
- * Maximum number of elements on the page
- */
- @ApiProperty({
- description: 'Maximum number of elements on the page',
- minimum: 1,
- example: 20
- })
- pagesize: number;
}
\ No newline at end of file
diff --git a/src/core/domain/dtos/page.dto.ts b/src/core/domain/dtos/page.dto.ts
index 785b1e0..189f7db 100644
--- a/src/core/domain/dtos/page.dto.ts
+++ b/src/core/domain/dtos/page.dto.ts
@@ -1,7 +1,5 @@
import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
import { IsArray } from "class-validator";
-import { Order } from "../enums";
-import { PageMeta } from "../interfaces/page-meta.interface";
import { PageMetaDto } from "./page-meta.dto";
import { PaperDto } from "./paper.dto";
@@ -22,7 +20,7 @@ export class PageDto {
@ApiProperty({
description: 'All data (papers) the page contains',
isArray: true,
- type: PaperDto
+ type: PaperDto,
})
readonly data: PaperDto[];
@@ -31,7 +29,7 @@ export class PageDto {
*/
@ApiProperty({
description: 'Metadata for the page',
- // example: {},
+ type: PageMetaDto,
})
readonly meta: PageMetaDto;
@@ -41,7 +39,7 @@ export class PageDto {
* @param data
* @param meta
*/
- constructor(data: PaperDto[], meta: PageMeta) {
+ constructor(data: PaperDto[], meta: PageMetaDto) {
this.data = data;
this.meta = meta;
}
diff --git a/src/core/domain/dtos/search-q.dto.ts b/src/core/domain/dtos/search-q.dto.ts
index 8834657..ee4d929 100644
--- a/src/core/domain/dtos/search-q.dto.ts
+++ b/src/core/domain/dtos/search-q.dto.ts
@@ -1,4 +1,4 @@
-import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
+import { ApiExtraModels, ApiPropertyOptional } from "@nestjs/swagger";
import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
/**
@@ -12,63 +12,64 @@ const allowedProperties = ['query', 'pagen', 'limit', 'order'];
@ApiExtraModels()
export class SearchQueryDto {
/**
- * Given query string to perform the
- * search on.
+ * Given query string to perform the search on.
*/
@IsDefined()
@IsNotEmpty()
@IsString()
- @ApiProperty({
- description: 'query',
- example: 'Particle Accelerator'
+ @ApiPropertyOptional({
+ description: 'Given query string to perform the search on',
+ example: 'Particle Accelerator',
})
query: string;
-
- /**
- * Page number to display.
- */
- @IsDefined()
- @IsNotEmpty()
- @IsInt()
- @ApiProperty({
- description: 'page',
- example: 3,
- })
- page: number;
/**
* Limits the number of displayed elements.
*/
@IsOptional()
@IsInt()
- @ApiProperty({
- description: 'limit',
+ @ApiPropertyOptional({
+ description: 'Limits the number of displayed elements',
example: 10,
})
- limit: number;
+ limit?: number;
/**
- * Limits the number of displayed elements.
+ * Offset from the start of the list of hits.
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ description: 'Offset from the start of the list of hits',
+ example: 0,
+ })
+ offset?: number;
+
+ /**
+ * Indicates in which order elements need to be displayed.
*/
@IsOptional()
@IsString()
- @ApiProperty({
- description: 'order',
+ @ApiPropertyOptional({
+ description: 'Indicates in which order elements need to be displayed',
example: 'asc',
})
- order: string;
+ order?: string;
- /**
- * Constructs an object with provided parameters
- * @param query
- * @param page
- * @param limit
- * @param order
- */
- constructor(query: string, page: number, limit: number, order: string) {
+ /**
+ *
+ */
+
+ /**
+ * Constructs an object with provided parameters
+ * @param query
+ * @param page
+ * @param limit
+ * @param order
+ */
+ constructor(query: string, page: number, limit: number, order: string) {
this.query = query;
- this.page = page;
this.limit = limit;
this.order = order;
- }
+ }
}
\ No newline at end of file
diff --git a/src/core/domain/enums/page-order.enum.ts b/src/core/domain/enums/page-order.enum.ts
index ff4a505..234f858 100644
--- a/src/core/domain/enums/page-order.enum.ts
+++ b/src/core/domain/enums/page-order.enum.ts
@@ -11,4 +11,11 @@ export enum Order {
* Descending order
*/
DESC = 'desc',
+}
+
+export function toOrder(str: string): Order {
+ switch (str) {
+ case 'asc': return Order.ASC;
+ case 'desc': return Order.DESC;
+ }
}
\ No newline at end of file
diff --git a/src/core/domain/interfaces/index.ts b/src/core/domain/interfaces/index.ts
index 6295a5f..3b9d09e 100644
--- a/src/core/domain/interfaces/index.ts
+++ b/src/core/domain/interfaces/index.ts
@@ -1,5 +1,4 @@
export * from './http-response.interface'
-export * from './page-meta.interface'
export * from './search-info.interface'
export * from './elastic/es-query.interface'
export * from './elastic/es-query-string.interface'
diff --git a/src/core/domain/interfaces/page-meta.interface.ts b/src/core/domain/interfaces/page-meta.interface.ts
deleted file mode 100644
index 62cc9a5..0000000
--- a/src/core/domain/interfaces/page-meta.interface.ts
+++ /dev/null
@@ -1,36 +0,0 @@
-import { Order } from "../enums/page-order.enum";
-
-/**
- * Structure of page metadata
- */
-export interface PageMeta {
- /**
- * Total search results
- */
- total: number;
-
- /**
- * Number of the page
- */
- pagenum: number;
-
- /**
- * Order of the elements on the page
- */
- order: Order;
-
- /**
- * Flag that indicates presence of the next page
- */
- hasNext: boolean;
-
- /**
- * Flag that indicates presence of the previous page
- */
- hasPrev: boolean;
-
- /**
- * Number of elements on the page
- */
- pagesize: number;
-}
\ No newline at end of file
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 01eda50..6efaf93 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -6,10 +6,10 @@ import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
import { EsTime } from "../domain/enums/es-time.enum";
-import { Order } from "../domain/enums/page-order.enum";
-import { PageMeta } from "../domain/interfaces";
+import { Order, toOrder } from "../domain/enums/page-order.enum";
import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
import { Cache } from 'cache-manager'
+import { PageMetaDto } from "../domain/dtos/page-meta.dto";
/**
* Pagination-implementing interceptor
@@ -45,8 +45,12 @@ export class PageInterceptor implements NestInterceptor {
async intercept(context: ExecutionContext, next: CallHandler): Promise> {
const request: RequestDto = context.switchToHttp().getRequest();
const query: SearchQueryDto = request.query;
- let reverse: boolean = false;
+ const offset = !query.offset ? 0 : query.offset;
+ const limit = !query.limit ? 10 : query.limit;
+ const order = !query.order ? Order.DESC : query.order;
+
+ // Contruct a body for querying Elasticsearch
request.es_query = new EsQueryDto();
request.es_query.query = {
query_string: {
@@ -54,63 +58,33 @@ export class PageInterceptor implements NestInterceptor {
default_field: 'content',
}
};
+ request.es_query.from = offset;
+ request.es_query.size = limit;
request.es_query.sort = [
- { _score: { order: !query?.order ? Order.DESC : query.order } },
- { _shard_doc: 'desc' }
- ];
+ { "_score": { "order": order } },
+ ];
- const limit = !query?.limit ? 10 : query.limit;
-
- if (await this.cacheManager.get('prevPage')) {
- if (query.page == (await this.cacheManager.get('_pagenum'))) return await this.cacheManager.get('prevPage');
-
- request.es_query.pit = await this.cacheManager.get('_pit');
- request.es_query.search_after = await this.cacheManager.get('_sa');
- request.es_query.size = limit * Math.abs(query.page - (await this.cacheManager.get('_pagenum')));
-
- if (query.page < (await this.cacheManager.get('_pagenum'))) {
- request.es_query.sort = [{ _score: { order: Order.ASC } }];
- request.es_query.size += limit - 1;
- reverse = true;
- }
- } else {
- request.es_query.pit = await this.getPIT(1);
- request.es_query.size = limit * query.page;
+ const prev_page = await this.cacheManager.get('prev_page');
+ if (prev_page) {
+ if (offset == prev_page[1] && limit == prev_page[2]) return prev_page[0];
}
return next.handle().pipe(
switchMap(async (res) => {
// Setting the page meta-data
- let meta: PageMeta = {
+ let meta: PageMetaDto = {
total: res.hits.total.value,
- pagenum: !query?.page ? 1 : +query.page,
- order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
- pagesize: !query?.limit ? 10 : query.limit,
- hasNext: undefined,
- hasPrev: undefined,
+ order: toOrder(order),
};
- meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
- meta.hasPrev = meta.pagenum != 1 ? true : false;
-
- // Saving the search info
- await this.cacheManager.set('_pit', { id: res.pit_id, keep_alive: `1${EsTime.min}` })
- await this.cacheManager.set('_sa', res.hits.hits[res.hits.hits.length - 1]?.sort);
- await this.cacheManager.set('_pagenum', query.page);
// Check if the performed search is a backwards search
- let data = res.hits.hits.slice(-meta.pagesize);
- if (reverse) {
- this.cacheManager.set('_sa', data[0]?.sort);
- data.reverse();
- reverse = false;
- }
-
+ let data = res.hits.hits;
// Omitting the redundant info and leaving only the document
data = data.map((el) => el._source);
// Cache and return the page
const page: PageDto = new PageDto(data, meta);
- await this.cacheManager.set('prevPage', page);
+ await this.cacheManager.set('prev_page', [page, offset, limit]);
return page;
})
);
@@ -121,19 +95,19 @@ export class PageInterceptor implements NestInterceptor {
* @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.
* @returns PIT object containing PIT ID and keep_alive value
*/
- public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {
- return new Promise((resolve, reject) => {
- try {
- this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res: EsPit) => {
- res.keep_alive = alive + unit;
- resolve(res);
- });
- } catch (error) {
- reject(error);
- }
- });
+ public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res: EsPit) => {
+ res.keep_alive = alive + unit;
+ resolve(res);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ });
}
/**
@@ -141,20 +115,20 @@ export class PageInterceptor implements NestInterceptor {
* @param pitID, ID of the PIT, that would be deleted
* @returns true/false, depending on the result of deletion of the PIT
*/
- async deletePIT(pitID: string): Promise {
- return new Promise((resolve, reject) => {
- try {
- this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
- data: { id: pitID },
- headers: { 'Content-Type': 'application/json' },
- })
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
- resolve(res.succeeded);
- });
- } catch (error) {
- reject(error);
- }
- })
+ async deletePIT(pitID: string): Promise {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
}
}
\ No newline at end of file
diff --git a/src/test/e2e/papers.controller.e2e.spec.ts b/src/test/e2e/papers.controller.e2e.spec.ts
index 2934683..d5bba5c 100644
--- a/src/test/e2e/papers.controller.e2e.spec.ts
+++ b/src/test/e2e/papers.controller.e2e.spec.ts
@@ -205,20 +205,8 @@ describe('E2E Testing of /papers', () => {
expect(test.body.meta.total).toBeDefined();
expect(test.body.meta.total).toBe(2);
- expect(test.body.meta.pagenum).toBeDefined();
- expect(test.body.meta.pagenum).toBe(1);
-
expect(test.body.meta.order).toBeDefined();
expect(test.body.meta.order).toBe(Order.DESC);
-
- expect(test.body.meta.pagesize).toBeDefined();
- expect(test.body.meta.pagesize).toBe(10);
-
- expect(test.body.meta.hasNext).toBeDefined();
- expect(test.body.meta.hasNext).toBe(false);
-
- expect(test.body.meta.hasPrev).toBeDefined();
- expect(test.body.meta.hasPrev).toBe(false);
});
afterAll(async () => {
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index 5a60f02..d60c8f1 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -159,40 +159,7 @@ describe('Unit tests for PageInterceptor', () => {
});
});
});
- });
-
- it('Should reverse the search results', async () => {
- execCtxMock.getRequest.mockReturnValueOnce({
- query: {
- page: 1,
- order: 'desc',
- limit: 3
- }
- });
-
- await pageInter['cacheManager'].set('_pagenum', 3);
- await pageInter['cacheManager'].set('prevPage', { set: "yes" });
-
- callHandlerMock.handle.mockReturnValueOnce(
- of({
- hits: {
- total: { value: 1 },
- hits: [
- { sort: ['1', 'less relevant'], _source: '1' },
- { sort: ['2', 'average'], _source: '2' },
- { sort: ['3', 'most relevant'], _source: '3' }
- ]
- }
- })
- );
-
- pageInter.intercept(execCtxMock, callHandlerMock).then((res) => {
- res.subscribe(async (page) => {
- expect(await pageInter['cacheManager'].get('_sa')).toEqual(['1', 'less relevant']);
- expect(page.data).toEqual(['3', '2', '1']);
- });
- });
- });
+ });
});
describe('getPIT()', () => {
--
2.39.5
From f4f01fe8c07fdd7b1939fa11939a10fdf1cde3bb Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Thu, 22 Sep 2022 13:31:22 +0300
Subject: [PATCH 16/23] Fixed order-change
---
src/core/interceptors/page.interceptor.ts | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 6efaf93..73c2089 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -1,6 +1,6 @@
import { HttpService } from "@nestjs/axios";
import { CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, NestInterceptor } from "@nestjs/common";
-import { Observable, map, take, switchMap } from "rxjs";
+import { Observable, map, take, switchMap, of } from "rxjs";
import { PageDto } from "../domain/dtos";
import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
@@ -50,6 +50,11 @@ export class PageInterceptor implements NestInterceptor {
const limit = !query.limit ? 10 : query.limit;
const order = !query.order ? Order.DESC : query.order;
+ const prev_page = await this.cacheManager.get('prev_page');
+ if (prev_page) {
+ if (offset == prev_page[1] && limit == prev_page[2] && order == prev_page[3]) return of(prev_page[0]);
+ }
+
// Contruct a body for querying Elasticsearch
request.es_query = new EsQueryDto();
request.es_query.query = {
@@ -60,14 +65,6 @@ export class PageInterceptor implements NestInterceptor {
};
request.es_query.from = offset;
request.es_query.size = limit;
- request.es_query.sort = [
- { "_score": { "order": order } },
- ];
-
- const prev_page = await this.cacheManager.get('prev_page');
- if (prev_page) {
- if (offset == prev_page[1] && limit == prev_page[2]) return prev_page[0];
- }
return next.handle().pipe(
switchMap(async (res) => {
@@ -81,10 +78,12 @@ export class PageInterceptor implements NestInterceptor {
let data = res.hits.hits;
// Omitting the redundant info and leaving only the document
data = data.map((el) => el._source);
+ // Change the order if set
+ if (order == Order.ASC) data.reverse();
// Cache and return the page
const page: PageDto = new PageDto(data, meta);
- await this.cacheManager.set('prev_page', [page, offset, limit]);
+ await this.cacheManager.set('prev_page', [page, offset, limit, order]);
return page;
})
);
--
2.39.5
From e0596d409f366def101d724bcd94125edf65b3ad Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Thu, 22 Sep 2022 17:28:14 +0300
Subject: [PATCH 17/23] Implemented HTTP-exceptions filter
---
documentation/classes/EsQueryDto.html | 197 ++++++----
.../classes/HttpExceptionFilter.html | 316 ++++++++++++++++
documentation/classes/PageDto.html | 22 +-
documentation/classes/PageMetaDto.html | 230 +-----------
documentation/classes/SearchQueryDto.html | 182 +++++-----
.../controllers/PapersController.html | 17 +-
documentation/coverage.html | 54 +--
documentation/graph/dependencies.svg | 174 ++++-----
.../injectables/PageInterceptor.html | 336 ++++++------------
documentation/injectables/SearchService.html | 16 +-
documentation/js/menu-wc.js | 21 +-
documentation/js/menu-wc_es5.js | 2 +-
documentation/js/search/search_index.js | 4 +-
documentation/miscellaneous/functions.html | 76 ++++
documentation/modules/HttpResponseModule.html | 8 +-
documentation/modules/LoggerModule.html | 8 +-
.../modules/LoggerModule/dependencies.svg | 8 +-
documentation/modules/SearchModule.html | 3 +-
.../modules/SearchModule/dependencies.svg | 8 +-
documentation/overview.html | 2 +-
.../controller/papers.controller.ts | 9 +-
src/core/domain/enums/page-order.enum.ts | 8 +-
src/core/filters/http-exception.filter.ts | 23 ++
src/core/pipes/query-str.pipe.ts | 13 +
src/core/services/common/search.service.ts | 6 +-
src/infrastructure/modules/app.module.ts | 3 +-
src/main.ts | 3 +-
src/test/page.interceptor.spec.ts | 4 -
src/test/search.service.spec.ts | 34 +-
29 files changed, 978 insertions(+), 809 deletions(-)
create mode 100644 documentation/classes/HttpExceptionFilter.html
create mode 100644 src/core/filters/http-exception.filter.ts
create mode 100644 src/core/pipes/query-str.pipe.ts
diff --git a/documentation/classes/EsQueryDto.html b/documentation/classes/EsQueryDto.html
index 3064425..2ba0be8 100644
--- a/documentation/classes/EsQueryDto.html
+++ b/documentation/classes/EsQueryDto.html
@@ -90,6 +90,10 @@
+
+ Optional
+ from
+
Optional
pit
@@ -133,7 +137,7 @@
-
+
@@ -152,6 +156,48 @@
+
+
+
+
+
+
+ Optional
+ from
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+ Decorators :
+
+
+ @IsOptional() @IsInt() @ApiPropertyOptional({description: 'Offset from the start of the list of hits', example: 5})
+
+
+
+
+
+
+
+
+
+
+
+ Offset from the start of the list of hits
+
+
+
+
+
+
@@ -181,7 +227,7 @@
-
+
@@ -222,7 +268,7 @@
-
+
@@ -264,7 +310,7 @@
-
+
@@ -300,13 +346,13 @@
Decorators :
- @IsOptional() @IsDefined() @IsNumber() @IsInt() @ApiPropertyOptional({description: 'Maximum number of elements returned by Elasticsearch', example: 30})
+ @IsOptional() @IsInt() @ApiPropertyOptional({description: 'Maximum number of elements returned by Elasticsearch', example: 30})
-
+
@@ -348,7 +394,7 @@
-
+
@@ -374,7 +420,7 @@
import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from "class-validator";
+import { IsArray, IsDefined, IsInt, IsObject, IsOptional } from "class-validator";
import { EsPit } from "../../interfaces/elastic/es-pit.interface";
import { EsQuery } from "../../interfaces/elastic/es-query.interface"
@@ -388,73 +434,82 @@ import { EsQuery } from "../../interfaces/elastic/es-query.interface"
*/
@ApiExtraModels()
export class EsQueryDto {
- /**
- * Maximum number of elements returned by Elasticsearch
- */
- @IsOptional()
- @IsDefined()
- @IsNumber()
- @IsInt()
- @ApiPropertyOptional({
- 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: {},
- })
- query: EsQuery;
+ /**
+ * Offset from the start of the list of hits
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ description: 'Offset from the start of the list of hits',
+ example: 5,
+ })
+ from?: number;
- /**
- * Object, that stores PIT ID and time alive
- */
- @IsOptional()
- @IsObject()
- @ApiPropertyOptional({
- description: 'PIT object',
- example: {}
- })
- pit?: EsPit;
+ /**
+ * Maximum number of elements returned by Elasticsearch
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ 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: {},
+ })
+ query: EsQuery;
- /**
- * Sorting info
- */
- @IsOptional()
- @IsArray()
- @ApiPropertyOptional({
- description: '',
- example: []
- })
- sort?: unknown[];
+ /**
+ * Object, that stores PIT ID and time alive
+ */
+ @IsOptional()
+ @IsObject()
+ @ApiPropertyOptional({
+ description: 'PIT object',
+ example: {}
+ })
+ pit?: EsPit;
- /**
- * Pagination info
- */
- @IsOptional()
- @IsArray()
- @ApiPropertyOptional({
- description: '',
- example: []
- })
- search_after?: unknown[];
+ /**
+ * Sorting info
+ */
+ @IsOptional()
+ @IsArray()
+ @ApiPropertyOptional({
+ description: '',
+ example: []
+ })
+ sort?: unknown[];
- /**
- * Constructs an empty object
- */
- constructor() {
- this.size = 10;
- this.query = undefined;
- this.pit = undefined;
- this.sort = undefined;
- this.search_after = undefined;
- }
+ /**
+ * Pagination info
+ */
+ @IsOptional()
+ @IsArray()
+ @ApiPropertyOptional({
+ description: '',
+ example: []
+ })
+ search_after?: unknown[];
+
+ /**
+ * Constructs an empty object
+ */
+ constructor() {
+ this.size = 10;
+ this.query = undefined;
+ this.pit = undefined;
+ this.sort = undefined;
+ this.search_after = undefined;
+ }
}
diff --git a/documentation/classes/HttpExceptionFilter.html b/documentation/classes/HttpExceptionFilter.html
new file mode 100644
index 0000000..45f65ed
--- /dev/null
+++ b/documentation/classes/HttpExceptionFilter.html
@@ -0,0 +1,316 @@
+
+
+
+
+
+ hometask documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classes
+ HttpExceptionFilter
+
+
+
+
+
+
+
File
+
+
+
+
+
Description
+
+
Basic filter for processing unhabdled HTTP exceptions
+
+
+
+
+
Implements
+
+
+
+
+
+ Index
+
+
+
+
+
+ Methods
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Methods
+
+
+
+
+
+
+
+ catch
+
+
+
+
+
+
+catch(exception: HttpException, host: ArgumentsHost)
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Exception handling method
+
+
+
+
Parameters :
+
+
+
+
+ Name
+ Type
+ Optional
+ Description
+
+
+
+
+ exception
+
+ HttpException
+
+
+
+ No
+
+
+
+
+ Execution object currently being processed
+
+
+
+
+ host
+
+ ArgumentsHost
+
+
+
+ No
+
+
+
+
+ Arguments host utility object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
import { ArgumentsHost, Catch, ExceptionFilter, HttpException } from "@nestjs/common";
+
+/**
+ * Basic filter for processing unhabdled HTTP exceptions
+ */
+@Catch(HttpException)
+export class HttpExceptionFilter implements ExceptionFilter {
+ /**
+ * Exception handling method
+ * @param exception Execution object currently being processed
+ * @param host Arguments host utility object
+ */
+ catch(exception: HttpException, host: ArgumentsHost) {
+ const ctx = host.switchToHttp();
+ const response = ctx.getResponse();
+ const status = exception.getStatus();
+
+ response.status(status).json({
+ status: status,
+ message: exception.message,
+ });
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
results matching " "
+
+
+
+
No results matching " "
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/documentation/classes/PageDto.html b/documentation/classes/PageDto.html
index 18a1357..0bb8e47 100644
--- a/documentation/classes/PageDto.html
+++ b/documentation/classes/PageDto.html
@@ -117,12 +117,12 @@
-constructor(data: PaperDto[] , meta: PageMeta )
+constructor(data: PaperDto[] , meta: PageMetaDto )
-
+
@@ -157,7 +157,7 @@
meta
- PageMeta
+ PageMetaDto
@@ -208,7 +208,7 @@
-
+
@@ -235,7 +235,7 @@
- Type : PageMetaDto
+ Type : PageMetaDto
@@ -244,13 +244,13 @@
Decorators :
- @ApiProperty({description: 'Metadata for the page'})
+ @ApiProperty({description: 'Metadata for the page', type: PageMetaDto})
-
+
@@ -277,8 +277,6 @@
import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
import { IsArray } from "class-validator";
-import { Order } from "../enums";
-import { PageMeta } from "../interfaces/page-meta.interface";
import { PageMetaDto } from "./page-meta.dto";
import { PaperDto } from "./paper.dto";
@@ -299,7 +297,7 @@ export class PageDto {
@ApiProperty({
description: 'All data (papers) the page contains',
isArray: true,
- type: PaperDto
+ type: PaperDto,
})
readonly data: PaperDto[];
@@ -308,7 +306,7 @@ export class PageDto {
*/
@ApiProperty({
description: 'Metadata for the page',
- // example: {},
+ type: PageMetaDto,
})
readonly meta: PageMetaDto;
@@ -318,7 +316,7 @@ export class PageDto {
* @param data
* @param meta
*/
- constructor(data: PaperDto[], meta: PageMeta) {
+ constructor(data: PaperDto[], meta: PageMetaDto) {
this.data = data;
this.meta = meta;
}
diff --git a/documentation/classes/PageMetaDto.html b/documentation/classes/PageMetaDto.html
index 17aa765..e1bd77c 100644
--- a/documentation/classes/PageMetaDto.html
+++ b/documentation/classes/PageMetaDto.html
@@ -76,12 +76,6 @@
- Implements
-
-
@@ -96,21 +90,9 @@
-
- hasNext
-
-
- hasPrev
-
order
-
- pagenum
-
-
- pagesize
-
total
@@ -133,88 +115,6 @@
-
-
-
-
-
-
- hasNext
-
-
-
-
-
-
- Type : boolean
-
-
-
-
-
- Decorators :
-
-
- @ApiProperty({description: 'Flag, that shows if there's a page following the current one', example: true})
-
-
-
-
-
-
-
-
-
-
-
- Flag, that shows if there's a page following the current one
-
-
-
-
-
-
-
-
-
-
-
-
- hasPrev
-
-
-
-
-
-
- Type : boolean
-
-
-
-
-
- Decorators :
-
-
- @ApiProperty({description: 'Flag, that shows if there's a page preceding the current one', example: true})
-
-
-
-
-
-
-
-
-
-
-
- Flag, that shows if there's a page preceding the current one
-
-
-
-
-
-
@@ -243,7 +143,7 @@
-
+
@@ -256,88 +156,6 @@
-
-
-
-
-
-
- pagenum
-
-
-
-
-
-
- Type : number
-
-
-
-
-
- Decorators :
-
-
- @ApiProperty({description: 'Current page number', minimum: 1, example: 3})
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- pagesize
-
-
-
-
-
-
- Type : number
-
-
-
-
-
- Decorators :
-
-
- @ApiProperty({description: 'Maximum number of elements on the page', minimum: 1, example: 20})
-
-
-
-
-
-
-
-
-
-
-
- Maximum number of elements on the page
-
-
-
-
-
-
@@ -366,7 +184,7 @@
-
+
@@ -391,11 +209,9 @@
-
import { ApiExtraModels, ApiProperty, PartialType } from "@nestjs/swagger";
+ import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
import { IsArray } from "class-validator";
import { Order } from "../enums";
-import { PageMeta } from "../interfaces/page-meta.interface";
-import { PaperDto } from "./paper.dto";
/**
* List of allowed properties in this DTO
@@ -406,7 +222,7 @@ const allowedProperties = ['total', 'pagenum', 'or
* Page model for pagination
*/
@ApiExtraModels()
-export class PageMetaDto implements PageMeta {
+export class PageMetaDto {
/**
* Total number of hits (results) acquired from the search
*/
@@ -417,16 +233,6 @@ export class PageMetaDto implements PageMeta {
})
total: number;
- /**
- * Current page number
- */
- @ApiProperty({
- description: 'Current page number',
- minimum: 1,
- example: 3
- })
- pagenum: number;
-
/**
* Order of the elements on the page
*/
@@ -435,34 +241,6 @@ export class PageMetaDto implements PageMeta {
example: Order.DESC
})
order: Order;
-
- /**
- * Flag, that shows if there's a page following the current one
- */
- @ApiProperty({
- description: 'Flag, that shows if there\'s a page following the current one',
- example: true
- })
- hasNext: boolean;
-
- /**
- * Flag, that shows if there's a page preceding the current one
- */
- @ApiProperty({
- description: 'Flag, that shows if there\'s a page preceding the current one',
- example: true
- })
- hasPrev: boolean;
-
- /**
- * Maximum number of elements on the page
- */
- @ApiProperty({
- description: 'Maximum number of elements on the page',
- minimum: 1,
- example: 20
- })
- pagesize: number;
}
diff --git a/documentation/classes/SearchQueryDto.html b/documentation/classes/SearchQueryDto.html
index e30b687..f60eb1c 100644
--- a/documentation/classes/SearchQueryDto.html
+++ b/documentation/classes/SearchQueryDto.html
@@ -91,13 +91,16 @@
+ Optional
limit
- order
+ Optional
+ offset
- page
+ Optional
+ order
query
@@ -126,7 +129,7 @@
-
+
@@ -213,6 +216,7 @@
+ Optional
limit
@@ -229,13 +233,13 @@
Decorators :
- @IsOptional() @IsInt() @ApiProperty({description: 'limit', example: 10})
+ @IsOptional() @IsInt() @ApiPropertyOptional({description: 'Limits the number of displayed elements', example: 10})
-
+
@@ -248,12 +252,55 @@
+
+
+
+
+
+
+ Optional
+ offset
+
+
+
+
+
+
+ Type : number
+
+
+
+
+
+ Decorators :
+
+
+ @IsOptional() @IsInt() @ApiPropertyOptional({description: 'Offset from the start of the list of hits', example: 0})
+
+
+
+
+
+
+
+
+
+
+
+ Offset from the start of the list of hits.
+
+
+
+
+
+
+ Optional
order
@@ -270,60 +317,19 @@
Decorators :
- @IsOptional() @IsString() @ApiProperty({description: 'order', example: 'asc'})
+ @IsOptional() @IsString() @ApiPropertyOptional({description: 'Indicates in which order elements need to be displayed', example: 'asc'})
-
+
- Limits the number of displayed elements.
-
-
-
-
-
-
-
-
-
-
-
-
- page
-
-
-
-
-
-
- Type : number
-
-
-
-
-
- Decorators :
-
-
- @IsDefined() @IsNotEmpty() @IsInt() @ApiProperty({description: 'page', example: 3})
-
-
-
-
-
-
-
-
-
-
-
- Page number to display.
+
Indicates in which order elements need to be displayed.
@@ -352,20 +358,19 @@
Decorators :
- @IsDefined() @IsNotEmpty() @IsString() @ApiProperty({description: 'query', example: 'Particle Accelerator'})
+ @IsDefined() @IsNotEmpty() @IsString() @ApiPropertyOptional({description: 'Given query string to perform the search on', example: 'Particle Accelerator'})
-
+
- Given query string to perform the
-search on.
+
Given query string to perform the search on.
@@ -384,7 +389,7 @@ search on.
-
import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
+ import { ApiExtraModels, ApiPropertyOptional } from "@nestjs/swagger";
import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
/**
@@ -398,65 +403,66 @@ const allowedProperties = ['query', 'pagen', 'limi
@ApiExtraModels()
export class SearchQueryDto {
/**
- * Given query string to perform the
- * search on.
+ * Given query string to perform the search on.
*/
@IsDefined()
@IsNotEmpty()
@IsString()
- @ApiProperty({
- description: 'query',
- example: 'Particle Accelerator'
+ @ApiPropertyOptional({
+ description: 'Given query string to perform the search on',
+ example: 'Particle Accelerator',
})
query: string;
-
- /**
- * Page number to display.
- */
- @IsDefined()
- @IsNotEmpty()
- @IsInt()
- @ApiProperty({
- description: 'page',
- example: 3,
- })
- page: number;
/**
* Limits the number of displayed elements.
*/
@IsOptional()
@IsInt()
- @ApiProperty({
- description: 'limit',
+ @ApiPropertyOptional({
+ description: 'Limits the number of displayed elements',
example: 10,
})
- limit: number;
+ limit?: number;
/**
- * Limits the number of displayed elements.
+ * Offset from the start of the list of hits.
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ description: 'Offset from the start of the list of hits',
+ example: 0,
+ })
+ offset?: number;
+
+ /**
+ * Indicates in which order elements need to be displayed.
*/
@IsOptional()
@IsString()
- @ApiProperty({
- description: 'order',
+ @ApiPropertyOptional({
+ description: 'Indicates in which order elements need to be displayed',
example: 'asc',
})
- order: string;
+ order?: string;
- /**
- * Constructs an object with provided parameters
- * @param query
- * @param page
- * @param limit
- * @param order
- */
- constructor(query: string, page: number, limit: number, order: string) {
+ /**
+ *
+ */
+
+ /**
+ * Constructs an object with provided parameters
+ * @param query
+ * @param page
+ * @param limit
+ * @param order
+ */
+ constructor(query: string, page: number, limit: number, order: string) {
this.query = query;
- this.page = page;
this.limit = limit;
this.order = order;
- }
+ }
}
diff --git a/documentation/controllers/PapersController.html b/documentation/controllers/PapersController.html
index 4de01ed..7eb4ad9 100644
--- a/documentation/controllers/PapersController.html
+++ b/documentation/controllers/PapersController.html
@@ -135,8 +135,8 @@
-
+
@@ -214,8 +214,8 @@
-
+
@@ -270,21 +270,24 @@
-
import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Req, UseInterceptors } from "@nestjs/common";
+ import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Req, UseFilters, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
import { PageInterceptor } from "../../core/interceptors/page.interceptor";
-import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from "@nestjs/swagger";
+import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags } from "@nestjs/swagger";
import { RequestDto } from "../../core/domain/dtos/request.dto";
import { EsHitDto, EsResponseDto, PageDto, PaperDto } from "../../core/domain";
+import { HttpExceptionFilter } from "src/core/filters/http-exception.filter";
/**
* /papers/ route controller
*/
+@UseFilters(HttpExceptionFilter)
@Controller({
version: '1',
path: 'papers',
})
@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)
+// @UseInterceptors(CacheInterceptor)
export class PapersController {
constructor(private searchService: SearchService) {}
@@ -344,7 +347,7 @@ export class PapersController {
getByID(@Param('uuid', ParseUUIDPipe) uuid: string): Promise<PaperDto> {
return this.searchService.findByID(uuid).then(
(response: EsResponseDto) => {
- return response.hits.hits[0]._source;
+ return response.hits.hits[0]?._source;
},
(error) => {
throw error;
diff --git a/documentation/coverage.html b/documentation/coverage.html
index b75c0b0..8d27efd 100644
--- a/documentation/coverage.html
+++ b/documentation/coverage.html
@@ -173,7 +173,7 @@
EsQueryDto
100 %
- (7/7)
+ (8/8)
@@ -221,7 +221,7 @@
PageMetaDto
100 %
- (7/7)
+ (3/3)
@@ -356,6 +356,18 @@
(1/1)
+
+
+
+ src/core/domain/enums/page-order.enum.ts
+
+ function
+ toOrder
+
+ 100 %
+ (1/1)
+
+
@@ -416,18 +428,6 @@
(6/6)
-
-
-
- src/core/domain/interfaces/page-meta.interface.ts
-
- interface
- PageMeta
-
- 100 %
- (7/7)
-
-
@@ -452,6 +452,18 @@
(2/2)
+
+
+
+ src/core/filters/http-exception.filter.ts
+
+ class
+ HttpExceptionFilter
+
+ 100 %
+ (2/2)
+
+
@@ -548,18 +560,6 @@
(4/4)
-
-
-
- src/core/interceptors/page.interceptor.ts
-
- class
- PrevSearch
-
- 100 %
- (6/6)
-
-
@@ -569,7 +569,7 @@
PageInterceptor
100 %
- (8/8)
+ (7/7)
diff --git a/documentation/graph/dependencies.svg b/documentation/graph/dependencies.svg
index 7a7c66e..7660ee6 100644
--- a/documentation/graph/dependencies.svg
+++ b/documentation/graph/dependencies.svg
@@ -4,217 +4,217 @@
-
-
+
+
dependencies
-
-dependencies
-
-cluster_SearchModule
-
-
-
-cluster_SearchModule_exports
-
-
-
-cluster_SearchModule_providers
-
-
+
+dependencies
cluster_AppModule
-
+
cluster_AppModule_imports
-
-
-
-cluster_CommonModule
-
-
-
-cluster_CommonModule_imports
-
-
-
-cluster_CommonModule_exports
-
+
cluster_HttpResponseModule
-
+
cluster_HttpResponseModule_exports
-
+
cluster_HttpResponseModule_providers
-
+
+
+
+cluster_CommonModule
+
+
+
+cluster_CommonModule_imports
+
+
+
+cluster_CommonModule_exports
+
cluster_LoggerModule
-
+
cluster_LoggerModule_exports
-
+
cluster_LoggerModule_providers
-
+
+
+
+cluster_SearchModule
+
+
+
+cluster_SearchModule_exports
+
+
+
+cluster_SearchModule_providers
+
CommonModule
-
-CommonModule
+
+CommonModule
AppModule
-
-AppModule
+
+AppModule
CommonModule->AppModule
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
CommonModule->HttpResponseModule
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
CommonModule->LoggerModule
-
-
+
+
SearchModule
-
-SearchModule
+
+SearchModule
SearchModule->AppModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchModule->SearchService
-
-
+
+
HttpResponseModule
-
-HttpResponseModule
+
+HttpResponseModule
HttpResponseModule->CommonModule
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseModule->HttpResponseService
-
-
+
+
LoggerModule
-
-LoggerModule
+
+LoggerModule
LoggerModule->CommonModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerModule->LoggerService
-
-
+
+
HttpResponseService
-
-HttpResponseService
+
+HttpResponseService
HttpResponseService->HttpResponseModule
-
-
+
+
LoggerService
-
-LoggerService
+
+LoggerService
LoggerService->LoggerModule
-
-
+
+
SearchService
-
-SearchService
+
+SearchService
SearchService->SearchModule
-
-
+
+
diff --git a/documentation/injectables/PageInterceptor.html b/documentation/injectables/PageInterceptor.html
index 2a1c737..e17aff4 100644
--- a/documentation/injectables/PageInterceptor.html
+++ b/documentation/injectables/PageInterceptor.html
@@ -95,10 +95,6 @@
Readonly
ES_PORT
-
- Private
- prevSearch
-
@@ -142,12 +138,12 @@
-constructor(httpService: HttpService)
+constructor(httpService: HttpService, cacheManager: Cache)
-
+
@@ -178,6 +174,18 @@
+
+ cacheManager
+
+
+ Cache
+
+
+
+ No
+
+
+
@@ -214,8 +222,8 @@
-
+
@@ -294,8 +302,8 @@
-
+
@@ -393,8 +401,8 @@
-
+
@@ -483,7 +491,7 @@
-
+
@@ -516,7 +524,7 @@
-
+
@@ -529,39 +537,6 @@
-
-
-
-
-
-
- Private
- prevSearch
-
-
-
-
-
-
- Type : PrevSearch
-
-
-
-
-
-
-
-
-
-
-
- Info about previously completed search
-
-
-
-
-
-
@@ -569,72 +544,17 @@
import { HttpService } from "@nestjs/axios";
-import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from "@nestjs/common";
-import { Observable, map, take } from "rxjs";
+import { CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, NestInterceptor } from "@nestjs/common";
+import { Observable, map, take, switchMap, of } from "rxjs";
import { PageDto } from "../domain/dtos";
import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
import { RequestDto } from "../domain/dtos/request.dto";
import { SearchQueryDto } from "../domain/dtos/search-q.dto";
import { EsTime } from "../domain/enums/es-time.enum";
-import { Order } from "../domain/enums/page-order.enum";
-import { PageMeta } from "../domain/interfaces";
+import { Order, toOrder } from "../domain/enums/page-order.enum";
import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
-
-/**
- * Previous search data storage
- */
-class PrevSearch {
- /**
- * Constructs an uninitialized object
- */
- constructor() {
- this.pit = undefined;
- this.tiebreaker = undefined;
- this.prevPage = -1;
- }
-
- /**
- * PIT object of the previous search
- */
- private pit: EsPit;
- set _pit(pit: EsPit) {
- this.pit = pit;
- }
- get _pit(): EsPit {
- return this.pit;
- }
-
- /**
- * Tiebreaker and sort parameters
- */
- private tiebreaker: unknown[];
- set _tiebreaker(tiebreaker: unknown[]) {
- this.tiebreaker = tiebreaker;
- }
- get _tiebreaker(): unknown[] {
- return this.tiebreaker;
- }
-
- /**
- * Number of the previous page
- */
- private prevPage: number;
- set _prevPage(page: number) {
- this.prevPage = page;
- }
- get _prevPage(): number {
- return this.prevPage;
- }
-
- /**
- * Checks if there was the search before current one
- * @returns true/false, showing whether or not there was another search before
- */
- public isSet(): boolean {
- if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;
- return false;
- }
-}
+import { Cache } from 'cache-manager'
+import { PageMetaDto } from "../domain/dtos/page-meta.dto";
/**
* Pagination-implementing interceptor
@@ -643,95 +563,13 @@ class PrevSearch {
export class PageInterceptor implements NestInterceptor {
/**
* Injects needed dependencies and instantiates the storage object
- * @param httpService
- * @param searchService
+ * @param httpService
+ * @param searchService
*/
- constructor(private readonly httpService: HttpService) {
- this.prevSearch = new PrevSearch;
- }
-
- /**
- * Override of intercept() method, specified in NestInterceptor interface
- * @param context
- * @param next
- * @returns Page with content and metadata
- */
- async intercept(context: ExecutionContext, next: CallHandler<any>): Promise<Observable<PageDto>> {
- let request: RequestDto = context.switchToHttp().getRequest<RequestDto>();
- const query: SearchQueryDto = request.query;
- let reverse: boolean = false;
-
- request.es_query = new EsQueryDto();
-
- request.es_query.query = {
- query_string: {
- query: query.query,
- default_field: 'content',
- }
- };
- request.es_query.sort = [
- { _score: { order: !query?.order ? Order.DESC : query.order } },
- { _shard_doc: 'desc' }
- ];
-
- if (this.prevSearch.isSet()) {
- request.es_query.pit = this.prevSearch._pit;
- request.es_query.search_after = this.prevSearch._tiebreaker;
-
- let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);
-
- if (query.page < this.prevSearch._prevPage) {
- request.es_query.sort = [{ _score: { order: 'asc' } }];
- request.es_query.size += limit - 1;
- reverse = true;
- } else if (query.page == this.prevSearch._prevPage) {
- // Caching should be HERE
- request.es_query.sort = [{ _score: { order: 'asc' } }];
- reverse = true;
- }
- } else {
- this.prevSearch._pit = request.es_query.pit = await this.getPIT(1);
-
- let limit = !query?.limit ? 10 : query.limit;
- request.es_query.size = limit * query.page;
- }
-
- return next.handle().pipe(
- map((res) => {
- // Setting the page meta-data
- let meta: PageMeta = {
- total: res.hits.total.value,
- pagenum: !query?.page ? 1 : +query.page,
- order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,
- pagesize: !query?.limit ? 10 : query.limit,
- hasNext: undefined,
- hasPrev: undefined,
- };
- meta.hasNext = meta.pagenum * meta.pagesize < meta.total ? true : false;
- meta.hasPrev = meta.pagenum != 1 ? true : false;
-
- // Saving the search info
- this.prevSearch._pit.id = res.pit_id;
- this.prevSearch._tiebreaker = res.hits.hits[res.hits.hits.length - 1]?.sort;
- this.prevSearch._prevPage = query.page;
-
- // Check if the performed search is a backwards search
- let data = res.hits.hits.slice(-meta.pagesize);
- if (reverse) {
- this.prevSearch._tiebreaker = data[0]?.sort;
- data.reverse();
- reverse = false;
- }
-
- // Omitting the redundant info and leaving only the document
- data = data.map((el) => el._source);
-
- // Return the page
- return new PageDto(data, meta);
- })
- );
- }
+ constructor(
+ private readonly httpService: HttpService,
+ @Inject(CACHE_MANAGER) private cacheManager: Cache
+ ) {}
/**
* Elastichsearch server port-number
@@ -744,28 +582,76 @@ export class PageInterceptor implements NestInterceptor {
private readonly ES_IP = process.env.ES_CONTAINER_NAME;
/**
- * Info about previously completed search
+ * Override of intercept() method, specified in NestInterceptor interface
+ * @param context
+ * @param next
+ * @returns Page with content and metadata
*/
- private prevSearch: PrevSearch;
+ async intercept(context: ExecutionContext, next: CallHandler<any>): Promise<Observable<PageDto>> {
+ const request: RequestDto = context.switchToHttp().getRequest<RequestDto>();
+ const query: SearchQueryDto = request.query;
+
+ const offset = !query.offset ? 0 : query.offset;
+ const limit = !query.limit ? 10 : query.limit;
+ const order = !query.order ? Order.DESC : query.order;
+
+ const prev_page = await this.cacheManager.get('prev_page');
+ if (prev_page) {
+ if (offset == prev_page[1] && limit == prev_page[2] && order == prev_page[3]) return of(prev_page[0]);
+ }
+
+ // Contruct a body for querying Elasticsearch
+ request.es_query = new EsQueryDto();
+ request.es_query.query = {
+ query_string: {
+ query: query.query,
+ default_field: 'content',
+ }
+ };
+ request.es_query.from = offset;
+ request.es_query.size = limit;
+
+ return next.handle().pipe(
+ switchMap(async (res) => {
+ // Setting the page meta-data
+ let meta: PageMetaDto = {
+ total: res.hits.total.value,
+ order: toOrder(order),
+ };
+
+ // Check if the performed search is a backwards search
+ let data = res.hits.hits;
+ // Omitting the redundant info and leaving only the document
+ data = data.map((el) => el._source);
+ // Change the order if set
+ if (order == Order.ASC) data.reverse();
+
+ // Cache and return the page
+ const page: PageDto = new PageDto(data, meta);
+ await this.cacheManager.set('prev_page', [page, offset, limit, order]);
+ return page;
+ })
+ );
+ }
/**
* Acquires a PIT ID from Elasticsearch, needed for a request
* @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.
* @returns PIT object <EsPit> containing PIT ID and keep_alive value
*/
- public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise<EsPit> {
- return new Promise((resolve, reject) => {
- try {
- this.httpService.post<EsPit>(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res: EsPit) => {
- res.keep_alive = alive + unit;
- resolve(res);
- });
- } catch (error) {
- reject(error);
- }
- });
+ public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise<EsPit> {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.post<EsPit>(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res: EsPit) => {
+ res.keep_alive = alive + unit;
+ resolve(res);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ });
}
/**
@@ -773,21 +659,21 @@ export class PageInterceptor implements NestInterceptor {
* @param pitID, ID of the PIT, that would be deleted
* @returns true/false, depending on the result of deletion of the PIT
*/
- async deletePIT(pitID: string): Promise<boolean> {
- return new Promise((resolve, reject) => {
- try {
- this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
- data: { id: pitID },
- headers: { 'Content-Type': 'application/json' },
- })
- .pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res) => {
- resolve(res.succeeded);
- });
- } catch (error) {
- reject(error);
- }
- })
+ async deletePIT(pitID: string): Promise<boolean> {
+ return new Promise((resolve, reject) => {
+ try {
+ this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {
+ data: { id: pitID },
+ headers: { 'Content-Type': 'application/json' },
+ })
+ .pipe(take(1), map(axiosRes => axiosRes.data))
+ .subscribe((res) => {
+ resolve(res.succeeded);
+ });
+ } catch (error) {
+ reject(error);
+ }
+ })
}
}
diff --git a/documentation/injectables/SearchService.html b/documentation/injectables/SearchService.html
index a80d7ea..ab4019c 100644
--- a/documentation/injectables/SearchService.html
+++ b/documentation/injectables/SearchService.html
@@ -206,8 +206,8 @@ HTTPService instance
-
+
@@ -411,7 +411,7 @@ HTTPService instance
import { HttpService } from "@nestjs/axios";
-import { GatewayTimeoutException, HttpException, Injectable } from "@nestjs/common";
+import { BadRequestException, GatewayTimeoutException, HttpException, Injectable, NotFoundException } from "@nestjs/common";
import { map, take } from "rxjs";
import { EsResponseDto} from "../../domain/dtos";
import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
@@ -446,7 +446,7 @@ export class SearchService {
async findByID(uuid: string): Promise<EsResponseDto> { // Should I change 'object' to specific DTO?
let ESQ: EsQueryDto = new EsQueryDto;
- ESQ.size = 1;
+ // ESQ.size = 1;
ESQ.query = {
query_string: {
query: ('id:' + uuid),
@@ -461,6 +461,9 @@ export class SearchService {
}))
?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
+ if (!res.hits.hits.length) {
+ reject(new NotFoundException);
+ }
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
@@ -480,6 +483,10 @@ export class SearchService {
async findByContext(es_query: EsQueryDto): Promise<EsResponseDto> {
return new Promise((resolve, reject) => {
try {
+ if (!es_query.query.query_string.query) {
+ throw new BadRequestException;
+ }
+
(this.httpService.get<EsResponseDto>(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
data: es_query,
headers: {'Content-Type': 'application/json'},
@@ -489,7 +496,6 @@ export class SearchService {
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
-
resolve(res);
});
} catch (error) {
diff --git a/documentation/js/menu-wc.js b/documentation/js/menu-wc.js
index a3eb3db..3e0b561 100644
--- a/documentation/js/menu-wc.js
+++ b/documentation/js/menu-wc.js
@@ -121,13 +121,13 @@ customElements.define('compodoc-menu', class extends HTMLElement {
SearchModule
-
+
PapersController
@@ -135,13 +135,13 @@ customElements.define('compodoc-menu', class extends HTMLElement {
-
+
SearchService
@@ -183,6 +183,9 @@ customElements.define('compodoc-menu', class extends HTMLElement {
EsResponseDto
+
+ HttpExceptionFilter
+
HttpResponseException
@@ -195,9 +198,6 @@ customElements.define('compodoc-menu', class extends HTMLElement {
PaperDto
-
- PrevSearch
-
RequestDto
@@ -267,9 +267,6 @@ customElements.define('compodoc-menu', class extends HTMLElement {
HttpResponse
-
- PageMeta
-
SearchInfo
diff --git a/documentation/js/menu-wc_es5.js b/documentation/js/menu-wc_es5.js
index 18be1da..80d71eb 100644
--- a/documentation/js/menu-wc_es5.js
+++ b/documentation/js/menu-wc_es5.js
@@ -51,7 +51,7 @@ customElements.define('compodoc-menu', /*#__PURE__*/function (_HTMLElement) {
}, {
key: "render",
value: function render(isNormalMode) {
- var tp = lithtml.html("\n \n \n \n LoggerModule \n \n \n \n Injectables \n \n
\n \n \n \n \n SearchModule \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
+ var tp = lithtml.html("\n \n \n \n \n \n \n Controllers \n \n
\n \n \n \n \n \n Classes \n \n
\n \n \n \n \n \n Injectables \n \n
\n \n \n \n \n \n Guards \n \n
\n \n \n \n \n \n Interfaces \n \n
\n \n \n \n \n \n Miscellaneous \n \n
\n \n \n \n Routes \n \n \n Documentation coverage \n \n \n \n Documentation generated using \n \n \n \n \n \n "));
this.innerHTML = tp.strings;
}
}]);
diff --git a/documentation/js/search/search_index.js b/documentation/js/search/search_index.js
index eb53ef2..b3ef73c 100644
--- a/documentation/js/search/search_index.js
+++ b/documentation/js/search/search_index.js
@@ -1,4 +1,4 @@
var COMPODOC_SEARCH_INDEX = {
- "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.285,1,2.416]],["body/modules/AppModule.html",[0,2.25,1,4.651,2,2.704,3,2.291,4,3.437,5,3.437,6,4.117,7,0.023,8,4.117,9,3.025,10,2.15,11,1.756,12,0.329,13,0.265,14,0.265,15,3.043,16,0.362,17,3.367,18,3.587,19,0.685,20,5.266,21,4.035,22,1.157,23,5.863,24,3.043,25,4.035,26,3.437,27,3.28,28,4.035,29,3.971,30,4.035,31,3.587,32,4.035,33,3.437,34,4.035,35,4.035,36,3.437,37,3.437,38,4.035,39,1.552,40,1.157,41,3.971,42,3.437,43,3.437,44,3.043,45,3.043,46,4.035,47,4.035,48,4.035,49,4.035,50,4.035,51,2.551,52,3.437,53,4.035,54,2.748,55,4.485,56,5.266,57,2.318,58,0.329,59,0.118,60,0.016,61,0.016]],["title/modules/CommonModule.html",[0,1.285,6,2.209]],["body/modules/CommonModule.html",[0,2.111,2,2.06,3,2.536,6,4.453,7,0.023,9,3.348,10,2.523,11,2.06,12,0.386,13,0.31,14,0.31,18,3.97,19,0.621,22,1.358,33,4.965,58,0.386,59,0.138,60,0.018,61,0.018,62,4.033,63,4.033,64,4.033,65,4.495,66,4.495,67,4.736,68,3.97]],["title/classes/EnvironmentVariables.html",[59,0.104,69,2.675]],["body/classes/EnvironmentVariables.html",[7,0.023,12,0.36,13,0.289,14,0.289,16,0.396,19,0.548,40,1.6,51,1.921,58,0.36,59,0.179,60,0.017,61,0.017,69,4.207,70,1.599,71,3.329,72,4.207,73,5.579,74,4.415,75,3.76,76,4.415,77,1.697,78,3.007,79,2.75,80,4.415,81,3.007,82,3.76,83,3.259,84,3.007,85,5.579,86,3.007,87,3.007,88,4.415,89,3.76,90,4.846,91,1.422,92,3.76,93,1.697,94,4.415,95,2.75,96,3.76,97,3.76,98,5.579,99,4.415,100,4.415,101,3.76,102,4.415,103,4.415,104,2.535,105,4.415,106,3.76,107,3.76,108,2.192,109,4.415,110,1.804]],["title/interfaces/EqQueryString.html",[111,0.805,112,2.416]],["body/interfaces/EqQueryString.html",[7,0.023,12,0.362,13,0.291,14,0.291,16,0.399,58,0.362,60,0.017,61,0.017,111,1.009,112,3.816,113,1.816,114,2.768,115,2.702,116,3.785,117,2.206,118,1.816,119,2.063,120,0.516,121,0.932,122,1.552,123,5.113,124,4.618,125,2.043,126,0.713,127,2.781,128,5.487,129,5.113,130,2.184,131,4.388,132,3.816,133,5.602,134,4.772,135,2.438]],["title/classes/EsHitDto.html",[59,0.104,136,2.209]],["body/classes/EsHitDto.html",[7,0.023,12,0.304,13,0.244,14,0.244,16,0.541,19,0.554,39,2.415,40,1.07,58,0.304,59,0.146,60,0.016,61,0.016,70,1.351,77,1.434,78,4.103,83,3.004,117,2.482,120,0.433,121,0.938,122,1.451,126,0.655,136,3.114,137,3.46,138,2.812,139,4.404,140,5.507,141,3.769,142,2.208,143,3.752,144,4.542,145,3.752,146,1.519,147,2.168,148,4.999,149,6.024,150,5.131,151,2.643,152,4.999,153,1.135,154,3.73,155,6.466,156,3.004,157,3.73,158,3.752,159,3.405,160,2.32,161,3.73,162,6.024,163,6.024,164,3.73,165,2.175,166,2.32,167,3.84,168,1.524,169,2.663,170,2.812,171,1.434,172,1.434,173,1.524,174,1.731,175,3.73]],["title/interfaces/EsPit.html",[111,0.805,176,1.89]],["body/interfaces/EsPit.html",[7,0.023,12,0.404,13,0.325,14,0.325,16,0.445,58,0.404,60,0.019,61,0.019,111,1.125,113,2.026,114,3.087,117,2.461,120,0.576,121,0.997,125,1.997,126,0.696,174,3.233,176,3.193,177,4.222,178,3.651,179,3.737,180,3.432,181,1.692,182,5.047,183,5.993]],["title/interfaces/EsQuery.html",[111,0.805,184,2.416]],["body/interfaces/EsQuery.html",[7,0.023,12,0.401,13,0.323,14,0.323,16,0.442,19,0.484,58,0.401,60,0.019,61,0.019,111,1.117,112,4.547,113,2.011,114,3.064,115,2.469,117,2.962,118,2.439,119,2.769,120,0.572,121,0.993,125,1.711,126,0.572,130,1.921,181,2.037,184,4.064,185,4.191,186,4.547,187,5.967,188,5.082,189,5.082,190,4.92,191,4.92]],["title/classes/EsQueryDto.html",[59,0.104,192,1.89]],["body/classes/EsQueryDto.html",[7,0.023,12,0.477,13,0.201,14,0.201,16,0.546,19,0.545,39,1.179,40,0.88,58,0.25,59,0.128,60,0.014,61,0.014,70,1.111,77,1.179,83,3.12,115,2.54,120,0.356,121,0.846,122,1.542,126,0.68,130,1.784,137,3.597,142,2.255,145,3.451,146,1.85,147,2.251,151,2.7,153,1.225,160,2.971,165,1.9,166,2.027,167,3.988,168,1.253,169,1.634,171,1.179,172,1.955,173,1.253,174,2.027,176,2.709,178,3.41,180,2.326,181,2.255,184,3.463,192,2.326,193,2.313,194,5.085,195,4.719,196,1.955,197,4.367,198,2.168,199,3.719,200,3.067,201,3.067,202,4.367,203,2.974,204,3.067,205,5.541,206,3.067,207,4.367,208,2.508,209,3.067,210,4.178,211,3.774,212,3.774,213,4.367,214,3.067,215,3.067,216,4.367,217,3.167,218,2.92,219,2.974,220,3.719,221,4.331,222,3.719,223,2.089,224,3.067,225,2.72,226,3.067,227,2.089,228,2.313,229,2.313,230,3.067,231,3.067]],["title/classes/EsResponseDto.html",[59,0.104,232,2.037]],["body/classes/EsResponseDto.html",[7,0.023,11,2.351,12,0.237,13,0.19,14,0.19,16,0.536,19,0.485,39,1.116,40,0.833,51,1.827,58,0.237,59,0.123,60,0.017,61,0.013,70,1.052,77,1.116,83,2.879,104,2.411,106,3.576,115,1.614,119,2.508,120,0.337,121,0.82,122,1.011,124,1.978,125,1.204,126,0.666,130,1.74,137,3.432,142,2.228,143,1.809,144,2.19,146,1.816,147,2.204,151,2.668,153,1.154,160,1.949,165,1.827,166,2.661,167,2.86,168,1.187,169,2.628,171,1.116,172,1.896,173,1.187,174,2.508,178,2.879,180,2.237,181,1.433,212,3.68,218,2.832,220,3.576,221,4.2,222,2.473,232,2.411,233,2.19,234,1.786,235,4.074,236,3.292,237,4.602,238,4.074,239,4.757,240,4.199,241,4.922,242,4.199,243,5.404,244,3.929,245,4.602,246,3.317,247,2.904,248,3.359,249,4.602,250,2.904,251,2.904,252,4.199,253,2.904,254,2.237,255,2.904,256,3.576,257,4.074,258,4.074,259,5.404,260,2.904,261,2.084,262,2.904,263,2.86,264,2.904,265,4.199,266,4.199,267,4.199,268,3.166,269,2.904,270,2.237,271,1.827,272,2.904,273,2.904,274,2.473,275,1.348,276,1.978,277,2.904,278,2.904,279,2.473,280,4.199,281,2.904,282,2.19,283,2.904,284,2.904]],["title/interfaces/EsResponseHits.html",[111,0.805,248,2.416]],["body/interfaces/EsResponseHits.html",[7,0.023,12,0.502,13,0.294,14,0.294,16,0.402,19,0.441,58,0.365,60,0.021,61,0.017,111,1.018,113,1.832,114,2.792,117,2.797,120,0.521,121,0.937,122,1.357,126,0.716,130,2.081,136,4.025,142,1.923,146,1.872,150,4.798,181,2.355,210,4.248,234,2.231,236,4.007,248,3.837,270,3.443,279,5.505,285,3.819,286,5.634,287,5.634,288,4.248,289,4.483,290,4.483]],["title/controllers/HealthController.html",[291,2.209,292,2.416]],["body/controllers/HealthController.html",[7,0.023,12,0.481,13,0.269,14,0.269,16,0.368,19,0.523,22,1.176,57,2.355,58,0.334,59,0.183,60,0.017,61,0.017,91,1.714,93,2.046,110,1.676,120,0.476,125,1.695,147,1.577,153,0.825,196,1.577,203,4.259,234,2.14,261,3.296,291,3.894,292,3.625,293,3.493,294,4.101,295,5.757,296,2.47,297,5.655,298,4.101,299,4.101,300,3.625,301,5.322,302,5.322,303,2.316,304,5.322,305,3.217,306,5.322,307,5.322,308,5.322,309,3.092,310,4.101,311,1.676,312,2.355,313,2.185,314,3.493,315,4.533]],["title/modules/HealthModule.html",[0,1.285,316,2.675]],["body/modules/HealthModule.html",[0,2.223,2,2.245,7,0.023,12,0.42,13,0.338,14,0.338,18,3.514,19,0.667,22,1.48,57,3.526,58,0.42,59,0.151,60,0.019,61,0.019,292,4.464,309,3.89,316,4.629,317,5.159,318,5.229,319,2.963,320,6.139,321,5.159]],["title/interfaces/HttpResponse.html",[111,0.805,322,2.209]],["body/interfaces/HttpResponse.html",[7,0.023,12,0.339,13,0.273,14,0.273,16,0.609,58,0.339,60,0.017,61,0.017,78,4.769,111,1.22,113,1.7,120,0.483,121,0.894,125,1.992,126,0.819,135,2.9,146,1.808,158,3.345,199,5.355,212,3.658,234,2.515,261,3.412,305,2.953,322,3.345,323,3.543,324,3.543,325,4.16,326,4.54,327,5.371,328,5.371,329,4.575,330,5.371,331,5.371,332,4.575,333,3.345,334,5.371]],["title/classes/HttpResponseException.html",[59,0.104,335,2.675]],["body/classes/HttpResponseException.html",[0,2.069,7,0.023,12,0.374,13,0.301,14,0.301,16,0.513,19,0.562,22,1.315,58,0.374,59,0.134,60,0.018,61,0.018,70,1.66,91,1.477,122,1.104,126,0.533,135,2.486,153,0.923,196,1.763,234,2.475,305,3.478,311,2.335,322,4.058,335,4.308,336,4.866,337,3.905,338,3.044,339,4.913,340,4.866,341,4.866,342,4.693,343,4.866,344,4.585,345,5.713,346,1.565,347,1.477,348,3.123,349,4.585,350,4.585,351,5.713]],["title/modules/HttpResponseModule.html",[0,1.285,65,2.209]],["body/modules/HttpResponseModule.html",[0,2.174,2,2.162,3,2.612,7,0.022,9,3.447,10,2.647,11,2.162,12,0.405,13,0.326,14,0.326,19,0.59,22,1.425,54,4.088,58,0.405,59,0.145,60,0.019,61,0.019,65,4.39,68,4.088,352,4.232,353,4.232,354,4.232,355,4.522,356,4.969,357,4.969,358,3.747]],["title/injectables/HttpResponseService.html",[355,2.209,359,1.285]],["body/injectables/HttpResponseService.html",[7,0.023,12,0.249,13,0.2,14,0.2,16,0.626,19,0.499,22,0.876,40,0.876,44,3.825,45,3.825,58,0.249,59,0.089,60,0.014,61,0.014,91,2.014,93,2.458,110,2.26,120,0.355,122,1.332,125,1.935,126,0.756,127,1.516,135,2.782,146,2.05,153,1.113,225,1.901,234,2.315,261,3.49,275,1.417,296,2.02,305,3.349,311,1.779,313,3.467,322,3.444,326,4.594,346,1.888,347,1.781,348,2.079,355,2.711,359,1.576,360,1.753,361,4.979,362,2.6,363,4.32,364,4.353,365,4.353,366,4.353,367,3.053,368,3.053,369,4.353,370,4.353,371,5.529,372,4.353,373,4.353,374,3.053,375,6.077,376,4.353,377,3.053,378,4.353,379,3.053,380,3.053,381,2.6,382,4.32,383,4.32,384,2.6,385,2.6,386,3.053,387,3.053,388,3.053,389,3.053,390,3.053]],["title/injectables/LoggerInterceptor.html",[31,2.416,359,1.285]],["body/injectables/LoggerInterceptor.html",[7,0.023,12,0.256,13,0.206,14,0.206,16,0.463,19,0.581,22,0.902,31,3.026,40,1.905,58,0.256,59,0.092,60,0.014,61,0.014,91,1.804,93,2.154,108,2.206,110,1.816,120,0.365,121,0.739,122,1.07,126,0.599,127,1.56,146,1.566,153,1.037,180,2.367,234,1.867,246,2.559,275,1.459,296,2.062,303,1.933,305,3.046,311,1.816,313,3.269,338,1.675,346,1.517,347,1.431,358,2.37,359,1.609,360,1.805,391,2.677,392,5.226,393,5.226,394,2.96,395,3.886,396,4.224,397,4.444,398,3.351,399,4.296,400,3.269,401,4.224,402,3.143,403,4.771,404,3.432,405,4.444,406,3.886,407,4.444,408,6.551,409,3.143,410,4.444,411,2.141,412,3.785,413,2.96,414,4.444,415,3.143,416,3.351,417,1.958,418,4.444,419,3.143,420,2.37,421,5.154,422,5.154,423,4.444,424,3.143,425,4.444,426,4.444,427,3.143,428,3.143,429,4.444,430,3.143,431,3.143,432,3.143,433,3.143,434,2.141,435,3.143,436,4.444,437,1.958,438,3.785,439,3.143,440,3.143,441,3.143]],["title/modules/LoggerModule.html",[0,1.285,66,2.209]],["body/modules/LoggerModule.html",[0,2.174,2,2.162,3,2.612,7,0.022,9,3.447,10,2.647,11,2.162,12,0.405,13,0.326,14,0.326,19,0.59,22,1.425,54,4.088,58,0.405,59,0.145,60,0.019,61,0.019,66,4.39,68,4.088,125,1.425,358,3.747,413,4.17,442,4.232,443,4.232,444,4.232,445,4.969]],["title/injectables/LoggerService.html",[359,1.285,413,2.037]],["body/injectables/LoggerService.html",[7,0.023,12,0.193,13,0.156,14,0.156,16,0.534,19,0.355,22,0.681,51,1.033,58,0.193,59,0.069,60,0.011,61,0.011,91,2.129,93,2.343,108,1.795,110,1.79,120,0.276,121,0.602,122,1.497,125,2.034,126,0.722,153,1.251,196,1.684,263,1.617,296,1.678,303,2.9,311,1.478,313,3.247,326,4.893,338,1.265,346,2.031,347,1.916,359,1.309,360,1.364,392,5.294,394,3.188,395,4.941,404,3.414,411,3.588,413,3.026,446,2.022,447,3.616,448,4.379,449,3.616,450,3.798,451,4.17,452,2.463,453,3.616,454,4.896,455,3.616,456,3.616,457,3.616,458,3.616,459,2.374,460,3.616,461,3.616,462,7.078,463,2.374,464,6.408,465,3.616,466,2.374,467,3.616,468,3.616,469,2.374,470,3.616,471,3.616,472,3.616,473,2.374,474,3.616,475,2.374,476,3.616,477,2.374,478,3.616,479,2.374,480,3.616,481,3.616,482,2.374,483,2.374,484,2.374,485,2.374,486,2.374,487,2.374,488,2.374,489,2.374,490,2.374,491,2.374,492,2.374,493,2.374,494,2.374,495,2.374,496,2.374]],["title/classes/PageDto.html",[59,0.104,497,2.037]],["body/classes/PageDto.html",[7,0.023,12,0.302,13,0.243,14,0.243,16,0.504,19,0.634,39,1.424,40,1.062,51,2.164,58,0.302,59,0.145,60,0.015,61,0.015,70,1.341,77,1.424,91,1.602,118,2.828,119,2.788,120,0.43,121,0.935,122,0.892,126,0.728,135,3.011,147,1.913,151,1.513,153,1.13,156,3.57,165,2.164,166,2.608,168,1.513,170,2.792,171,1.424,172,1.424,173,1.513,181,1.698,196,1.424,198,2.47,208,2.857,217,3.741,241,3.751,282,3.751,343,4.237,346,1.918,347,1.192,394,3.706,497,2.857,498,2.792,499,4.237,500,4.624,501,3.2,502,4.975,503,2.309,504,3.153,505,3.702,506,4.975,507,3.826,508,2.792,509,3.153,510,1.838,511,3.153,512,3.153,513,3.153,514,3.702,515,3.153,516,3.702]],["title/injectables/PageInterceptor.html",[359,1.285,517,2.209]],["body/injectables/PageInterceptor.html",[3,1.286,7,0.023,12,0.302,13,0.12,14,0.12,16,0.333,19,0.58,22,0.526,40,0.526,51,0.798,58,0.149,59,0.086,60,0.009,61,0.009,79,1.84,91,1.604,93,2.013,104,1.697,108,2.314,110,2.298,111,0.671,115,1.136,118,2.035,119,1.371,120,0.213,121,0.491,122,1.024,123,1.384,125,1.064,126,0.579,127,1.841,130,1.604,131,3.392,135,1.614,142,1.009,143,1.143,145,1.143,146,1.709,153,1.054,160,1.973,174,2.61,176,2.483,178,3.341,180,2.265,181,1.7,182,2.228,186,1.25,192,1.574,196,1.136,198,0.911,203,2.526,208,1.697,223,1.25,225,2.31,227,2.012,229,3.206,246,1.841,254,1.574,258,2.228,270,0.978,271,2.028,275,2.163,288,2.228,296,1.371,300,1.25,303,1.286,312,1.054,313,3.202,319,1.054,338,0.978,346,1.591,347,1.369,348,1.25,359,1.07,360,1.054,394,3.008,396,3.206,398,2.228,399,2.896,400,2.265,401,3.206,404,1.574,406,1.384,416,3.206,417,1.143,434,1.25,437,1.84,450,2.442,497,1.054,500,2.526,501,1.574,503,1.371,510,1.841,517,1.84,518,1.384,519,2.516,520,2.516,521,2.797,522,2.797,523,3.567,524,3.83,525,2.955,526,2.955,527,1.563,528,3.949,529,1.835,530,2.516,531,3.206,532,2.516,533,3.159,534,2.516,535,1.835,536,2.516,537,3.159,538,2.516,539,3.392,540,3.159,541,2.516,542,2.012,543,2.516,544,2.516,545,4.242,546,3.206,547,1.835,548,2.516,549,3.621,550,3.621,551,2.516,552,1.835,553,2.516,554,2.265,555,2.228,556,1.835,557,3.206,558,2.228,559,2.012,560,2.228,561,1.835,562,1.84,563,2.012,564,1.835,565,2.516,566,2.228,567,1.384,568,1.384,569,1.563,570,1.563,571,1.25,572,1.697,573,1.563,574,1.697,575,1.563,576,1.384,577,1.563,578,1.563,579,1.563,580,1.384,581,1.563,582,2.526,583,1.563,584,3.621,585,3.621,586,2.31,587,1.563,588,1.563,589,2.797,590,1.563,591,1.563,592,1.563,593,1.563,594,1.563,595,1.25,596,1.143,597,1.563,598,1.384,599,1.384,600,1.563,601,0.911,602,1.563,603,1.563,604,1.563,605,1.563,606,1.563,607,1.563,608,1.563,609,1.563,610,2.228,611,1.563,612,1.563,613,1.384,614,1.563,615,1.563,616,1.563,617,1.563,618,1.563,619,2.012,620,2.516,621,2.516,622,1.563,623,1.563,624,1.563,625,2.516,626,1.563,627,1.563,628,1.143,629,1.563,630,1.563,631,2.516,632,1.143,633,1.143,634,1.143,635,1.563,636,1.563,637,1.563,638,1.563,639,1.563,640,2.228,641,2.228,642,2.228,643,1.563,644,2.228,645,2.228,646,2.228,647,2.228,648,1.563,649,1.563,650,2.228,651,2.228,652,1.563,653,1.25,654,1.384,655,1.563]],["title/interfaces/PageMeta.html",[111,0.805,501,1.89]],["body/interfaces/PageMeta.html",[7,0.023,12,0.331,13,0.266,14,0.266,16,0.364,19,0.399,58,0.331,60,0.019,61,0.016,111,0.922,113,1.659,117,2.625,118,2.889,119,2.454,120,0.472,121,0.879,126,0.769,130,1.703,146,2.159,211,4.242,254,3.528,270,3.528,400,2.817,501,2.817,510,3.462,580,3.061,582,3.601,628,3.879,632,3.879,633,3.879,634,3.879,656,3.458,657,3.458,658,5.305,659,4.697,660,6.229,661,4.06]],["title/classes/PageMetaDto.html",[59,0.104,507,2.416]],["body/classes/PageMetaDto.html",[7,0.023,12,0.237,13,0.191,14,0.191,16,0.553,19,0.564,39,1.118,40,0.834,51,2.353,58,0.237,59,0.123,60,0.019,61,0.013,70,1.053,77,1.118,118,2.886,120,0.338,121,0.821,126,0.694,130,1.741,146,2.114,147,2.298,151,2.732,153,1.203,156,1.549,160,1.35,165,1.829,166,2.861,168,1.188,170,2.193,171,1.118,172,1.118,173,1.188,208,2.414,210,4.077,211,4.298,217,2.618,236,3.105,254,2.881,256,5.375,270,3.362,271,2.353,276,2.863,338,2.239,499,3.58,501,2.63,504,2.477,507,2.863,508,4.325,509,2.477,510,3.283,511,2.477,512,2.477,513,2.477,595,4.552,596,3.931,610,2.193,628,3.368,632,3.368,633,3.368,634,3.368,658,5.375,662,4.648,663,2.193,664,5.978,665,4.077,666,2.908,667,5.407,668,2.908,669,2.908,670,5.407,671,2.908,672,4.203,673,2.908,674,3.683,675,4.203,676,2.908,677,4.203]],["title/classes/PaperDto.html",[59,0.104,156,1.89]],["body/classes/PaperDto.html",[7,0.023,12,0.217,13,0.175,14,0.175,16,0.553,19,0.387,39,2.418,40,0.764,58,0.217,59,0.115,60,0.012,61,0.012,70,0.964,77,1.024,83,1.419,117,2.329,120,0.309,121,0.78,125,1.92,126,0.697,139,2.684,140,3.356,141,2.971,142,1.345,147,2.306,151,2.736,153,1.207,156,2.099,159,4.842,160,1.829,165,1.715,166,2.858,168,1.088,169,3.195,171,1.024,172,1.024,173,1.088,174,2.858,188,4.416,217,2.922,218,1.529,219,1.813,268,4.173,332,4.416,452,2.684,508,2.008,554,2.762,678,2.008,679,5.244,680,4.643,681,4.643,682,4.643,683,5.244,684,3.941,685,2.663,686,3.91,687,3.941,688,5.185,689,3.941,690,2.663,691,5.185,692,5.185,693,3.941,694,3.941,695,3.941,696,3.941,697,3.941,698,2.663,699,5.185,700,4.416,701,3.91,702,3.356,703,5.185,704,5.185,705,5.185,706,3.941,707,3.356,708,3.941,709,3.356,710,3.356,711,3.941,712,3.941,713,3.941,714,3.941,715,3.941,716,3.941,717,3.941,718,3.941,719,2.663,720,5.185,721,5.185,722,5.185,723,5.185,724,2.663,725,3.941,726,3.356,727,3.941,728,3.941,729,3.941,730,2.663,731,3.941,732,2.663,733,2.663,734,2.663,735,2.663,736,2.663,737,2.663,738,2.663,739,2.663,740,2.663,741,2.663,742,2.663]],["title/controllers/PapersController.html",[291,2.209,743,2.416]],["body/controllers/PapersController.html",[7,0.023,11,1.876,12,0.245,13,0.197,14,0.197,16,0.559,19,0.612,22,0.864,57,1.73,58,0.245,59,0.088,60,0.013,61,0.017,91,1.873,93,2.45,107,3.672,110,2.246,115,1.936,118,1.762,120,0.35,122,1.038,125,1.444,126,0.703,130,0.97,136,2.685,142,1.876,147,1.657,153,0.867,156,2.297,159,3.743,165,1.311,168,1.231,181,2.065,232,2.476,234,2.307,246,3.267,257,4.144,261,2.14,271,1.311,282,4.89,291,3.423,296,2.001,303,2.391,312,1.73,342,2.271,346,1.472,347,1.388,400,1.605,403,4.681,404,2.297,497,2.476,517,1.876,572,3.156,586,2.685,601,2.499,674,2.936,680,3.25,681,3.25,743,2.936,744,2.565,745,4.311,746,4.311,747,4.311,748,3.012,749,4.311,750,4.681,751,3.25,752,3.012,753,4.681,754,4.681,755,3.012,756,3.012,757,3.012,758,4.311,759,3.012,760,4.953,761,3.012,762,3.012,763,3.012,764,3.012,765,4.311,766,3.672,767,2.565,768,3.012,769,4.311,770,3.012,771,3.012,772,2.565,773,3.012,774,2.565,775,3.012,776,3.135,777,1.73,778,2.565,779,5.034,780,5.034,781,5.034,782,3.012,783,3.012,784,3.012,785,3.012,786,2.051,787,3.012,788,3.012,789,4.311,790,3.012,791,4.311,792,4.311,793,3.012,794,3.012,795,3.012,796,3.012,797,3.012,798,3.012,799,3.012]],["title/classes/PrevSearch.html",[59,0.104,523,2.416]],["body/classes/PrevSearch.html",[3,0.839,7,0.023,12,0.25,13,0.126,14,0.126,16,0.173,19,0.588,22,0.553,40,0.553,51,0.839,58,0.157,59,0.09,60,0.01,61,0.01,70,0.698,79,1.201,91,1.64,93,2.132,104,1.765,108,2.372,110,2.336,111,0.438,115,1.182,118,2.183,119,0.895,120,0.224,121,0.511,122,0.923,123,1.454,125,0.553,126,0.621,130,1.841,131,2.611,135,1.903,142,0.658,143,1.201,145,1.914,146,1.781,153,1.204,160,2.03,174,2.218,176,2.955,178,3.295,180,1.638,181,1.738,182,1.454,186,1.313,192,1.638,196,1.474,198,1.526,203,2.093,208,1.107,223,1.313,225,2.387,227,2.093,229,3.298,246,1.526,254,2.042,258,3.298,270,1.027,271,1.903,275,0.895,288,1.454,296,1.427,300,2.093,303,1.337,312,1.107,313,3.245,319,1.107,338,1.027,346,1.631,347,1.234,348,1.313,359,1.113,394,2.202,396,1.454,398,1.454,399,2.093,400,1.638,401,2.318,404,1.027,406,1.454,411,2.611,416,2.89,417,1.201,434,1.313,437,1.201,450,2.512,497,1.107,500,2.611,501,1.638,503,0.895,510,1.903,517,1.201,518,1.454,519,1.642,520,1.642,521,1.454,522,1.454,523,3.254,524,2.611,528,3.298,530,1.642,531,2.318,532,1.642,533,3.265,534,1.642,536,1.642,537,2.618,538,1.642,539,2.611,540,3.265,541,1.642,542,1.313,543,1.642,544,1.642,545,3.265,546,2.318,548,1.642,549,2.618,550,2.618,551,1.642,553,1.642,554,2.042,555,1.454,557,2.318,558,1.454,559,1.313,560,1.454,562,1.201,563,1.313,565,1.642,566,1.454,567,1.454,568,1.454,569,1.642,570,1.642,571,1.313,572,1.765,573,1.642,574,1.765,575,1.642,576,1.454,577,1.642,578,1.642,579,1.642,580,1.454,581,1.642,582,3.468,583,2.618,584,3.725,585,3.725,586,2.387,587,1.642,588,3.265,589,4.028,590,1.642,591,3.265,592,3.265,593,1.642,594,3.265,595,2.093,596,1.914,597,2.618,598,2.318,599,2.318,600,3.725,601,0.957,602,1.642,603,1.642,604,1.642,605,1.642,606,1.642,607,1.642,608,1.642,609,1.642,610,2.318,611,1.642,612,1.642,613,1.454,614,1.642,615,1.642,616,1.642,617,1.642,618,1.642,619,2.093,620,2.618,621,2.618,622,1.642,623,1.642,624,1.642,625,2.618,626,1.642,627,1.642,628,1.201,629,1.642,630,1.642,631,2.618,632,1.201,633,1.201,634,1.201,635,1.642,636,1.642,637,1.642,638,1.642,639,1.642,640,2.318,641,2.318,642,2.318,643,1.642,644,2.318,645,2.318,646,2.318,647,2.318,648,1.642,649,1.642,650,2.318,651,2.318,652,1.642,653,1.313,654,1.454,655,1.642,800,3.074,801,1.928,802,1.928,803,1.928,804,1.928,805,1.928,806,1.928,807,1.928,808,1.928,809,1.928,810,1.928,811,1.928,812,1.928,813,1.928,814,1.928,815,1.928,816,1.928,817,1.928]],["title/classes/RequestDto.html",[59,0.104,572,2.037]],["body/classes/RequestDto.html",[7,0.023,12,0.292,13,0.235,14,0.235,16,0.557,19,0.583,39,1.38,40,1.03,58,0.292,59,0.142,60,0.015,61,0.015,70,1.3,77,1.38,83,2.596,91,1.569,115,2.753,120,0.417,121,0.92,122,1.332,126,0.72,130,1.156,142,2.183,147,1.873,151,2.424,153,1.113,158,3.035,160,2.262,165,2.12,166,2.262,167,3.318,168,1.467,169,2.596,171,1.38,172,1.38,173,1.467,181,2.329,192,3.545,196,1.38,198,2.419,208,2.798,218,2.798,228,2.707,241,3.674,246,2.945,346,2.303,347,1.156,503,2.262,571,2.445,572,2.798,574,3.822,576,2.707,674,3.318,818,2.707,819,5.087,820,4.15,821,4.872,822,3.59,823,4.15,824,4.872,825,4.872,826,3.59,827,3.59,828,2.707,829,3.59]],["title/guards/RolesGuard.html",[830,2.416,831,2.675]],["body/guards/RolesGuard.html",[7,0.023,12,0.316,13,0.254,14,0.254,16,0.516,19,0.602,22,1.113,24,2.926,40,1.472,51,2.502,58,0.316,59,0.113,60,0.016,61,0.016,91,1.653,93,2.353,110,2.098,120,0.451,122,1.236,126,0.596,147,1.492,153,1.033,158,3.197,171,1.973,196,1.492,254,2.735,296,2.382,300,3.496,311,2.098,312,2.229,338,2.067,346,1.752,347,1.653,359,1.859,385,3.305,399,4.168,404,3.261,434,2.643,830,4.612,831,3.87,832,3.88,833,3.305,834,3.917,835,6.12,836,3.88,837,6.853,838,3.88,839,5.133,840,5.767,841,5.133,842,3.88,843,4.799,844,4.371,845,3.496,846,4.371,847,2.926,848,5.133,849,3.88,850,3.88,851,3.88,852,3.88,853,3.88]],["title/interfaces/SearchInfo.html",[111,0.805,854,2.675]],["body/interfaces/SearchInfo.html",[7,0.023,12,0.379,13,0.305,14,0.305,16,0.417,19,0.457,58,0.379,60,0.018,61,0.018,111,1.055,113,1.9,117,2.861,119,2.675,120,0.54,121,0.959,126,0.669,130,2.208,142,1.967,176,3.488,178,3.654,179,4.345,223,3.166,225,2.895,244,3.589,400,3.07,582,3.925,589,5.171,659,4.345,828,3.505,854,4.345,855,3.959,856,3.959,857,5.762,858,4.908,859,5.762]],["title/modules/SearchModule.html",[0,1.285,8,2.209]],["body/modules/SearchModule.html",[0,2.377,2,2.037,3,2.518,7,0.023,8,4.336,9,3.324,10,2.494,11,2.037,12,0.381,13,0.307,14,0.307,16,0.42,18,3.188,19,0.645,22,1.342,54,3.941,57,3.324,58,0.381,59,0.137,60,0.018,61,0.018,68,3.941,130,1.864,318,4.929,319,2.688,601,3.578,743,4.279,774,3.987,860,3.987,861,3.987,862,3.987,863,4.681,864,4.681]],["title/classes/SearchQueryDto.html",[59,0.104,574,2.037]],["body/classes/SearchQueryDto.html",[7,0.023,12,0.264,13,0.212,14,0.212,16,0.536,19,0.446,39,1.245,40,0.929,58,0.264,59,0.133,60,0.014,61,0.014,70,1.173,77,1.245,83,2.791,91,1.828,115,2.597,118,2.786,120,0.376,121,0.871,122,0.78,125,1.955,126,0.694,129,3.422,130,1.462,142,1.549,146,2.125,147,2.183,151,2.653,153,1.203,165,1.975,166,2.774,168,1.324,169,2.791,171,1.245,172,2.014,173,1.324,181,1.549,196,1.245,198,2.253,211,3.866,218,3.009,219,3.568,227,3.091,228,2.442,234,1.644,268,3.95,276,3.091,346,1.789,347,1.043,503,2.107,510,3.354,574,2.607,619,4.601,777,3.558,820,3.865,865,2.442,866,4.538,867,3.239,868,3.239,869,5.677,870,5.677,871,3.239,872,3.865,873,2.759,874,3.239,875,3.422,876,3.239,877,4.538,878,4.538,879,3.239,880,3.422,881,2.759,882,3.239,883,3.239,884,3.239]],["title/classes/SearchResultDto.html",[59,0.104,776,2.209]],["body/classes/SearchResultDto.html",[7,0.023,12,0.307,13,0.247,14,0.247,16,0.508,19,0.557,39,1.447,40,1.08,58,0.307,59,0.147,60,0.016,61,0.016,70,1.363,77,1.447,91,1.62,104,2.162,120,0.437,121,0.942,122,0.907,126,0.658,135,3.059,142,2.064,146,1.915,147,1.934,151,2.471,153,1.14,160,1.747,165,2.189,166,2.63,168,1.539,169,3.018,171,1.447,172,2.178,173,1.539,181,1.717,196,1.447,198,2.497,217,3.133,218,3.254,219,3.426,232,3.724,234,1.822,235,2.839,236,2.162,238,2.839,239,2.839,261,3.128,271,1.638,333,4.123,346,1.934,347,1.212,438,4.825,503,2.335,515,3.206,674,4.118,753,4.284,776,3.133,777,3.473,828,2.839,873,3.206,885,2.839,886,5.03,887,5.03,888,3.765,889,3.765,890,3.765,891,3.765]],["title/injectables/SearchService.html",[359,1.285,601,1.761]],["body/injectables/SearchService.html",[7,0.023,11,1.791,12,0.23,13,0.185,14,0.185,16,0.254,19,0.582,22,0.811,58,0.23,59,0.083,60,0.013,61,0.013,91,1.564,93,2.052,108,2.411,110,1.683,115,2.052,120,0.328,121,0.685,122,1.17,125,1.627,126,0.659,127,2.044,130,1.326,132,1.925,135,1.791,137,1.623,142,2.021,146,1.251,153,1.141,159,2.804,172,1.087,174,2.254,181,1.936,186,1.925,192,3.154,196,1.087,198,2.044,232,2.789,236,3.064,249,3.507,257,3.105,271,1.23,275,1.911,296,1.911,303,2.576,311,2.181,312,1.623,313,3.154,319,1.623,342,2.131,346,1.658,347,1.564,359,1.491,360,1.623,394,3.51,404,2.194,417,1.76,521,3.662,522,3.662,524,4.032,527,2.407,528,4.815,539,3.634,554,2.194,555,3.105,557,3.105,558,3.105,559,2.804,560,3.105,562,2.564,563,2.804,567,2.131,568,2.131,571,1.925,601,2.044,640,3.105,641,3.105,642,3.105,644,3.105,645,3.105,646,3.105,647,3.105,650,3.105,651,3.105,653,2.804,654,3.105,750,4.545,760,4.136,767,2.407,772,3.507,776,1.76,777,1.623,778,2.407,819,3.105,880,3.105,892,2.407,893,4.117,894,4.117,895,4.117,896,2.827,897,4.117,898,4.117,899,4.117,900,2.827,901,4.117,902,2.804,903,4.117,904,2.827,905,2.827,906,2.827,907,2.827,908,2.407,909,4.117,910,2.827,911,2.827,912,4.117,913,4.117,914,4.117,915,4.117,916,4.117,917,4.117]],["title/interfaces/ValidationPipeOptions.html",[111,0.805,918,2.675]],["body/interfaces/ValidationPipeOptions.html",[7,0.023,12,0.369,13,0.297,14,0.297,16,0.407,19,0.446,58,0.369,59,0.132,60,0.018,61,0.018,72,4.278,77,1.743,95,3.533,101,3.861,111,1.029,113,1.853,120,0.527,121,0.944,122,1.642,126,0.719,254,3.631,303,2.468,339,4.278,341,4.832,918,4.278,919,3.861,920,3.864,921,5.673,922,5.673,923,6.192,924,6.489,925,6.489,926,6.489,927,5.673,928,5.673,929,5.673,930,5.673,931,5.673]],["title/interfaces/VirtualBankOptions.html",[111,0.805,932,2.209]],["body/interfaces/VirtualBankOptions.html",[7,0.023,12,0.325,13,0.262,14,0.262,16,0.359,19,0.393,27,3.634,40,1.146,58,0.475,60,0.016,61,0.016,72,3.013,78,4.49,79,3.259,81,4.49,82,4.456,84,4.49,86,4.49,87,4.49,93,1.536,95,2.488,111,0.907,113,1.633,120,0.464,121,0.87,126,0.678,146,2.094,153,1.053,932,4.106,933,2.721,934,5.232,935,4.399,936,4.456,937,5.232,938,3.945,939,5.232,940,5.232,941,6.19,942,5.232,943,5.232,944,5.232,945,5.232,946,5.232,947,3.945,948,3.995,949,4.456,950,3.403,951,3.995,952,3.403,953,3.403,954,3.403]],["title/coverage.html",[955,4.116]],["body/coverage.html",[7,0.023,14,0.19,15,2.186,27,1.806,29,2.186,31,1.975,41,2.186,59,0.195,60,0.013,61,0.013,69,2.186,71,3.163,95,3.928,108,1.439,111,1.459,112,1.975,114,3.363,115,1.115,116,2.47,126,0.337,136,1.806,137,3.43,138,3.163,156,1.545,173,2.626,176,1.545,177,2.47,184,1.975,185,2.47,192,1.545,193,3.163,232,1.665,233,3.163,234,1.05,248,1.975,285,2.47,291,2.612,292,1.975,293,2.47,322,1.806,323,2.47,324,2.47,335,2.186,336,2.47,337,2.47,355,1.806,359,2.075,361,2.47,362,2.47,391,2.47,413,1.665,446,2.47,450,1.665,497,1.665,498,3.163,501,1.545,507,1.975,517,1.806,518,3.163,523,1.975,572,1.665,574,1.665,601,1.439,656,2.47,657,2.47,662,3.163,663,3.163,678,3.163,743,1.975,744,2.47,776,1.806,777,3.101,818,3.163,830,1.975,831,2.186,833,2.47,834,1.975,847,2.186,854,2.186,855,2.47,856,2.47,865,3.163,885,3.163,892,2.47,918,2.186,919,2.47,932,1.806,933,2.857,947,2.186,955,2.47,956,2.186,957,2.9,958,2.9,959,7.35,960,4.928,961,5.4,962,3.572,963,6.842,964,2.47,965,7.101,966,3.572,967,6.426,968,4.928,969,5.729,970,4.194,971,2.47,972,4.88,973,2.47,974,2.47,975,2.47,976,2.47,977,2.47,978,2.9,979,2.9,980,2.47,981,2.47,982,2.9,983,2.47]],["title/dependencies.html",[3,1.855,984,2.237]],["body/dependencies.html",[3,2.027,7,0.023,22,1.336,24,3.513,26,3.968,36,3.968,37,3.968,52,3.968,59,0.169,60,0.018,61,0.018,75,3.968,77,1.791,119,2.163,168,1.904,309,3.513,319,2.676,417,2.902,420,3.513,524,3.173,985,4.659,986,4.659,987,4.659,988,4.659,989,4.659,990,4.659,991,4.659,992,4.659,993,6.269,994,4.659,995,4.659,996,4.659,997,4.659,998,4.659,999,4.659,1000,4.659,1001,4.659,1002,4.659,1003,4.659,1004,4.659,1005,5.771,1006,4.659,1007,5.771,1008,4.659,1009,4.659,1010,4.659,1011,4.659,1012,4.659,1013,4.659,1014,3.968,1015,4.659,1016,4.659,1017,4.659,1018,4.659,1019,4.659,1020,4.659]],["title/miscellaneous/enumerations.html",[1021,1.704,1022,3.632]],["body/miscellaneous/enumerations.html",[7,0.023,10,1.321,17,0.851,60,0.008,61,0.01,79,0.923,81,1.009,84,1.009,86,1.009,87,1.009,104,0.851,108,1.231,110,1.306,118,0.606,120,0.172,124,1.009,126,0.371,128,3.541,131,1.689,132,1.009,139,1.689,141,1.118,142,0.506,153,0.499,158,0.923,171,1.229,180,1.703,212,1.689,234,1.628,244,1.991,245,2.722,246,3.481,261,2.485,263,1.009,271,0.645,274,3.541,275,3.397,276,1.009,303,1.391,305,1.855,311,1.306,314,2.722,326,1.689,333,3.435,381,2.112,382,2.112,383,2.112,384,2.112,393,2.722,400,0.79,437,2.59,450,1.424,452,1.009,503,0.688,510,1.587,531,1.118,546,1.87,554,2.395,559,1.009,562,4.248,566,2.41,586,1.544,595,1.689,596,2.327,599,1.87,613,1.87,653,1.009,659,1.87,701,1.118,702,1.262,766,4.43,786,1.689,823,1.262,834,1.689,843,3.599,845,1.689,872,2.112,875,1.118,880,2.41,902,1.689,908,1.262,932,1.991,933,1.009,935,1.118,938,1.118,949,1.262,950,2.112,1014,3.829,1021,0.851,1022,1.262,1023,1.262,1024,1.262,1025,2.479,1026,1.482,1027,1.482,1028,1.482,1029,1.482,1030,1.262,1031,2.479,1032,1.482,1033,1.482,1034,1.482,1035,1.482,1036,1.262,1037,1.482,1038,1.262,1039,1.482,1040,1.482,1041,1.482,1042,2.479,1043,1.482,1044,1.482,1045,1.482,1046,1.482,1047,3.736,1048,2.479,1049,2.479,1050,3.196,1051,1.482,1052,1.482,1053,1.482,1054,1.482,1055,4.496,1056,3.196,1057,3.196,1058,1.482,1059,4.496,1060,1.482,1061,1.482,1062,1.482,1063,4.158,1064,2.479,1065,1.482,1066,3.182,1067,3.736,1068,1.482,1069,5.947,1070,2.479,1071,2.479,1072,4.43,1073,1.482,1074,1.689,1075,1.262,1076,1.482,1077,1.262,1078,1.262,1079,1.262,1080,1.262,1081,2.479,1082,1.482,1083,1.262,1084,1.482,1085,2.479,1086,3.196,1087,1.482,1088,1.482,1089,2.722,1090,2.479,1091,2.479,1092,2.479,1093,1.482,1094,1.482,1095,2.479,1096,1.482,1097,1.482,1098,2.112,1099,1.262,1100,1.482,1101,1.262,1102,1.482,1103,3.196,1104,2.479,1105,1.482,1106,2.479,1107,5.37,1108,3.196,1109,1.482,1110,1.87,1111,1.482,1112,4.496,1113,2.479,1114,2.479,1115,2.722,1116,2.41,1117,2.479,1118,2.479,1119,2.479,1120,1.482,1121,2.112,1122,2.112,1123,1.482,1124,2.479,1125,2.479,1126,1.482,1127,2.479,1128,2.479,1129,3.196,1130,1.482,1131,2.112,1132,3.736,1133,1.482,1134,2.479,1135,2.479,1136,1.482,1137,3.196,1138,3.736,1139,3.196,1140,2.479,1141,1.482,1142,2.479,1143,1.482,1144,2.479,1145,2.479,1146,1.482,1147,1.482,1148,1.262,1149,1.482,1150,2.479,1151,1.482,1152,2.479,1153,2.479,1154,1.482,1155,1.482,1156,1.482,1157,1.482,1158,1.482,1159,4.158,1160,2.479,1161,1.482,1162,1.262,1163,1.482,1164,1.482,1165,3.736,1166,1.118,1167,3.196,1168,2.479,1169,1.482,1170,1.482,1171,2.479,1172,2.479,1173,1.262,1174,2.479,1175,2.479,1176,2.479,1177,1.482,1178,1.482,1179,2.479,1180,1.482,1181,2.479,1182,1.482,1183,2.479,1184,2.479,1185,2.479,1186,1.262,1187,3.736,1188,1.482,1189,1.482,1190,1.482,1191,1.482,1192,1.482,1193,1.482,1194,1.482,1195,1.262,1196,2.479,1197,2.479,1198,1.482,1199,2.479,1200,1.482,1201,1.482,1202,1.482,1203,2.479,1204,1.482,1205,1.482,1206,1.482,1207,1.482,1208,1.482,1209,1.482,1210,1.482,1211,1.482,1212,1.482,1213,1.482,1214,1.482,1215,1.262,1216,1.482,1217,2.479,1218,1.482,1219,2.479,1220,1.482,1221,2.479,1222,1.87,1223,1.482,1224,1.482,1225,2.112,1226,2.479,1227,1.482,1228,1.482,1229,1.482,1230,2.722,1231,2.479,1232,1.262,1233,1.482,1234,2.479,1235,1.482,1236,2.479,1237,3.196,1238,1.482,1239,2.479,1240,1.482,1241,2.479,1242,1.482,1243,1.482,1244,2.479,1245,1.482,1246,1.482,1247,1.482,1248,1.482,1249,1.482,1250,2.479,1251,2.41,1252,1.482,1253,3.182,1254,2.479,1255,2.112,1256,3.736,1257,1.262,1258,1.482,1259,2.479,1260,1.482,1261,2.479,1262,2.479,1263,1.482,1264,1.482,1265,2.479,1266,1.482,1267,1.482,1268,2.479,1269,1.482,1270,1.482,1271,2.479,1272,1.482,1273,1.482,1274,1.482,1275,1.482,1276,2.479,1277,1.482,1278,1.482,1279,1.482,1280,1.262,1281,1.482,1282,1.482,1283,1.482,1284,1.482,1285,1.482,1286,1.118,1287,1.482,1288,2.479,1289,1.482,1290,1.482,1291,1.482,1292,1.482,1293,1.482,1294,1.482,1295,1.482,1296,1.482,1297,1.482,1298,2.722,1299,3.196,1300,3.196,1301,2.479,1302,2.479,1303,1.482,1304,1.118,1305,1.482,1306,1.482,1307,1.482,1308,2.479,1309,2.479]],["title/miscellaneous/functions.html",[1021,1.704,1310,3.632]],["body/miscellaneous/functions.html",[7,0.022,16,0.587,17,2.229,29,3.87,60,0.016,61,0.016,71,2.926,89,4.898,90,3.87,92,3.305,93,2.353,96,3.305,97,4.371,120,0.451,122,1.575,125,1.472,126,0.76,127,1.926,146,2.058,172,2.514,179,2.926,234,1.405,246,1.926,275,1.801,303,2.902,305,2.855,311,2.673,339,3.87,346,2.233,347,2.106,395,5.167,411,2.643,539,3.496,700,3.305,920,2.643,947,4.337,971,3.305,972,3.305,973,4.371,974,4.371,975,4.371,976,4.371,977,4.371,980,3.305,981,4.898,1021,2.229,1230,3.305,1304,2.926,1310,3.305,1311,3.88,1312,3.88,1313,6.365,1314,3.88,1315,3.88,1316,3.88,1317,3.88,1318,3.88,1319,5.133,1320,3.88,1321,3.88,1322,3.88,1323,3.88,1324,3.88,1325,3.88,1326,3.305,1327,3.88,1328,5.133,1329,5.133,1330,3.88,1331,3.88,1332,5.133,1333,5.133,1334,3.88,1335,3.305,1336,3.88]],["title/index.html",[120,0.345,1337,2.527,1338,2.527]],["body/index.html",[7,0.021,13,0.29,17,3.692,39,1.973,60,0.014,61,0.014,90,3.332,127,1.548,151,1.275,244,1.943,295,3.764,297,3.764,311,2.098,315,3.764,329,3.764,333,3.812,363,3.764,451,2.657,503,1.448,542,2.124,563,3.01,586,1.943,665,4.745,686,2.352,751,2.352,754,2.657,843,4.21,845,3.496,902,2.124,935,3.332,956,4.444,983,2.657,984,2.352,1038,4.371,1066,4.371,1074,3.496,1077,2.657,1083,2.657,1110,2.352,1116,3.87,1121,2.657,1222,2.352,1286,2.352,1335,2.657,1339,4.419,1340,5.893,1341,3.332,1342,6.12,1343,4.419,1344,3.119,1345,3.119,1346,6.12,1347,5.132,1348,4.419,1349,3.119,1350,4.419,1351,5.132,1352,4.419,1353,4.419,1354,4.419,1355,3.119,1356,3.119,1357,3.764,1358,3.119,1359,3.119,1360,3.119,1361,3.119,1362,3.119,1363,4.419,1364,3.119,1365,3.119,1366,4.419,1367,4.419,1368,3.119,1369,3.119,1370,3.119,1371,3.119,1372,3.119,1373,3.119,1374,3.119,1375,3.119,1376,2.352,1377,5.583,1378,3.119,1379,3.119,1380,3.119,1381,4.419,1382,4.419,1383,3.119,1384,5.132,1385,6.12,1386,5.132,1387,6.12,1388,3.119,1389,3.119,1390,3.119,1391,3.119,1392,3.119,1393,3.119,1394,3.119,1395,3.119,1396,3.119,1397,3.119,1398,4.419,1399,4.419,1400,4.419,1401,4.419,1402,4.419,1403,3.119,1404,3.119,1405,3.119,1406,2.657,1407,3.119,1408,3.119,1409,4.419,1410,4.419,1411,3.119,1412,3.119,1413,3.119,1414,3.119,1415,3.119,1416,3.119,1417,3.119,1418,3.119,1419,3.119,1420,5.583,1421,4.419,1422,3.119,1423,3.119,1424,6.12,1425,3.119,1426,3.119,1427,3.119,1428,2.657,1429,3.119,1430,3.119,1431,2.657,1432,3.119,1433,3.119,1434,3.119,1435,3.119,1436,3.119,1437,2.657,1438,3.119,1439,3.119,1440,3.119,1441,3.119,1442,3.119,1443,4.419,1444,5.132,1445,2.352,1446,3.119,1447,3.119,1448,3.119,1449,3.119,1450,3.119,1451,3.119,1452,3.119,1453,3.119,1454,3.119,1455,3.119,1456,3.119,1457,3.119,1458,3.119,1459,3.119,1460,3.119,1461,3.119,1462,3.119,1463,2.657,1464,3.119,1465,3.119,1466,2.657,1467,3.119,1468,3.119]],["title/license.html",[1337,2.527,1338,2.527,1469,2.237]],["body/license.html",[7,0.011,11,0.703,13,0.38,14,0.34,16,0.145,19,0.159,27,1.007,55,1.377,59,0.047,60,0.008,61,0.008,81,2.685,113,0.661,118,0.661,124,1.101,129,1.219,132,1.101,134,2.269,139,1.101,151,0.661,153,0.325,181,1.602,189,5.028,271,0.703,311,0.661,333,2.117,340,1.377,347,1.095,412,1.377,420,2.009,452,1.101,503,2.024,542,1.101,554,0.861,596,1.007,598,2.973,665,2.563,682,1.219,686,1.219,701,2.973,707,1.377,709,1.377,710,5.357,726,1.377,751,1.219,786,2.315,844,1.377,845,1.101,846,1.377,858,1.377,875,2.009,902,1.101,936,1.377,938,1.219,956,2.563,1036,1.377,1072,4.715,1074,1.101,1075,1.377,1078,2.269,1079,2.269,1080,2.895,1089,1.377,1098,1.377,1101,1.377,1110,4.174,1115,4.578,1116,1.219,1122,1.377,1131,1.377,1148,1.377,1162,4.417,1166,1.219,1173,3.714,1186,2.269,1195,2.895,1215,3.358,1222,2.009,1225,1.377,1232,1.377,1251,1.219,1253,3.358,1255,1.377,1257,1.377,1280,2.895,1286,1.219,1298,1.377,1326,1.377,1357,2.269,1376,1.219,1406,1.377,1428,2.895,1431,2.269,1437,1.377,1445,1.219,1463,1.377,1466,2.269,1469,5.155,1470,3.358,1471,3.399,1472,1.616,1473,1.616,1474,1.616,1475,5.375,1476,3.942,1477,4.361,1478,1.616,1479,6.082,1480,5.536,1481,1.616,1482,1.377,1483,5.536,1484,5.903,1485,4.693,1486,2.664,1487,1.616,1488,4.361,1489,1.616,1490,1.616,1491,3.942,1492,2.664,1493,1.616,1494,3.399,1495,2.664,1496,2.664,1497,1.616,1498,1.616,1499,6.289,1500,2.664,1501,4.693,1502,1.616,1503,2.664,1504,1.616,1505,1.616,1506,1.616,1507,1.616,1508,1.616,1509,1.616,1510,1.616,1511,3.399,1512,1.616,1513,3.399,1514,2.664,1515,5.903,1516,1.616,1517,4.693,1518,5.375,1519,3.942,1520,1.616,1521,1.616,1522,1.616,1523,1.616,1524,1.616,1525,2.664,1526,1.616,1527,1.616,1528,6.837,1529,3.399,1530,2.664,1531,1.616,1532,5.375,1533,1.616,1534,2.664,1535,6.346,1536,1.616,1537,1.616,1538,1.616,1539,1.616,1540,1.616,1541,1.616,1542,2.664,1543,2.664,1544,1.616,1545,1.616,1546,1.616,1547,1.616,1548,1.616,1549,3.942,1550,4.361,1551,1.616,1552,2.664,1553,3.942,1554,2.664,1555,1.616,1556,4.361,1557,2.664,1558,1.616,1559,1.616,1560,3.399,1561,1.616,1562,1.616,1563,1.616,1564,2.664,1565,1.616,1566,1.616,1567,1.616,1568,3.399,1569,1.616,1570,1.616,1571,3.399,1572,1.616,1573,1.616,1574,1.616,1575,3.942,1576,5.536,1577,1.616,1578,2.664,1579,3.399,1580,2.664,1581,2.664,1582,2.664,1583,2.664,1584,2.664,1585,2.664,1586,3.399,1587,2.664,1588,2.664,1589,2.664,1590,2.664,1591,1.616,1592,2.664,1593,1.616,1594,4.361,1595,4.963,1596,3.399,1597,2.664,1598,2.664,1599,2.664,1600,1.616,1601,1.616,1602,3.399,1603,2.664,1604,1.616,1605,1.616,1606,1.616,1607,3.399,1608,1.616,1609,1.616,1610,1.616,1611,2.664,1612,2.664,1613,1.616,1614,1.616,1615,1.616,1616,1.616,1617,1.616,1618,1.616,1619,1.616,1620,2.664,1621,1.616,1622,1.616,1623,1.616,1624,1.616,1625,1.616,1626,1.616,1627,1.616,1628,1.616,1629,1.616,1630,1.616,1631,1.616,1632,1.616,1633,5.187,1634,1.616,1635,1.616,1636,1.616,1637,1.616,1638,1.616,1639,3.942,1640,2.664,1641,3.942,1642,1.616,1643,1.616,1644,3.399,1645,1.616,1646,1.616,1647,1.616,1648,1.616,1649,2.664,1650,1.616,1651,1.616,1652,4.361,1653,1.616,1654,1.616,1655,1.616,1656,1.616,1657,1.616,1658,3.399,1659,3.942,1660,1.616,1661,1.616,1662,1.616,1663,1.616,1664,1.616,1665,1.616,1666,1.616,1667,1.616,1668,1.616,1669,2.664,1670,1.616,1671,2.664,1672,1.616,1673,1.616,1674,1.616,1675,1.616,1676,1.616,1677,1.616,1678,1.616,1679,3.942,1680,3.399,1681,3.399,1682,3.399,1683,2.664,1684,3.399,1685,2.664,1686,2.664,1687,2.664,1688,1.616,1689,1.616,1690,1.616,1691,1.616,1692,1.616,1693,1.616,1694,1.616,1695,2.664,1696,1.616,1697,1.616,1698,1.616,1699,4.361,1700,1.616,1701,1.616,1702,1.616,1703,1.616,1704,1.616,1705,1.616,1706,1.616,1707,1.616,1708,1.616,1709,4.361,1710,1.616,1711,1.616,1712,1.616,1713,1.616,1714,1.616,1715,1.616,1716,1.616,1717,1.616,1718,1.616,1719,1.616,1720,1.616,1721,1.616,1722,1.616,1723,1.616,1724,1.616,1725,3.399,1726,1.616,1727,1.616,1728,1.616,1729,2.664,1730,1.616,1731,1.616,1732,1.616,1733,1.616,1734,1.616,1735,1.616,1736,1.616,1737,1.616,1738,1.616,1739,1.616,1740,1.616,1741,1.616,1742,1.616,1743,1.616,1744,1.616,1745,1.616,1746,2.664,1747,2.664,1748,1.616,1749,1.616,1750,1.616,1751,1.616,1752,1.616,1753,1.616,1754,1.616,1755,1.616,1756,1.616,1757,1.616,1758,1.616,1759,1.616,1760,1.616,1761,1.616,1762,1.616,1763,1.616,1764,1.616]],["title/modules.html",[2,2.103]],["body/modules.html",[1,3.596,2,2.298,6,3.289,7,0.019,8,3.289,60,0.019,61,0.019,65,3.289,66,3.289,316,3.982,1074,3.596,1251,5.257,1765,6.972,1766,6.972,1767,7.066,1768,5.281]],["title/overview.html",[1341,3.644]],["body/overview.html",[1,4.606,2,1.912,3,2.421,4,3.744,5,3.744,6,4.368,7,0.022,8,4.212,9,3.195,10,2.342,11,1.912,57,2.524,60,0.017,61,0.017,62,3.744,63,3.744,64,3.744,65,4.401,66,4.401,70,1.592,113,1.796,263,2.994,271,1.912,352,3.744,353,3.744,354,3.744,355,4.277,360,2.524,413,3.944,442,3.744,443,3.744,444,3.744,601,3.409,830,2.994,860,3.744,861,3.744,862,3.744,1099,3.744,1304,3.314,1341,3.314,1482,3.744,1769,4.396]],["title/properties.html",[121,0.709,984,2.237]],["body/properties.html",[7,0.022,16,0.485,17,3.106,60,0.02,61,0.02,121,0.9,244,3.368,305,2.685,562,3.368,786,3.683,1376,4.078,1445,4.078,1469,4.078,1470,4.606,1770,5.408,1771,5.408,1772,5.408,1773,5.408,1774,5.408,1775,5.408]],["title/miscellaneous/variables.html",[920,2.904,1021,1.704]],["body/miscellaneous/variables.html",[2,1.979,7,0.023,15,2.45,17,1.866,27,3.269,39,2.599,41,3.43,42,2.768,43,2.768,44,2.45,45,2.45,51,1.414,60,0.014,61,0.014,84,2.213,86,2.213,87,2.213,95,2.024,115,2.018,120,0.377,121,1.098,125,1.305,126,0.785,127,3.455,135,1.979,137,3.014,138,3.43,143,2.024,144,2.45,145,2.833,153,0.654,171,2.538,172,2.538,173,2.884,174,1.508,178,1.731,193,3.43,195,2.768,233,3.43,235,2.45,236,1.866,237,2.768,238,2.45,239,2.45,261,1.613,270,1.731,275,3.231,437,2.024,450,3.265,498,2.45,500,2.213,510,2.258,554,1.731,619,2.213,628,2.024,632,2.024,633,2.024,634,2.024,662,2.45,663,3.43,678,2.45,679,2.768,680,2.45,681,2.45,682,2.45,683,2.768,777,2.612,818,2.45,819,2.45,834,4.336,840,2.768,847,3.43,865,3.43,881,2.768,885,3.43,920,2.213,932,2.024,933,2.213,952,2.768,953,2.768,954,2.768,962,2.768,964,3.874,966,2.768,1021,1.866,1023,2.768,1024,4.47,1030,2.768,1166,2.45,1776,3.25,1777,3.25,1778,3.25,1779,4.549,1780,4.549,1781,3.25,1782,4.549,1783,3.25,1784,3.25,1785,3.25,1786,3.25,1787,3.25,1788,3.25,1789,3.25]],["title/routes.html",[1790,4.116]],["body/routes.html",[7,0.02,60,0.02,61,0.02,1790,4.867]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{}}}],["0.0.1",{"_index":1770,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":992,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1425,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":1017,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":1004,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":1012,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":1000,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":1003,"title":{},"body":{"dependencies.html":{}}}],["01002",{"_index":284,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":271,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":986,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":280,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1.2355",{"_index":152,"title":{},"body":{"classes/EsHitDto.html":{}}}],["1/1",{"_index":965,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":227,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":959,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":389,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11/11",{"_index":979,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":1099,"title":{},"body":{"miscellaneous/enumerations.html":{},"overview.html":{}}}],["14.0.1",{"_index":1015,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":1188,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1979",{"_index":714,"title":{},"body":{"classes/PaperDto.html":{}}}],["1998",{"_index":1204,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["2",{"_index":1304,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1471,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":994,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":960,"title":{},"body":{"coverage.html":{}}}],["20",{"_index":672,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["200",{"_index":753,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1473,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1394,"title":{},"body":{"index.html":{}}}],["2324",{"_index":1211,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":276,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":1019,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":1009,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":1002,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":961,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":213,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["314",{"_index":675,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["4",{"_index":1305,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["4.6.0",{"_index":998,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":967,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1229,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":1155,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":1224,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":1220,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":1235,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1240,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["46toawmdawr5bxv1awqykwzub2rlxzmaaaaaaaaaacobywadawr4bxv1awqxagzub2rlxzeaaaaaaaaaaaebyqadawr5bxv1awqykgzub2rlxziaaaaaaaaaaawbygacbxv1awqyaaafdxvpzdeaaqltyxrjaf9hbgw_gaaaaa",{"_index":252,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["495c",{"_index":695,"title":{},"body":{"classes/PaperDto.html":{}}}],["5",{"_index":263,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":996,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":1007,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":978,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1506,"title":{},"body":{"license.html":{}}}],["6",{"_index":1769,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":969,"title":{},"body":{"coverage.html":{}}}],["60",{"_index":711,"title":{},"body":{"classes/PaperDto.html":{}}}],["69c45ca738ff",{"_index":697,"title":{},"body":{"classes/PaperDto.html":{}}}],["7.5.5",{"_index":1020,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":968,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1464,"title":{},"body":{"index.html":{}}}],["8.0.0",{"_index":993,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":997,"title":{},"body":{"dependencies.html":{}}}],["8/8",{"_index":970,"title":{},"body":{"coverage.html":{}}}],["8dfa",{"_index":696,"title":{},"body":{"classes/PaperDto.html":{}}}],["9",{"_index":1482,"title":{},"body":{"license.html":{},"overview.html":{}}}],["_id",{"_index":283,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":281,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_pit",{"_index":588,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_pit(pit",{"_index":587,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_prevpage",{"_index":594,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_prevpage(page",{"_index":593,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_score",{"_index":143,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["_shard_doc",{"_index":612,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_shards",{"_index":235,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":144,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_tiebreaker",{"_index":591,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["_tiebreaker(tiebreaker",{"_index":590,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["above",{"_index":1662,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":878,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":1152,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":1150,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1727,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1725,"title":{},"body":{"license.html":{}}}],["access",{"_index":1121,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1260,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accessors",{"_index":800,"title":{},"body":{"classes/PrevSearch.html":{}}}],["according",{"_index":1151,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":674,"title":{},"body":{"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":548,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["act",{"_index":1733,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1255,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":1237,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1707,"title":{},"body":{"license.html":{}}}],["actual",{"_index":158,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1354,"title":{},"body":{"index.html":{}}}],["add",{"_index":1466,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1651,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1652,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1551,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":559,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1309,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1344,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1723,"title":{},"body":{"license.html":{}}}],["against",{"_index":1612,"title":{},"body":{"license.html":{}}}],["agent",{"_index":1086,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1736,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1682,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1666,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1359,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1350,"title":{},"body":{"index.html":{}}}],["algol",{"_index":703,"title":{},"body":{"classes/PaperDto.html":{}}}],["algol):vii",{"_index":706,"title":{},"body":{"classes/PaperDto.html":{}}}],["alive",{"_index":203,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["alleging",{"_index":1617,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":171,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":173,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1608,"title":{},"body":{"license.html":{}}}],["along",{"_index":1645,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1650,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1427,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":1092,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":944,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amongst",{"_index":287,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["amount",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1730,"title":{},"body":{"license.html":{}}}],["andrews",{"_index":705,"title":{},"body":{"classes/PaperDto.html":{}}}],["annotations",{"_index":1539,"title":{},"body":{"license.html":{}}}],["another",{"_index":599,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["anything",{"_index":1141,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1470,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":327,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apiextramodels",{"_index":165,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiextramodels(requestdto",{"_index":788,"title":{},"body":{"controllers/PapersController.html":{}}}],["apigatewaytimeoutresponse",{"_index":779,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation",{"_index":780,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":166,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":508,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{}}}],["apipropertyoptional",{"_index":167,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/RequestDto.html":{}}}],["apiresponse",{"_index":781,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1458,"title":{},"body":{"index.html":{}}}],["apitags",{"_index":782,"title":{},"body":{"controllers/PapersController.html":{}}}],["apitags('search",{"_index":789,"title":{},"body":{"controllers/PapersController.html":{}}}],["apitags('search')@apioperation({summary",{"_index":749,"title":{},"body":{"controllers/PapersController.html":{}}}],["app",{"_index":1424,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1648,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1534,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1680,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":321,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":654,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["applies",{"_index":1601,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1431,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":846,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1694,"title":{},"body":{"license.html":{}}}],["april",{"_index":1207,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1355,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1340,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1757,"title":{},"body":{"license.html":{}}}],["args",{"_index":462,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":494,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":464,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arising",{"_index":1713,"title":{},"body":{"license.html":{}}}],["array",{"_index":286,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["asc",{"_index":872,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1742,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":1105,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":726,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["assume",{"_index":1696,"title":{},"body":{"license.html":{}}}],["async",{"_index":524,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1745,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1533,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1261,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1639,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":1157,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":1134,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1773,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1281,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1486,"title":{},"body":{"license.html":{}}}],["authors",{"_index":679,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["authorship",{"_index":1529,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1372,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1274,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":1074,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["axiosres.data",{"_index":646,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["b",{"_index":1630,"title":{},"body":{"license.html":{}}}],["back",{"_index":754,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["bad",{"_index":1230,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1254,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":1127,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bank",{"_index":942,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":751,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1396,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1392,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1397,"title":{},"body":{"index.html":{}}}],["basic",{"_index":325,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1683,"title":{},"body":{"license.html":{}}}],["before",{"_index":258,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["behalf",{"_index":1556,"title":{},"body":{"license.html":{}}}],["being",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1406,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1510,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1548,"title":{},"body":{"license.html":{}}}],["block",{"_index":506,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":823,"title":{},"body":{"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1376,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":254,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":981,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1747,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1767,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1765,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1342,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1398,"title":{},"body":{"index.html":{}}}],["building",{"_index":1381,"title":{},"body":{"index.html":{}}}],["c",{"_index":1636,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{}}}],["call",{"_index":405,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1411,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":401,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["calling",{"_index":1443,"title":{},"body":{"index.html":{}}}],["can't",{"_index":133,"title":{},"body":{"interfaces/EqQueryString.html":{}}}],["canactivate",{"_index":835,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":841,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":1146,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1631,"title":{},"body":{"license.html":{}}}],["case",{"_index":328,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":650,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["cause",{"_index":1496,"title":{},"body":{"license.html":{}}}],["caused",{"_index":1088,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cc3c3cca",{"_index":693,"title":{},"body":{"classes/PaperDto.html":{}}}],["cd",{"_index":1377,"title":{},"body":{"index.html":{}}}],["cell",{"_index":729,"title":{},"body":{"classes/PaperDto.html":{}}}],["certain",{"_index":188,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{}}}],["change",{"_index":908,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1635,"title":{},"body":{"license.html":{}}}],["character",{"_index":1712,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":1149,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1586,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1419,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1417,"title":{},"body":{"index.html":{}}}],["check",{"_index":297,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["checks",{"_index":300,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1283,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1726,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1614,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1603,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["cleint_error",{"_index":1301,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":1014,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1374,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1421,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":352,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":353,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":354,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":442,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":443,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":444,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":860,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":861,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":862,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":333,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":1213,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":495,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1609,"title":{},"body":{"license.html":{}}}],["comission",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1461,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1751,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1720,"title":{},"body":{"license.html":{}}}],["commision",{"_index":943,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":945,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":340,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1560,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1524,"title":{},"body":{"license.html":{}}}],["complete",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":566,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["completion",{"_index":259,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1760,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1656,"title":{},"body":{"license.html":{}}}],["comply",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1462,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1363,"title":{},"body":{"index.html":{}}}],["computer",{"_index":707,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["condition",{"_index":1247,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":1120,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":189,"title":{},"body":{"interfaces/EsQuery.html":{},"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1434,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1439,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":1165,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1365,"title":{},"body":{"index.html":{}}}],["connection",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1711,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1732,"title":{},"body":{"license.html":{}}}],["conspicuously",{"_index":1572,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1618,"title":{},"body":{"license.html":{}}}],["constructed",{"_index":824,"title":{},"body":{"classes/RequestDto.html":{}}}],["constructor",{"_index":196,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":886,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":456,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":343,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":527,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["constructor(private",{"_index":312,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":820,"title":{},"body":{"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":836,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":198,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1653,"title":{},"body":{"license.html":{}}}],["contained",{"_index":1232,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["containing",{"_index":288,"title":{},"body":{"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["contains",{"_index":241,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/RequestDto.html":{}}}],["content",{"_index":554,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["contents",{"_index":686,"title":{},"body":{"classes/PaperDto.html":{},"index.html":{},"license.html":{}}}],["context",{"_index":404,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":851,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":431,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":850,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":433,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":423,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":434,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":435,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":422,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1500,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1550,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1607,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1658,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1576,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1619,"title":{},"body":{"license.html":{}}}],["control",{"_index":1215,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1490,"title":{},"body":{"license.html":{}}}],["controller",{"_index":291,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":310,"title":{},"body":{"controllers/HealthController.html":{}}}],["controllername",{"_index":430,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":441,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contructor",{"_index":345,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":839,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1526,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1626,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1080,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1484,"title":{},"body":{"license.html":{}}}],["core/helpers/env.helper",{"_index":948,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":774,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":1227,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":1093,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["count",{"_index":242,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["counterclaim",{"_index":1615,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1362,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":955,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1442,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":449,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":458,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":460,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1360,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1613,"title":{},"body":{"license.html":{}}}],["current",{"_index":595,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1263,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":371,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1675,"title":{},"body":{"license.html":{}}}],["customer",{"_index":939,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["damages",{"_index":1709,"title":{},"body":{"license.html":{}}}],["daniil",{"_index":734,"title":{},"body":{"classes/PaperDto.html":{}}}],["data",{"_index":135,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":350,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.status",{"_index":351,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["date",{"_index":1623,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":421,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["davie",{"_index":718,"title":{},"body":{"classes/PaperDto.html":{}}}],["days",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["db",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":451,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":461,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1325,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1319,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1786,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":147,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":127,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":123,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["defaults",{"_index":550,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["defend",{"_index":1738,"title":{},"body":{"license.html":{}}}],["defined",{"_index":153,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1492,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1478,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":1073,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":538,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletepit",{"_index":525,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletepit(pitid",{"_index":534,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletes",{"_index":536,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deletion",{"_index":543,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deliberate",{"_index":1704,"title":{},"body":{"license.html":{}}}],["denis",{"_index":736,"title":{},"body":{"classes/PaperDto.html":{}}}],["depended",{"_index":1238,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":1236,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":541,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["deploy",{"_index":1382,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1345,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1440,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1435,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":496,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":710,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["derived",{"_index":1536,"title":{},"body":{"license.html":{}}}],["desc",{"_index":613,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1676,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1358,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1574,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1448,"title":{},"body":{"index.html":{}}}],["details",{"_index":304,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1693,"title":{},"body":{"license.html":{}}}],["developed",{"_index":712,"title":{},"body":{"classes/PaperDto.html":{}}}],["development",{"_index":1416,"title":{},"body":{"index.html":{}}}],["different",{"_index":1116,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1494,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1497,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":928,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":924,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1678,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1569,"title":{},"body":{"license.html":{}}}],["display",{"_index":875,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["displayed",{"_index":870,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1594,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1644,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1477,"title":{},"body":{"license.html":{}}}],["dns",{"_index":1275,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1465,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1409,"title":{},"body":{"index.html":{}}}],["document",{"_index":139,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":956,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":249,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":569,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/elastic/es",{"_index":570,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/request.dto",{"_index":573,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/dtos/search",{"_index":575,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums",{"_index":385,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/es",{"_index":577,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/enums/page",{"_index":579,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces",{"_index":348,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["domain/interfaces/elastic/es",{"_index":581,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["don't",{"_index":1750,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":1005,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":1096,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":172,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["dtos/elastic/es",{"_index":289,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["due",{"_index":1129,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1271,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1755,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1364,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1537,"title":{},"body":{"license.html":{}}}],["el._source",{"_index":638,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["elaborations",{"_index":1540,"title":{},"body":{"license.html":{}}}],["elastic/es",{"_index":828,"title":{},"body":{"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchResultDto.html":{}}}],["elastichsearch",{"_index":557,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":142,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["electronic",{"_index":1557,"title":{},"body":{"license.html":{}}}],["elements",{"_index":211,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":199,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1746,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1245,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1744,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1444,"title":{},"body":{"index.html":{}}}],["entities",{"_index":1148,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1315,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":949,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":1022,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums",{"_index":511,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["enums/page",{"_index":661,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1317,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1366,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":950,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":278,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["eqquerystring",{"_index":112,"title":{"interfaces/EqQueryString.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"coverage.html":{}}}],["error",{"_index":303,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":465,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":428,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":490,"title":{},"body":{"injectables/LoggerService.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es",{"_index":190,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["es_ip",{"_index":521,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["es_port",{"_index":522,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["es_query",{"_index":819,"title":{},"body":{"classes/RequestDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["eshitdto",{"_index":136,"title":{"classes/EsHitDto.html":{}},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["espit",{"_index":176,"title":{"interfaces/EsPit.html":{}},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["esq",{"_index":909,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.query",{"_index":911,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.size",{"_index":910,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquery",{"_index":184,"title":{"interfaces/EsQuery.html":{}},"body":{"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esquerydto",{"_index":192,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":232,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsehits",{"_index":248,"title":{"interfaces/EsResponseHits.html":{}},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["estime",{"_index":546,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["estime.min",{"_index":551,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["evaluated",{"_index":1177,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1722,"title":{},"body":{"license.html":{}}}],["event",{"_index":1700,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":1201,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":151,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1596,"title":{},"body":{"license.html":{}}}],["exception",{"_index":339,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exceptionfactory",{"_index":925,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["excerpt",{"_index":699,"title":{},"body":{"classes/PaperDto.html":{}}}],["exchangeable",{"_index":1368,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1571,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1585,"title":{},"body":{"license.html":{}}}],["execute",{"_index":266,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["executed",{"_index":1667,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":399,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1698,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1512,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1408,"title":{},"body":{"index.html":{}}}],["expand",{"_index":1006,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":947,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1316,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":1198,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":1197,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":1196,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":1216,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1660,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1457,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":420,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":341,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":1193,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1432,"title":{},"body":{"index.html":{}}}],["f763",{"_index":694,"title":{},"body":{"classes/PaperDto.html":{}}}],["facilitates",{"_index":1370,"title":{},"body":{"index.html":{}}}],["factory",{"_index":929,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":274,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":1234,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1718,"title":{},"body":{"license.html":{}}}],["faker",{"_index":1010,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":936,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":128,"title":{},"body":{"interfaces/EqQueryString.html":{},"miscellaneous/enumerations.html":{}}}],["fields",{"_index":124,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1504,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1624,"title":{},"body":{"license.html":{}}}],["files",{"_index":1428,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":894,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(es_query",{"_index":899,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":895,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":903,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":750,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":1156,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1689,"title":{},"body":{"license.html":{}}}],["flag",{"_index":658,"title":{},"body":{"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{}}}],["flow",{"_index":1008,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1451,"title":{},"body":{"index.html":{}}}],["following",{"_index":665,"title":{},"body":{"classes/PageMetaDto.html":{},"index.html":{},"license.html":{}}}],["fools",{"_index":1208,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":1137,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1515,"title":{},"body":{"license.html":{}}}],["format",{"_index":452,"title":{},"body":{"injectables/LoggerService.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":468,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":470,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":471,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":481,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1405,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":1169,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":1112,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1588,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1272,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":1139,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1249,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":329,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1252,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1310,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":1108,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1256,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1268,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gatewaytimeoutexception",{"_index":767,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["gatewaytimeoutexception('elasticsearch",{"_index":915,"title":{},"body":{"injectables/SearchService.html":{}}}],["gathered",{"_index":1076,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":363,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":367,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1525,"title":{},"body":{"license.html":{}}}],["generates",{"_index":369,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":1147,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":796,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":790,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":298,"title":{},"body":{"controllers/HealthController.html":{}}}],["get_pit",{"_index":806,"title":{},"body":{"classes/PrevSearch.html":{}}}],["get_prevpage",{"_index":814,"title":{},"body":{"classes/PrevSearch.html":{}}}],["get_tiebreaker",{"_index":810,"title":{},"body":{"classes/PrevSearch.html":{}}}],["getbycontext",{"_index":746,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@req",{"_index":793,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(request",{"_index":748,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":747,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":797,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":759,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":364,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":373,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":365,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":376,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":526,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["getpit(alive",{"_index":544,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["gets",{"_index":375,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getschemapath",{"_index":783,"title":{},"body":{"controllers/PapersController.html":{}}}],["getting",{"_index":1337,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":366,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":378,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1373,"title":{},"body":{"index.html":{}}}],["give",{"_index":1437,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":880,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":1167,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1716,"title":{},"body":{"license.html":{}}}],["gorbunov",{"_index":737,"title":{},"body":{"classes/PaperDto.html":{}}}],["governing",{"_index":1763,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1579,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1514,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1487,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1582,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1768,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1705,"title":{},"body":{"license.html":{}}}],["guard",{"_index":830,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":832,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["handle",{"_index":1264,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":403,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":432,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1740,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":633,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["hasprev",{"_index":634,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["header",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":653,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":295,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":308,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":306,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":292,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":316,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1775,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1346,"title":{},"body":{"index.html":{}}}],["help",{"_index":1384,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1404,"title":{},"body":{"index.html":{}}}],["hence",{"_index":1223,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1581,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1663,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1339,"title":{},"body":{"index.html":{}}}],["hit",{"_index":155,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto",{"_index":290,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["hit.dto.ts",{"_index":138,"title":{},"body":{"classes/EsHitDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["hit.dto.ts:25",{"_index":161,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:35",{"_index":164,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:45",{"_index":154,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hits",{"_index":236,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageMetaDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hits.interface",{"_index":269,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["hits.interface.ts",{"_index":285,"title":{},"body":{"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["hold",{"_index":1739,"title":{},"body":{"license.html":{}}}],["hop",{"_index":1202,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hours",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":305,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1460,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1449,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1455,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1474,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1762,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1276,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":768,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":792,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":342,"title":{},"body":{"classes/HttpResponseException.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["httphealthindicator",{"_index":307,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":318,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":322,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":381,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":387,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":335,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1332,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":382,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":386,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":355,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":383,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":384,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":388,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":330,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1375,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":528,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["httpstatus",{"_index":380,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":1212,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1293,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":1203,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":174,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["identification",{"_index":1756,"title":{},"body":{"license.html":{}}}],["identified",{"_index":1144,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":957,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1749,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":1206,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ii",{"_index":1502,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1509,"title":{},"body":{"license.html":{}}}],["image",{"_index":1410,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1412,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":1217,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":519,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["implements",{"_index":338,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1686,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1570,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1714,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":1226,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1710,"title":{},"body":{"license.html":{}}}],["include",{"_index":1195,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":1186,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1642,"title":{},"body":{"license.html":{}}}],["including",{"_index":1518,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1554,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1578,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1741,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1737,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1728,"title":{},"body":{"license.html":{}}}],["index",{"_index":120,"title":{"index.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1531,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":659,"title":{},"body":{"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1495,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1511,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["info.interface.ts",{"_index":856,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["inform",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":845,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1298,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1468,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1606,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1620,"title":{},"body":{"license.html":{}}}],["injectable",{"_index":359,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":360,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":897,"title":{},"body":{"injectables/SearchService.html":{}}}],["injects",{"_index":530,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["install",{"_index":1386,"title":{},"body":{"index.html":{}}}],["instance",{"_index":898,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":489,"title":{},"body":{"injectables/LoggerService.html":{}}}],["instantiates",{"_index":532,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["institute",{"_index":1610,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1418,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":1233,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1552,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":396,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["intercept(context",{"_index":398,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interceptor",{"_index":520,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["interface",{"_index":111,"title":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":113,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/PageMeta.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/elastic/es",{"_index":222,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["interfaces/page",{"_index":512,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["interim",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1295,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1244,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":1182,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1258,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invariant",{"_index":727,"title":{},"body":{"classes/PaperDto.html":{}}}],["ip",{"_index":558,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["irrevocable",{"_index":1589,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":964,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":217,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":504,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["isboolean",{"_index":267,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":218,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@apiproperty({type",{"_index":826,"title":{},"body":{"classes/RequestDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":888,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":255,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":873,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":262,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apiproperty({description",{"_index":876,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isobject()@apiproperty({description",{"_index":204,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":733,"title":{},"body":{"classes/PaperDto.html":{}}}],["isint",{"_index":219,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PaperDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":169,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty()@apiproperty({description",{"_index":157,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isnotempty()@isarray()@apiproperty({description",{"_index":684,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnotempty()@isstring()@apiproperty({description",{"_index":691,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnumber",{"_index":220,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isobject",{"_index":221,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["isoptional()@apipropertyoptional({description",{"_index":148,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isoptional()@apipropertyoptional({type",{"_index":822,"title":{},"body":{"classes/RequestDto.html":{}}}],["isoptional()@isarray()@apipropertyoptional({description",{"_index":207,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isdefined()@isnumber()@isint()@apipropertyoptional({description",{"_index":209,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isint()@apiproperty({description",{"_index":867,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":240,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional()@isobject()@apipropertyoptional({description",{"_index":200,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isstring()@apiproperty({description",{"_index":871,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1783,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isset",{"_index":600,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["isstring",{"_index":268,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/SearchQueryDto.html":{}}}],["isstring()@isoptional()@apipropertyoptional({description",{"_index":251,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["issue",{"_index":1565,"title":{},"body":{"license.html":{}}}],["itself",{"_index":1158,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1472,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":1209,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["k8s",{"_index":1422,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1429,"title":{},"body":{"index.html":{}}}],["keep_alive",{"_index":182,"title":{},"body":{"interfaces/EsPit.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["keeps",{"_index":940,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":1784,"title":{},"body":{"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1789,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1685,"title":{},"body":{"license.html":{}}}],["knowledge",{"_index":722,"title":{},"body":{"classes/PaperDto.html":{}}}],["known",{"_index":1170,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1430,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1347,"title":{},"body":{"index.html":{}}}],["language",{"_index":709,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["large",{"_index":1289,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":1180,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":1011,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1681,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1616,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1273,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["legal",{"_index":1488,"title":{},"body":{"license.html":{}}}],["length",{"_index":1174,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":1171,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1369,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1699,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1708,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1604,"title":{},"body":{"license.html":{}}}],["license",{"_index":1469,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1759,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1621,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1483,"title":{},"body":{"license.html":{}}}],["limit",{"_index":619,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1687,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1764,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1519,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1243,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":869,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":1143,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1547,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1447,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1563,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1611,"title":{},"body":{"license.html":{}}}],["live",{"_index":183,"title":{},"body":{"interfaces/EsPit.html":{}}}],["liveness",{"_index":301,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":1077,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":1095,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":453,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":472,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":395,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":484,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":413,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":486,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":414,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":447,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":397,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":407,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":392,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1290,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":1168,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1361,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1715,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1721,"title":{},"body":{"license.html":{}}}],["m",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["machine",{"_index":1413,"title":{},"body":{"index.html":{}}}],["made",{"_index":1530,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1562,"title":{},"body":{"license.html":{}}}],["main",{"_index":700,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1267,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1445,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1367,"title":{},"body":{"index.html":{}}}],["making",{"_index":1516,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":1130,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1719,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1567,"title":{},"body":{"license.html":{}}}],["management",{"_index":1498,"title":{},"body":{"license.html":{}}}],["manager",{"_index":1001,"title":{},"body":{"dependencies.html":{}}}],["manifests",{"_index":1348,"title":{},"body":{"index.html":{}}}],["many",{"_index":1241,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":567,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["map(axiosres",{"_index":645,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["markdown",{"_index":688,"title":{},"body":{"classes/PaperDto.html":{}}}],["marked",{"_index":1573,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1672,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["math.abs(query.page",{"_index":623,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["max_score",{"_index":279,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{}}}],["maxim",{"_index":738,"title":{},"body":{"classes/PaperDto.html":{}}}],["maximum",{"_index":210,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageMetaDto.html":{}}}],["md",{"_index":689,"title":{},"body":{"classes/PaperDto.html":{}}}],["mean",{"_index":1480,"title":{},"body":{"license.html":{}}}],["means",{"_index":1222,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1521,"title":{},"body":{"license.html":{}}}],["mechanism",{"_index":825,"title":{},"body":{"classes/RequestDto.html":{}}}],["media",{"_index":1225,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1627,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1628,"title":{},"body":{"license.html":{}}}],["memory",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1688,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1546,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1453,"title":{},"body":{"index.html":{}}}],["message",{"_index":326,"title":{},"body":{"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":927,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":1199,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":500,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["meta.dto",{"_index":514,"title":{},"body":{"classes/PageDto.html":{}}}],["meta.dto.ts",{"_index":663,"title":{},"body":{"classes/PageMetaDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["meta.dto.ts:25",{"_index":676,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:35",{"_index":671,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:44",{"_index":669,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:53",{"_index":666,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:62",{"_index":668,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:72",{"_index":673,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.hasnext",{"_index":635,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.interface",{"_index":513,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["meta.interface.ts",{"_index":657,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["meta.pagenum",{"_index":636,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["meta.pagesize",{"_index":637,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["metadata",{"_index":119,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"dependencies.html":{}}}],["metainformation",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":437,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":440,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":1142,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":296,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1454,"title":{},"body":{"index.html":{}}}],["micros",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mikhaylov",{"_index":735,"title":{},"body":{"classes/PaperDto.html":{}}}],["milliseconds",{"_index":265,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["min",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["minimum",{"_index":670,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["minute",{"_index":937,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":549,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["miscellaneous",{"_index":1021,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":499,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["modifications",{"_index":1517,"title":{},"body":{"license.html":{}}}],["modified",{"_index":1122,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1649,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1654,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1774,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1378,"title":{},"body":{"index.html":{}}}],["money",{"_index":941,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1349,"title":{},"body":{"index.html":{}}}],["more",{"_index":938,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["morrison",{"_index":716,"title":{},"body":{"classes/PaperDto.html":{}}}],["moved",{"_index":1284,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":1104,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ms",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mucosal",{"_index":725,"title":{},"body":{"classes/PaperDto.html":{}}}],["multiple",{"_index":1282,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":999,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":973,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1318,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":347,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1671,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1433,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1438,"title":{},"body":{"index.html":{}}}],["nanos",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["necessarily",{"_index":1605,"title":{},"body":{"license.html":{}}}],["need",{"_index":1082,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["needed",{"_index":531,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1703,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1706,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":1097,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":416,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["nestjs",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":319,"title":{},"body":{"modules/HealthModule.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":995,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":168,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":309,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1772,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":480,"title":{},"body":{"injectables/LoggerService.html":{}}}],["neurobiology",{"_index":740,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuroimaging",{"_index":742,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuron",{"_index":741,"title":{},"body":{"classes/PaperDto.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":400,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":424,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["no_content",{"_index":1081,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1771,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1280,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":1189,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1647,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":1145,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":1140,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1250,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":1118,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nothing",{"_index":412,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1532,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1633,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1661,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1385,"title":{},"body":{"index.html":{}}}],["ns",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["num",{"_index":1323,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":146,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":181,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["objects",{"_index":162,"title":{},"body":{"classes/EsHitDto.html":{}}}],["obligations",{"_index":1729,"title":{},"body":{"license.html":{}}}],["observable",{"_index":406,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["obtain",{"_index":1761,"title":{},"body":{"license.html":{}}}],["offer",{"_index":1598,"title":{},"body":{"license.html":{}}}],["ok",{"_index":314,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["one",{"_index":596,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1351,"title":{},"body":{"index.html":{}}}],["optional",{"_index":122,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":935,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":510,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":631,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["order.desc",{"_index":610,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{}}}],["order.enum",{"_index":580,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{}}}],["order.enum.ts",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["origin",{"_index":1075,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1543,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1501,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["out'})@get(':uuid')@httpcode(200",{"_index":763,"title":{},"body":{"controllers/PapersController.html":{}}}],["out'})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":756,"title":{},"body":{"controllers/PapersController.html":{}}}],["output",{"_index":1335,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1507,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":1192,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1266,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":553,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["overview",{"_index":1341,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1485,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1503,"title":{},"body":{"license.html":{}}}],["package",{"_index":984,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1402,"title":{},"body":{"index.html":{}}}],["page",{"_index":118,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["pagedto",{"_index":497,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":639,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["pagedto})@apigatewaytimeoutresponse({description",{"_index":755,"title":{},"body":{"controllers/PapersController.html":{}}}],["pageinterceptor",{"_index":517,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagemeta",{"_index":501,"title":{"interfaces/PageMeta.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["pagemetadto",{"_index":507,"title":{"classes/PageMetaDto.html":{}},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"coverage.html":{}}}],["pagen",{"_index":881,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":628,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["pagesize",{"_index":632,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["pagination",{"_index":208,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{}}}],["paper",{"_index":159,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["paper.dto",{"_index":170,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["paperdto",{"_index":156,"title":{"classes/PaperDto.html":{}},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["paperdto})@apigatewaytimeoutresponse({description",{"_index":762,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers",{"_index":282,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":758,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":765,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":743,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":346,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parseuuidpipe",{"_index":769,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1641,"title":{},"body":{"license.html":{}}}],["partial",{"_index":1091,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":1090,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partialtype",{"_index":509,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["particle",{"_index":877,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1690,"title":{},"body":{"license.html":{}}}],["party",{"_index":1079,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["passed",{"_index":205,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["patent",{"_index":1595,"title":{},"body":{"license.html":{}}}],["path",{"_index":787,"title":{},"body":{"controllers/PapersController.html":{}}}],["pattern",{"_index":1356,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":1179,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1287,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":1135,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1505,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1322,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":129,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":1119,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":1106,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":1125,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1285,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":844,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1513,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1583,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1640,"title":{},"body":{"license.html":{}}}],["physics",{"_index":731,"title":{},"body":{"classes/PaperDto.html":{}}}],["pipe(take(1",{"_index":644,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["pipeline",{"_index":922,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":178,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/variables.html":{}}}],["pit.interface",{"_index":223,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["pit.interface.ts",{"_index":177,"title":{},"body":{"interfaces/EsPit.html":{},"coverage.html":{}}}],["pit_id",{"_index":237,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":537,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["places",{"_index":1326,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":179,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":563,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1353,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1724,"title":{},"body":{"license.html":{}}}],["pot",{"_index":1214,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1493,"title":{},"body":{"license.html":{}}}],["preceding",{"_index":667,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["precondition",{"_index":1176,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":1175,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":1101,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":294,"title":{},"body":{"controllers/HealthController.html":{}}}],["prepare",{"_index":1591,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":1163,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presence",{"_index":660,"title":{},"body":{"interfaces/PageMeta.html":{}}}],["presented",{"_index":687,"title":{},"body":{"classes/PaperDto.html":{}}}],["prevented",{"_index":1248,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":582,"title":{},"body":{"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["previously",{"_index":565,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevpage",{"_index":592,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["prevsearch",{"_index":523,"title":{"classes/PrevSearch.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["print",{"_index":1407,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1754,"title":{},"body":{"license.html":{}}}],["private",{"_index":313,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1450,"title":{},"body":{"index.html":{}}}],["process",{"_index":245,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":954,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_container_name",{"_index":555,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["process.env.es_port",{"_index":560,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":952,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":953,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1328,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":974,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1327,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":975,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1330,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":1161,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1673,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1390,"title":{},"body":{"index.html":{}}}],["programming",{"_index":708,"title":{},"body":{"classes/PaperDto.html":{}}}],["project",{"_index":302,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":1013,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1632,"title":{},"body":{"license.html":{}}}],["promise",{"_index":539,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":640,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["properties",{"_index":121,"title":{"properties.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1279,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":503,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":893,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":134,"title":{},"body":{"interfaces/EqQueryString.html":{},"license.html":{}}}],["proxy",{"_index":1159,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":1153,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":450,"title":{},"body":{"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1592,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1568,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1491,"title":{},"body":{"license.html":{}}}],["put",{"_index":770,"title":{},"body":{"controllers/PapersController.html":{}}}],["q.dto",{"_index":576,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{}}}],["q.dto.ts",{"_index":865,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:25",{"_index":879,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:37",{"_index":874,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:48",{"_index":868,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:59",{"_index":866,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":115,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query'})@apiresponse({status",{"_index":752,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto",{"_index":571,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{}}}],["query.dto.ts",{"_index":193,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:27",{"_index":214,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:38",{"_index":206,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:49",{"_index":201,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:60",{"_index":215,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:71",{"_index":197,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface",{"_index":224,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface.ts",{"_index":185,"title":{},"body":{"interfaces/EsQuery.html":{},"coverage.html":{}}}],["query.limit",{"_index":621,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.order",{"_index":611,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.page",{"_index":625,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query.query",{"_index":607,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.limit",{"_index":620,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order",{"_index":609,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.order?.touppercase",{"_index":630,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query?.page",{"_index":629,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["query_string",{"_index":186,"title":{},"body":{"interfaces/EsQuery.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["range",{"_index":1187,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1242,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1643,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":394,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1743,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1674,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1269,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1257,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1629,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1752,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":1103,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1300,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1695,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1625,"title":{},"body":{"license.html":{}}}],["references",{"_index":1109,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":1016,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":837,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":1172,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":1138,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1668,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1343,"title":{},"body":{"index.html":{}}}],["reject",{"_index":641,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reject(error",{"_index":651,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["reject(new",{"_index":914,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":277,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevance",{"_index":149,"title":{},"body":{"classes/EsHitDto.html":{}}}],["relevant",{"_index":901,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1544,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":1126,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1748,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1541,"title":{},"body":{"license.html":{}}}],["representation",{"_index":1102,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":1094,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1561,"title":{},"body":{"license.html":{}}}],["represents",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1590,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1677,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1476,"title":{},"body":{"license.html":{}}}],["req",{"_index":771,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":426,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":429,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":246,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.es_query",{"_index":605,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.pit",{"_index":615,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.query",{"_index":606,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.search_after",{"_index":617,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.size",{"_index":622,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.es_query.sort",{"_index":608,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request.query",{"_index":603,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["request_timeout",{"_index":1160,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requestdto",{"_index":572,"title":{"classes/RequestDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"coverage.html":{}}}],["requested",{"_index":766,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":1185,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":393,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1253,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":848,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":853,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":1133,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":772,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["res.hits.total.value",{"_index":627,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.keep_alive",{"_index":648,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["res.timed_out",{"_index":913,"title":{},"body":{"injectables/SearchService.html":{}}}],["reserved",{"_index":1136,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":1085,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":1113,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(new",{"_index":916,"title":{},"body":{"injectables/SearchService.html":{}}}],["resolve(res",{"_index":649,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resolve(res.succeeded",{"_index":655,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["resource",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":1123,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":234,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":334,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.data",{"_index":795,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.data.hits.hits[0]._source",{"_index":799,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.dto",{"_index":890,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["response.dto.ts",{"_index":233,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:26",{"_index":264,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:39",{"_index":260,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:56",{"_index":247,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:80",{"_index":250,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:91",{"_index":253,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":337,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":344,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.interface.ts",{"_index":324,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":357,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":362,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":377,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":374,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":379,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":368,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["responsibility",{"_index":1735,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1692,"title":{},"body":{"license.html":{}}}],["result",{"_index":542,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"index.html":{},"license.html":{}}}],["result.dto",{"_index":778,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["result.dto.ts",{"_index":885,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:25",{"_index":889,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:42",{"_index":887,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1520,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1637,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":141,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1788,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":212,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["reverse",{"_index":604,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["revisions",{"_index":1538,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":1210,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1731,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":1018,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1697,"title":{},"body":{"license.html":{}}}],["role",{"_index":840,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":834,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":847,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":831,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["ron",{"_index":715,"title":{},"body":{"classes/PaperDto.html":{}}}],["rounded",{"_index":1324,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1321,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":745,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1790,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1587,"title":{},"body":{"license.html":{}}}],["run",{"_index":1387,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1393,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1400,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1401,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1399,"title":{},"body":{"index.html":{}}}],["running",{"_index":1420,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":417,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":419,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["s",{"_index":702,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["same",{"_index":1753,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1423,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1292,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["saved",{"_index":857,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["schemas",{"_index":1459,"title":{},"body":{"index.html":{}}}],["score",{"_index":150,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{}}}],["script",{"_index":1403,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1391,"title":{},"body":{"index.html":{}}}],["search",{"_index":130,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["search_after",{"_index":194,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["searchinfo",{"_index":854,"title":{"interfaces/SearchInfo.html":{}},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":574,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":776,"title":{"classes/SearchResultDto.html":{}},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["searchresultdto(200",{"_index":917,"title":{},"body":{"injectables/SearchService.html":{}}}],["searchservice",{"_index":601,"title":{"injectables/SearchService.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["sec",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["section",{"_index":1098,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1481,"title":{},"body":{"license.html":{}}}],["see",{"_index":1286,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":1117,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":1100,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":1194,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1599,"title":{},"body":{"license.html":{}}}],["sent",{"_index":1089,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1545,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1665,"title":{},"body":{"license.html":{}}}],["server",{"_index":562,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1302,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":1218,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":311,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1426,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1436,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1441,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1262,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":358,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["set",{"_index":586,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["set_pit(pit",{"_index":808,"title":{},"body":{"classes/PrevSearch.html":{}}}],["set_prevpage(page",{"_index":816,"title":{},"body":{"classes/PrevSearch.html":{}}}],["set_tiebreaker(tiebreaker",{"_index":812,"title":{},"body":{"classes/PrevSearch.html":{}}}],["setmetadata(is_public_key",{"_index":1785,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1787,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setting",{"_index":626,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["shall",{"_index":1479,"title":{},"body":{"license.html":{}}}],["shards",{"_index":243,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1508,"title":{},"body":{"license.html":{}}}],["short",{"_index":332,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/PaperDto.html":{}}}],["show",{"_index":720,"title":{},"body":{"classes/PaperDto.html":{}}}],["showing",{"_index":597,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["shows",{"_index":256,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageMetaDto.html":{}}}],["similar",{"_index":1154,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["size",{"_index":195,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":273,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1357,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1734,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1691,"title":{},"body":{"license.html":{}}}],["sort",{"_index":145,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["sorted",{"_index":163,"title":{},"body":{"classes/EsHitDto.html":{}}}],["sorting",{"_index":216,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":858,"title":{},"body":{"interfaces/SearchInfo.html":{},"license.html":{}}}],["specific",{"_index":132,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":131,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":1190,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["specifies",{"_index":187,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["src/.../app.module.ts",{"_index":1781,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1312,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1314,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1311,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../page.dto.ts",{"_index":1776,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../paper.dto.ts",{"_index":1777,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1780,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../request.dto.ts",{"_index":1778,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1782,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1779,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1313,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application",{"_index":864,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/application/controller/health.controller.ts",{"_index":293,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":299,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":744,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:41",{"_index":757,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:74",{"_index":764,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":962,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":966,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain",{"_index":785,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/domain/dtos",{"_index":907,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/domain/dtos/elastic/es",{"_index":137,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page",{"_index":662,"title":{},"body":{"classes/PageMetaDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":498,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:27",{"_index":505,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:37",{"_index":502,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts",{"_index":678,"title":{},"body":{"classes/PaperDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/paper.dto.ts:23",{"_index":698,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:34",{"_index":730,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:45",{"_index":685,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:56",{"_index":732,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:67",{"_index":719,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:78",{"_index":724,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:87",{"_index":690,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/request.dto",{"_index":784,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/domain/dtos/request.dto.ts",{"_index":818,"title":{},"body":{"classes/RequestDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/request.dto.ts:26",{"_index":827,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/request.dto.ts:37",{"_index":821,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/search",{"_index":777,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/es",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1277,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1303,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1297,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":1306,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1307,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/elastic/es",{"_index":114,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/http",{"_index":323,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/page",{"_index":656,"title":{},"body":{"interfaces/PageMeta.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/search",{"_index":855,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":336,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":833,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":842,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":838,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":971,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":972,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":391,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":415,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":402,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":409,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor",{"_index":775,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":518,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:16",{"_index":801,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:169",{"_index":561,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:174",{"_index":556,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:179",{"_index":564,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:186",{"_index":547,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:206",{"_index":535,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:29",{"_index":802,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:30",{"_index":809,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:33",{"_index":807,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:40",{"_index":804,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:41",{"_index":813,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:44",{"_index":811,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:51",{"_index":803,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:52",{"_index":817,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:55",{"_index":815,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:63",{"_index":805,"title":{},"body":{"classes/PrevSearch.html":{}}}],["src/core/interceptors/page.interceptor.ts:73",{"_index":529,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:89",{"_index":552,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":317,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":356,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":445,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":919,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":361,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":446,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":479,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":457,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":459,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":473,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":466,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":477,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":463,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":475,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":469,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":892,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:12",{"_index":896,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:23",{"_index":906,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:28",{"_index":905,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:35",{"_index":904,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:70",{"_index":900,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":933,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":863,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":980,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sssss",{"_index":175,"title":{},"body":{"classes/EsHitDto.html":{}}}],["st",{"_index":704,"title":{},"body":{"classes/PaperDto.html":{}}}],["stages",{"_index":1380,"title":{},"body":{"index.html":{}}}],["start",{"_index":410,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["start:{dev",{"_index":1389,"title":{},"body":{"index.html":{}}}],["started",{"_index":1338,"title":{"index.html":{},"license.html":{}},"body":{}}],["starting",{"_index":859,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["starttime",{"_index":408,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":1166,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1597,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1655,"title":{},"body":{"license.html":{}}}],["statements",{"_index":958,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":448,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1634,"title":{},"body":{"license.html":{}}}],["status",{"_index":261,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1452,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":438,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1717,"title":{},"body":{"license.html":{}}}],["storage",{"_index":533,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["stored",{"_index":140,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{}}}],["stores",{"_index":202,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["string",{"_index":125,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["string.interface",{"_index":191,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["string.interface.ts",{"_index":116,"title":{},"body":{"interfaces/EqQueryString.html":{},"coverage.html":{}}}],["structure",{"_index":117,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/PageMeta.html":{},"classes/PaperDto.html":{},"interfaces/SearchInfo.html":{}}}],["subject",{"_index":1580,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1593,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1657,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1555,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1553,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":647,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["subsequently",{"_index":1577,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1299,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":272,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1499,"title":{},"body":{"license.html":{}}}],["summary",{"_index":680,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["super(httpexception.createbody(data",{"_index":349,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1308,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1664,"title":{},"body":{"license.html":{}}}],["support",{"_index":1251,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":1184,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1446,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1766,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1456,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1278,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["syntax",{"_index":1131,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1564,"title":{},"body":{"license.html":{}}}],["t",{"_index":728,"title":{},"body":{"classes/PaperDto.html":{}}}],["table",{"_index":983,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":982,"title":{},"body":{"coverage.html":{}}}],["tags",{"_index":681,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["take",{"_index":568,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["taken",{"_index":951,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1320,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":418,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1294,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":1114,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1265,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":1124,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ten",{"_index":739,"title":{},"body":{"classes/PaperDto.html":{}}}],["terminate",{"_index":1622,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":320,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1475,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1467,"title":{},"body":{"index.html":{}}}],["test",{"_index":1371,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1388,"title":{},"body":{"index.html":{}}}],["tested",{"_index":1178,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":701,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1701,"title":{},"body":{"license.html":{}}}],["there's",{"_index":664,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["there\\'s",{"_index":677,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["thereof",{"_index":1549,"title":{},"body":{"license.html":{}}}],["third",{"_index":1078,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.context",{"_index":485,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":515,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.es_query",{"_index":829,"title":{},"body":{"classes/RequestDto.html":{}}}],["this.getdescription(status",{"_index":372,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":370,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.gettype(status",{"_index":390,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://${this.es_ip}:${this.es_port}/_pit",{"_index":652,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.httpservice.get(`http://${this.es_ip}:${this.es_port}/_search",{"_index":912,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://${this.es_ip}:${this.es_port}/papers/_pit?keep_alive=${alive+unit",{"_index":643,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.limit",{"_index":883,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":483,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":492,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":488,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":439,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":427,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":487,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":493,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":491,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":425,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":516,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":884,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.page",{"_index":882,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.pit",{"_index":229,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevpage",{"_index":585,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch",{"_index":602,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch._pit",{"_index":616,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch._prevpage",{"_index":624,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch._tiebreaker",{"_index":618,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.prevsearch.isset",{"_index":614,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["this.query",{"_index":228,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":849,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.search_after",{"_index":231,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.searchservice.findbycontext(request.es_query).then",{"_index":794,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":798,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.size",{"_index":226,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.sort",{"_index":230,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.statuscode",{"_index":891,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["this.tiebreaker",{"_index":584,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["those",{"_index":1602,"title":{},"body":{"license.html":{}}}],["through",{"_index":1463,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{}}}],["throwed",{"_index":1329,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1336,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":1228,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["tiebreaker",{"_index":589,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["time",{"_index":180,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"miscellaneous/enumerations.html":{}}}],["time.enum",{"_index":578,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["time.enum.ts",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timed",{"_index":257,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":238,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1270,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1288,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":682,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["todo",{"_index":1352,"title":{},"body":{"index.html":{}}}],["tony",{"_index":717,"title":{},"body":{"classes/PaperDto.html":{}}}],["too_many_requests",{"_index":1239,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":239,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["topic",{"_index":683,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["topics/fields",{"_index":721,"title":{},"body":{"classes/PaperDto.html":{}}}],["tort",{"_index":1702,"title":{},"body":{"license.html":{}}}],["total",{"_index":270,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"miscellaneous/variables.html":{}}}],["touching",{"_index":723,"title":{},"body":{"classes/PaperDto.html":{}}}],["tracking",{"_index":1566,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1670,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1638,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1669,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":1205,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1379,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1600,"title":{},"body":{"license.html":{}}}],["transform",{"_index":926,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1522,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":930,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1523,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PrevSearch.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":540,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["try",{"_index":642,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/PageMeta.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1527,"title":{},"body":{"license.html":{}}}],["unable",{"_index":1231,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":1200,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":1132,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1296,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/PrevSearch.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["undefined})@apiresponse({status",{"_index":761,"title":{},"body":{"controllers/PapersController.html":{}}}],["under",{"_index":1115,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":1128,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1246,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uninitialized",{"_index":583,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["union",{"_index":1489,"title":{},"body":{"license.html":{}}}],["unique",{"_index":692,"title":{},"body":{"classes/PaperDto.html":{}}}],["unit",{"_index":545,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{}}}],["units",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["university",{"_index":713,"title":{},"body":{"classes/PaperDto.html":{}}}],["unknown",{"_index":225,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/HttpResponseService.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"interfaces/SearchInfo.html":{}}}],["unless",{"_index":1659,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":1221,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":1219,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1291,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":1183,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":315,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":1084,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1259,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":1107,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":1181,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":1111,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":436,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":331,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1395,"title":{},"body":{"index.html":{}}}],["use",{"_index":1110,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":244,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["useinterceptors",{"_index":773,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":791,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":843,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":852,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":902,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1414,"title":{},"body":{"index.html":{}}}],["util",{"_index":482,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":760,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":976,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1331,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":977,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1334,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":921,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":931,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":918,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":923,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":275,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1191,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":963,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":920,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1558,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":454,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":474,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":786,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":1087,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":934,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":932,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":411,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PrevSearch.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":1164,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":1083,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":455,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":476,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":478,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1684,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1679,"title":{},"body":{"license.html":{}}}],["way",{"_index":1415,"title":{},"body":{"index.html":{}}}],["ways",{"_index":1383,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1646,"title":{},"body":{"license.html":{}}}],["whether",{"_index":598,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PrevSearch.html":{},"license.html":{}}}],["whole",{"_index":1542,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":946,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":1162,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":1173,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1528,"title":{},"body":{"license.html":{}}}],["works",{"_index":1535,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1584,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1575,"title":{},"body":{"license.html":{}}}],["written",{"_index":1559,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1333,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":467,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1758,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
- "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EqQueryString.html":{"url":"interfaces/EqQueryString.html","title":"interface - EqQueryString","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EqQueryString\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-query-string.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n default_field\n \n \n \n Optional\n \n fields\n \n \n \n \n query\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n default_field\n \n \n \n \n \n \n \n \n default_field: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Default field to perform a search on, when\nno field is specified for the query\n\n \n \n \n \n \n \n \n \n \n fields\n \n \n \n \n \n \n \n \n fields: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Specific fields, to perform a search on\nCan't be specified with 'default_field'\n\n \n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n \n \n query: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Query string, that provides the data, to perform a search on\n\n \n \n \n \n \n \n\n\n \n export interface EqQueryString {\n /**\n * Query string, that provides the data, to perform a search on\n */\n query: string;\n\n /**\n * Default field to perform a search on, when \n * no field is specified for the query\n */\n default_field?: string;\n\n /**\n * Specific fields, to perform a search on\n * Can't be specified with 'default_field'\n */\n fields?: string[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsHitDto.html":{"url":"classes/EsHitDto.html","title":"class - EsHitDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsHitDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n _score\n \n \n _source\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n _score\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({description: 'Relevance score', example: 1.2355})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:45\n \n \n\n \n \n Hit relevance score\n\n \n \n\n \n \n \n \n \n \n \n \n _source\n \n \n \n \n \n \n Type : PaperDto\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@ApiProperty({description: 'Actual document (paper) stored in Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:25\n \n \n\n \n \n Actual document stored in Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({description: 'List of objects that represents how the hit was sorted', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:35\n \n \n\n \n \n List of objects that represents how the hit was sorted\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsNotEmpty, IsOptional } from \"class-validator\";\nimport { PaperDto } from \"../paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['sort', '_source', '_score'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\n@ApiExtraModels()\nexport class EsHitDto {\n /**\n * Actual document stored in Elasticsearch\n */\n @IsNotEmpty()\n @ApiProperty({\n description: 'Actual document (paper) stored in Elasticsearch',\n example: {\n id: 'sssss'\n }\n })\n _source: PaperDto;\n \n /**\n * List of objects that represents how the hit was sorted\n */\n @IsOptional()\n @ApiPropertyOptional({\n description: 'List of objects that represents how the hit was sorted',\n example: {}\n })\n sort?: [];\n\n /**\n * Hit relevance score\n */\n @IsOptional()\n @ApiPropertyOptional({\n description: 'Relevance score',\n example: 1.2355\n })\n _score?: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsPit.html":{"url":"interfaces/EsPit.html","title":"interface - EsPit","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsPit\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-pit.interface.ts\n \n\n\n \n Description\n \n \n Structure of PIT (Point-In-Time) object\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n PIT ID\n\n \n \n \n \n \n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n keep_alive: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Time to live of the PIT\n\n \n \n \n \n \n \n\n\n \n export interface EsPit {\n /**\n * PIT ID\n */\n id: string;\n\n /**\n * Time to live of the PIT\n */\n keep_alive: string;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsQuery.html":{"url":"interfaces/EsQuery.html","title":"interface - EsQuery","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsQuery\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-query.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n query_string: EqQueryString\n\n \n \n\n\n \n \n Type : EqQueryString\n\n \n \n\n\n\n\n\n \n \n Query string object, that specifies certain search conditions\n\n \n \n \n \n \n \n\n\n \n import { EqQueryString } from \"./es-query-string.interface\";\n\n/**\n * Structure of page metadata\n */\nexport interface EsQuery {\n /**\n * Query string object, that specifies certain search conditions\n */\n query_string: EqQueryString;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch query DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n pit\n \n \n query\n \n \n Optional\n search_after\n \n \n Optional\n size\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:71\n \n \n\n \n \n Constructs an empty object\n\n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiPropertyOptional({description: 'PIT object', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:49\n \n \n\n \n \n Object, that stores PIT ID and time alive\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : EsQuery\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsObject()@ApiProperty({description: 'Search query object passed to Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:38\n \n \n\n \n \n The search query object passed to Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n search_after\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiPropertyOptional({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:71\n \n \n\n \n \n Pagination info\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsDefined()@IsNumber()@IsInt()@ApiPropertyOptional({description: 'Maximum number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:27\n \n \n\n \n \n Maximum number of elements returned by Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiPropertyOptional({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:60\n \n \n\n \n \n Sorting info\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty, IsNumber, IsObject, IsOptional } from \"class-validator\";\nimport { EsPit } from \"../../interfaces/elastic/es-pit.interface\";\nimport { EsQuery } from \"../../interfaces/elastic/es-query.interface\"\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch query DTO\n */\n @ApiExtraModels()\n export class EsQueryDto {\n /**\n * Maximum number of elements returned by Elasticsearch\n */\n @IsOptional()\n @IsDefined()\n @IsNumber()\n @IsInt()\n @ApiPropertyOptional({\n description: 'Maximum number of elements returned by Elasticsearch',\n example: 30\n })\n size?: number;\n \n /**\n * The search query object passed to Elasticsearch\n */\n @IsDefined()\n @IsObject()\n @ApiProperty({\n description: 'Search query object passed to Elasticsearch',\n example: {},\n })\n query: EsQuery;\n\n /**\n * Object, that stores PIT ID and time alive\n */\n @IsOptional()\n @IsObject()\n @ApiPropertyOptional({\n description: 'PIT object',\n example: {}\n })\n pit?: EsPit;\n\n /**\n * Sorting info\n */\n @IsOptional()\n @IsArray()\n @ApiPropertyOptional({\n description: '',\n example: []\n })\n sort?: unknown[];\n\n /**\n * Pagination info\n */\n @IsOptional()\n @IsArray()\n @ApiPropertyOptional({\n description: '',\n example: []\n })\n search_after?: unknown[];\n\n /**\n * Constructs an empty object\n */\n constructor() {\n this.size = 10;\n this.query = undefined;\n this.pit = undefined;\n this.sort = undefined;\n this.search_after = undefined;\n }\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n Optional\n pit_id\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'Contains a count of Elasticsearch shards used to process the request', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:56\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : EsResponseHits\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'Contains returned documents and metadata', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:80\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n pit_id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsString()@IsOptional()@ApiPropertyOptional({description: 'Contains PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:91\n \n \n\n \n \n ID of the PIT used in the search\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'Shows if request timed out before completion', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:39\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'The time that it took Elasticsearch to process the query', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:26\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseHits } from \"../../interfaces/elastic/es-response-hits.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'The time that it took Elasticsearch to process the query',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'Shows if request timed out before completion',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'Contains a count of Elasticsearch shards used to process the request',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'Contains returned documents and metadata',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {},\n fields: {}\n }],\n }\n })\n hits: EsResponseHits;\n\n /**\n * ID of the PIT used in the search\n */\n @IsString()\n @IsOptional()\n @ApiPropertyOptional({\n description: 'Contains PIT ID used to search for results',\n example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='\n })\n pit_id?: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsResponseHits.html":{"url":"interfaces/EsResponseHits.html","title":"interface - EsResponseHits","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsResponseHits\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-response-hits.interface.ts\n \n\n\n \n Description\n \n \n Structure of 'hits' object of Elasticsearch response\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hits\n \n \n \n Optional\n \n max_score\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hits\n \n \n \n \n \n \n \n \n hits: EsHitDto[]\n\n \n \n\n\n \n \n Type : EsHitDto[]\n\n \n \n\n\n\n\n\n \n \n Array of search results\n\n \n \n \n \n \n \n \n \n \n max_score\n \n \n \n \n \n \n \n \n max_score: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Maximum score amongst all search results\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: object\n\n \n \n\n\n \n \n Type : object\n\n \n \n\n\n\n\n\n \n \n Object containing info about hits\n\n \n \n \n \n \n \n\n\n \n import { EsHitDto } from \"../../dtos/elastic/es-hit.dto\";\n\n/**\n * Structure of 'hits' object of Elasticsearch response\n */\nexport interface EsResponseHits {\n /**\n * Object containing info about hits\n */\n total: object;\n\n /**\n * Maximum score amongst all search results\n */\n max_score?: number;\n\n /**\n * Array of search results\n */\n hits: EsHitDto[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: PaperDto[], meta: PageMeta)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n PaperDto[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMeta\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : PaperDto[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data (papers) the page contains', isArray: true, type: PaperDto})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:27\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMetaDto\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page'})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:37\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, PartialType } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { Order } from \"../enums\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\nimport { PageMetaDto } from \"./page-meta.dto\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\n@ApiExtraModels()\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data (papers) the page contains',\n isArray: true,\n type: PaperDto\n })\n readonly data: PaperDto[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n // example: {},\n \n })\n readonly meta: PageMetaDto;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: PaperDto[], meta: PageMeta) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n Private\n Readonly\n ES_PORT\n \n \n Private\n prevSearch\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Public\n Async\n getPIT\n \n \n Async\n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:73\n \n \n\n \n \n Injects needed dependencies and instantiates the storage object\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:206\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number, unit: EsTime)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:186\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n \n\n \n , amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n\n \n \n \n unit\n \n EsTime\n \n\n \n No\n \n\n \n EsTime.min\n \n\n \n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n PIT object containing PIT ID and keep_alive value\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n intercept\n \n \n \n \n \n \n \n intercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:89\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n \n \n \n \n Default value : process.env.ES_CONTAINER_NAME\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:174\n \n \n\n \n \n Elastichsearch IP address\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:169\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n prevSearch\n \n \n \n \n \n \n Type : PrevSearch\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:179\n \n \n\n \n \n Info about previously completed search\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { Observable, map, take } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/elastic/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/elastic/es-pit.interface\";\n\n/**\n * Previous search data storage\n */\nclass PrevSearch {\n /**\n * Constructs an uninitialized object\n */\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n /**\n * PIT object of the previous search\n */\n private pit: EsPit;\n set _pit(pit: EsPit) {\n this.pit = pit;\n }\n get _pit(): EsPit {\n return this.pit;\n }\n\n /**\n * Tiebreaker and sort parameters\n */\n private tiebreaker: unknown[];\n set _tiebreaker(tiebreaker: unknown[]) {\n this.tiebreaker = tiebreaker;\n }\n get _tiebreaker(): unknown[] {\n return this.tiebreaker;\n }\n\n /**\n * Number of the previous page\n */\n private prevPage: number;\n set _prevPage(page: number) {\n this.prevPage = page;\n }\n get _prevPage(): number {\n return this.prevPage;\n }\n\n /**\n * Checks if there was the search before current one\n * @returns true/false, showing whether or not there was another search before\n */\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Injects needed dependencies and instantiates the storage object\n * @param httpService \n * @param searchService \n */\n constructor(private readonly httpService: HttpService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch._pit;\n request.es_query.search_after = this.prevSearch._tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : +query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n pagesize: !query?.limit ? 10 : query.limit,\n hasNext: undefined,\n hasPrev: undefined,\n }; \n meta.hasNext = meta.pagenum * meta.pagesize el._source);\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Elastichsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsPit) => {\n res.keep_alive = alive + unit;\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/PageMeta.html":{"url":"interfaces/PageMeta.html","title":"interface - PageMeta","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n PageMeta\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n hasPrev\n \n \n \n \n order\n \n \n \n \n pagenum\n \n \n \n \n pagesize\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hasNext\n \n \n \n \n \n \n \n \n hasNext: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the next page\n\n \n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n \n \n hasPrev: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Flag that indicates presence of the previous page\n\n \n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n \n \n order: Order\n\n \n \n\n\n \n \n Type : Order\n\n \n \n\n\n\n\n\n \n \n Order of the elements on the page\n\n \n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n \n \n pagenum: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of the page\n\n \n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n \n \n pagesize: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Number of elements on the page\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Total search results\n\n \n \n \n \n \n \n\n\n \n import { Order } from \"../enums/page-order.enum\";\n\n/**\n * Structure of page metadata\n */\nexport interface PageMeta {\n /**\n * Total search results\n */\n total: number;\n\n /**\n * Number of the page\n */\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n order: Order;\n\n /**\n * Flag that indicates presence of the next page\n */\n hasNext: boolean;\n\n /**\n * Flag that indicates presence of the previous page\n */ \n hasPrev: boolean;\n\n /**\n * Number of elements on the page\n */\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageMetaDto.html":{"url":"classes/PageMetaDto.html","title":"class - PageMetaDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageMetaDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n \n Implements\n \n \n PageMeta\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n hasNext\n \n \n hasPrev\n \n \n order\n \n \n pagenum\n \n \n pagesize\n \n \n total\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n hasNext\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Flag, that shows if there's a page following the current one', example: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:53\n \n \n\n \n \n Flag, that shows if there's a page following the current one\n\n \n \n\n \n \n \n \n \n \n \n \n hasPrev\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Flag, that shows if there's a page preceding the current one', example: true})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:62\n \n \n\n \n \n Flag, that shows if there's a page preceding the current one\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : Order\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Order of the elements on the page', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:44\n \n \n\n \n \n Order of the elements on the page\n\n \n \n\n \n \n \n \n \n \n \n \n pagenum\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Current page number', minimum: 1, example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:35\n \n \n\n \n \n Current page number\n\n \n \n\n \n \n \n \n \n \n \n \n pagesize\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Maximum number of elements on the page', minimum: 1, example: 20})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:72\n \n \n\n \n \n Maximum number of elements on the page\n\n \n \n\n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'Total number of hits (results) acquired from the search', example: 314})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:25\n \n \n\n \n \n Total number of hits (results) acquired from the search\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, PartialType } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { Order } from \"../enums\";\nimport { PageMeta } from \"../interfaces/page-meta.interface\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize'];\n\n/**\n * Page model for pagination\n */\n@ApiExtraModels()\nexport class PageMetaDto implements PageMeta {\n /**\n * Total number of hits (results) acquired from the search\n */\n @IsArray()\n @ApiProperty({\n description: 'Total number of hits (results) acquired from the search',\n example: 314\n })\n total: number;\n\n /**\n * Current page number\n */\n @ApiProperty({\n description: 'Current page number',\n minimum: 1,\n example: 3\n })\n pagenum: number;\n\n /**\n * Order of the elements on the page\n */\n @ApiProperty({\n description: 'Order of the elements on the page',\n example: Order.DESC\n })\n order: Order;\n\n /**\n * Flag, that shows if there's a page following the current one\n */\n @ApiProperty({\n description: 'Flag, that shows if there\\'s a page following the current one',\n example: true\n })\n hasNext: boolean;\n\n /**\n * Flag, that shows if there's a page preceding the current one\n */\n @ApiProperty({\n description: 'Flag, that shows if there\\'s a page preceding the current one',\n example: true\n })\n hasPrev: boolean;\n\n /**\n * Maximum number of elements on the page\n */\n @ApiProperty({\n description: 'Maximum number of elements on the page',\n minimum: 1,\n example: 20\n })\n pagesize: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PaperDto.html":{"url":"classes/PaperDto.html","title":"class - PaperDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PaperDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/paper.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n authors\n \n \n content\n \n \n id\n \n \n summary\n \n \n tags\n \n \n title\n \n \n topic\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n authors\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of authors of the paper', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:45\n \n \n\n \n \n List of authors of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n content\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Contents of the paper presented in Markdown (.md) format', example: '...'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:87\n \n \n\n \n \n Contents of the paper [Markdown]\n\n \n \n\n \n \n \n \n \n \n \n \n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Unique ID of the paper', example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:23\n \n \n\n \n \n Unique ID of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n summary\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Summary of the paper. May be a short excerpt from the main text', example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:67\n \n \n\n \n \n Summary of the paper. May be a short excerpt from the main text.\n\n \n \n\n \n \n \n \n \n \n \n \n tags\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of tags, that show the certain topics/fields of knowledge paper is touching', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:78\n \n \n\n \n \n List of tags, that show the certain topics/fields of knowledge paper is touching\n\n \n \n\n \n \n \n \n \n \n \n \n title\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Title of the paper', example: 'Mucosal associated invariant T cell'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:34\n \n \n\n \n \n Title of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n topic\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Topic of the paper', example: 'Physics'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:56\n \n \n\n \n \n Topic of the paper\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\n@ApiExtraModels()\nexport class PaperDto {\n /**\n * Unique ID of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Unique ID of the paper',\n example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'\n })\n id: string;\n \n /**\n * Title of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Title of the paper',\n example: 'Mucosal associated invariant T cell',\n })\n title: string;\n\n /**\n * List of authors of the paper\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of authors of the paper',\n example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']\n })\n authors: string[];\n\n /**\n * Topic of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Topic of the paper',\n example: 'Physics'\n })\n topic: string;\n\n /**\n * Summary of the paper. May be a short excerpt from the main text.\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Summary of the paper. May be a short excerpt from the main text',\n example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'\n })\n summary: string;\n\n /**\n * List of tags, that show the certain topics/fields of knowledge paper is touching\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',\n example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']\n })\n tags: string[];\n\n /**\n * Contents of the paper [Markdown]\n */\n @ApiProperty({\n description: 'Contents of the paper presented in Markdown (.md) format',\n example: '...'\n })\n content: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(request: RequestDto)\n \n \n\n \n \n Decorators : \n \n @ApiTags('Search')@ApiOperation({summary: 'Finds papers by context based on the query'})@ApiResponse({status: 200, description: 'Returns back a page with acquired papers', type: PageDto})@ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:41\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n request\n \n RequestDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiTags('Search')@ApiOperation({summary: 'Finds paper by its UUID', tags: undefined})@ApiResponse({status: 200, description: 'Returns back a paper', type: PaperDto})@ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'})@Get(':uuid')@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:74\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : object\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, GatewayTimeoutException, Get, HttpCode, HttpException, Next, Param, ParseUUIDPipe, Put, Query, Req, Res, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { PageInterceptor } from \"src/core/interceptors/page.interceptor\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\nimport { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from \"@nestjs/swagger\";\nimport { RequestDto } from \"src/core/domain/dtos/request.dto\";\nimport { EsHitDto, EsResponseDto, PageDto, PaperDto } from \"src/core/domain\";\n\n/**\n * /papers/ route controller\n */\n@Controller({\n version: '1',\n path: 'papers',\n})\n@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiTags('Search')\n @ApiOperation({ \n summary: 'Finds papers by context based on the query',\n })\n @ApiResponse({\n status: 200,\n description: 'Returns back a page with acquired papers',\n type: PageDto\n })\n @ApiGatewayTimeoutResponse({\n description: 'Elasticsearch request timed out'\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Req() request: RequestDto): object {\n return this.searchService.findByContext(request.es_query).then(\n (response: SearchResultDto) => {\n return response.data;\n },\n (error) => {\n throw error;\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiTags('Search')\n @ApiOperation({ \n summary: 'Finds paper by its UUID',\n tags: ['Search']\n })\n @ApiResponse({\n status: 200,\n description: 'Returns back a paper',\n type: PaperDto\n })\n @ApiGatewayTimeoutResponse({\n description: 'Elasticsearch request timed out'\n })\n @Get(':uuid')\n // @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): object {\n return this.searchService.findByID(uuid).then(\n (response: SearchResultDto) => {\n return response.data.hits.hits[0]._source;\n },\n (error) => {\n throw error;\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PrevSearch.html":{"url":"classes/PrevSearch.html","title":"class - PrevSearch","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PrevSearch\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Previous search data storage\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n pit\n \n \n Private\n prevPage\n \n \n Private\n tiebreaker\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Public\n isSet\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n _pit\n \n \n _tiebreaker\n \n \n _prevPage\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:16\n \n \n\n \n \n Constructs an uninitialized object\n\n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:29\n \n \n\n \n \n PIT object of the previous search\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n prevPage\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:51\n \n \n\n \n \n Number of the previous page\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n tiebreaker\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:40\n \n \n\n \n \n Tiebreaker and sort parameters\n\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Public\n isSet\n \n \n \n \n \n \n \n isSet()\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:63\n \n \n\n\n \n \n Checks if there was the search before current one\n\n\n \n \n \n Returns : boolean\n\n \n \n true/false, showing whether or not there was another search before\n\n \n \n \n \n \n\n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n _pit\n \n \n\n \n \n get_pit()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:33\n \n \n\n \n \n set_pit(pit: EsPit)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:30\n \n \n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n pit\n \n \n EsPit\n \n \n \n No\n \n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n _tiebreaker\n \n \n\n \n \n get_tiebreaker()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:44\n \n \n\n \n \n set_tiebreaker(tiebreaker: [])\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:41\n \n \n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n tiebreaker\n \n \n []\n \n \n \n No\n \n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n _prevPage\n \n \n\n \n \n get_prevPage()\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:55\n \n \n\n \n \n set_prevPage(page: number)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:52\n \n \n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CallHandler, ExecutionContext, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { Observable, map, take } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/elastic/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order } from \"../domain/enums/page-order.enum\";\nimport { PageMeta } from \"../domain/interfaces\";\nimport { EsPit } from \"../domain/interfaces/elastic/es-pit.interface\";\n\n/**\n * Previous search data storage\n */\nclass PrevSearch {\n /**\n * Constructs an uninitialized object\n */\n constructor() {\n this.pit = undefined;\n this.tiebreaker = undefined;\n this.prevPage = -1;\n }\n\n /**\n * PIT object of the previous search\n */\n private pit: EsPit;\n set _pit(pit: EsPit) {\n this.pit = pit;\n }\n get _pit(): EsPit {\n return this.pit;\n }\n\n /**\n * Tiebreaker and sort parameters\n */\n private tiebreaker: unknown[];\n set _tiebreaker(tiebreaker: unknown[]) {\n this.tiebreaker = tiebreaker;\n }\n get _tiebreaker(): unknown[] {\n return this.tiebreaker;\n }\n\n /**\n * Number of the previous page\n */\n private prevPage: number;\n set _prevPage(page: number) {\n this.prevPage = page;\n }\n get _prevPage(): number {\n return this.prevPage;\n }\n\n /**\n * Checks if there was the search before current one\n * @returns true/false, showing whether or not there was another search before\n */\n public isSet(): boolean {\n if (this.pit && this.tiebreaker && this.prevPage !== -1) return true;\n return false;\n }\n}\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Injects needed dependencies and instantiates the storage object\n * @param httpService \n * @param searchService \n */\n constructor(private readonly httpService: HttpService) {\n this.prevSearch = new PrevSearch;\n }\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context \n * @param next \n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n let request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n let reverse: boolean = false;\n\n request.es_query = new EsQueryDto();\n\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.sort = [\n { _score: { order: !query?.order ? Order.DESC : query.order } },\n { _shard_doc: 'desc' }\n ];\n\n if (this.prevSearch.isSet()) {\n request.es_query.pit = this.prevSearch._pit;\n request.es_query.search_after = this.prevSearch._tiebreaker;\n\n let limit = !query?.limit ? 10 : query.limit;\n request.es_query.size = limit * Math.abs(query.page - this.prevSearch._prevPage);\n \n if (query.page {\n // Setting the page meta-data\n let meta: PageMeta = {\n total: res.hits.total.value,\n pagenum: !query?.page ? 1 : +query.page,\n order: query?.order?.toUpperCase() === Order.ASC ? Order.ASC : Order.DESC,\n pagesize: !query?.limit ? 10 : query.limit,\n hasNext: undefined,\n hasPrev: undefined,\n }; \n meta.hasNext = meta.pagenum * meta.pagesize el._source);\n\n // Return the page\n return new PageDto(data, meta);\n })\n );\n }\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Elastichsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n\n /**\n * Info about previously completed search\n */\n private prevSearch: PrevSearch;\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsPit) => {\n res.keep_alive = alive + unit;\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestDto.html":{"url":"classes/RequestDto.html","title":"class - RequestDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/request.dto.ts\n \n\n\n \n Description\n \n \n Request object, which contains query parameters and Elasticsearch query object\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n es_query\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: SearchQueryDto, es_query: EsQueryDto)\n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n SearchQueryDto\n \n \n \n No\n \n \n \n \n es_query\n \n \n EsQueryDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n es_query\n \n \n \n \n \n \n Type : EsQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({type: EsQueryDto, description: 'Elasticsearch query body constructed by pagination mechanism', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:37\n \n \n\n \n \n Elasticsearch query object\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : SearchQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@ApiProperty({type: SearchQueryDto, description: 'Actual query with parameters acquired from the request', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:26\n \n \n\n \n \n Query parameters object\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsDefined, IsNotEmpty, IsOptional } from \"class-validator\";\nimport { EsQueryDto } from \"./elastic/es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'es_query'];\n\n/**\n * Request object, which contains query parameters and Elasticsearch query object\n */\n@ApiExtraModels()\nexport class RequestDto {\n /**\n * Query parameters object\n */\n @IsDefined()\n @IsNotEmpty()\n @ApiProperty({\n type: SearchQueryDto,\n description: 'Actual query with parameters acquired from the request',\n example: {}\n })\n query: SearchQueryDto;\n \n /**\n * Elasticsearch query object\n */\n @IsOptional()\n @ApiPropertyOptional({\n type: EsQueryDto,\n description: 'Elasticsearch query body constructed by pagination mechanism',\n example: {},\n })\n es_query?: EsQueryDto;\n\n /**\n * Constructs an object with provided parameters\n * @param query\n * @param es_query\n */\n constructor(query: SearchQueryDto, es_query: EsQueryDto) {\n this.query = query;\n this.es_query = es_query;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchInfo.html":{"url":"interfaces/SearchInfo.html","title":"interface - SearchInfo","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchInfo\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n\n\n \n Description\n \n \n Structure of search metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n pit\n \n \n \n \n \n \n \n \n pit: EsPit\n\n \n \n\n\n \n \n Type : EsPit\n\n \n \n\n\n\n\n\n \n \n Previous search saved PIT\n\n \n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n tiebreaker: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n Special tiebreaker used by Elasticsearch.\nIndicates the starting point of next search\n\n \n \n \n \n \n \n\n\n \n import { EsPit } from \"./elastic/es-pit.interface\";\n\n/**\n * Structure of search metadata\n */\nexport interface SearchInfo {\n /**\n * Previous search saved PIT\n */\n pit: EsPit;\n\n /**\n * Special tiebreaker used by Elasticsearch.\n * Indicates the starting point of next search\n */\n tiebreaker: unknown[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n Search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { Module } from \"@nestjs/common\";\nimport { PapersController } from \"src/application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\n\n/**\n * Search module\n */\n@Module({\n imports: [\n HttpModule,\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n limit\n \n \n order\n \n \n page\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:59\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiProperty({description: 'limit', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:48\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiProperty({description: 'order', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:59\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n page\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'page', example: 3})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:37\n \n \n\n \n \n Page number to display.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiProperty({description: 'query', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:25\n \n \n\n \n \n Given query string to perform the\nsearch on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class SearchQueryDto {\n /**\n * Given query string to perform the\n * search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'query',\n example: 'Particle Accelerator'\n })\n query: string;\n \n /**\n * Page number to display.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'page',\n example: 3,\n })\n page: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiProperty({\n description: 'limit',\n example: 10,\n })\n limit: number;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsString()\n @ApiProperty({\n description: 'order',\n example: 'asc',\n })\n order: string;\n\n /**\n * Constructs an object with provided parameters\n * @param query \n * @param page \n * @param limit \n * @param order \n */\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.page = page;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: EsResponseDto)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:42\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n EsResponseDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : EsResponseDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:42\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:25\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty } from \"class-validator\";\nimport { EsResponseDto } from \"./elastic/es-response.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n took: 1,\n timed_out: false,\n _shards: {},\n hits: {}\n },\n })\n data: EsResponseDto;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: EsResponseDto) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:12\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(es_query: EsQueryDto)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:70\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n es_query\n \n EsQueryDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:35\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n \n \n \n \n Default value : process.env.ES_CONTAINER_NAME\n \n \n \n \n Defined in src/core/services/common/search.service.ts:28\n \n \n\n \n \n Elasticsearch IP address\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:23\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { GatewayTimeoutException, HttpException, Injectable } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto } from \"src/core/domain/dtos\";\nimport { EsQueryDto } from \"src/core/domain/dtos/elastic/es-query.dto\";\nimport { SearchResultDto } from \"src/core/domain/dtos/search-result.dto\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Elasticsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let ESQ: EsQueryDto = new EsQueryDto;\n\n ESQ.size = 1;\n ESQ.query = {\n query_string: {\n query: ('id:' + uuid),\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {\n data: ESQ,\n headers: {'Content-Type': 'application/json'},\n }))\n ?.pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new GatewayTimeoutException('Elasticsearch Timed Out'));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query, \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(es_query: EsQueryDto): Promise {\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n ?.pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new GatewayTimeoutException('Elasticsearch Timed Out'));\n }\n\n resolve(new SearchResultDto(200, res));\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n class\n EsHitDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n class\n EsQueryDto\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n class\n PageMetaDto\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n class\n PaperDto\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n class\n RequestDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-pit.interface.ts\n \n interface\n EsPit\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-query-string.interface.ts\n \n interface\n EqQueryString\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-query.interface.ts\n \n interface\n EsQuery\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-response-hits.interface.ts\n \n interface\n EsResponseHits\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/page-meta.interface.ts\n \n interface\n PageMeta\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n interface\n SearchInfo\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n class\n PrevSearch\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (6/6)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n EsTime   (src/.../es-time.enum.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/es-time.enum.ts\n \n \n \n \n \n \n EsTime\n \n \n \n \n Elasticsearch time-units\n\n \n \n \n \n  days\n \n \n \n \n Value : d\n \n \n \n \n  hours\n \n \n \n \n Value : h\n \n \n \n \n  min\n \n \n \n \n Value : m\n \n \n \n \n  sec\n \n \n \n \n Value : s\n \n \n \n \n  ms\n \n \n \n \n Value : ms\n \n \n \n \n  us\n \n \n \n \n Value : micros\n \n \n \n \n  ns\n \n \n \n \n Value : nanos\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n Page display order\n\n \n \n \n \n  ASC\n \n \n \n \n Value : asc\n \n \n \n \n  DESC\n \n \n \n \n Value : desc\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 12 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 9 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../page-meta.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../paper.dto.ts)\n \n \n allowedProperties   (src/.../request.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n allowedProperties   (src/.../es-hit.dto.ts)\n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/page-meta.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/paper.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/request.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'es_query']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['sort', '_source', '_score']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
+ "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.263,1,2.395]],["body/modules/AppModule.html",[0,2.192,1,4.586,2,2.641,3,2.375,4,3.334,5,3.334,6,4.05,7,0.024,8,4.05,9,2.947,10,2.076,11,1.691,12,0.329,13,0.265,14,0.265,15,2.949,16,0.398,17,3.052,18,3.5,19,0.7,20,5.155,21,3.334,22,1.106,23,5.761,24,2.949,25,3.919,26,3.334,27,3.198,28,3.919,29,3.879,30,3.919,31,3.5,32,3.919,33,3.334,34,3.919,35,3.919,36,3.334,37,3.334,38,3.919,39,1.491,40,1.106,41,3.879,42,3.334,43,3.334,44,2.949,45,2.949,46,3.919,47,3.334,48,3.919,49,3.919,50,3.919,51,3.052,52,2.949,53,3.919,54,2.661,55,4.386,56,5.155,57,2.24,58,0.329,59,0.091,60,0.016,61,0.016]],["title/modules/CommonModule.html",[0,1.263,6,2.189]],["body/modules/CommonModule.html",[0,2.056,2,2.002,3,2.646,6,4.399,7,0.023,9,3.282,10,2.458,11,2.002,12,0.39,13,0.314,14,0.314,18,3.899,19,0.633,22,1.31,33,4.885,58,0.39,59,0.107,60,0.018,61,0.018,62,3.948,63,3.948,64,3.948,65,4.442,66,4.442,67,4.64,68,3.899]],["title/classes/EnvironmentVariables.html",[59,0.082,69,2.654]],["body/classes/EnvironmentVariables.html",[7,0.024,12,0.362,13,0.291,14,0.291,16,0.437,19,0.556,40,1.547,51,2.282,58,0.362,59,0.139,60,0.017,61,0.017,69,4.124,70,1.543,71,3.241,72,4.124,73,5.481,74,4.308,75,3.665,76,4.308,77,1.64,78,2.925,79,2.925,80,4.308,81,2.925,82,3.665,83,3.194,84,2.925,85,5.481,86,2.925,87,2.925,88,4.308,89,3.665,90,4.774,91,1.453,92,3.665,93,1.64,94,4.308,95,2.673,96,3.665,97,3.665,98,5.481,99,4.308,100,4.308,101,3.665,102,4.308,103,4.308,104,2.925,105,4.308,106,2.673,107,3.241,108,2.282,109,4.308,110,1.859]],["title/interfaces/EqQueryString.html",[111,0.939,112,2.395]],["body/interfaces/EqQueryString.html",[7,0.023,12,0.365,13,0.293,14,0.293,16,0.44,58,0.365,60,0.018,61,0.018,111,1.154,112,3.738,113,1.872,114,2.691,115,2.819,116,3.69,117,2.298,118,1.999,119,2.298,120,0.521,121,1.013,122,1.502,123,5.707,124,4.555,125,2.114,126,0.726,127,2.715,128,5.411,129,5.048,130,2.402,131,4.786,132,3.738,133,5.505,134,4.683,135,2.537]],["title/classes/EsHitDto.html",[59,0.082,136,2.189]],["body/classes/EsHitDto.html",[7,0.023,12,0.303,13,0.244,14,0.244,16,0.601,19,0.561,39,2.354,40,1.019,58,0.303,59,0.113,60,0.016,61,0.016,70,1.292,77,1.373,78,4.021,83,2.929,117,2.585,120,0.433,121,1.017,122,1.398,126,0.664,136,3.027,137,3.674,138,2.715,139,3.956,140,5.424,141,3.671,142,2.283,143,4.456,144,4.456,145,4.456,146,1.645,147,2.104,148,4.878,149,5.921,150,5.038,151,2.751,152,4.878,153,1.084,154,3.608,155,6.375,156,3.16,157,3.608,158,3.674,159,3.313,160,2.585,161,3.608,162,5.921,163,5.921,164,3.608,165,2.105,166,2.406,167,3.429,168,1.461,169,2.789,170,3.069,171,1.373,172,1.373,173,1.461,174,1.78,175,3.608]],["title/interfaces/EsPit.html",[111,0.939,176,2.016]],["body/interfaces/EsPit.html",[7,0.023,12,0.409,13,0.329,14,0.329,16,0.494,58,0.409,60,0.019,61,0.019,111,1.296,113,2.102,114,3.022,117,2.58,120,0.585,121,1.089,125,2.067,126,0.71,174,3.405,176,3.381,177,4.143,178,3.881,179,3.665,180,3.642,181,1.744,182,5.637,183,5.915]],["title/interfaces/EsQuery.html",[111,0.939,184,2.395]],["body/interfaces/EsQuery.html",[7,0.023,12,0.406,13,0.327,14,0.327,16,0.49,19,0.49,58,0.406,60,0.019,61,0.019,111,1.286,112,4.488,113,2.085,114,2.998,115,2.571,117,3.119,118,2.713,119,3.119,120,0.58,121,1.083,125,1.763,126,0.58,130,2.108,181,2.108,184,3.998,185,4.111,186,4.973,187,5.887,188,5.009,189,5.009,190,4.832,191,4.832]],["title/classes/EsQueryDto.html",[59,0.082,192,2.016]],["body/classes/EsQueryDto.html",[7,0.024,12,0.472,13,0.188,14,0.188,16,0.615,19,0.536,39,2.137,40,0.786,58,0.234,59,0.094,60,0.013,61,0.013,70,0.997,77,1.06,83,3.107,115,2.606,120,0.334,121,0.884,122,1.519,126,0.704,130,1.891,137,3.852,142,2.304,145,3.973,146,2.094,147,2.232,151,2.846,153,1.188,160,3.289,165,1.754,166,2.005,167,3.638,168,1.127,171,1.06,172,1.828,173,1.127,174,2.005,176,2.745,178,3.549,180,2.324,181,2.304,184,3.261,192,2.324,193,2.095,194,4.802,195,4.492,196,1.945,197,4.065,198,2.324,199,3.458,200,3.458,201,3.973,202,3.973,203,2.604,204,2.522,205,2.784,206,2.784,207,2.784,208,4.065,209,3.059,210,2.784,211,5.28,212,2.784,213,4.065,214,2.522,215,4.492,216,3.973,217,3.585,218,4.065,219,2.784,220,2.784,221,4.065,222,2.979,223,2.324,224,3.261,225,4.085,226,3.458,227,2.095,228,2.784,229,3.059,230,2.784,231,2.095,232,2.095,233,2.784,234,2.784,235,2.784]],["title/classes/EsResponseDto.html",[59,0.082,236,2.016]],["body/classes/EsResponseDto.html",[7,0.023,11,2.277,12,0.234,13,0.188,14,0.188,16,0.595,19,0.487,39,1.058,40,0.785,51,2.151,58,0.234,59,0.094,60,0.017,61,0.013,70,0.995,77,1.058,83,2.796,104,2.757,106,2.519,115,1.644,119,2.796,120,0.334,121,0.883,122,0.959,124,1.888,125,1.216,126,0.674,130,1.89,137,3.637,142,2.303,143,2.092,144,2.092,146,1.977,147,2.136,151,2.776,153,1.101,160,2.151,165,1.752,166,2.768,167,2.519,168,1.126,169,2.742,171,1.058,172,1.826,173,1.126,174,2.603,178,3.016,180,2.321,181,1.454,203,2.768,204,2.519,217,3.583,223,2.742,225,4.082,226,2.365,236,2.321,237,2.092,238,1.618,239,3.97,240,4.489,241,3.97,242,4.669,243,4.061,244,4.84,245,4.061,246,5.276,247,3.85,248,4.489,249,3.493,250,2.78,251,3.258,252,4.489,253,2.78,254,2.78,255,4.061,256,2.78,257,3.055,258,2.78,259,4.061,260,3.97,261,5.276,262,5.276,263,2.78,264,1.871,265,2.78,266,2.78,267,4.061,268,4.061,269,4.061,270,4.061,271,3.055,272,2.78,273,2.519,274,2.003,275,2.78,276,2.78,277,2.365,278,1.371,279,2.365,280,2.78,281,2.78,282,2.365,283,4.061,284,2.78,285,2.092,286,2.78,287,2.78]],["title/interfaces/EsResponseHits.html",[111,0.939,251,2.395]],["body/interfaces/EsResponseHits.html",[7,0.023,12,0.51,13,0.296,14,0.296,16,0.444,19,0.444,58,0.368,60,0.021,61,0.018,111,1.165,113,1.89,114,2.717,117,2.934,120,0.526,121,1.019,122,1.307,126,0.729,130,2.286,136,3.96,142,1.983,146,2.048,150,4.711,181,2.446,203,3.408,215,4.711,238,2.048,251,3.76,273,3.96,282,5.43,288,3.725,289,5.538,290,5.538,291,4.711,292,4.379,293,4.379]],["title/controllers/HealthController.html",[294,2.189,295,2.395]],["body/controllers/HealthController.html",[7,0.024,12,0.488,13,0.269,14,0.269,16,0.404,19,0.529,22,1.125,57,2.278,58,0.335,59,0.142,60,0.017,61,0.017,91,1.758,93,1.984,110,1.72,120,0.478,125,1.74,147,1.517,153,0.782,196,1.614,209,4.636,238,1.959,264,3.022,294,3.822,295,3.54,296,3.391,297,3.986,298,5.685,299,2.402,300,4.935,301,3.986,302,3.986,303,4.435,304,5.212,305,5.212,306,2.402,307,5.212,308,3.154,309,5.212,310,5.212,311,5.212,312,2.999,313,3.986,314,1.614,315,2.706,316,2.278,317,3.391,318,4.435]],["title/modules/HealthModule.html",[0,1.263,319,2.654]],["body/modules/HealthModule.html",[0,2.174,2,2.193,7,0.023,12,0.427,13,0.343,14,0.343,18,3.451,19,0.682,22,1.435,57,3.469,58,0.427,59,0.117,60,0.019,61,0.019,295,4.406,312,3.825,319,4.567,320,5.083,321,5.163,322,3.153,323,6.069,324,5.083]],["title/classes/HttpExceptionFilter.html",[59,0.082,325,2.395]],["body/classes/HttpExceptionFilter.html",[7,0.023,12,0.391,13,0.314,14,0.314,19,0.472,22,1.313,40,1.762,58,0.391,59,0.108,60,0.018,61,0.018,70,1.666,93,1.77,120,0.558,122,1.098,126,0.558,153,0.913,238,1.569,264,2.877,299,2.65,325,3.905,326,4.328,327,3.957,328,3.288,329,6.243,330,4.698,331,5.751,332,4.907,333,6.243,334,6.522,335,4.652,336,1.569,337,1.478,338,3.159,339,3.159,340,4.652,341,4.652,342,4.652,343,4.652,344,4.652,345,4.652,346,2.886,347,4.652]],["title/interfaces/HttpResponse.html",[111,0.939,348,2.189]],["body/interfaces/HttpResponse.html",[7,0.023,12,0.34,13,0.273,14,0.273,16,0.681,58,0.34,60,0.017,61,0.017,78,4.708,111,1.401,113,1.746,120,0.486,121,0.969,125,2.059,126,0.838,135,3.035,146,1.973,158,3.266,199,5.272,217,3.575,238,2.318,264,3.133,308,2.886,346,4.086,348,3.266,349,3.442,350,3.442,351,4.046,352,5.264,353,5.264,354,4.478,355,5.264,356,5.264,357,4.478,358,3.266,359,5.264]],["title/classes/HttpResponseException.html",[59,0.082,360,2.654]],["body/classes/HttpResponseException.html",[0,2.013,7,0.023,12,0.377,13,0.303,14,0.303,16,0.57,19,0.57,22,1.266,58,0.377,59,0.104,60,0.018,61,0.018,70,1.606,91,1.512,122,1.059,126,0.538,135,2.59,153,0.88,196,1.816,238,2.281,308,3.424,314,2.276,328,3.213,332,4.62,336,1.512,337,1.425,338,4.371,348,3.994,360,4.23,361,4.782,362,3.815,363,4.782,364,4.782,365,4.782,366,4.484,367,5.621,368,3.815,369,4.484,370,4.484,371,5.621]],["title/modules/HttpResponseModule.html",[0,1.263,65,2.189]],["body/modules/HttpResponseModule.html",[0,2.122,2,2.107,3,2.73,7,0.023,9,3.387,10,2.587,11,2.107,12,0.41,13,0.33,14,0.33,19,0.601,22,1.379,54,4.023,58,0.41,59,0.113,60,0.019,61,0.019,65,4.337,68,4.023,372,4.154,373,4.154,374,4.154,375,4.471,376,4.883,377,4.883,378,3.674]],["title/injectables/HttpResponseService.html",[375,2.189,379,1.343]],["body/injectables/HttpResponseService.html",[7,0.023,12,0.246,13,0.198,14,0.198,16,0.7,19,0.501,22,0.827,40,0.827,44,3.718,45,3.718,58,0.246,59,0.068,60,0.013,61,0.013,91,2.074,93,2.396,110,2.333,120,0.351,122,1.276,125,1.994,126,0.77,127,1.444,135,2.9,146,2.246,153,1.061,229,2.203,238,2.123,264,3.205,278,1.444,299,1.943,308,3.285,314,1.708,316,3.665,336,1.823,337,1.718,346,4.131,348,3.354,368,2.491,375,2.616,379,1.605,380,1.674,381,4.875,382,2.491,383,4.204,384,4.217,385,4.217,386,4.217,387,2.928,388,2.928,389,4.217,390,4.217,391,5.406,392,4.217,393,4.217,394,2.928,395,5.967,396,4.217,397,2.928,398,4.217,399,2.928,400,2.928,401,2.491,402,4.204,403,4.204,404,2.491,405,2.491,406,2.928,407,2.928,408,2.928,409,2.928,410,2.928]],["title/injectables/LoggerInterceptor.html",[31,2.395,379,1.343]],["body/injectables/LoggerInterceptor.html",[7,0.024,12,0.254,13,0.204,14,0.204,16,0.51,19,0.588,22,0.852,31,2.926,40,1.85,58,0.254,59,0.07,60,0.014,61,0.014,91,1.849,93,2.086,108,2.283,110,1.86,120,0.362,121,0.793,122,1.017,126,0.603,127,1.489,146,1.695,153,0.986,180,2.463,202,3.243,238,1.695,249,2.663,278,1.489,299,1.986,306,1.986,308,2.974,314,1.745,316,3.446,328,1.725,336,1.453,337,1.369,339,2.049,378,2.271,379,1.64,380,1.725,411,2.568,412,5.129,413,5.129,414,3.118,415,3.782,416,4.664,417,4.309,418,3.666,419,4.669,420,4.094,421,4.664,422,3.018,423,4.664,424,3.627,425,4.309,426,4.276,427,4.309,428,6.458,429,3.018,430,3.666,431,2.873,432,4.309,433,3.018,434,3.666,435,2.049,436,4.309,437,3.018,438,2.271,439,5.026,440,5.026,441,4.309,442,2.568,443,4.309,444,4.309,445,3.018,446,3.018,447,4.309,448,3.018,449,3.018,450,3.018,451,3.018,452,2.271,453,3.018,454,4.309,455,2.049,456,3.666,457,3.018,458,3.018,459,3.018]],["title/modules/LoggerModule.html",[0,1.263,66,2.189]],["body/modules/LoggerModule.html",[0,2.122,2,2.107,3,2.73,7,0.023,9,3.387,10,2.587,11,2.107,12,0.41,13,0.33,14,0.33,19,0.601,22,1.379,54,4.023,58,0.41,59,0.113,60,0.019,61,0.019,66,4.337,68,4.023,125,1.463,378,3.674,431,4.119,460,4.154,461,4.154,462,4.154,463,4.883]],["title/injectables/LoggerService.html",[379,1.343,431,2.016]],["body/injectables/LoggerService.html",[7,0.024,12,0.19,13,0.153,14,0.153,16,0.592,19,0.353,22,0.637,51,1.196,58,0.19,59,0.052,60,0.011,61,0.011,91,2.198,93,2.276,108,1.841,110,1.827,120,0.271,121,0.639,122,1.441,125,2.102,126,0.733,153,1.198,196,1.715,204,1.401,299,1.601,306,3.028,314,1.407,316,3.418,328,1.291,336,1.966,337,1.852,339,3.486,346,4.415,379,1.322,380,1.291,412,5.194,414,3.363,415,4.857,424,3.604,431,2.934,464,1.921,465,3.474,466,4.235,467,3.474,468,4.043,469,4.045,470,2.359,471,3.474,472,4.755,473,3.474,474,3.474,475,3.474,476,3.474,477,2.258,478,3.474,479,3.474,480,7.003,481,2.258,482,6.304,483,3.474,484,2.258,485,3.474,486,3.474,487,2.258,488,3.474,489,3.474,490,3.474,491,2.258,492,3.474,493,2.258,494,3.474,495,2.258,496,3.474,497,2.258,498,3.474,499,3.474,500,2.258,501,2.258,502,2.258,503,2.258,504,2.258,505,2.258,506,2.258,507,2.258,508,2.258,509,2.258,510,2.258,511,2.258,512,2.258,513,2.258,514,2.258]],["title/classes/PageDto.html",[59,0.082,515,2.189]],["body/classes/PageDto.html",[7,0.023,12,0.307,13,0.247,14,0.247,16,0.564,19,0.604,39,1.389,40,1.031,51,2.605,58,0.307,59,0.114,60,0.016,61,0.016,70,1.307,77,1.389,91,1.658,118,3.164,119,3.152,120,0.438,121,1.023,122,0.862,126,0.785,135,3.164,147,1.871,153,1.091,156,3.8,165,2.122,166,2.743,168,1.478,170,3.105,171,1.389,172,1.389,173,1.478,181,1.761,196,1.478,198,2.811,214,3.051,222,3.691,244,3.7,285,3.7,336,1.875,337,1.16,365,4.183,414,3.969,515,3.051,516,2.747,517,4.183,518,5.068,519,4.124,520,4.917,521,2.425,522,3.105,523,3.65,524,4.917,525,2.747,526,3.65,527,3.105,528,3.105,529,3.65]],["title/injectables/PageInterceptor.html",[379,1.343,530,2.395]],["body/injectables/PageInterceptor.html",[3,1.415,7,0.024,12,0.258,13,0.13,14,0.13,16,0.388,19,0.615,22,0.545,40,1.503,52,3.818,58,0.162,59,0.045,60,0.01,61,0.01,79,2.085,91,1.711,93,1.931,106,1.197,108,2.312,110,2.19,111,0.817,115,1.244,118,2.452,119,1.627,120,0.232,121,0.565,122,1.03,123,1.641,125,1.146,126,0.572,127,1.887,130,1.1,131,3.818,135,2.01,139,1.197,142,1.37,146,1.607,153,0.996,174,2.808,176,1.755,178,3.466,180,2.494,181,1.562,182,2.613,186,1.451,192,1.755,196,1.244,201,3.283,209,2.879,214,1.905,227,1.451,231,1.451,249,2.027,273,1.197,274,1.515,278,2.35,291,2.613,299,1.415,300,1.451,306,1.415,316,3.158,322,1.197,328,1.103,330,2.311,336,1.471,337,1.386,379,1.169,380,1.103,414,3.302,416,3.712,418,2.613,419,3.283,420,2.963,421,3.712,424,1.755,426,1.641,434,3.712,435,1.31,442,1.641,452,1.451,455,2.085,468,2.374,515,1.905,518,2.879,519,1.905,521,1.515,527,1.641,530,2.085,531,1.641,532,3.071,533,3.071,534,3.255,535,3.255,536,4.284,537,3.071,538,3.071,539,1.641,540,4.528,541,3.826,542,1.929,543,3.071,544,3.712,545,3.071,546,3.071,547,3.071,548,1.929,549,3.071,550,3.826,551,3.071,552,3.446,553,3.071,554,3.071,555,2.311,556,3.071,557,3.071,558,5.074,559,3.712,560,1.929,561,3.071,562,4.363,563,4.363,564,3.071,565,1.929,566,3.071,567,2.494,568,2.613,569,1.929,570,3.712,571,2.613,572,2.311,573,2.613,574,1.929,575,2.085,576,2.311,577,1.929,578,1.929,579,1.641,580,1.641,581,1.929,582,1.641,583,1.641,584,1.451,585,1.905,586,1.929,587,1.905,588,1.929,589,1.641,590,1.929,591,1.929,592,3.043,593,1.451,594,1.929,595,1.929,596,1.929,597,1.641,598,1.929,599,1.022,600,1.929,601,1.929,602,3.071,603,3.283,604,3.071,605,3.071,606,1.641,607,3.071,608,3.071,609,1.929,610,1.929,611,1.929,612,1.929,613,1.929,614,1.929,615,1.451,616,1.929,617,1.929,618,1.929,619,1.929,620,1.929,621,1.929,622,1.929,623,1.929,624,1.929,625,1.929,626,1.929,627,1.641,628,1.929,629,1.929,630,1.929,631,1.929,632,1.929,633,1.929,634,1.929,635,1.451,636,1.31,637,1.929,638,1.929,639,1.929,640,1.929,641,2.613,642,2.613,643,2.613,644,1.929,645,2.613,646,2.613,647,2.613,648,2.613,649,1.929,650,1.641,651,2.613,652,1.929,653,1.451,654,1.641,655,1.929]],["title/classes/PageMetaDto.html",[59,0.082,519,2.189]],["body/classes/PageMetaDto.html",[7,0.023,12,0.334,13,0.268,14,0.268,16,0.588,19,0.588,39,1.51,40,1.12,58,0.334,59,0.12,60,0.021,61,0.017,70,1.421,77,1.51,118,3.019,120,0.476,121,1.067,126,0.624,130,2.203,146,2.209,147,1.978,151,2.654,153,1.02,160,2.103,165,2.243,166,2.859,168,1.607,171,1.51,172,1.51,173,1.607,203,3.034,214,3.225,216,4.628,222,3.225,273,4.201,517,4.422,519,3.225,522,3.376,525,2.986,592,3.98,606,3.376,656,4.362,657,2.986,658,3.969,659,4.177,660,5.198,661,3.969,662,3.969,663,3.376,664,3.376,665,3.376,666,3.376]],["title/classes/PaperDto.html",[59,0.082,156,2.016]],["body/classes/PaperDto.html",[7,0.023,12,0.214,13,0.172,14,0.172,16,0.614,19,0.386,39,2.353,40,0.717,58,0.214,59,0.088,60,0.012,61,0.012,70,0.91,77,0.967,83,1.346,117,2.412,120,0.305,121,0.838,125,1.978,126,0.706,139,2.358,140,3.233,141,2.859,142,1.361,147,2.238,151,2.85,153,1.154,156,2.172,159,4.779,160,2.013,165,1.64,166,2.983,168,1.029,169,3.362,171,0.967,172,0.967,173,1.029,174,2.983,188,4.297,222,2.824,223,1.453,224,1.726,271,4.069,357,4.297,470,2.58,525,1.912,567,2.887,667,1.912,668,5.144,669,4.55,670,4.55,671,4.55,672,5.144,673,3.8,674,2.541,675,3.801,676,3.8,677,5.051,678,3.8,679,2.541,680,5.051,681,5.051,682,3.8,683,3.8,684,3.8,685,3.8,686,3.8,687,2.541,688,5.051,689,4.297,690,3.801,691,3.233,692,5.051,693,5.051,694,5.051,695,3.8,696,3.233,697,3.8,698,3.233,699,3.233,700,3.8,701,3.8,702,3.8,703,3.8,704,3.8,705,3.8,706,3.8,707,3.8,708,2.541,709,5.051,710,5.051,711,5.051,712,5.051,713,2.541,714,3.8,715,3.233,716,3.8,717,3.8,718,3.8,719,2.541,720,3.8,721,2.541,722,2.541,723,2.541,724,2.541,725,2.541,726,2.541,727,2.541,728,2.541,729,2.541,730,2.541,731,2.541]],["title/controllers/PapersController.html",[294,2.189,732,2.395]],["body/controllers/PapersController.html",[7,0.023,11,1.814,12,0.245,13,0.197,14,0.197,16,0.623,19,0.623,22,0.823,57,1.666,58,0.245,59,0.067,60,0.013,61,0.017,91,1.929,93,2.393,107,3.162,110,2.328,115,1.702,118,1.936,120,0.35,122,0.992,125,1.476,126,0.715,130,1.044,136,2.607,142,1.932,147,1.599,153,0.825,156,2.402,159,3.663,165,1.258,168,1.18,181,1.505,236,2.817,238,2.16,249,3.445,260,4.059,264,1.936,274,1.438,285,4.819,294,3.347,299,1.936,306,2.486,315,1.979,325,1.979,326,2.193,336,1.417,337,1.335,423,4.59,424,2.402,515,2.607,530,1.979,552,3.663,585,3.347,599,2.611,636,2.854,659,2.854,669,3.162,670,3.162,732,2.854,733,2.479,734,4.202,735,4.202,736,4.202,737,2.914,738,4.202,739,4.59,740,3.162,741,2.914,742,4.59,743,4.59,744,2.914,745,2.914,746,2.914,747,4.202,748,2.914,749,4.866,750,2.914,751,2.914,752,2.914,753,2.914,754,4.202,755,3.575,756,2.914,757,4.202,758,2.914,759,2.914,760,2.914,761,2.479,762,2.914,763,4.928,764,4.928,765,4.928,766,2.914,767,2.914,768,2.914,769,2.914,770,2.914,771,1.979,772,2.914,773,2.914,774,2.914,775,4.202,776,2.914,777,2.914,778,4.202,779,2.914,780,2.914,781,2.914,782,2.914,783,2.914,784,2.914]],["title/classes/RequestDto.html",[59,0.082,585,2.189]],["body/classes/RequestDto.html",[7,0.023,12,0.291,13,0.234,14,0.234,16,0.619,19,0.591,39,1.32,40,0.979,58,0.291,59,0.11,60,0.015,61,0.015,70,1.242,77,1.32,83,2.516,91,1.601,115,2.873,120,0.416,121,0.997,122,1.278,126,0.732,130,1.242,142,2.256,147,1.807,151,2.513,153,1.062,158,2.946,160,2.516,165,2.049,166,2.342,167,2.946,168,1.404,169,2.714,171,1.32,172,1.32,173,1.404,181,2.414,192,3.755,196,1.404,198,2.714,214,2.946,223,2.714,232,2.609,244,3.573,249,3.086,336,2.247,337,1.102,521,2.342,584,2.609,585,2.946,587,4.075,589,2.95,615,3.573,659,3.224,785,2.609,786,5.014,787,4.039,788,4.748,789,3.467,790,4.748,791,4.748,792,3.467,793,3.467,794,2.609,795,3.467]],["title/guards/RolesGuard.html",[796,2.395,797,2.654]],["body/guards/RolesGuard.html",[7,0.023,12,0.316,13,0.254,14,0.254,16,0.573,19,0.611,22,1.062,24,2.83,40,1.416,51,2.991,58,0.316,59,0.087,60,0.016,61,0.016,91,1.692,93,2.292,110,2.165,120,0.451,122,1.184,126,0.602,147,1.431,153,0.984,158,3.112,171,1.909,196,1.523,257,3.775,299,2.311,303,4.268,314,2.031,315,2.554,328,2.15,336,1.692,337,1.594,379,1.909,405,3.199,419,4.531,424,3.442,452,2.83,796,4.544,797,3.775,798,3.76,799,3.199,800,3.833,801,6.022,802,3.76,803,6.776,804,3.76,805,5.016,806,5.694,807,5.016,808,3.76,809,4.72,810,4.268,811,3.406,812,4.268,813,2.83,814,5.016,815,3.76,816,3.76,817,3.76,818,3.76,819,3.76]],["title/interfaces/SearchInfo.html",[111,0.939,820,2.654]],["body/interfaces/SearchInfo.html",[7,0.023,12,0.382,13,0.307,14,0.307,16,0.462,19,0.462,58,0.382,60,0.018,61,0.018,111,1.211,113,1.963,117,3.005,119,3.005,120,0.546,121,1.044,126,0.681,130,2.432,142,2.031,176,3.699,178,3.881,179,4.268,227,3.423,229,3.423,247,3.519,420,3.852,794,3.423,820,4.268,821,3.871,822,3.871,823,6.789,824,5.672,825,5.672,826,4.826,827,4.268,828,5.672]],["title/modules/SearchModule.html",[0,1.263,8,2.189]],["body/modules/SearchModule.html",[0,2.319,2,1.968,3,2.618,7,0.023,8,4.275,9,3.247,10,2.416,11,1.968,12,0.383,13,0.308,14,0.308,16,0.463,17,2.416,18,3.097,19,0.657,21,3.88,22,1.288,47,3.88,54,3.858,57,3.247,58,0.383,59,0.105,60,0.018,61,0.018,68,3.858,130,2.035,321,4.833,322,2.83,599,3.785,732,4.202,761,3.88,829,3.88,830,3.88,831,3.88,832,4.561]],["title/classes/SearchQueryDto.html",[59,0.082,587,2.189]],["body/classes/SearchQueryDto.html",[7,0.023,12,0.247,13,0.198,14,0.198,16,0.582,19,0.429,39,2.183,40,0.829,58,0.247,59,0.098,60,0.013,61,0.013,70,1.052,77,1.118,83,2.869,91,1.826,106,2.622,115,2.67,118,2.495,120,0.353,121,0.911,122,1.453,125,2.029,126,0.689,129,4.074,130,1.939,142,1.514,146,2.285,147,2.061,151,2.719,153,1.126,165,1.824,167,3.559,168,1.189,169,2.416,171,1.118,172,1.884,173,1.189,181,1.514,196,1.189,198,2.416,200,3.596,201,4.632,202,4.074,203,2.671,216,4.74,223,2.416,224,3.362,231,3.18,232,2.21,238,1.425,271,3.725,336,1.67,337,0.933,521,2.085,587,2.622,592,3.843,603,4.828,787,3.596,827,4.074,833,4.057,834,2.21,835,4.226,836,5.414,837,6.299,838,2.937,839,2.937,840,2.937,841,4.606,842,3.596,843,2.937,844,4.074,845,4.226,846,4.226,847,2.937,848,2.499,849,2.937,850,2.937]],["title/classes/SearchResultDto.html",[59,0.082,851,2.654]],["body/classes/SearchResultDto.html",[7,0.023,12,0.306,13,0.246,14,0.246,16,0.564,19,0.564,39,1.387,40,1.028,58,0.306,59,0.114,60,0.016,61,0.016,70,1.305,77,1.387,91,1.656,104,2.474,120,0.437,121,1.022,122,0.86,126,0.667,135,3.207,142,2.129,146,2.093,147,1.869,151,2.565,153,1.09,160,1.93,165,2.119,166,2.74,168,1.475,169,3.175,171,1.387,172,2.114,173,1.475,181,1.759,196,1.475,198,2.807,203,1.797,222,3.047,223,3.175,224,3.335,236,3.655,238,1.656,239,2.741,241,2.741,242,2.741,264,2.86,274,1.797,336,1.873,337,1.158,358,4.054,456,4.726,521,2.422,528,3.099,659,4.037,742,4.178,794,2.741,833,4.037,851,3.695,852,2.741,853,4.911,854,4.911,855,3.643,856,3.643,857,3.643,858,3.643,859,3.643]],["title/injectables/SearchService.html",[379,1.343,599,1.869]],["body/injectables/SearchService.html",[7,0.024,11,1.711,12,0.226,13,0.182,14,0.182,16,0.273,19,0.562,22,0.76,58,0.226,59,0.062,60,0.013,61,0.013,91,1.588,93,1.977,107,2.025,108,2.753,110,1.711,115,2.104,120,0.323,121,0.73,122,1.112,125,1.659,126,0.665,127,1.956,130,1.42,132,1.828,135,1.827,142,2.075,146,1.337,153,1.087,159,2.693,172,1.024,174,2.323,181,1.984,186,2.025,192,3.312,196,1.09,198,2.267,203,2.563,236,2.692,252,3.374,260,2.984,274,1.328,278,1.956,299,1.827,306,2.67,314,2.104,315,1.828,316,3.312,322,1.67,330,2.984,332,2.025,336,1.588,337,1.496,379,1.509,380,1.539,414,3.718,424,2.267,435,1.828,534,4.006,535,4.006,536,4.36,539,2.29,540,5.34,552,3.528,567,2.267,568,3.374,570,3.374,571,3.374,572,2.984,573,3.374,575,2.693,576,2.984,579,2.29,580,2.29,582,2.29,583,2.29,584,2.025,599,2.101,635,2.025,641,3.374,642,3.374,643,3.374,645,3.374,646,3.374,647,3.374,648,3.374,650,3.374,651,3.374,653,2.984,654,3.374,739,4.42,749,4.006,786,2.984,844,2.984,860,2.29,861,3.966,862,3.966,863,3.966,864,2.691,865,3.966,866,3.966,867,3.966,868,2.691,869,3.966,870,2.693,871,3.966,872,2.691,873,2.691,874,2.691,875,3.966,876,2.691,877,3.966,878,3.966,879,2.691,880,2.691,881,3.966,882,2.691,883,4.709,884,3.966,885,3.966,886,2.691]],["title/interfaces/ValidationPipeOptions.html",[111,0.939,887,2.654]],["body/interfaces/ValidationPipeOptions.html",[7,0.023,12,0.372,13,0.299,14,0.299,16,0.45,19,0.45,58,0.372,59,0.102,60,0.018,61,0.018,72,4.198,77,1.686,95,3.461,101,3.769,111,1.179,113,1.912,120,0.532,121,1.027,122,1.592,126,0.733,257,5.075,306,2.571,338,3.788,364,4.746,887,4.198,888,3.769,889,3.788,890,5.579,891,5.579,892,6.107,893,6.41,894,6.41,895,6.41,896,5.579,897,5.579,898,5.579,899,5.579,900,5.579]],["title/interfaces/VirtualBankOptions.html",[111,0.939,901,2.189]],["body/interfaces/VirtualBankOptions.html",[7,0.024,12,0.326,13,0.262,14,0.262,16,0.394,19,0.394,27,3.556,40,1.095,58,0.482,60,0.016,61,0.016,72,2.918,78,4.42,79,3.476,81,4.42,82,4.356,84,4.42,86,4.42,87,4.42,93,1.476,95,2.406,111,1.032,113,1.673,120,0.465,121,0.942,126,0.688,146,2.299,153,1.004,901,4.038,902,2.633,903,5.119,904,4.313,905,4.356,906,5.119,907,3.852,908,5.119,909,5.119,910,6.095,911,5.119,912,5.119,913,5.119,914,5.119,915,5.119,916,3.852,917,3.878,918,4.356,919,3.299,920,3.878,921,3.299,922,3.299,923,3.299]],["title/coverage.html",[924,4.087]],["body/coverage.html",[7,0.023,14,0.187,15,2.085,27,1.719,29,2.085,31,1.882,41,2.085,59,0.152,60,0.013,61,0.013,69,2.085,71,3.049,95,3.924,106,2.514,108,1.468,111,1.65,112,1.882,114,3.269,115,1.122,116,2.358,126,0.333,136,1.719,137,3.633,138,3.049,156,1.584,173,2.561,176,1.584,177,2.358,184,1.882,185,2.358,192,1.584,193,3.049,236,1.584,237,3.049,238,0.935,251,1.882,288,2.358,294,2.514,295,1.882,296,2.358,325,1.882,326,2.085,327,2.358,348,1.719,349,2.358,350,2.358,360,2.085,361,2.358,362,2.358,375,1.719,379,2.134,381,2.358,382,2.358,411,2.358,431,1.584,464,2.358,468,1.719,515,1.719,516,3.049,519,1.719,530,1.882,531,2.358,585,1.719,587,1.719,593,2.085,599,1.468,656,3.049,657,3.049,667,3.049,732,1.882,733,2.358,785,3.049,796,1.882,797,2.085,799,2.358,800,1.882,813,2.085,820,2.085,821,2.358,822,2.358,833,3.578,834,3.049,851,2.085,852,3.049,860,2.358,887,2.085,888,2.358,901,1.719,902,2.751,916,2.085,924,2.358,925,2.085,926,2.771,927,2.771,928,7.281,929,4.789,930,5.606,931,3.447,932,6.757,933,2.358,934,7.028,935,3.447,936,6.324,937,4.052,938,5.269,939,2.085,940,2.085,941,2.771,942,2.771,943,2.358,944,4.769,945,2.358,946,2.358,947,2.358,948,2.358,949,2.358,950,2.771,951,2.771,952,2.771,953,2.358,954,2.358,955,2.771,956,2.358]],["title/dependencies.html",[3,1.954,957,2.22]],["body/dependencies.html",[3,2.101,7,0.023,22,1.288,24,3.432,26,3.88,36,3.88,37,3.88,52,3.432,59,0.131,60,0.018,61,0.018,75,3.88,77,1.736,119,2.416,168,1.847,312,3.432,322,2.83,435,3.097,438,3.432,536,3.432,597,3.88,958,4.561,959,4.561,960,4.561,961,4.561,962,4.561,963,4.561,964,4.561,965,4.561,966,6.188,967,4.561,968,4.561,969,4.561,970,4.561,971,4.561,972,4.561,973,4.561,974,4.561,975,4.561,976,4.561,977,5.681,978,4.561,979,5.681,980,4.561,981,4.561,982,4.561,983,4.561,984,4.561,985,4.561,986,3.88,987,4.561,988,4.561,989,4.561,990,4.561,991,4.561,992,4.561]],["title/miscellaneous/enumerations.html",[993,1.687,994,3.607]],["body/miscellaneous/enumerations.html",[7,0.023,10,1.246,17,0.739,60,0.008,61,0.01,79,0.947,81,0.947,84,0.947,86,0.947,87,0.947,104,0.947,108,1.246,110,1.317,118,0.642,120,0.167,124,0.947,126,0.366,128,3.407,131,1.77,132,0.947,139,1.46,141,1.049,142,0.499,153,0.462,158,0.865,171,1.162,180,1.745,204,0.865,217,1.597,238,1.465,247,1.894,248,2.596,249,3.673,264,2.238,274,0.688,277,3.407,278,3.579,279,1.186,306,1.406,308,1.768,314,1.236,317,2.596,346,1.46,358,3.337,401,2.001,402,2.001,403,2.001,404,2.001,413,2.596,420,0.947,455,2.719,468,1.46,470,0.947,521,0.688,544,1.186,559,2.001,567,2.483,572,1.049,575,4.57,592,1.745,615,1.049,627,2.001,635,1.049,636,1.597,653,1.049,690,1.049,691,1.186,755,4.302,771,1.597,800,1.597,809,3.479,811,1.597,827,1.77,841,1.186,842,2.001,844,2.297,870,1.597,901,1.894,902,0.947,904,1.049,907,1.049,918,1.186,919,2.001,939,1.049,940,1.77,986,3.695,993,0.797,994,1.186,995,1.186,996,1.186,997,2.352,998,1.394,999,1.394,1000,1.394,1001,1.394,1002,1.049,1003,1.394,1004,1.394,1005,1.394,1006,1.394,1007,1.186,1008,1.394,1009,1.186,1010,1.394,1011,1.394,1012,1.394,1013,2.352,1014,1.394,1015,1.394,1016,1.394,1017,1.394,1018,3.585,1019,2.352,1020,2.352,1021,3.052,1022,1.394,1023,1.394,1024,1.394,1025,1.394,1026,4.344,1027,3.052,1028,3.052,1029,1.394,1030,4.344,1031,1.394,1032,1.394,1033,1.394,1034,4.005,1035,2.352,1036,3.052,1037,1.394,1038,3.05,1039,3.585,1040,1.394,1041,5.822,1042,2.352,1043,2.352,1044,4.302,1045,1.394,1046,1.597,1047,1.186,1048,1.394,1049,1.186,1050,1.186,1051,1.186,1052,1.186,1053,2.352,1054,1.186,1055,1.394,1056,2.352,1057,3.052,1058,1.394,1059,1.394,1060,2.596,1061,2.352,1062,2.352,1063,2.352,1064,1.394,1065,3.05,1066,1.394,1067,2.352,1068,1.394,1069,1.394,1070,2.001,1071,1.186,1072,1.394,1073,1.186,1074,1.394,1075,3.052,1076,2.352,1077,1.394,1078,2.352,1079,5.229,1080,3.052,1081,1.394,1082,1.77,1083,1.394,1084,4.344,1085,2.352,1086,2.352,1087,2.596,1088,2.297,1089,2.352,1090,2.352,1091,1.394,1092,2.001,1093,2.001,1094,1.394,1095,2.352,1096,2.352,1097,1.394,1098,2.352,1099,2.352,1100,2.352,1101,3.052,1102,1.394,1103,2.001,1104,3.585,1105,1.394,1106,2.352,1107,2.352,1108,1.394,1109,3.052,1110,3.585,1111,3.052,1112,2.352,1113,1.394,1114,2.352,1115,1.394,1116,2.352,1117,2.352,1118,1.394,1119,1.394,1120,1.186,1121,1.394,1122,2.352,1123,1.394,1124,2.352,1125,2.352,1126,1.394,1127,1.394,1128,1.394,1129,1.394,1130,1.394,1131,4.005,1132,2.352,1133,1.394,1134,1.186,1135,1.394,1136,1.394,1137,3.585,1138,2.352,1139,1.049,1140,3.052,1141,2.352,1142,1.394,1143,1.394,1144,2.352,1145,2.352,1146,1.186,1147,2.352,1148,2.352,1149,2.352,1150,1.394,1151,1.394,1152,2.352,1153,1.394,1154,2.352,1155,1.394,1156,2.352,1157,2.352,1158,2.352,1159,1.186,1160,3.585,1161,1.394,1162,1.394,1163,1.394,1164,1.394,1165,1.394,1166,1.394,1167,1.394,1168,1.186,1169,2.352,1170,2.352,1171,1.394,1172,2.352,1173,1.394,1174,1.394,1175,1.394,1176,2.352,1177,1.394,1178,1.394,1179,1.394,1180,1.394,1181,1.394,1182,1.394,1183,1.394,1184,1.394,1185,1.394,1186,1.394,1187,1.394,1188,1.186,1189,1.394,1190,2.352,1191,1.394,1192,2.352,1193,1.394,1194,2.352,1195,1.77,1196,1.394,1197,1.394,1198,2.001,1199,2.352,1200,1.394,1201,1.394,1202,1.394,1203,2.596,1204,2.352,1205,1.186,1206,1.394,1207,2.352,1208,1.394,1209,2.352,1210,3.052,1211,1.394,1212,2.352,1213,1.394,1214,2.352,1215,1.394,1216,1.394,1217,2.352,1218,1.394,1219,1.394,1220,1.394,1221,1.394,1222,1.394,1223,2.352,1224,2.297,1225,1.394,1226,3.05,1227,2.352,1228,2.001,1229,3.585,1230,1.186,1231,1.394,1232,2.352,1233,1.394,1234,2.352,1235,2.352,1236,1.394,1237,1.394,1238,2.352,1239,1.394,1240,1.394,1241,2.352,1242,1.394,1243,1.394,1244,2.352,1245,1.394,1246,1.394,1247,1.394,1248,1.394,1249,2.352,1250,1.394,1251,1.394,1252,1.394,1253,1.186,1254,1.394,1255,1.394,1256,1.394,1257,1.394,1258,1.394,1259,1.049,1260,1.394,1261,2.352,1262,1.394,1263,1.394,1264,1.394,1265,1.394,1266,1.394,1267,1.394,1268,1.394,1269,1.394,1270,1.394,1271,2.596,1272,3.052,1273,3.052,1274,2.352,1275,2.352,1276,1.394,1277,1.049,1278,1.394,1279,1.186,1280,2.352,1281,1.394,1282,2.352,1283,2.352]],["title/miscellaneous/functions.html",[993,1.687,1284,3.607]],["body/miscellaneous/functions.html",[7,0.022,16,0.648,17,1.923,29,3.685,60,0.016,61,0.016,71,2.731,89,4.717,90,3.685,92,3.087,93,2.359,96,3.087,97,4.167,120,0.436,122,1.541,125,1.778,126,0.784,127,1.79,146,2.239,172,2.431,179,2.731,238,1.224,249,1.923,278,1.79,306,3.008,308,2.735,314,2.586,336,2.202,337,2.074,338,3.326,339,2.464,415,5.062,552,3.326,592,2.074,593,3.685,689,3.087,889,2.464,916,4.172,939,2.731,940,3.685,943,3.087,944,3.087,945,4.167,946,4.167,947,4.167,948,4.167,949,4.167,953,3.087,954,4.717,993,2.074,1002,2.731,1203,3.087,1277,2.731,1284,3.087,1285,3.629,1286,3.629,1287,6.198,1288,3.629,1289,3.629,1290,3.629,1291,3.629,1292,3.629,1293,4.898,1294,3.629,1295,3.629,1296,3.629,1297,3.629,1298,3.629,1299,3.629,1300,3.087,1301,3.629,1302,4.898,1303,4.898,1304,3.629,1305,3.629,1306,4.898,1307,4.898,1308,3.629,1309,3.087,1310,3.629,1311,3.629,1312,3.629]],["title/index.html",[120,0.354,1313,2.51,1314,2.51]],["body/index.html",[7,0.021,13,0.29,17,3.355,39,1.904,60,0.014,61,0.014,90,3.224,127,1.477,151,1.292,247,1.857,298,3.645,300,3.224,314,2.026,318,3.645,354,3.645,358,3.73,383,3.645,469,2.547,521,1.477,555,2.253,576,3.224,636,2.033,675,2.253,740,2.253,743,2.547,809,4.11,811,3.398,870,2.033,904,3.224,925,4.349,956,2.547,957,2.253,1009,4.257,1038,4.257,1046,3.398,1049,2.547,1054,2.547,1082,2.253,1088,3.765,1092,2.547,1195,2.253,1259,2.253,1309,2.547,1315,4.284,1316,5.779,1317,3.224,1318,6.012,1319,4.284,1320,2.994,1321,2.994,1322,6.012,1323,5.003,1324,4.284,1325,2.994,1326,4.284,1327,5.003,1328,4.284,1329,4.284,1330,4.284,1331,2.994,1332,2.994,1333,3.645,1334,2.994,1335,2.994,1336,2.994,1337,2.994,1338,2.994,1339,4.284,1340,2.994,1341,2.994,1342,4.284,1343,4.284,1344,2.994,1345,2.994,1346,2.994,1347,2.994,1348,2.994,1349,2.994,1350,2.994,1351,2.994,1352,2.253,1353,5.462,1354,2.994,1355,2.994,1356,2.994,1357,4.284,1358,4.284,1359,2.994,1360,5.267,1361,5.003,1362,6.012,1363,5.003,1364,6.012,1365,2.994,1366,2.994,1367,2.994,1368,2.994,1369,2.994,1370,2.994,1371,2.994,1372,2.994,1373,2.994,1374,2.994,1375,4.284,1376,4.284,1377,4.284,1378,4.284,1379,4.284,1380,2.994,1381,2.994,1382,2.994,1383,2.547,1384,2.994,1385,2.994,1386,4.284,1387,4.284,1388,2.994,1389,2.994,1390,2.994,1391,2.994,1392,2.994,1393,2.994,1394,2.994,1395,2.994,1396,2.994,1397,5.462,1398,4.284,1399,2.994,1400,2.994,1401,6.012,1402,2.994,1403,2.994,1404,2.994,1405,2.547,1406,2.994,1407,2.994,1408,2.547,1409,2.994,1410,2.994,1411,2.994,1412,2.994,1413,2.994,1414,2.547,1415,2.994,1416,2.994,1417,2.994,1418,2.994,1419,2.994,1420,4.284,1421,5.003,1422,2.253,1423,2.994,1424,2.994,1425,2.994,1426,2.994,1427,2.994,1428,2.994,1429,2.994,1430,2.994,1431,2.994,1432,2.994,1433,2.994,1434,2.994,1435,2.994,1436,2.994,1437,2.994,1438,2.994,1439,2.994,1440,2.547,1441,2.994,1442,2.994,1443,2.547,1444,2.994,1445,2.994]],["title/license.html",[1313,2.51,1314,2.51,1446,2.22]],["body/license.html",[7,0.01,11,0.657,13,0.383,14,0.341,16,0.155,19,0.155,27,0.945,55,1.295,59,0.035,60,0.008,61,0.008,81,2.574,113,0.657,118,0.702,124,1.034,129,1.146,132,1.034,134,2.155,139,0.945,151,0.657,153,0.299,181,1.627,189,4.915,274,0.751,314,0.617,337,1.034,358,2.018,363,1.295,430,1.295,438,1.906,470,1.034,521,2.076,555,1.146,567,0.87,671,1.146,675,1.146,690,2.853,696,1.295,698,1.295,699,5.255,715,1.295,740,1.146,771,2.209,810,1.295,811,1.034,812,1.295,826,1.295,870,1.034,905,1.295,907,1.146,925,2.447,1007,1.295,1044,4.594,1046,1.034,1047,1.295,1050,2.155,1051,2.155,1052,2.767,1060,1.295,1065,1.295,1070,1.295,1073,1.295,1082,4.063,1087,4.454,1088,1.146,1093,1.295,1103,1.295,1120,1.295,1134,4.291,1139,1.146,1146,3.581,1159,2.155,1168,2.767,1188,3.225,1195,1.906,1198,1.295,1205,1.295,1224,1.146,1226,3.225,1228,1.295,1230,1.295,1253,2.767,1259,1.146,1271,1.295,1279,2.155,1300,1.295,1333,2.155,1352,1.146,1360,2.767,1383,1.295,1405,2.767,1408,2.155,1414,1.295,1422,1.146,1440,1.295,1443,2.155,1446,5.078,1447,3.225,1448,3.252,1449,1.522,1450,1.522,1451,1.522,1452,5.235,1453,3.791,1454,4.209,1455,1.522,1456,5.962,1457,5.4,1458,1.522,1459,1.522,1460,5.4,1461,5.777,1462,4.543,1463,2.533,1464,1.522,1465,4.209,1466,1.522,1467,1.522,1468,3.791,1469,2.533,1470,1.522,1471,3.252,1472,2.533,1473,2.533,1474,1.522,1475,1.522,1476,6.177,1477,3.791,1478,2.533,1479,4.543,1480,1.522,1481,2.533,1482,1.522,1483,1.522,1484,1.522,1485,1.522,1486,1.522,1487,1.522,1488,1.522,1489,3.252,1490,1.522,1491,3.252,1492,2.533,1493,5.777,1494,1.522,1495,4.543,1496,5.235,1497,3.791,1498,1.522,1499,1.522,1500,1.522,1501,1.522,1502,1.522,1503,2.533,1504,1.522,1505,1.522,1506,6.748,1507,3.252,1508,2.533,1509,1.522,1510,5.235,1511,1.522,1512,2.533,1513,6.236,1514,1.522,1515,1.522,1516,1.522,1517,1.522,1518,1.522,1519,1.522,1520,2.533,1521,2.533,1522,1.522,1523,1.522,1524,1.522,1525,1.522,1526,1.522,1527,3.791,1528,4.209,1529,1.522,1530,2.533,1531,3.791,1532,2.533,1533,1.522,1534,4.209,1535,2.533,1536,1.522,1537,1.522,1538,3.252,1539,1.522,1540,1.522,1541,1.522,1542,2.533,1543,1.522,1544,1.522,1545,1.522,1546,3.252,1547,1.522,1548,1.522,1549,3.252,1550,1.522,1551,1.522,1552,1.522,1553,3.791,1554,5.4,1555,1.522,1556,2.533,1557,3.252,1558,2.533,1559,2.533,1560,2.533,1561,2.533,1562,2.533,1563,2.533,1564,3.252,1565,2.533,1566,2.533,1567,2.533,1568,2.533,1569,1.522,1570,2.533,1571,1.522,1572,4.209,1573,4.816,1574,3.252,1575,2.533,1576,2.533,1577,2.533,1578,1.522,1579,1.522,1580,3.252,1581,2.533,1582,1.522,1583,1.522,1584,1.522,1585,3.252,1586,1.522,1587,1.522,1588,1.522,1589,2.533,1590,2.533,1591,1.522,1592,1.522,1593,1.522,1594,1.522,1595,1.522,1596,1.522,1597,1.522,1598,2.533,1599,1.522,1600,1.522,1601,1.522,1602,1.522,1603,1.522,1604,1.522,1605,1.522,1606,1.522,1607,1.522,1608,1.522,1609,1.522,1610,1.522,1611,5.043,1612,1.522,1613,1.522,1614,1.522,1615,1.522,1616,1.522,1617,3.791,1618,2.533,1619,3.791,1620,1.522,1621,1.522,1622,3.252,1623,1.522,1624,1.522,1625,1.522,1626,1.522,1627,2.533,1628,1.522,1629,1.522,1630,4.209,1631,1.522,1632,1.522,1633,1.522,1634,1.522,1635,1.522,1636,3.252,1637,3.791,1638,1.522,1639,1.522,1640,1.522,1641,1.522,1642,1.522,1643,1.522,1644,1.522,1645,1.522,1646,1.522,1647,2.533,1648,1.522,1649,2.533,1650,1.522,1651,1.522,1652,1.522,1653,1.522,1654,1.522,1655,1.522,1656,1.522,1657,3.791,1658,3.252,1659,3.252,1660,3.252,1661,2.533,1662,3.252,1663,2.533,1664,2.533,1665,2.533,1666,1.522,1667,1.522,1668,1.522,1669,1.522,1670,1.522,1671,1.522,1672,1.522,1673,2.533,1674,1.522,1675,1.522,1676,1.522,1677,4.209,1678,1.522,1679,1.522,1680,1.522,1681,1.522,1682,1.522,1683,1.522,1684,1.522,1685,1.522,1686,1.522,1687,4.209,1688,1.522,1689,1.522,1690,1.522,1691,1.522,1692,1.522,1693,1.522,1694,1.522,1695,1.522,1696,1.522,1697,1.522,1698,1.522,1699,1.522,1700,1.522,1701,1.522,1702,1.522,1703,3.252,1704,1.522,1705,1.522,1706,1.522,1707,2.533,1708,1.522,1709,1.522,1710,1.522,1711,1.522,1712,1.522,1713,1.522,1714,1.522,1715,1.522,1716,1.522,1717,1.522,1718,1.522,1719,1.522,1720,1.522,1721,1.522,1722,1.522,1723,1.522,1724,2.533,1725,2.533,1726,1.522,1727,1.522,1728,1.522,1729,1.522,1730,1.522,1731,1.522,1732,1.522,1733,1.522,1734,1.522,1735,1.522,1736,1.522,1737,1.522,1738,1.522,1739,1.522,1740,1.522,1741,1.522,1742,1.522]],["title/modules.html",[2,2.073]],["body/modules.html",[1,3.538,2,2.249,6,3.233,7,0.02,8,3.233,60,0.02,61,0.02,65,3.233,66,3.233,319,3.921,1046,3.538,1224,5.203,1743,6.915,1744,6.915,1745,7.011,1746,5.21]],["title/overview.html",[1317,3.615]],["body/overview.html",[1,4.542,2,1.85,3,2.518,4,3.648,5,3.648,6,4.31,7,0.023,8,4.15,9,3.124,10,2.272,11,1.85,57,2.451,60,0.017,61,0.017,62,3.648,63,3.648,64,3.648,65,4.344,66,4.344,70,1.536,113,1.85,204,2.66,274,2.115,372,3.648,373,3.648,374,3.648,375,4.217,380,2.451,431,3.885,460,3.648,461,3.648,462,3.648,599,3.601,796,2.912,829,3.648,830,3.648,831,3.648,1071,3.648,1277,3.227,1317,3.227,1747,4.288,1748,4.288]],["title/properties.html",[121,0.78,957,2.22]],["body/properties.html",[7,0.023,16,0.542,17,2.832,60,0.02,61,0.02,121,0.984,247,3.316,308,2.636,575,3.629,771,3.629,1352,4.022,1422,4.022,1446,4.022,1447,4.547,1749,5.345,1750,5.345,1751,5.345,1752,5.345,1753,5.345,1754,5.345]],["title/miscellaneous/variables.html",[889,2.879,993,1.687]],["body/miscellaneous/variables.html",[2,1.906,7,0.023,15,2.351,17,1.655,27,3.178,39,2.541,41,3.323,42,2.658,43,2.658,44,2.351,45,2.351,51,1.655,60,0.014,61,0.014,84,2.122,86,2.122,87,2.122,95,1.938,115,2.074,120,0.375,121,1.198,125,1.323,126,0.801,127,3.396,135,2.035,137,3.178,138,3.323,143,2.351,144,2.351,145,3.323,153,0.613,171,2.478,172,2.478,173,2.828,174,1.541,178,1.786,193,3.323,195,2.658,203,1.541,237,3.323,239,2.351,240,2.658,241,2.351,242,2.351,264,1.44,273,1.938,278,3.396,455,2.122,468,3.454,516,2.351,518,2.351,567,1.786,592,2.525,603,2.351,656,2.351,657,3.323,663,2.658,664,2.658,665,2.658,666,2.658,667,2.351,668,2.658,669,2.351,670,2.351,671,2.351,672,2.658,785,2.351,786,2.351,800,4.256,806,2.658,813,3.323,833,2.999,834,3.323,848,2.658,852,3.323,889,2.122,901,1.938,902,2.122,921,2.658,922,2.658,923,2.658,931,2.658,933,3.757,935,2.658,993,1.786,995,2.658,996,4.358,1002,2.351,1139,2.351,1755,3.124,1756,3.124,1757,3.124,1758,4.416,1759,4.416,1760,3.124,1761,4.416,1762,3.124,1763,3.124,1764,3.124,1765,3.124,1766,3.124,1767,3.124,1768,3.124]],["title/routes.html",[1769,4.087]],["body/routes.html",[7,0.021,60,0.021,61,0.021,1769,4.824]]],"invertedIndex":[["",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["0",{"_index":106,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["0.0.1",{"_index":1749,"title":{},"body":{"properties.html":{}}}],["0.0.8",{"_index":965,"title":{},"body":{"dependencies.html":{}}}],["0.0001",{"_index":88,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.001",{"_index":85,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["0.1.0.tgz",{"_index":1402,"title":{},"body":{"index.html":{}}}],["0.1.13",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["0.13.2",{"_index":976,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":984,"title":{},"body":{"dependencies.html":{}}}],["0.3.2",{"_index":973,"title":{},"body":{"dependencies.html":{}}}],["0.5.1",{"_index":975,"title":{},"body":{"dependencies.html":{}}}],["0/1",{"_index":941,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":942,"title":{},"body":{"coverage.html":{}}}],["01002",{"_index":287,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1",{"_index":274,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"overview.html":{}}}],["1.1.19",{"_index":959,"title":{},"body":{"dependencies.html":{}}}],["1.2",{"_index":283,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["1.2355",{"_index":152,"title":{},"body":{"classes/EsHitDto.html":{}}}],["1/1",{"_index":934,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":231,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{}}}],["100",{"_index":928,"title":{},"body":{"coverage.html":{}}}],["100)].tostring",{"_index":409,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["102",{"_index":1031,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["11/11",{"_index":952,"title":{},"body":{"coverage.html":{}}}],["12",{"_index":1071,"title":{},"body":{"miscellaneous/enumerations.html":{},"overview.html":{}}}],["14.0.1",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["14.35",{"_index":1161,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["1979",{"_index":703,"title":{},"body":{"classes/PaperDto.html":{}}}],["1998",{"_index":1177,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["2",{"_index":1277,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"overview.html":{}}}],["2.0",{"_index":1448,"title":{},"body":{"license.html":{}}}],["2.0.0",{"_index":967,"title":{},"body":{"dependencies.html":{}}}],["2/2",{"_index":929,"title":{},"body":{"coverage.html":{}}}],["200",{"_index":742,"title":{},"body":{"controllers/PapersController.html":{},"classes/SearchResultDto.html":{}}}],["2004",{"_index":1450,"title":{},"body":{"license.html":{}}}],["2022.05.30.14.43",{"_index":1371,"title":{},"body":{"index.html":{}}}],["2324",{"_index":1184,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["3",{"_index":279,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["3.0.2",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["3.0.3",{"_index":964,"title":{},"body":{"dependencies.html":{}}}],["3.2.0",{"_index":981,"title":{},"body":{"dependencies.html":{}}}],["3.6.1",{"_index":974,"title":{},"body":{"dependencies.html":{}}}],["3/3",{"_index":930,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":218,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["314",{"_index":660,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["4",{"_index":1278,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["4.6.0",{"_index":971,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":936,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1202,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["401",{"_index":1127,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["415(unsupported",{"_index":1197,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["422",{"_index":1193,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["424",{"_index":1208,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["429",{"_index":1213,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["46toawmdawr5bxv1awqykwzub2rlxzmaaaaaaaaaacobywadawr4bxv1awqxagzub2rlxzeaaaaaaaaaaaebyqadawr5bxv1awqykgzub2rlxziaaaaaaaaaaawbygacbxv1awqyaaafdxvpzdeaaqltyxrjaf9hbgw_gaaaaa",{"_index":255,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["495c",{"_index":684,"title":{},"body":{"classes/PaperDto.html":{}}}],["5",{"_index":204,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["5.0.8",{"_index":969,"title":{},"body":{"dependencies.html":{}}}],["5.1.0",{"_index":979,"title":{},"body":{"dependencies.html":{}}}],["5/5",{"_index":951,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1484,"title":{},"body":{"license.html":{}}}],["6",{"_index":1747,"title":{},"body":{"overview.html":{}}}],["6/6",{"_index":938,"title":{},"body":{"coverage.html":{}}}],["60",{"_index":700,"title":{},"body":{"classes/PaperDto.html":{}}}],["69c45ca738ff",{"_index":686,"title":{},"body":{"classes/PaperDto.html":{}}}],["7.5.5",{"_index":992,"title":{},"body":{"dependencies.html":{}}}],["7/7",{"_index":950,"title":{},"body":{"coverage.html":{}}}],["7000",{"_index":1441,"title":{},"body":{"index.html":{}}}],["8",{"_index":1748,"title":{},"body":{"overview.html":{}}}],["8.0.0",{"_index":966,"title":{},"body":{"dependencies.html":{}}}],["8.0.6",{"_index":970,"title":{},"body":{"dependencies.html":{}}}],["8/8",{"_index":937,"title":{},"body":{"coverage.html":{}}}],["8dfa",{"_index":685,"title":{},"body":{"classes/PaperDto.html":{}}}],["9",{"_index":1459,"title":{},"body":{"license.html":{}}}],["_id",{"_index":286,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_index",{"_index":284,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["_score",{"_index":143,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["_shards",{"_index":239,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["_source",{"_index":144,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["above",{"_index":1640,"title":{},"body":{"license.html":{}}}],["accelerator",{"_index":846,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["accept",{"_index":1124,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptable",{"_index":1122,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acceptance",{"_index":1705,"title":{},"body":{"license.html":{}}}],["accepted",{"_index":1034,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["accepting",{"_index":1703,"title":{},"body":{"license.html":{}}}],["access",{"_index":1092,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["accessed",{"_index":1233,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["according",{"_index":1123,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acquired",{"_index":659,"title":{},"body":{"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["acquires",{"_index":561,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["act",{"_index":1711,"title":{},"body":{"license.html":{}}}],["acting",{"_index":1228,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["action",{"_index":1210,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["acts",{"_index":1685,"title":{},"body":{"license.html":{}}}],["actual",{"_index":158,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{}}}],["adapters",{"_index":1330,"title":{},"body":{"index.html":{}}}],["add",{"_index":1443,"title":{},"body":{"index.html":{},"license.html":{}}}],["addendum",{"_index":1629,"title":{},"body":{"license.html":{}}}],["additional",{"_index":1630,"title":{},"body":{"license.html":{}}}],["additions",{"_index":1529,"title":{},"body":{"license.html":{}}}],["addons/in",{"_index":961,"title":{},"body":{"dependencies.html":{}}}],["address",{"_index":572,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["admin",{"_index":1283,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["advanced",{"_index":1320,"title":{},"body":{"index.html":{}}}],["advised",{"_index":1701,"title":{},"body":{"license.html":{}}}],["against",{"_index":1590,"title":{},"body":{"license.html":{}}}],["agent",{"_index":1057,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["agree",{"_index":1714,"title":{},"body":{"license.html":{}}}],["agreed",{"_index":1660,"title":{},"body":{"license.html":{}}}],["agreement",{"_index":1644,"title":{},"body":{"license.html":{}}}],["aims",{"_index":1335,"title":{},"body":{"index.html":{}}}],["alerting",{"_index":1326,"title":{},"body":{"index.html":{}}}],["algol",{"_index":692,"title":{},"body":{"classes/PaperDto.html":{}}}],["algol):vii",{"_index":695,"title":{},"body":{"classes/PaperDto.html":{}}}],["alive",{"_index":209,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{}}}],["alleging",{"_index":1595,"title":{},"body":{"license.html":{}}}],["allowed",{"_index":171,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["allowedproperties",{"_index":173,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["alone",{"_index":1586,"title":{},"body":{"license.html":{}}}],["along",{"_index":1623,"title":{},"body":{"license.html":{}}}],["alongside",{"_index":1628,"title":{},"body":{"license.html":{}}}],["alternativelly",{"_index":1404,"title":{},"body":{"index.html":{}}}],["ambiguous",{"_index":1063,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ammount",{"_index":913,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["amongst",{"_index":290,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["amount",{"_index":79,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/PageInterceptor.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["and/or",{"_index":1708,"title":{},"body":{"license.html":{}}}],["andrews",{"_index":694,"title":{},"body":{"classes/PaperDto.html":{}}}],["annotations",{"_index":1517,"title":{},"body":{"license.html":{}}}],["another",{"_index":1098,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["anything",{"_index":1113,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["apache",{"_index":1447,"title":{},"body":{"license.html":{},"properties.html":{}}}],["api",{"_index":352,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["apiextramodels",{"_index":165,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["apiextramodels(requestdto",{"_index":773,"title":{},"body":{"controllers/PapersController.html":{}}}],["apigatewaytimeoutresponse",{"_index":763,"title":{},"body":{"controllers/PapersController.html":{}}}],["apioperation",{"_index":764,"title":{},"body":{"controllers/PapersController.html":{}}}],["apiproperty",{"_index":166,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["apiproperty({description",{"_index":525,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{}}}],["apipropertyoptional",{"_index":167,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["apiresponse",{"_index":765,"title":{},"body":{"controllers/PapersController.html":{}}}],["apis",{"_index":1435,"title":{},"body":{"index.html":{}}}],["apitags",{"_index":766,"title":{},"body":{"controllers/PapersController.html":{}}}],["apitags('search",{"_index":775,"title":{},"body":{"controllers/PapersController.html":{}}}],["apitags('search')@apioperation({summary",{"_index":738,"title":{},"body":{"controllers/PapersController.html":{}}}],["app",{"_index":1401,"title":{},"body":{"index.html":{}}}],["app_interceptor",{"_index":23,"title":{},"body":{"modules/AppModule.html":{}}}],["appear",{"_index":1626,"title":{},"body":{"license.html":{}}}],["appendix",{"_index":1512,"title":{},"body":{"license.html":{}}}],["applicable",{"_index":1658,"title":{},"body":{"license.html":{}}}],["application",{"_index":17,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["application/controller/health.controller",{"_index":324,"title":{},"body":{"modules/HealthModule.html":{}}}],["application/json",{"_index":654,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["applies",{"_index":1579,"title":{},"body":{"license.html":{}}}],["apply",{"_index":1408,"title":{},"body":{"index.html":{},"license.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appropriate",{"_index":812,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["appropriateness",{"_index":1672,"title":{},"body":{"license.html":{}}}],["april",{"_index":1180,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["architectural",{"_index":1331,"title":{},"body":{"index.html":{}}}],["architecture",{"_index":1316,"title":{},"body":{"index.html":{}}}],["archives",{"_index":1735,"title":{},"body":{"license.html":{}}}],["args",{"_index":480,"title":{},"body":{"injectables/LoggerService.html":{}}}],["args.length",{"_index":512,"title":{},"body":{"injectables/LoggerService.html":{}}}],["arguments",{"_index":482,"title":{},"body":{"injectables/LoggerService.html":{}}}],["argumentshost",{"_index":334,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["arising",{"_index":1691,"title":{},"body":{"license.html":{}}}],["array",{"_index":289,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["asc",{"_index":842,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["asserted",{"_index":1720,"title":{},"body":{"license.html":{}}}],["assigned",{"_index":1077,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["associated",{"_index":715,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["assume",{"_index":1674,"title":{},"body":{"license.html":{}}}],["async",{"_index":536,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["attach",{"_index":1723,"title":{},"body":{"license.html":{}}}],["attached",{"_index":1511,"title":{},"body":{"license.html":{}}}],["attempting",{"_index":1234,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["attribution",{"_index":1617,"title":{},"body":{"license.html":{}}}],["authenticate",{"_index":1129,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authentication",{"_index":1106,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["author",{"_index":1752,"title":{},"body":{"properties.html":{}}}],["authoritative",{"_index":1254,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["authorized",{"_index":1463,"title":{},"body":{"license.html":{}}}],["authors",{"_index":668,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["authorship",{"_index":1507,"title":{},"body":{"license.html":{}}}],["automation",{"_index":1348,"title":{},"body":{"index.html":{}}}],["auxiliary",{"_index":1247,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["available",{"_index":1046,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{},"modules.html":{}}}],["await",{"_index":608,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["axiosres.data",{"_index":647,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["b",{"_index":1608,"title":{},"body":{"license.html":{}}}],["back",{"_index":743,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{}}}],["backwards",{"_index":628,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["bad",{"_index":1203,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["bad_gateway",{"_index":1227,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["bad_request",{"_index":1099,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["badrequestexception",{"_index":875,"title":{},"body":{"injectables/SearchService.html":{}}}],["bank",{"_index":911,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["based",{"_index":740,"title":{},"body":{"controllers/PapersController.html":{},"index.html":{},"license.html":{}}}],["basename",{"_index":1373,"title":{},"body":{"index.html":{}}}],["bash",{"_index":1369,"title":{},"body":{"index.html":{}}}],["bash_source[0",{"_index":1374,"title":{},"body":{"index.html":{}}}],["basic",{"_index":351,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["basis",{"_index":1661,"title":{},"body":{"license.html":{}}}],["before",{"_index":261,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["behalf",{"_index":1534,"title":{},"body":{"license.html":{}}}],["being",{"_index":1028,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["below",{"_index":1383,"title":{},"body":{"index.html":{},"license.html":{}}}],["beneficial",{"_index":1488,"title":{},"body":{"license.html":{}}}],["bind",{"_index":1526,"title":{},"body":{"license.html":{}}}],["block",{"_index":524,"title":{},"body":{"classes/PageDto.html":{}}}],["body",{"_index":615,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{}}}],["boilerplate",{"_index":1352,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["boolean",{"_index":257,"title":{},"body":{"classes/EsResponseDto.html":{},"guards/RolesGuard.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["bootstrap",{"_index":954,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["brackets",{"_index":1725,"title":{},"body":{"license.html":{}}}],["browse",{"_index":1745,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":1743,"title":{},"body":{"modules.html":{}}}],["build",{"_index":1318,"title":{},"body":{"index.html":{}}}],["builddocker",{"_index":1375,"title":{},"body":{"index.html":{}}}],["building",{"_index":1357,"title":{},"body":{"index.html":{}}}],["c",{"_index":1614,"title":{},"body":{"license.html":{}}}],["cache",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"injectables/PageInterceptor.html":{},"dependencies.html":{}}}],["cache_manager",{"_index":577,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["cacheinterceptor",{"_index":20,"title":{},"body":{"modules/AppModule.html":{}}}],["cachemanager",{"_index":541,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["cachemodule",{"_index":21,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{}}}],["cachemodule.register",{"_index":47,"title":{},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{}}}],["call",{"_index":425,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["called",{"_index":1388,"title":{},"body":{"index.html":{}}}],["callhandler",{"_index":421,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["calling",{"_index":1420,"title":{},"body":{"index.html":{}}}],["can't",{"_index":133,"title":{},"body":{"interfaces/EqQueryString.html":{}}}],["canactivate",{"_index":801,"title":{},"body":{"guards/RolesGuard.html":{}}}],["canactivate(context",{"_index":807,"title":{},"body":{"guards/RolesGuard.html":{}}}],["capable",{"_index":1118,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["carry",{"_index":1609,"title":{},"body":{"license.html":{}}}],["case",{"_index":353,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["catch",{"_index":330,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["catch(exception",{"_index":331,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["catch(httpexception",{"_index":340,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["cause",{"_index":1473,"title":{},"body":{"license.html":{}}}],["caused",{"_index":1059,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["cc3c3cca",{"_index":682,"title":{},"body":{"classes/PaperDto.html":{}}}],["cd",{"_index":1353,"title":{},"body":{"index.html":{}}}],["cell",{"_index":718,"title":{},"body":{"classes/PaperDto.html":{}}}],["certain",{"_index":188,"title":{},"body":{"interfaces/EsQuery.html":{},"classes/PaperDto.html":{}}}],["change",{"_index":635,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["changed",{"_index":1613,"title":{},"body":{"license.html":{}}}],["character",{"_index":1690,"title":{},"body":{"license.html":{}}}],["characteristics",{"_index":1121,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["charge",{"_index":1564,"title":{},"body":{"license.html":{}}}],["chart",{"_index":1396,"title":{},"body":{"index.html":{}}}],["chart.deployment",{"_index":1394,"title":{},"body":{"index.html":{}}}],["check",{"_index":300,"title":{},"body":{"controllers/HealthController.html":{},"injectables/PageInterceptor.html":{},"index.html":{}}}],["checks",{"_index":303,"title":{},"body":{"controllers/HealthController.html":{},"guards/RolesGuard.html":{}}}],["choices",{"_index":1256,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["choose",{"_index":1704,"title":{},"body":{"license.html":{}}}],["claim",{"_index":1592,"title":{},"body":{"license.html":{}}}],["claims",{"_index":1581,"title":{},"body":{"license.html":{}}}],["class",{"_index":59,"title":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"coverage.html":{},"dependencies.html":{},"license.html":{}}}],["classes",{"_index":70,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"overview.html":{}}}],["cleint_error",{"_index":1274,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["client",{"_index":986,"title":{},"body":{"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["client's",{"_index":1023,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["clone",{"_index":1350,"title":{},"body":{"index.html":{}}}],["cluster",{"_index":1398,"title":{},"body":{"index.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_commonmodule",{"_index":62,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_exports",{"_index":64,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_commonmodule_imports",{"_index":63,"title":{},"body":{"modules/CommonModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule",{"_index":372,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_exports",{"_index":373,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_httpresponsemodule_providers",{"_index":374,"title":{},"body":{"modules/HttpResponseModule.html":{},"overview.html":{}}}],["cluster_loggermodule",{"_index":460,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_exports",{"_index":461,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_loggermodule_providers",{"_index":462,"title":{},"body":{"modules/LoggerModule.html":{},"overview.html":{}}}],["cluster_searchmodule",{"_index":829,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_exports",{"_index":830,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["cluster_searchmodule_providers",{"_index":831,"title":{},"body":{"modules/SearchModule.html":{},"overview.html":{}}}],["code",{"_index":358,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["coffee",{"_index":1186,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["colors",{"_index":513,"title":{},"body":{"injectables/LoggerService.html":{}}}],["combination",{"_index":1587,"title":{},"body":{"license.html":{}}}],["comission",{"_index":80,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["comman",{"_index":1438,"title":{},"body":{"index.html":{}}}],["comment",{"_index":1729,"title":{},"body":{"license.html":{}}}],["commercial",{"_index":1698,"title":{},"body":{"license.html":{}}}],["commision",{"_index":912,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["commission",{"_index":914,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["common",{"_index":363,"title":{},"body":{"classes/HttpResponseException.html":{},"license.html":{}}}],["common/common.module",{"_index":34,"title":{},"body":{"modules/AppModule.html":{}}}],["commonmodule",{"_index":6,"title":{"modules/CommonModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules.html":{},"overview.html":{}}}],["communication",{"_index":1538,"title":{},"body":{"license.html":{}}}],["compiled",{"_index":1502,"title":{},"body":{"license.html":{}}}],["complete",{"_index":1035,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completed",{"_index":1036,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["completion",{"_index":262,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["compliance",{"_index":1738,"title":{},"body":{"license.html":{}}}],["complies",{"_index":1634,"title":{},"body":{"license.html":{}}}],["comply",{"_index":1022,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["compodoc",{"_index":1439,"title":{},"body":{"index.html":{}}}],["compodoc/compodoc",{"_index":958,"title":{},"body":{"dependencies.html":{}}}],["components",{"_index":1339,"title":{},"body":{"index.html":{}}}],["computer",{"_index":696,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["condition",{"_index":1220,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditional",{"_index":1091,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["conditions",{"_index":189,"title":{},"body":{"interfaces/EsQuery.html":{},"license.html":{}}}],["config",{"_index":90,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["config/env.objects",{"_index":28,"title":{},"body":{"modules/AppModule.html":{}}}],["config/env.validation",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["configmap.yaml",{"_index":1411,"title":{},"body":{"index.html":{}}}],["configmap/app",{"_index":1416,"title":{},"body":{"index.html":{}}}],["configmodule",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["configmodule.forroot",{"_index":48,"title":{},"body":{"modules/AppModule.html":{}}}],["configuration",{"_index":27,"title":{},"body":{"modules/AppModule.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["conflict",{"_index":1137,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["congig",{"_index":92,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["connected",{"_index":1341,"title":{},"body":{"index.html":{}}}],["connection",{"_index":1029,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["consequential",{"_index":1689,"title":{},"body":{"license.html":{}}}],["consistent",{"_index":1710,"title":{},"body":{"license.html":{}}}],["conspicuously",{"_index":1550,"title":{},"body":{"license.html":{}}}],["const",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/HttpExceptionFilter.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/VirtualBankOptions.html":{}}}],["constitutes",{"_index":1596,"title":{},"body":{"license.html":{}}}],["constructed",{"_index":790,"title":{},"body":{"classes/RequestDto.html":{}}}],["constructor",{"_index":196,"title":{},"body":{"classes/EsQueryDto.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["constructor(code",{"_index":853,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["constructor(context",{"_index":474,"title":{},"body":{"injectables/LoggerService.html":{}}}],["constructor(data",{"_index":365,"title":{},"body":{"classes/HttpResponseException.html":{},"classes/PageDto.html":{}}}],["constructor(httpservice",{"_index":539,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["constructor(private",{"_index":315,"title":{},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["constructor(query",{"_index":787,"title":{},"body":{"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["constructor(reflector",{"_index":802,"title":{},"body":{"guards/RolesGuard.html":{}}}],["constructs",{"_index":198,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["construed",{"_index":1631,"title":{},"body":{"license.html":{}}}],["contained",{"_index":1205,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["containing",{"_index":291,"title":{},"body":{"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{}}}],["contains",{"_index":244,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/RequestDto.html":{}}}],["content",{"_index":567,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["contents",{"_index":675,"title":{},"body":{"classes/PaperDto.html":{},"index.html":{},"license.html":{}}}],["context",{"_index":424,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["context.getclass",{"_index":817,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.getclass().name",{"_index":449,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gethandler",{"_index":816,"title":{},"body":{"guards/RolesGuard.html":{}}}],["context.gethandler().name",{"_index":451,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.gettype",{"_index":441,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["context.switchtohttp().getrequest",{"_index":452,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["context.switchtohttp().getresponse",{"_index":453,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["contexttype",{"_index":440,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["continue",{"_index":1018,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["contract",{"_index":1478,"title":{},"body":{"license.html":{}}}],["contribution",{"_index":1528,"title":{},"body":{"license.html":{}}}],["contribution(s",{"_index":1585,"title":{},"body":{"license.html":{}}}],["contributions",{"_index":1636,"title":{},"body":{"license.html":{}}}],["contributor",{"_index":1554,"title":{},"body":{"license.html":{}}}],["contributory",{"_index":1597,"title":{},"body":{"license.html":{}}}],["control",{"_index":1188,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["controlled",{"_index":1467,"title":{},"body":{"license.html":{}}}],["controller",{"_index":294,"title":{"controllers/HealthController.html":{},"controllers/PapersController.html":{}},"body":{"controllers/HealthController.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["controller('health",{"_index":313,"title":{},"body":{"controllers/HealthController.html":{}}}],["controllername",{"_index":448,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllername}:${handlername",{"_index":459,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["controllers",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"overview.html":{}}}],["contruct",{"_index":614,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["contructor",{"_index":367,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["contructs",{"_index":805,"title":{},"body":{"guards/RolesGuard.html":{}}}],["conversions",{"_index":1504,"title":{},"body":{"license.html":{}}}],["copies",{"_index":1604,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1052,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["copyright",{"_index":1461,"title":{},"body":{"license.html":{}}}],["core/domain",{"_index":768,"title":{},"body":{"controllers/PapersController.html":{}}}],["core/domain/dtos/request.dto",{"_index":767,"title":{},"body":{"controllers/PapersController.html":{}}}],["core/helpers/env.helper",{"_index":917,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["core/interceptors",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["core/interceptors/page.interceptor",{"_index":762,"title":{},"body":{"controllers/PapersController.html":{}}}],["core/modules",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{}}}],["core/services/common/search.service",{"_index":761,"title":{},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{}}}],["correct",{"_index":1200,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["corresponds",{"_index":1064,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["count",{"_index":245,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["counterclaim",{"_index":1593,"title":{},"body":{"license.html":{}}}],["coupled",{"_index":1338,"title":{},"body":{"index.html":{}}}],["coverage",{"_index":924,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["created",{"_index":1038,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["createdmonitoring",{"_index":1419,"title":{},"body":{"index.html":{}}}],["createlogger",{"_index":467,"title":{},"body":{"injectables/LoggerService.html":{}}}],["createlogger(context",{"_index":476,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creates",{"_index":478,"title":{},"body":{"injectables/LoggerService.html":{}}}],["creating",{"_index":1336,"title":{},"body":{"index.html":{}}}],["cross",{"_index":1591,"title":{},"body":{"license.html":{}}}],["ctx",{"_index":341,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["ctx.getresponse",{"_index":343,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["current",{"_index":1138,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["currently",{"_index":1236,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["custom",{"_index":391,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["customary",{"_index":1653,"title":{},"body":{"license.html":{}}}],["customer",{"_index":908,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["d",{"_index":1007,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["damages",{"_index":1687,"title":{},"body":{"license.html":{}}}],["daniil",{"_index":723,"title":{},"body":{"classes/PaperDto.html":{}}}],["data",{"_index":135,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["data.description",{"_index":370,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["data.map((el",{"_index":633,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["data.reverse",{"_index":638,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["data.status",{"_index":371,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["date",{"_index":1601,"title":{},"body":{"license.html":{}}}],["date.now",{"_index":439,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["davie",{"_index":707,"title":{},"body":{"classes/PaperDto.html":{}}}],["days",{"_index":1006,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["db",{"_index":963,"title":{},"body":{"dependencies.html":{}}}],["debug",{"_index":469,"title":{},"body":{"injectables/LoggerService.html":{},"index.html":{}}}],["debug(message",{"_index":479,"title":{},"body":{"injectables/LoggerService.html":{}}}],["decimal",{"_index":1299,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decimalplaces",{"_index":1293,"title":{},"body":{"miscellaneous/functions.html":{}}}],["decorates",{"_index":1765,"title":{},"body":{"miscellaneous/variables.html":{}}}],["decorators",{"_index":147,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["default",{"_index":127,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["default_field",{"_index":123,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{}}}],["defaults",{"_index":563,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["defend",{"_index":1716,"title":{},"body":{"license.html":{}}}],["defined",{"_index":153,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["definition",{"_index":1469,"title":{},"body":{"license.html":{}}}],["definitions",{"_index":1455,"title":{},"body":{"license.html":{}}}],["definitive",{"_index":1045,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["deleted",{"_index":551,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletepit",{"_index":537,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletepit(pitid",{"_index":547,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletes",{"_index":549,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deletion",{"_index":556,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deliberate",{"_index":1682,"title":{},"body":{"license.html":{}}}],["denis",{"_index":725,"title":{},"body":{"classes/PaperDto.html":{}}}],["depended",{"_index":1211,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"injectables/PageInterceptor.html":{},"modules/SearchModule.html":{},"dependencies.html":{},"overview.html":{}}}],["dependency",{"_index":1209,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["depending",{"_index":554,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["deploy",{"_index":1358,"title":{},"body":{"index.html":{}}}],["deployment",{"_index":1321,"title":{},"body":{"index.html":{}}}],["deployment.apps/app",{"_index":1417,"title":{},"body":{"index.html":{}}}],["deployment.yaml",{"_index":1412,"title":{},"body":{"index.html":{}}}],["deposit_fee_per_minute",{"_index":87,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["depth",{"_index":514,"title":{},"body":{"injectables/LoggerService.html":{}}}],["derivative",{"_index":699,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["derived",{"_index":1514,"title":{},"body":{"license.html":{}}}],["desc",{"_index":1280,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["describing",{"_index":1654,"title":{},"body":{"license.html":{}}}],["description",{"_index":16,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{},"license.html":{},"properties.html":{}}}],["design",{"_index":1334,"title":{},"body":{"index.html":{}}}],["designated",{"_index":1552,"title":{},"body":{"license.html":{}}}],["desired",{"_index":1425,"title":{},"body":{"index.html":{}}}],["details",{"_index":307,"title":{},"body":{"controllers/HealthController.html":{}}}],["determining",{"_index":1671,"title":{},"body":{"license.html":{}}}],["developed",{"_index":701,"title":{},"body":{"classes/PaperDto.html":{}}}],["development",{"_index":1393,"title":{},"body":{"index.html":{}}}],["different",{"_index":1088,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["direct",{"_index":1471,"title":{},"body":{"license.html":{}}}],["direction",{"_index":1474,"title":{},"body":{"license.html":{}}}],["disabled",{"_index":897,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disableerrormessages",{"_index":893,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["disclaimer",{"_index":1656,"title":{},"body":{"license.html":{}}}],["discussing",{"_index":1547,"title":{},"body":{"license.html":{}}}],["display",{"_index":1279,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["displayed",{"_index":837,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["distribute",{"_index":1572,"title":{},"body":{"license.html":{}}}],["distributed",{"_index":1622,"title":{},"body":{"license.html":{}}}],["distribution",{"_index":1454,"title":{},"body":{"license.html":{}}}],["dns",{"_index":1248,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dochttp://localhost:7000",{"_index":1442,"title":{},"body":{"index.html":{}}}],["docker",{"_index":1386,"title":{},"body":{"index.html":{}}}],["document",{"_index":139,"title":{},"body":{"classes/EsHitDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["documentation",{"_index":925,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["documents",{"_index":252,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/SearchService.html":{}}}],["domain/dtos",{"_index":582,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["domain/dtos/elastic/es",{"_index":583,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["domain/dtos/page",{"_index":598,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/dtos/request.dto",{"_index":586,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/dtos/search",{"_index":588,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/enums",{"_index":405,"title":{},"body":{"injectables/HttpResponseService.html":{},"guards/RolesGuard.html":{}}}],["domain/enums/es",{"_index":590,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/enums/page",{"_index":594,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["domain/interfaces",{"_index":368,"title":{},"body":{"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{}}}],["domain/interfaces/elastic/es",{"_index":596,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["don't",{"_index":1728,"title":{},"body":{"license.html":{}}}],["dotenv",{"_index":977,"title":{},"body":{"dependencies.html":{}}}],["driven",{"_index":1068,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["dto",{"_index":172,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["dtos/elastic/es",{"_index":292,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["due",{"_index":1101,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["e.g",{"_index":1244,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["each",{"_index":81,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["easier",{"_index":1733,"title":{},"body":{"license.html":{}}}],["easily",{"_index":1340,"title":{},"body":{"index.html":{}}}],["editorial",{"_index":1515,"title":{},"body":{"license.html":{}}}],["el._source",{"_index":634,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["elaborations",{"_index":1518,"title":{},"body":{"license.html":{}}}],["elastic/es",{"_index":794,"title":{},"body":{"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchResultDto.html":{}}}],["elastichsearch",{"_index":570,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["elasticsearch",{"_index":142,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["electronic",{"_index":1535,"title":{},"body":{"license.html":{}}}],["elements",{"_index":216,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{}}}],["empty",{"_index":199,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/HttpResponse.html":{}}}],["enableimplicitconversion",{"_index":100,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["enclosed",{"_index":1724,"title":{},"body":{"license.html":{}}}],["encountered",{"_index":1218,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["end",{"_index":1722,"title":{},"body":{"license.html":{}}}],["endpoint",{"_index":1421,"title":{},"body":{"index.html":{}}}],["entities",{"_index":1120,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entity",{"_index":1044,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["entry",{"_index":1289,"title":{},"body":{"miscellaneous/functions.html":{}}}],["enum",{"_index":918,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["enumerations",{"_index":994,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["enums",{"_index":662,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["env",{"_index":72,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["environmanet",{"_index":1291,"title":{},"body":{"miscellaneous/functions.html":{}}}],["environment",{"_index":1342,"title":{},"body":{"index.html":{}}}],["environmentvariables",{"_index":69,"title":{"classes/EnvironmentVariables.html":{}},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{}}}],["envobjects",{"_index":919,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{}}}],["eq",{"_index":281,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["eqquerystring",{"_index":112,"title":{"interfaces/EqQueryString.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"coverage.html":{}}}],["error",{"_index":306,"title":{},"body":{"controllers/HealthController.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["error(errors.tostring",{"_index":109,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["error(message",{"_index":483,"title":{},"body":{"injectables/LoggerService.html":{}}}],["error.message",{"_index":446,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["error.stack",{"_index":508,"title":{},"body":{"injectables/LoggerService.html":{}}}],["errors",{"_index":101,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["errors.length",{"_index":105,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["es",{"_index":190,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["es_ip",{"_index":534,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["es_port",{"_index":535,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["es_query",{"_index":786,"title":{},"body":{"classes/RequestDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["es_query.query.query_string.query",{"_index":886,"title":{},"body":{"injectables/SearchService.html":{}}}],["eshitdto",{"_index":136,"title":{"classes/EsHitDto.html":{}},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["espit",{"_index":176,"title":{"interfaces/EsPit.html":{}},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["esq",{"_index":878,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.query",{"_index":880,"title":{},"body":{"injectables/SearchService.html":{}}}],["esq.size",{"_index":879,"title":{},"body":{"injectables/SearchService.html":{}}}],["esquery",{"_index":184,"title":{"interfaces/EsQuery.html":{}},"body":{"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"coverage.html":{}}}],["esquerydto",{"_index":192,"title":{"classes/EsQueryDto.html":{}},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsedto",{"_index":236,"title":{"classes/EsResponseDto.html":{}},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["esresponsehits",{"_index":251,"title":{"interfaces/EsResponseHits.html":{}},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["estime",{"_index":559,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["estime.min",{"_index":564,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["evaluated",{"_index":1150,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["even",{"_index":1700,"title":{},"body":{"license.html":{}}}],["event",{"_index":1678,"title":{},"body":{"license.html":{}}}],["evidence",{"_index":1174,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["example",{"_index":151,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"license.html":{}}}],["except",{"_index":1574,"title":{},"body":{"license.html":{}}}],["exception",{"_index":338,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["exception.filter",{"_index":769,"title":{},"body":{"controllers/PapersController.html":{}}}],["exception.filter.ts",{"_index":327,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"coverage.html":{}}}],["exception.filter.ts:5",{"_index":335,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["exception.getstatus",{"_index":344,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["exception.message",{"_index":347,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["exceptionfactory",{"_index":894,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["exceptionfilter",{"_index":329,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["excerpt",{"_index":688,"title":{},"body":{"classes/PaperDto.html":{}}}],["exchangeable",{"_index":1344,"title":{},"body":{"index.html":{}}}],["excluding",{"_index":1549,"title":{},"body":{"license.html":{}}}],["exclusive",{"_index":1563,"title":{},"body":{"license.html":{}}}],["execute",{"_index":268,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["executed",{"_index":1645,"title":{},"body":{"license.html":{}}}],["executioncontext",{"_index":419,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["exercise",{"_index":1676,"title":{},"body":{"license.html":{}}}],["exercising",{"_index":1490,"title":{},"body":{"license.html":{}}}],["exit",{"_index":1385,"title":{},"body":{"index.html":{}}}],["expand",{"_index":978,"title":{},"body":{"dependencies.html":{}}}],["expandenvvariables",{"_index":916,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["expands",{"_index":1290,"title":{},"body":{"miscellaneous/functions.html":{}}}],["expandvariables",{"_index":53,"title":{},"body":{"modules/AppModule.html":{}}}],["expect",{"_index":1171,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation",{"_index":1170,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expectation_failed",{"_index":1169,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["expected",{"_index":1189,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["explicitly",{"_index":1638,"title":{},"body":{"license.html":{}}}],["explore",{"_index":1434,"title":{},"body":{"index.html":{}}}],["export",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["exports",{"_index":68,"title":{},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["express",{"_index":438,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":364,"title":{},"body":{"classes/HttpResponseException.html":{},"interfaces/ValidationPipeOptions.html":{}}}],["extent",{"_index":1166,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["f",{"_index":1409,"title":{},"body":{"index.html":{}}}],["f763",{"_index":683,"title":{},"body":{"classes/PaperDto.html":{}}}],["facilitates",{"_index":1346,"title":{},"body":{"index.html":{}}}],["factory",{"_index":898,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["failed",{"_index":277,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["failed_dependency",{"_index":1207,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["failure",{"_index":1696,"title":{},"body":{"license.html":{}}}],["faker",{"_index":982,"title":{},"body":{"dependencies.html":{}}}],["false",{"_index":104,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{}}}],["fee",{"_index":905,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["field",{"_index":128,"title":{},"body":{"interfaces/EqQueryString.html":{},"miscellaneous/enumerations.html":{}}}],["fields",{"_index":124,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["fifty",{"_index":1482,"title":{},"body":{"license.html":{}}}],["file",{"_index":14,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"license.html":{}}}],["filed",{"_index":1602,"title":{},"body":{"license.html":{}}}],["files",{"_index":1405,"title":{},"body":{"index.html":{},"license.html":{}}}],["findbycontext",{"_index":862,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbycontext(es_query",{"_index":867,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid",{"_index":863,"title":{},"body":{"injectables/SearchService.html":{}}}],["findbyid(uuid",{"_index":871,"title":{},"body":{"injectables/SearchService.html":{}}}],["finds",{"_index":739,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["first",{"_index":1128,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fitness",{"_index":1667,"title":{},"body":{"license.html":{}}}],["flow",{"_index":980,"title":{},"body":{"dependencies.html":{}}}],["follow",{"_index":1428,"title":{},"body":{"index.html":{}}}],["following",{"_index":1360,"title":{},"body":{"index.html":{},"license.html":{}}}],["fools",{"_index":1181,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["forbidden",{"_index":1109,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["form",{"_index":1493,"title":{},"body":{"license.html":{}}}],["format",{"_index":470,"title":{},"body":{"injectables/LoggerService.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["format(message",{"_index":486,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formats",{"_index":488,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatted",{"_index":489,"title":{},"body":{"injectables/LoggerService.html":{}}}],["formatwithoptions",{"_index":499,"title":{},"body":{"injectables/LoggerService.html":{}}}],["forms",{"_index":1382,"title":{},"body":{"index.html":{}}}],["forwarding",{"_index":1142,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["found",{"_index":1084,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["free",{"_index":1566,"title":{},"body":{"license.html":{}}}],["ftp",{"_index":1245,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfill",{"_index":1111,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilled",{"_index":1039,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["fulfilling",{"_index":1222,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["full",{"_index":354,"title":{},"body":{"interfaces/HttpResponse.html":{},"index.html":{}}}],["function",{"_index":95,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1225,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["functions",{"_index":1284,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["future",{"_index":1080,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway",{"_index":1229,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gateway_timeout",{"_index":1241,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["gatewaytimeoutexception",{"_index":876,"title":{},"body":{"injectables/SearchService.html":{}}}],["gatewaytimeoutexception('elasticsearch",{"_index":885,"title":{},"body":{"injectables/SearchService.html":{}}}],["gathered",{"_index":1048,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["generate",{"_index":383,"title":{},"body":{"injectables/HttpResponseService.html":{},"index.html":{}}}],["generate(status",{"_index":387,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generated",{"_index":1503,"title":{},"body":{"license.html":{}}}],["generates",{"_index":389,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["generating",{"_index":1119,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["get(':uuid",{"_index":781,"title":{},"body":{"controllers/PapersController.html":{}}}],["get('search",{"_index":776,"title":{},"body":{"controllers/PapersController.html":{}}}],["get()@healthcheck",{"_index":301,"title":{},"body":{"controllers/HealthController.html":{}}}],["getbycontext",{"_index":735,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(@req",{"_index":779,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbycontext(request",{"_index":737,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid",{"_index":736,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(@param('uuid",{"_index":782,"title":{},"body":{"controllers/PapersController.html":{}}}],["getbyid(uuid",{"_index":748,"title":{},"body":{"controllers/PapersController.html":{}}}],["getdescription",{"_index":384,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getdescription(status",{"_index":393,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage",{"_index":385,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getmessage(status",{"_index":396,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getpit",{"_index":538,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["getpit(alive",{"_index":557,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["gets",{"_index":395,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["getting",{"_index":1313,"title":{"index.html":{},"license.html":{}},"body":{}}],["gettype",{"_index":386,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["gettype(status",{"_index":398,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["git",{"_index":1349,"title":{},"body":{"index.html":{}}}],["give",{"_index":1414,"title":{},"body":{"index.html":{},"license.html":{}}}],["given",{"_index":844,"title":{},"body":{"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["gone",{"_index":1140,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["goodwill",{"_index":1694,"title":{},"body":{"license.html":{}}}],["gorbunov",{"_index":726,"title":{},"body":{"classes/PaperDto.html":{}}}],["governing",{"_index":1741,"title":{},"body":{"license.html":{}}}],["grant",{"_index":1557,"title":{},"body":{"license.html":{}}}],["granted",{"_index":1492,"title":{},"body":{"license.html":{}}}],["granting",{"_index":1464,"title":{},"body":{"license.html":{}}}],["grants",{"_index":1560,"title":{},"body":{"license.html":{}}}],["graph",{"_index":1746,"title":{},"body":{"modules.html":{}}}],["grossly",{"_index":1683,"title":{},"body":{"license.html":{}}}],["guard",{"_index":796,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"overview.html":{}}}],["guards",{"_index":798,"title":{},"body":{"guards/RolesGuard.html":{}}}],["h",{"_index":1009,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["handle",{"_index":1237,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["handler",{"_index":423,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{}}}],["handlername",{"_index":450,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["harmless",{"_index":1718,"title":{},"body":{"license.html":{}}}],["hasnext",{"_index":664,"title":{},"body":{"classes/PageMetaDto.html":{},"miscellaneous/variables.html":{}}}],["hasprev",{"_index":665,"title":{},"body":{"classes/PageMetaDto.html":{},"miscellaneous/variables.html":{}}}],["header",{"_index":1026,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["headers",{"_index":653,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["health",{"_index":298,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["healthcheck",{"_index":311,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcheckservice",{"_index":309,"title":{},"body":{"controllers/HealthController.html":{}}}],["healthcontroller",{"_index":295,"title":{"controllers/HealthController.html":{}},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"coverage.html":{}}}],["healthmodule",{"_index":319,"title":{"modules/HealthModule.html":{}},"body":{"modules/HealthModule.html":{},"modules.html":{}}}],["heidari",{"_index":1754,"title":{},"body":{"properties.html":{}}}],["helm",{"_index":1322,"title":{},"body":{"index.html":{}}}],["help",{"_index":1361,"title":{},"body":{"index.html":{}}}],["helps",{"_index":1381,"title":{},"body":{"index.html":{}}}],["hence",{"_index":1196,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["hereby",{"_index":1559,"title":{},"body":{"license.html":{}}}],["herein",{"_index":1641,"title":{},"body":{"license.html":{}}}],["hexagonal",{"_index":1315,"title":{},"body":{"index.html":{}}}],["hit",{"_index":155,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto",{"_index":293,"title":{},"body":{"interfaces/EsResponseHits.html":{}}}],["hit.dto.ts",{"_index":138,"title":{},"body":{"classes/EsHitDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["hit.dto.ts:25",{"_index":161,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:35",{"_index":164,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hit.dto.ts:45",{"_index":154,"title":{},"body":{"classes/EsHitDto.html":{}}}],["hits",{"_index":203,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["hits.interface",{"_index":272,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["hits.interface.ts",{"_index":288,"title":{},"body":{"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["hold",{"_index":1717,"title":{},"body":{"license.html":{}}}],["hop",{"_index":1175,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["host",{"_index":333,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["host.switchtohttp",{"_index":342,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["hours",{"_index":1008,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["http",{"_index":308,"title":{},"body":{"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"properties.html":{}}}],["http://localhost:{port_number}/api",{"_index":1437,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/health",{"_index":1426,"title":{},"body":{"index.html":{}}}],["http://localhost:{port_number}/metrics",{"_index":1432,"title":{},"body":{"index.html":{}}}],["http://www.apache.org/licenses",{"_index":1451,"title":{},"body":{"license.html":{}}}],["http://www.apache.org/licenses/license",{"_index":1740,"title":{},"body":{"license.html":{}}}],["http_version_not_supported",{"_index":1249,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["httpcode",{"_index":756,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpcode(200",{"_index":778,"title":{},"body":{"controllers/PapersController.html":{}}}],["httpexception",{"_index":332,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"injectables/SearchService.html":{}}}],["httpexceptionfilter",{"_index":325,"title":{"classes/HttpExceptionFilter.html":{}},"body":{"classes/HttpExceptionFilter.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["httphealthindicator",{"_index":310,"title":{},"body":{"controllers/HealthController.html":{}}}],["httpmodule",{"_index":321,"title":{},"body":{"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["httpresponse",{"_index":348,"title":{"interfaces/HttpResponse.html":{}},"body":{"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["httpresponsedescriptions",{"_index":401,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsedescriptions[httpstatus[status].tostring",{"_index":407,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponseexception",{"_index":360,"title":{"classes/HttpResponseException.html":{}},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["httpresponsegenerator",{"_index":1306,"title":{},"body":{"miscellaneous/functions.html":{}}}],["httpresponsemessages",{"_index":402,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsemessages[httpstatus[status].tostring",{"_index":406,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["httpresponsemodule",{"_index":65,"title":{"modules/HttpResponseModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules.html":{},"overview.html":{}}}],["httpresponseservice",{"_index":375,"title":{"injectables/HttpResponseService.html":{}},"body":{"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"coverage.html":{},"overview.html":{}}}],["httpresponsetypes",{"_index":403,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes",{"_index":404,"title":{},"body":{"injectables/HttpResponseService.html":{},"miscellaneous/enumerations.html":{}}}],["httpresponsetypescodes[math.floor(status",{"_index":408,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["https://developer.mozilla.org/en",{"_index":355,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["https://github.com/moeidheidari/nestjs",{"_index":1351,"title":{},"body":{"index.html":{}}}],["httpservice",{"_index":540,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["httpstatus",{"_index":400,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["hyper",{"_index":1185,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i'm",{"_index":1266,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["i_am_a_teapot",{"_index":1176,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["id",{"_index":174,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"injectables/SearchService.html":{},"miscellaneous/variables.html":{}}}],["identification",{"_index":1734,"title":{},"body":{"license.html":{}}}],["identified",{"_index":1116,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["identifier",{"_index":926,"title":{},"body":{"coverage.html":{}}}],["identifying",{"_index":1727,"title":{},"body":{"license.html":{}}}],["ietf",{"_index":1179,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ii",{"_index":1480,"title":{},"body":{"license.html":{}}}],["iii",{"_index":1487,"title":{},"body":{"license.html":{}}}],["image",{"_index":1387,"title":{},"body":{"index.html":{}}}],["imagename:latest",{"_index":1389,"title":{},"body":{"index.html":{}}}],["implemented",{"_index":1190,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["implementing",{"_index":532,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["implements",{"_index":328,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{}}}],["implied",{"_index":1664,"title":{},"body":{"license.html":{}}}],["import",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{}}}],["imports",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/SearchModule.html":{}}}],["improving",{"_index":1548,"title":{},"body":{"license.html":{}}}],["inability",{"_index":1692,"title":{},"body":{"license.html":{}}}],["inappropriate",{"_index":1199,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["incidental",{"_index":1688,"title":{},"body":{"license.html":{}}}],["include",{"_index":1168,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["included",{"_index":1159,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["includes",{"_index":1620,"title":{},"body":{"license.html":{}}}],["including",{"_index":1496,"title":{},"body":{"license.html":{}}}],["inclusion",{"_index":1532,"title":{},"body":{"license.html":{}}}],["incorporated",{"_index":1556,"title":{},"body":{"license.html":{}}}],["incurred",{"_index":1719,"title":{},"body":{"license.html":{}}}],["indemnify",{"_index":1715,"title":{},"body":{"license.html":{}}}],["indemnity",{"_index":1706,"title":{},"body":{"license.html":{}}}],["index",{"_index":120,"title":{"index.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["indicated",{"_index":1509,"title":{},"body":{"license.html":{}}}],["indicates",{"_index":827,"title":{},"body":{"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["indirect",{"_index":1472,"title":{},"body":{"license.html":{}}}],["individual",{"_index":1489,"title":{},"body":{"license.html":{}}}],["info",{"_index":12,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}}}],["info.interface.ts",{"_index":822,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["inform",{"_index":1033,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["information",{"_index":811,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["informational",{"_index":1271,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["infrastructure",{"_index":1445,"title":{},"body":{"index.html":{}}}],["infringed",{"_index":1584,"title":{},"body":{"license.html":{}}}],["infringement",{"_index":1598,"title":{},"body":{"license.html":{}}}],["inject",{"_index":578,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["inject(cache_manager",{"_index":600,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["injectable",{"_index":379,"title":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"coverage.html":{}}}],["injectables",{"_index":380,"title":{},"body":{"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"overview.html":{}}}],["injection",{"_index":865,"title":{},"body":{"injectables/SearchService.html":{}}}],["injects",{"_index":543,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["install",{"_index":1363,"title":{},"body":{"index.html":{}}}],["instance",{"_index":866,"title":{},"body":{"injectables/SearchService.html":{}}}],["instanceof",{"_index":507,"title":{},"body":{"injectables/LoggerService.html":{}}}],["instantiates",{"_index":545,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["institute",{"_index":1588,"title":{},"body":{"license.html":{}}}],["instruction",{"_index":1395,"title":{},"body":{"index.html":{}}}],["instructions",{"_index":1206,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["intentionally",{"_index":1530,"title":{},"body":{"license.html":{}}}],["intercept",{"_index":416,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["intercept(context",{"_index":418,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["interceptor",{"_index":533,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["interface",{"_index":111,"title":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/PageInterceptor.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{}}}],["interfaces",{"_index":113,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"interfaces/SearchInfo.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"license.html":{},"overview.html":{}}}],["interfaces/elastic/es",{"_index":226,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["interim",{"_index":1032,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal",{"_index":1268,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["internal_server_error",{"_index":1217,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["interpret",{"_index":1155,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invalid",{"_index":1231,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["invariant",{"_index":716,"title":{},"body":{"classes/PaperDto.html":{}}}],["ip",{"_index":571,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["irrevocable",{"_index":1567,"title":{},"body":{"license.html":{}}}],["is_public_key",{"_index":933,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["isarray",{"_index":222,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/SearchResultDto.html":{}}}],["isarray()@apiproperty({description",{"_index":522,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["isboolean",{"_index":269,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined",{"_index":223,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@apiproperty({type",{"_index":792,"title":{},"body":{"classes/RequestDto.html":{}}}],["isdefined()@isnotempty()@isarray()@apiproperty({description",{"_index":855,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isboolean()@apiproperty({description",{"_index":258,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isint()@apiproperty({description",{"_index":856,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["isdefined()@isnotempty()@isnumber()@apiproperty({description",{"_index":265,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isdefined()@isnotempty()@isstring()@apipropertyoptional({description",{"_index":843,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["isdefined()@isobject()@apiproperty({description",{"_index":210,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isglobal",{"_index":50,"title":{},"body":{"modules/AppModule.html":{}}}],["isin",{"_index":722,"title":{},"body":{"classes/PaperDto.html":{}}}],["isint",{"_index":224,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PaperDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty",{"_index":169,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{}}}],["isnotempty()@apiproperty({description",{"_index":157,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isnotempty()@isarray()@apiproperty({description",{"_index":673,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnotempty()@isstring()@apiproperty({description",{"_index":680,"title":{},"body":{"classes/PaperDto.html":{}}}],["isnumber",{"_index":270,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isobject",{"_index":225,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{}}}],["isoptional",{"_index":83,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["isoptional()@apipropertyoptional({description",{"_index":148,"title":{},"body":{"classes/EsHitDto.html":{}}}],["isoptional()@apipropertyoptional({type",{"_index":789,"title":{},"body":{"classes/RequestDto.html":{}}}],["isoptional()@isarray()@apipropertyoptional({description",{"_index":213,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isint()@apipropertyoptional({description",{"_index":200,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/SearchQueryDto.html":{}}}],["isoptional()@isobject()@apiproperty({description",{"_index":243,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["isoptional()@isobject()@apipropertyoptional({description",{"_index":206,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["isoptional()@isstring()@apipropertyoptional({description",{"_index":840,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["ispublic",{"_index":1762,"title":{},"body":{"miscellaneous/variables.html":{}}}],["isstring",{"_index":271,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PaperDto.html":{},"classes/SearchQueryDto.html":{}}}],["isstring()@isoptional()@apipropertyoptional({description",{"_index":254,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["issue",{"_index":1543,"title":{},"body":{"license.html":{}}}],["itself",{"_index":1130,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["january",{"_index":1449,"title":{},"body":{"license.html":{}}}],["jokes",{"_index":1182,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["k8s",{"_index":1399,"title":{},"body":{"index.html":{}}}],["k8s/configfiles",{"_index":1406,"title":{},"body":{"index.html":{}}}],["keep_alive",{"_index":182,"title":{},"body":{"interfaces/EsPit.html":{},"injectables/PageInterceptor.html":{}}}],["keeps",{"_index":909,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["key",{"_index":1763,"title":{},"body":{"miscellaneous/variables.html":{}}}],["keyof",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["keys",{"_index":1768,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":1663,"title":{},"body":{"license.html":{}}}],["knowledge",{"_index":711,"title":{},"body":{"classes/PaperDto.html":{}}}],["known",{"_index":1143,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["kubectl",{"_index":1407,"title":{},"body":{"index.html":{}}}],["kubernetes",{"_index":1323,"title":{},"body":{"index.html":{}}}],["language",{"_index":698,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{}}}],["large",{"_index":1262,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["larger",{"_index":1153,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["latest",{"_index":983,"title":{},"body":{"dependencies.html":{}}}],["law",{"_index":1659,"title":{},"body":{"license.html":{}}}],["lawsuit",{"_index":1594,"title":{},"body":{"license.html":{}}}],["ldap",{"_index":1246,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["leaving",{"_index":632,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["legal",{"_index":1465,"title":{},"body":{"license.html":{}}}],["length",{"_index":1147,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["length_required",{"_index":1144,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["level",{"_index":1345,"title":{},"body":{"index.html":{}}}],["liability",{"_index":1677,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1686,"title":{},"body":{"license.html":{}}}],["licensable",{"_index":1582,"title":{},"body":{"license.html":{}}}],["license",{"_index":1446,"title":{"license.html":{}},"body":{"license.html":{},"properties.html":{}}}],["licensed",{"_index":1737,"title":{},"body":{"license.html":{}}}],["licenses",{"_index":1599,"title":{},"body":{"license.html":{}}}],["licensor",{"_index":1460,"title":{},"body":{"license.html":{}}}],["limit",{"_index":603,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["limitation",{"_index":1665,"title":{},"body":{"license.html":{}}}],["limitations",{"_index":1742,"title":{},"body":{"license.html":{}}}],["limited",{"_index":1497,"title":{},"body":{"license.html":{}}}],["limiting",{"_index":1216,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["limits",{"_index":836,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["line",{"_index":1115,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["link",{"_index":1525,"title":{},"body":{"license.html":{}}}],["list",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["listening",{"_index":1424,"title":{},"body":{"index.html":{}}}],["lists",{"_index":1541,"title":{},"body":{"license.html":{}}}],["litigation",{"_index":1589,"title":{},"body":{"license.html":{}}}],["live",{"_index":183,"title":{},"body":{"interfaces/EsPit.html":{}}}],["liveness",{"_index":304,"title":{},"body":{"controllers/HealthController.html":{}}}],["load",{"_index":49,"title":{},"body":{"modules/AppModule.html":{}}}],["local",{"_index":1049,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["location",{"_index":1067,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["log",{"_index":471,"title":{},"body":{"injectables/LoggerService.html":{}}}],["log(message",{"_index":490,"title":{},"body":{"injectables/LoggerService.html":{}}}],["logger",{"_index":415,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["logger(context",{"_index":502,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerinterceptor",{"_index":31,"title":{"injectables/LoggerInterceptor.html":{}},"body":{"modules/AppModule.html":{},"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["loggermodule",{"_index":66,"title":{"modules/LoggerModule.html":{}},"body":{"modules/CommonModule.html":{},"modules/LoggerModule.html":{},"modules.html":{},"overview.html":{}}}],["loggerservice",{"_index":431,"title":{"injectables/LoggerService.html":{}},"body":{"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"coverage.html":{},"overview.html":{}}}],["loggerservice(context",{"_index":504,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loggerservice(loggerinterceptor.name",{"_index":432,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logging",{"_index":465,"title":{},"body":{"injectables/LoggerService.html":{}}}],["loghttprequest",{"_index":417,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["loghttprequest(context",{"_index":427,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["logs",{"_index":412,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{}}}],["long",{"_index":1263,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["longer",{"_index":1141,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["loosely",{"_index":1337,"title":{},"body":{"index.html":{}}}],["loss",{"_index":1693,"title":{},"body":{"license.html":{}}}],["losses",{"_index":1699,"title":{},"body":{"license.html":{}}}],["m",{"_index":1011,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["machine",{"_index":1390,"title":{},"body":{"index.html":{}}}],["made",{"_index":1508,"title":{},"body":{"license.html":{}}}],["mailing",{"_index":1540,"title":{},"body":{"license.html":{}}}],["main",{"_index":689,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/functions.html":{}}}],["maintenance",{"_index":1240,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["make",{"_index":1422,"title":{},"body":{"index.html":{},"license.html":{},"properties.html":{}}}],["makes",{"_index":1343,"title":{},"body":{"index.html":{}}}],["making",{"_index":1494,"title":{},"body":{"license.html":{}}}],["malformed",{"_index":1102,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["malfunction",{"_index":1697,"title":{},"body":{"license.html":{}}}],["managed",{"_index":1545,"title":{},"body":{"license.html":{}}}],["management",{"_index":1475,"title":{},"body":{"license.html":{}}}],["manager",{"_index":597,"title":{},"body":{"injectables/PageInterceptor.html":{},"dependencies.html":{}}}],["manifests",{"_index":1324,"title":{},"body":{"index.html":{}}}],["many",{"_index":1214,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["map",{"_index":579,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["map(axiosres",{"_index":646,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["markdown",{"_index":677,"title":{},"body":{"classes/PaperDto.html":{}}}],["marked",{"_index":1551,"title":{},"body":{"license.html":{}}}],["marks",{"_index":1650,"title":{},"body":{"license.html":{}}}],["matching",{"_index":61,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["max_score",{"_index":282,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{}}}],["maxim",{"_index":727,"title":{},"body":{"classes/PaperDto.html":{}}}],["maximum",{"_index":215,"title":{},"body":{"classes/EsQueryDto.html":{},"interfaces/EsResponseHits.html":{}}}],["md",{"_index":678,"title":{},"body":{"classes/PaperDto.html":{}}}],["mean",{"_index":1457,"title":{},"body":{"license.html":{}}}],["means",{"_index":1195,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["mechanical",{"_index":1499,"title":{},"body":{"license.html":{}}}],["mechanism",{"_index":791,"title":{},"body":{"classes/RequestDto.html":{}}}],["media",{"_index":1198,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["medium",{"_index":1605,"title":{},"body":{"license.html":{}}}],["meet",{"_index":1606,"title":{},"body":{"license.html":{}}}],["memory",{"_index":962,"title":{},"body":{"dependencies.html":{}}}],["merchantability",{"_index":1666,"title":{},"body":{"license.html":{}}}],["merely",{"_index":1524,"title":{},"body":{"license.html":{}}}],["mertics",{"_index":1430,"title":{},"body":{"index.html":{}}}],["message",{"_index":346,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerService.html":{},"miscellaneous/enumerations.html":{}}}],["messages",{"_index":896,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["met",{"_index":1172,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["meta",{"_index":518,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/variables.html":{}}}],["meta.dto",{"_index":527,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{}}}],["meta.dto.ts",{"_index":657,"title":{},"body":{"classes/PageMetaDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["meta.dto.ts:23",{"_index":661,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["meta.dto.ts:32",{"_index":658,"title":{},"body":{"classes/PageMetaDto.html":{}}}],["metadata",{"_index":119,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/SearchInfo.html":{},"dependencies.html":{}}}],["metainformation",{"_index":1043,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["method",{"_index":455,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["method.touppercase",{"_index":458,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["method_not_allowed",{"_index":1114,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["methods",{"_index":299,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpExceptionFilter.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{}}}],["metrics",{"_index":1431,"title":{},"body":{"index.html":{}}}],["micros",{"_index":1014,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mikhaylov",{"_index":724,"title":{},"body":{"classes/PaperDto.html":{}}}],["milliseconds",{"_index":267,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["min",{"_index":1010,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["minute",{"_index":906,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["minutes",{"_index":562,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["miscellaneous",{"_index":993,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["model",{"_index":517,"title":{},"body":{"classes/PageDto.html":{},"classes/PageMetaDto.html":{}}}],["modifications",{"_index":1495,"title":{},"body":{"license.html":{}}}],["modified",{"_index":1093,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["modify",{"_index":1627,"title":{},"body":{"license.html":{}}}],["modifying",{"_index":1632,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HealthModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{},"miscellaneous/variables.html":{}}}],["modules[moduleindex",{"_index":43,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["moduleslist",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["moeid",{"_index":1753,"title":{},"body":{"properties.html":{}}}],["monetary",{"_index":1354,"title":{},"body":{"index.html":{}}}],["money",{"_index":910,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["monitoring",{"_index":1325,"title":{},"body":{"index.html":{}}}],["more",{"_index":907,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["morrison",{"_index":705,"title":{},"body":{"classes/PaperDto.html":{}}}],["moved",{"_index":1257,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["moved_permanently",{"_index":1076,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ms",{"_index":1013,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mucosal",{"_index":714,"title":{},"body":{"classes/PaperDto.html":{}}}],["multiple",{"_index":1255,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["mutex",{"_index":972,"title":{},"body":{"dependencies.html":{}}}],["naiveround",{"_index":945,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["naiveround(num",{"_index":1292,"title":{},"body":{"miscellaneous/functions.html":{}}}],["name",{"_index":337,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["names",{"_index":1649,"title":{},"body":{"license.html":{}}}],["namespace.yaml",{"_index":1410,"title":{},"body":{"index.html":{}}}],["namespace/app",{"_index":1415,"title":{},"body":{"index.html":{}}}],["nanos",{"_index":1016,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["necessarily",{"_index":1583,"title":{},"body":{"license.html":{}}}],["need",{"_index":841,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{}}}],["needed",{"_index":544,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["negligence",{"_index":1681,"title":{},"body":{"license.html":{}}}],["negligent",{"_index":1684,"title":{},"body":{"license.html":{}}}],["negotiation",{"_index":1069,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nestinterceptor",{"_index":434,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["nestjs",{"_index":960,"title":{},"body":{"dependencies.html":{}}}],["nestjs/axios",{"_index":322,"title":{},"body":{"modules/HealthModule.html":{},"injectables/PageInterceptor.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/common",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["nestjs/config",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["nestjs/core",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"guards/RolesGuard.html":{},"dependencies.html":{}}}],["nestjs/platform",{"_index":968,"title":{},"body":{"dependencies.html":{}}}],["nestjs/swagger",{"_index":168,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"dependencies.html":{}}}],["nestjs/terminus",{"_index":312,"title":{},"body":{"controllers/HealthController.html":{},"modules/HealthModule.html":{},"dependencies.html":{}}}],["nestjs/typescript",{"_index":1751,"title":{},"body":{"properties.html":{}}}],["nestloggerservice",{"_index":498,"title":{},"body":{"injectables/LoggerService.html":{}}}],["neurobiology",{"_index":729,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuroimaging",{"_index":731,"title":{},"body":{"classes/PaperDto.html":{}}}],["neuron",{"_index":730,"title":{},"body":{"classes/PaperDto.html":{}}}],["new",{"_index":108,"title":{},"body":{"classes/EnvironmentVariables.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{}}}],["next",{"_index":420,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{}}}],["next.handle().pipe",{"_index":442,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["no_content",{"_index":1053,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["nodejs",{"_index":1750,"title":{},"body":{"properties.html":{}}}],["non",{"_index":1253,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["non_authoritative_information",{"_index":1042,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["none",{"_index":1162,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["normally",{"_index":1625,"title":{},"body":{"license.html":{}}}],["not_acceptable",{"_index":1117,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_found",{"_index":1112,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_implemented",{"_index":1223,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["not_modified",{"_index":1090,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["notfoundexception",{"_index":877,"title":{},"body":{"injectables/SearchService.html":{}}}],["nothing",{"_index":430,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"license.html":{}}}],["notice",{"_index":1510,"title":{},"body":{"license.html":{}}}],["notices",{"_index":1611,"title":{},"body":{"license.html":{}}}],["notwithstanding",{"_index":1639,"title":{},"body":{"license.html":{}}}],["npm",{"_index":1362,"title":{},"body":{"index.html":{}}}],["ns",{"_index":1015,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["num",{"_index":1297,"title":{},"body":{"miscellaneous/functions.html":{}}}],["number",{"_index":146,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["object",{"_index":181,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"license.html":{}}}],["object.keys(modules).map(moduleindex",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"miscellaneous/variables.html":{}}}],["objects",{"_index":162,"title":{},"body":{"classes/EsHitDto.html":{}}}],["obligations",{"_index":1707,"title":{},"body":{"license.html":{}}}],["observable",{"_index":426,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{}}}],["obtain",{"_index":1739,"title":{},"body":{"license.html":{}}}],["of(prev_page[0",{"_index":613,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["offer",{"_index":1576,"title":{},"body":{"license.html":{}}}],["offset",{"_index":201,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"classes/SearchQueryDto.html":{}}}],["ok",{"_index":317,"title":{},"body":{"controllers/HealthController.html":{},"miscellaneous/enumerations.html":{}}}],["omitting",{"_index":630,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["one",{"_index":1065,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["openapi",{"_index":1327,"title":{},"body":{"index.html":{}}}],["optional",{"_index":122,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":904,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["order",{"_index":592,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["order.asc",{"_index":637,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.desc",{"_index":606,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{}}}],["order.enum",{"_index":595,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["order.enum.ts",{"_index":940,"title":{},"body":{"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["origin",{"_index":1047,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["original",{"_index":1521,"title":{},"body":{"license.html":{}}}],["otherwise",{"_index":1479,"title":{},"body":{"license.html":{}}}],["out",{"_index":11,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EsResponseDto.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"license.html":{},"overview.html":{}}}],["out'})@get(':uuid')@httpcode(200",{"_index":752,"title":{},"body":{"controllers/PapersController.html":{}}}],["out'})@get('search')@useinterceptors(pageinterceptor)@httpcode(200",{"_index":745,"title":{},"body":{"controllers/PapersController.html":{}}}],["output",{"_index":1309,"title":{},"body":{"miscellaneous/functions.html":{},"index.html":{}}}],["outstanding",{"_index":1485,"title":{},"body":{"license.html":{}}}],["overlap",{"_index":1165,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["overloading",{"_index":1239,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["override",{"_index":566,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["overview",{"_index":1317,"title":{"overview.html":{}},"body":{"index.html":{},"overview.html":{}}}],["owner",{"_index":1462,"title":{},"body":{"license.html":{}}}],["ownership",{"_index":1481,"title":{},"body":{"license.html":{}}}],["package",{"_index":957,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["packagehelm",{"_index":1379,"title":{},"body":{"index.html":{}}}],["page",{"_index":118,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["pagedto",{"_index":515,"title":{"classes/PageDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["pagedto(data",{"_index":639,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["pagedto})@apigatewaytimeoutresponse({description",{"_index":744,"title":{},"body":{"controllers/PapersController.html":{}}}],["pageinterceptor",{"_index":530,"title":{"injectables/PageInterceptor.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["pagemetadto",{"_index":519,"title":{"classes/PageMetaDto.html":{}},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"coverage.html":{}}}],["pagen",{"_index":848,"title":{},"body":{"classes/SearchQueryDto.html":{},"miscellaneous/variables.html":{}}}],["pagenum",{"_index":663,"title":{},"body":{"classes/PageMetaDto.html":{},"miscellaneous/variables.html":{}}}],["pagesize",{"_index":666,"title":{},"body":{"classes/PageMetaDto.html":{},"miscellaneous/variables.html":{}}}],["pagination",{"_index":214,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/RequestDto.html":{}}}],["paper",{"_index":159,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["paper.dto",{"_index":170,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{}}}],["paperdto",{"_index":156,"title":{"classes/PaperDto.html":{}},"body":{"classes/EsHitDto.html":{},"classes/PageDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["paperdto})@apigatewaytimeoutresponse({description",{"_index":751,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers",{"_index":285,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"controllers/PapersController.html":{}}}],["papers/search",{"_index":747,"title":{},"body":{"controllers/PapersController.html":{}}}],["papers/{uuid",{"_index":754,"title":{},"body":{"controllers/PapersController.html":{}}}],["paperscontroller",{"_index":732,"title":{"controllers/PapersController.html":{}},"body":{"controllers/PapersController.html":{},"modules/SearchModule.html":{},"coverage.html":{}}}],["param",{"_index":91,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{}}}],["parameters",{"_index":336,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["parseuuidpipe",{"_index":757,"title":{},"body":{"controllers/PapersController.html":{}}}],["part",{"_index":1619,"title":{},"body":{"license.html":{}}}],["partial",{"_index":1062,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partial_content",{"_index":1061,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["partialtype",{"_index":526,"title":{},"body":{"classes/PageDto.html":{}}}],["particle",{"_index":845,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["particular",{"_index":1668,"title":{},"body":{"license.html":{}}}],["party",{"_index":1051,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["passed",{"_index":211,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["patent",{"_index":1573,"title":{},"body":{"license.html":{}}}],["path",{"_index":772,"title":{},"body":{"controllers/PapersController.html":{}}}],["pattern",{"_index":1332,"title":{},"body":{"index.html":{}}}],["payload_too_large",{"_index":1152,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment",{"_index":1260,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["payment_required",{"_index":1107,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["percent",{"_index":1483,"title":{},"body":{"license.html":{}}}],["percission",{"_index":1296,"title":{},"body":{"miscellaneous/functions.html":{}}}],["perform",{"_index":129,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/SearchQueryDto.html":{},"license.html":{}}}],["performed",{"_index":627,"title":{},"body":{"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["permanent",{"_index":1078,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanent_redirect",{"_index":1096,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permanently",{"_index":1258,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["permission",{"_index":810,"title":{},"body":{"guards/RolesGuard.html":{},"license.html":{}}}],["permissions",{"_index":1491,"title":{},"body":{"license.html":{}}}],["perpetual",{"_index":1561,"title":{},"body":{"license.html":{}}}],["pertain",{"_index":1618,"title":{},"body":{"license.html":{}}}],["physics",{"_index":720,"title":{},"body":{"classes/PaperDto.html":{}}}],["pipe(take(1",{"_index":645,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["pipeline",{"_index":891,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["pit",{"_index":178,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/variables.html":{}}}],["pit.interface",{"_index":227,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/PageInterceptor.html":{},"interfaces/SearchInfo.html":{}}}],["pit.interface.ts",{"_index":177,"title":{},"body":{"interfaces/EsPit.html":{},"coverage.html":{}}}],["pit_id",{"_index":240,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/variables.html":{}}}],["pitid",{"_index":550,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["places",{"_index":1300,"title":{},"body":{"miscellaneous/functions.html":{},"license.html":{}}}],["plaintoclass",{"_index":74,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["plaintoclass(environmentvariables",{"_index":99,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["point",{"_index":179,"title":{},"body":{"interfaces/EsPit.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/functions.html":{}}}],["port",{"_index":576,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"index.html":{}}}],["ports",{"_index":1329,"title":{},"body":{"index.html":{}}}],["possibility",{"_index":1702,"title":{},"body":{"license.html":{}}}],["pot",{"_index":1187,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["power",{"_index":1470,"title":{},"body":{"license.html":{}}}],["precondition",{"_index":1149,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["precondition_failed",{"_index":1148,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["preferred",{"_index":1073,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["prefix",{"_index":297,"title":{},"body":{"controllers/HealthController.html":{}}}],["prepare",{"_index":1569,"title":{},"body":{"license.html":{}}}],["prepared",{"_index":1135,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["presented",{"_index":676,"title":{},"body":{"classes/PaperDto.html":{}}}],["prev_page",{"_index":607,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["prev_page[1",{"_index":610,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["prev_page[2",{"_index":611,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["prev_page[3",{"_index":612,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["prevented",{"_index":1221,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["previous",{"_index":824,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["print",{"_index":1384,"title":{},"body":{"index.html":{}}}],["printed",{"_index":1732,"title":{},"body":{"license.html":{}}}],["private",{"_index":316,"title":{},"body":{"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["probably",{"_index":1427,"title":{},"body":{"index.html":{}}}],["process",{"_index":248,"title":{},"body":{"classes/EsResponseDto.html":{},"miscellaneous/enumerations.html":{}}}],["process.env.deposit_fee_per_minute",{"_index":923,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.es_container_name",{"_index":568,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["process.env.es_port",{"_index":573,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["process.env.transaction_commission",{"_index":921,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["process.env.widraw_commission",{"_index":922,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"miscellaneous/variables.html":{}}}],["processes",{"_index":1302,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processhttperror",{"_index":946,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processhttperror(error",{"_index":1301,"title":{},"body":{"miscellaneous/functions.html":{}}}],["processing",{"_index":1030,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["processmicroservicehttperror",{"_index":947,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["processmicroservicehttperror(error",{"_index":1304,"title":{},"body":{"miscellaneous/functions.html":{}}}],["produce",{"_index":1133,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["product",{"_index":1651,"title":{},"body":{"license.html":{}}}],["prod}advanced",{"_index":1367,"title":{},"body":{"index.html":{}}}],["programming",{"_index":697,"title":{},"body":{"classes/PaperDto.html":{}}}],["project",{"_index":305,"title":{},"body":{"controllers/HealthController.html":{}}}],["prom",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["prometheus",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["prometheusmodule",{"_index":35,"title":{},"body":{"modules/AppModule.html":{}}}],["prometheusmodule.register",{"_index":46,"title":{},"body":{"modules/AppModule.html":{}}}],["prominent",{"_index":1610,"title":{},"body":{"license.html":{}}}],["promise",{"_index":552,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{}}}],["promise((resolve",{"_index":641,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["properties",{"_index":121,"title":{"properties.html":{}},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"interfaces/HttpResponse.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"properties.html":{},"miscellaneous/variables.html":{}}}],["protocol",{"_index":1027,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["protocols",{"_index":1252,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["provide",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"license.html":{}}}],["provided",{"_index":521,"title":{},"body":{"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["provider",{"_index":861,"title":{},"body":{"injectables/SearchService.html":{}}}],["providers",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{}}}],["provides",{"_index":134,"title":{},"body":{"interfaces/EqQueryString.html":{},"license.html":{}}}],["proxy",{"_index":1131,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["proxy_authentication_required",{"_index":1125,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["public",{"_index":468,"title":{},"body":{"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["publicly",{"_index":1570,"title":{},"body":{"license.html":{}}}],["purpose",{"_index":1546,"title":{},"body":{"license.html":{}}}],["purposes",{"_index":1468,"title":{},"body":{"license.html":{}}}],["q.dto",{"_index":589,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{}}}],["q.dto.ts",{"_index":834,"title":{},"body":{"classes/SearchQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["q.dto.ts:24",{"_index":847,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:35",{"_index":838,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:46",{"_index":839,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["q.dto.ts:57",{"_index":835,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["query",{"_index":115,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query'})@apiresponse({status",{"_index":741,"title":{},"body":{"controllers/PapersController.html":{}}}],["query.dto",{"_index":584,"title":{},"body":{"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{},"injectables/SearchService.html":{}}}],["query.dto.ts",{"_index":193,"title":{},"body":{"classes/EsQueryDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["query.dto.ts:25",{"_index":205,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:36",{"_index":219,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:47",{"_index":212,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:58",{"_index":207,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:69",{"_index":220,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.dto.ts:80",{"_index":197,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface",{"_index":228,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["query.interface.ts",{"_index":185,"title":{},"body":{"interfaces/EsQuery.html":{},"coverage.html":{}}}],["query.limit",{"_index":604,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query.offset",{"_index":602,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query.order",{"_index":605,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query.query",{"_index":619,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["query_string",{"_index":186,"title":{},"body":{"interfaces/EsQuery.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["querying",{"_index":616,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["range",{"_index":1160,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rate",{"_index":1215,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["readable",{"_index":1621,"title":{},"body":{"license.html":{}}}],["readonly",{"_index":414,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["reason",{"_index":1721,"title":{},"body":{"license.html":{}}}],["reasonable",{"_index":1652,"title":{},"body":{"license.html":{}}}],["receive",{"_index":1242,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["received",{"_index":1230,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["recipients",{"_index":1607,"title":{},"body":{"license.html":{}}}],["recommend",{"_index":1730,"title":{},"body":{"license.html":{}}}],["record",{"_index":97,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["redirect",{"_index":1075,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redirection",{"_index":1273,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["redistributing",{"_index":1673,"title":{},"body":{"license.html":{}}}],["redistribution",{"_index":1603,"title":{},"body":{"license.html":{}}}],["redundant",{"_index":631,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["references",{"_index":1081,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reflect",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["reflector",{"_index":803,"title":{},"body":{"guards/RolesGuard.html":{}}}],["refuses",{"_index":1145,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["refusing",{"_index":1110,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["regarding",{"_index":1646,"title":{},"body":{"license.html":{}}}],["regular",{"_index":1319,"title":{},"body":{"index.html":{}}}],["reject",{"_index":642,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["reject(error",{"_index":651,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["reject(new",{"_index":883,"title":{},"body":{"injectables/SearchService.html":{}}}],["relation",{"_index":280,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["relevance",{"_index":149,"title":{},"body":{"classes/EsHitDto.html":{}}}],["relevant",{"_index":869,"title":{},"body":{"injectables/SearchService.html":{}}}],["remain",{"_index":1522,"title":{},"body":{"license.html":{}}}],["repeated",{"_index":1097,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["replaced",{"_index":1726,"title":{},"body":{"license.html":{}}}],["represent",{"_index":1519,"title":{},"body":{"license.html":{}}}],["representation",{"_index":1074,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representations",{"_index":1066,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["representatives",{"_index":1539,"title":{},"body":{"license.html":{}}}],["represents",{"_index":78,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"interfaces/HttpResponse.html":{},"interfaces/VirtualBankOptions.html":{}}}],["reproduce",{"_index":1568,"title":{},"body":{"license.html":{}}}],["reproducing",{"_index":1655,"title":{},"body":{"license.html":{}}}],["reproduction",{"_index":1453,"title":{},"body":{"license.html":{}}}],["req",{"_index":758,"title":{},"body":{"controllers/PapersController.html":{}}}],["reqtime",{"_index":444,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["reqtime}ms",{"_index":447,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["request",{"_index":249,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["request.es_query",{"_index":617,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request.es_query.from",{"_index":620,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request.es_query.query",{"_index":618,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request.es_query.size",{"_index":621,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request.query",{"_index":601,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["request_timeout",{"_index":1132,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requestdto",{"_index":585,"title":{"classes/RequestDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"coverage.html":{}}}],["requested",{"_index":755,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{}}}],["requested_range_not_satisfiable",{"_index":1158,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["requests",{"_index":413,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["required",{"_index":1226,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["requiredroles",{"_index":814,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requiredroles.includes(role",{"_index":819,"title":{},"body":{"guards/RolesGuard.html":{}}}],["requires",{"_index":1105,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["res",{"_index":623,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits.hits",{"_index":629,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.hits.hits.length",{"_index":882,"title":{},"body":{"injectables/SearchService.html":{}}}],["res.hits.total.value",{"_index":625,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.keep_alive",{"_index":649,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["res.timed_out",{"_index":884,"title":{},"body":{"injectables/SearchService.html":{}}}],["reserved",{"_index":1108,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["reset",{"_index":10,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"miscellaneous/enumerations.html":{},"overview.html":{}}}],["reset_content",{"_index":1056,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resides",{"_index":1085,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resolve(res",{"_index":650,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["resolve(res.succeeded",{"_index":655,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["resource",{"_index":1041,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["respond",{"_index":1094,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["response",{"_index":238,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["response(https://en.wikipedia.org/wiki/list_of_http_status_codes",{"_index":359,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["response.dto",{"_index":858,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["response.dto.ts",{"_index":237,"title":{},"body":{"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["response.dto.ts:26",{"_index":266,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:39",{"_index":263,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:56",{"_index":250,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:80",{"_index":253,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.dto.ts:91",{"_index":256,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["response.exception.ts",{"_index":362,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["response.exception.ts:8",{"_index":366,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["response.hits.hits[0]?._source",{"_index":784,"title":{},"body":{"controllers/PapersController.html":{}}}],["response.interface.ts",{"_index":350,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["response.module.ts",{"_index":377,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["response.service.ts",{"_index":382,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["response.service.ts:22",{"_index":397,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:32",{"_index":394,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:42",{"_index":399,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.service.ts:57",{"_index":388,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["response.status(status).json",{"_index":345,"title":{},"body":{"classes/HttpExceptionFilter.html":{}}}],["responsibility",{"_index":1713,"title":{},"body":{"license.html":{}}}],["responsible",{"_index":1670,"title":{},"body":{"license.html":{}}}],["result",{"_index":555,"title":{},"body":{"injectables/PageInterceptor.html":{},"index.html":{},"license.html":{}}}],["result.dto.ts",{"_index":852,"title":{},"body":{"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["result.dto.ts:25",{"_index":857,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["result.dto.ts:42",{"_index":854,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["resulted",{"_index":1040,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["resulting",{"_index":1498,"title":{},"body":{"license.html":{}}}],["results",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/variables.html":{},"routes.html":{}}}],["retain",{"_index":1615,"title":{},"body":{"license.html":{}}}],["retrieved",{"_index":141,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["retuns",{"_index":1767,"title":{},"body":{"miscellaneous/variables.html":{}}}],["return",{"_index":110,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{}}}],["returned",{"_index":217,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/HttpResponse.html":{},"miscellaneous/enumerations.html":{}}}],["returns",{"_index":93,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/HealthController.html":{},"classes/HttpExceptionFilter.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/functions.html":{}}}],["revisions",{"_index":1516,"title":{},"body":{"license.html":{}}}],["rfc",{"_index":1183,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["rights",{"_index":1709,"title":{},"body":{"license.html":{}}}],["rimraf",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["risks",{"_index":1675,"title":{},"body":{"license.html":{}}}],["role",{"_index":806,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["roles",{"_index":800,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["roles_key",{"_index":813,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rolesguard",{"_index":797,"title":{"guards/RolesGuard.html":{}},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["ron",{"_index":704,"title":{},"body":{"classes/PaperDto.html":{}}}],["rounded",{"_index":1298,"title":{},"body":{"miscellaneous/functions.html":{}}}],["rounds",{"_index":1295,"title":{},"body":{"miscellaneous/functions.html":{}}}],["route",{"_index":734,"title":{},"body":{"controllers/PapersController.html":{}}}],["routes",{"_index":1769,"title":{"routes.html":{}},"body":{"routes.html":{}}}],["royalty",{"_index":1565,"title":{},"body":{"license.html":{}}}],["run",{"_index":1364,"title":{},"body":{"index.html":{}}}],["run.sh",{"_index":1370,"title":{},"body":{"index.html":{}}}],["runapp",{"_index":1377,"title":{},"body":{"index.html":{}}}],["rundoc",{"_index":1378,"title":{},"body":{"index.html":{}}}],["rundocker",{"_index":1376,"title":{},"body":{"index.html":{}}}],["running",{"_index":1397,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":435,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":437,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["s",{"_index":691,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{}}}],["same",{"_index":1731,"title":{},"body":{"license.html":{}}}],["sample",{"_index":1400,"title":{},"body":{"index.html":{}}}],["satisfiable",{"_index":1265,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["saved",{"_index":825,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["schemas",{"_index":1436,"title":{},"body":{"index.html":{}}}],["score",{"_index":150,"title":{},"body":{"classes/EsHitDto.html":{},"interfaces/EsResponseHits.html":{}}}],["script",{"_index":1380,"title":{},"body":{"index.html":{}}}],["scripts",{"_index":1368,"title":{},"body":{"index.html":{}}}],["search",{"_index":130,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{}}}],["search.module",{"_index":38,"title":{},"body":{"modules/AppModule.html":{}}}],["search_after",{"_index":194,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["searchinfo",{"_index":820,"title":{"interfaces/SearchInfo.html":{}},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["searchmodule",{"_index":8,"title":{"modules/SearchModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SearchModule.html":{},"modules.html":{},"overview.html":{}}}],["searchquerydto",{"_index":587,"title":{"classes/SearchQueryDto.html":{}},"body":{"injectables/PageInterceptor.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"coverage.html":{}}}],["searchresultdto",{"_index":851,"title":{"classes/SearchResultDto.html":{}},"body":{"classes/SearchResultDto.html":{},"coverage.html":{}}}],["searchservice",{"_index":599,"title":{"injectables/SearchService.html":{}},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"modules/SearchModule.html":{},"injectables/SearchService.html":{},"coverage.html":{},"overview.html":{}}}],["sec",{"_index":1012,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["section",{"_index":1070,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["sections",{"_index":1458,"title":{},"body":{"license.html":{}}}],["see",{"_index":1259,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["see_other",{"_index":1089,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["select",{"_index":1072,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["selected",{"_index":1167,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sell",{"_index":1577,"title":{},"body":{"license.html":{}}}],["sent",{"_index":1060,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["separable",{"_index":1523,"title":{},"body":{"license.html":{}}}],["separate",{"_index":1643,"title":{},"body":{"license.html":{}}}],["server",{"_index":575,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"properties.html":{}}}],["server_error",{"_index":1275,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["servers",{"_index":1191,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["service",{"_index":314,"title":{},"body":{"controllers/HealthController.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"guards/RolesGuard.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{}}}],["service.type=nodeportkubernetes",{"_index":1403,"title":{},"body":{"index.html":{}}}],["service.yamlit",{"_index":1413,"title":{},"body":{"index.html":{}}}],["service/app",{"_index":1418,"title":{},"body":{"index.html":{}}}],["service_unavailable",{"_index":1235,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["services/common",{"_index":378,"title":{},"body":{"modules/HttpResponseModule.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{}}}],["set",{"_index":636,"title":{},"body":{"injectables/PageInterceptor.html":{},"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["setmetadata(is_public_key",{"_index":1764,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setmetadata(roles_key",{"_index":1766,"title":{},"body":{"miscellaneous/variables.html":{}}}],["setting",{"_index":624,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["shall",{"_index":1456,"title":{},"body":{"license.html":{}}}],["shards",{"_index":246,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["shares",{"_index":1486,"title":{},"body":{"license.html":{}}}],["short",{"_index":357,"title":{},"body":{"interfaces/HttpResponse.html":{},"classes/PaperDto.html":{}}}],["show",{"_index":709,"title":{},"body":{"classes/PaperDto.html":{}}}],["shows",{"_index":259,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["similar",{"_index":1126,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["size",{"_index":195,"title":{},"body":{"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["skipmissingproperties",{"_index":103,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["skipped",{"_index":276,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["software",{"_index":1333,"title":{},"body":{"index.html":{},"license.html":{}}}],["sole",{"_index":1712,"title":{},"body":{"license.html":{}}}],["solely",{"_index":1669,"title":{},"body":{"license.html":{}}}],["sort",{"_index":145,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"miscellaneous/variables.html":{}}}],["sorted",{"_index":163,"title":{},"body":{"classes/EsHitDto.html":{}}}],["sorting",{"_index":221,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["source",{"_index":13,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"classes/EnvironmentVariables.html":{},"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"controllers/HealthController.html":{},"modules/HealthModule.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"modules/HttpResponseModule.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"modules/SearchModule.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"index.html":{},"license.html":{}}}],["special",{"_index":826,"title":{},"body":{"interfaces/SearchInfo.html":{},"license.html":{}}}],["specific",{"_index":132,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["specified",{"_index":131,"title":{},"body":{"interfaces/EqQueryString.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["specifier",{"_index":1163,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["specifies",{"_index":187,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["src/.../app.module.ts",{"_index":1760,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../env.helper.ts",{"_index":1286,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../env.objects.ts",{"_index":995,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../env.validation.ts",{"_index":1288,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../es",{"_index":996,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/.../httpresponsedescriptions.enum.ts",{"_index":998,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsemessages.enum.ts",{"_index":999,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypecodes.enum.ts",{"_index":1001,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../httpresponsetypes.enum.ts",{"_index":1000,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../main.ts",{"_index":1285,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/.../page",{"_index":1002,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["src/.../page.dto.ts",{"_index":1755,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../paper.dto.ts",{"_index":1756,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../public.decorator.ts",{"_index":1759,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../request.dto.ts",{"_index":1757,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.decorator.ts",{"_index":1761,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../roles.enum.ts",{"_index":1003,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/.../search",{"_index":1758,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../util.helper.ts",{"_index":1287,"title":{},"body":{"miscellaneous/functions.html":{}}}],["src/application/controller/health.controller.ts",{"_index":296,"title":{},"body":{"controllers/HealthController.html":{},"coverage.html":{}}}],["src/application/controller/health.controller.ts:21",{"_index":302,"title":{},"body":{"controllers/HealthController.html":{}}}],["src/application/controller/papers.controller.ts",{"_index":733,"title":{},"body":{"controllers/PapersController.html":{},"coverage.html":{}}}],["src/application/controller/papers.controller.ts:43",{"_index":746,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/application/controller/papers.controller.ts:75",{"_index":753,"title":{},"body":{"controllers/PapersController.html":{}}}],["src/core/decorators/public.decorator.ts",{"_index":931,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/decorators/roles.decorator.ts",{"_index":935,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/elastic/es",{"_index":137,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page",{"_index":656,"title":{},"body":{"classes/PageMetaDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts",{"_index":516,"title":{},"body":{"classes/PageDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/page.dto.ts:25",{"_index":523,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/page.dto.ts:35",{"_index":520,"title":{},"body":{"classes/PageDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts",{"_index":667,"title":{},"body":{"classes/PaperDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/paper.dto.ts:23",{"_index":687,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:34",{"_index":719,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:45",{"_index":674,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:56",{"_index":721,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:67",{"_index":708,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:78",{"_index":713,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/paper.dto.ts:87",{"_index":679,"title":{},"body":{"classes/PaperDto.html":{}}}],["src/core/domain/dtos/request.dto.ts",{"_index":785,"title":{},"body":{"classes/RequestDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/dtos/request.dto.ts:26",{"_index":793,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/request.dto.ts:37",{"_index":788,"title":{},"body":{"classes/RequestDto.html":{}}}],["src/core/domain/dtos/search",{"_index":833,"title":{},"body":{"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/core/domain/enums/es",{"_index":1004,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsedescriptions.enum.ts",{"_index":1017,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsemessages.enum.ts",{"_index":1250,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypecodes.enum.ts",{"_index":1276,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/httpresponse/httpresponsetypes.enum.ts",{"_index":1270,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/enums/page",{"_index":939,"title":{},"body":{"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["src/core/domain/enums/roles.enum.ts",{"_index":1281,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["src/core/domain/interfaces/elastic/es",{"_index":114,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/http",{"_index":349,"title":{},"body":{"interfaces/HttpResponse.html":{},"coverage.html":{}}}],["src/core/domain/interfaces/search",{"_index":821,"title":{},"body":{"interfaces/SearchInfo.html":{},"coverage.html":{}}}],["src/core/exceptions/http",{"_index":361,"title":{},"body":{"classes/HttpResponseException.html":{},"coverage.html":{}}}],["src/core/filters/http",{"_index":326,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"controllers/PapersController.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts",{"_index":799,"title":{},"body":{"guards/RolesGuard.html":{},"coverage.html":{}}}],["src/core/guards/roles.guard.ts:23",{"_index":808,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/guards/roles.guard.ts:9",{"_index":804,"title":{},"body":{"guards/RolesGuard.html":{}}}],["src/core/helpers/env.helper.ts",{"_index":943,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/helpers/util.helper.ts",{"_index":944,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/core/interceptors/logger.interceptor.ts",{"_index":411,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/logger.interceptor.ts:16",{"_index":433,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:25",{"_index":422,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/logger.interceptor.ts:55",{"_index":429,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts",{"_index":531,"title":{},"body":{"injectables/PageInterceptor.html":{},"coverage.html":{}}}],["src/core/interceptors/page.interceptor.ts:117",{"_index":548,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:18",{"_index":542,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:32",{"_index":574,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:37",{"_index":569,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:45",{"_index":565,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/interceptors/page.interceptor.ts:97",{"_index":560,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["src/core/modules/health.module.ts",{"_index":320,"title":{},"body":{"modules/HealthModule.html":{}}}],["src/core/modules/http",{"_index":376,"title":{},"body":{"modules/HttpResponseModule.html":{}}}],["src/core/modules/logger.module.ts",{"_index":463,"title":{},"body":{"modules/LoggerModule.html":{}}}],["src/core/pipes/validation.pipe.ts",{"_index":888,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["src/core/services/common/http",{"_index":381,"title":{},"body":{"injectables/HttpResponseService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts",{"_index":464,"title":{},"body":{"injectables/LoggerService.html":{},"coverage.html":{}}}],["src/core/services/common/logger.service.ts:12",{"_index":497,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:16",{"_index":475,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:32",{"_index":477,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:41",{"_index":491,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:51",{"_index":484,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:60",{"_index":495,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:69",{"_index":481,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:78",{"_index":493,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/logger.service.ts:88",{"_index":487,"title":{},"body":{"injectables/LoggerService.html":{}}}],["src/core/services/common/search.service.ts",{"_index":860,"title":{},"body":{"injectables/SearchService.html":{},"coverage.html":{}}}],["src/core/services/common/search.service.ts:11",{"_index":864,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:22",{"_index":874,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:27",{"_index":873,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:34",{"_index":872,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/core/services/common/search.service.ts:71",{"_index":868,"title":{},"body":{"injectables/SearchService.html":{}}}],["src/infrastructure/config/env.objects.ts",{"_index":902,"title":{},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/config/env.validation.ts",{"_index":71,"title":{},"body":{"classes/EnvironmentVariables.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["src/infrastructure/modules/app.module.ts",{"_index":15,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/infrastructure/modules/common/common.module.ts",{"_index":67,"title":{},"body":{"modules/CommonModule.html":{}}}],["src/infrastructure/modules/search.module.ts",{"_index":832,"title":{},"body":{"modules/SearchModule.html":{}}}],["src/main.ts",{"_index":953,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sssss",{"_index":175,"title":{},"body":{"classes/EsHitDto.html":{}}}],["st",{"_index":693,"title":{},"body":{"classes/PaperDto.html":{}}}],["stages",{"_index":1356,"title":{},"body":{"index.html":{}}}],["start",{"_index":202,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/LoggerInterceptor.html":{},"classes/SearchQueryDto.html":{}}}],["start:{dev",{"_index":1366,"title":{},"body":{"index.html":{}}}],["started",{"_index":1314,"title":{"index.html":{},"license.html":{}},"body":{}}],["starting",{"_index":828,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["starttime",{"_index":428,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["state",{"_index":1139,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["stated",{"_index":1575,"title":{},"body":{"license.html":{}}}],["statement",{"_index":1633,"title":{},"body":{"license.html":{}}}],["statements",{"_index":927,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":466,"title":{},"body":{"injectables/LoggerService.html":{}}}],["stating",{"_index":1612,"title":{},"body":{"license.html":{}}}],["status",{"_index":264,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"controllers/PapersController.html":{},"classes/SearchResultDto.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up",{"_index":1429,"title":{},"body":{"index.html":{}}}],["statuscode",{"_index":456,"title":{},"body":{"injectables/LoggerInterceptor.html":{},"classes/SearchResultDto.html":{}}}],["stoppage",{"_index":1695,"title":{},"body":{"license.html":{}}}],["storage",{"_index":546,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["stored",{"_index":140,"title":{},"body":{"classes/EsHitDto.html":{},"classes/PaperDto.html":{}}}],["stores",{"_index":208,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["str",{"_index":1312,"title":{},"body":{"miscellaneous/functions.html":{}}}],["string",{"_index":125,"title":{},"body":{"interfaces/EqQueryString.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsResponseDto.html":{},"controllers/HealthController.html":{},"interfaces/HttpResponse.html":{},"injectables/HttpResponseService.html":{},"modules/LoggerModule.html":{},"injectables/LoggerService.html":{},"injectables/PageInterceptor.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/SearchQueryDto.html":{},"injectables/SearchService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["string.interface",{"_index":191,"title":{},"body":{"interfaces/EsQuery.html":{}}}],["string.interface.ts",{"_index":116,"title":{},"body":{"interfaces/EqQueryString.html":{},"coverage.html":{}}}],["structure",{"_index":117,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"interfaces/EsResponseHits.html":{},"classes/PaperDto.html":{},"interfaces/SearchInfo.html":{}}}],["subject",{"_index":1558,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1571,"title":{},"body":{"license.html":{}}}],["submission",{"_index":1635,"title":{},"body":{"license.html":{}}}],["submit",{"_index":1533,"title":{},"body":{"license.html":{}}}],["submitted",{"_index":1531,"title":{},"body":{"license.html":{}}}],["subscribe((res",{"_index":648,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["subsequently",{"_index":1555,"title":{},"body":{"license.html":{}}}],["succeeded",{"_index":1037,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["success",{"_index":1272,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["successful",{"_index":275,"title":{},"body":{"classes/EsResponseDto.html":{}}}],["such",{"_index":1476,"title":{},"body":{"license.html":{}}}],["summary",{"_index":669,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["super(httpexception.createbody(data",{"_index":369,"title":{},"body":{"classes/HttpResponseException.html":{}}}],["superadmin",{"_index":1282,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["supersede",{"_index":1642,"title":{},"body":{"license.html":{}}}],["support",{"_index":1224,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{},"modules.html":{}}}],["supported",{"_index":1157,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["sure",{"_index":1423,"title":{},"body":{"index.html":{}}}],["svg",{"_index":1744,"title":{},"body":{"modules.html":{}}}],["swagger",{"_index":1433,"title":{},"body":{"index.html":{}}}],["switching",{"_index":1251,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switching_protocols",{"_index":1019,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["switchmap",{"_index":581,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["switchmap(async",{"_index":622,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["syntax",{"_index":1103,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["systems",{"_index":1542,"title":{},"body":{"license.html":{}}}],["t",{"_index":717,"title":{},"body":{"classes/PaperDto.html":{}}}],["table",{"_index":956,"title":{},"body":{"coverage.html":{},"index.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":955,"title":{},"body":{"coverage.html":{}}}],["tags",{"_index":670,"title":{},"body":{"classes/PaperDto.html":{},"controllers/PapersController.html":{},"miscellaneous/variables.html":{}}}],["take",{"_index":580,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["taken",{"_index":920,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["takes",{"_index":1294,"title":{},"body":{"miscellaneous/functions.html":{}}}],["tap",{"_index":436,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["teapot",{"_index":1267,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporarily",{"_index":1086,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary",{"_index":1238,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["temporary_redirect",{"_index":1095,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["ten",{"_index":728,"title":{},"body":{"classes/PaperDto.html":{}}}],["terminate",{"_index":1600,"title":{},"body":{"license.html":{}}}],["terminusmodule",{"_index":323,"title":{},"body":{"modules/HealthModule.html":{}}}],["terms",{"_index":1452,"title":{},"body":{"license.html":{}}}],["terraform",{"_index":1444,"title":{},"body":{"index.html":{}}}],["test",{"_index":1347,"title":{},"body":{"index.html":{}}}],["test:ci",{"_index":1365,"title":{},"body":{"index.html":{}}}],["tested",{"_index":1151,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["text",{"_index":690,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/enumerations.html":{},"license.html":{}}}],["theory",{"_index":1679,"title":{},"body":{"license.html":{}}}],["thereof",{"_index":1527,"title":{},"body":{"license.html":{}}}],["third",{"_index":1050,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["this.cachemanager.get('prev_page",{"_index":609,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["this.cachemanager.set('prev_page",{"_index":640,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["this.context",{"_index":503,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.data",{"_index":528,"title":{},"body":{"classes/PageDto.html":{},"classes/SearchResultDto.html":{}}}],["this.es_query",{"_index":795,"title":{},"body":{"classes/RequestDto.html":{}}}],["this.getdescription(status",{"_index":392,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.getmessage(status",{"_index":390,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.gettype(status",{"_index":410,"title":{},"body":{"injectables/HttpResponseService.html":{}}}],["this.httpservice.delete(`http://${this.es_ip}:${this.es_port}/_pit",{"_index":652,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["this.httpservice.get(`http://${this.es_ip}:${this.es_port}/_search",{"_index":881,"title":{},"body":{"injectables/SearchService.html":{}}}],["this.httpservice.post(`http://${this.es_ip}:${this.es_port}/papers/_pit?keep_alive=${alive+unit",{"_index":644,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["this.limit",{"_index":849,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.logger",{"_index":501,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.debug(this.format(message",{"_index":510,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.error(this.format(message",{"_index":506,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.log",{"_index":457,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(`[${error.name",{"_index":445,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.logger.log(this.format(message",{"_index":505,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.verbose(this.format(message",{"_index":511,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.logger.warn(this.format(message",{"_index":509,"title":{},"body":{"injectables/LoggerService.html":{}}}],["this.loghttprequest(context",{"_index":443,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["this.meta",{"_index":529,"title":{},"body":{"classes/PageDto.html":{}}}],["this.order",{"_index":850,"title":{},"body":{"classes/SearchQueryDto.html":{}}}],["this.pit",{"_index":233,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.query",{"_index":232,"title":{},"body":{"classes/EsQueryDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{}}}],["this.reflector.getallandoverride(roles_key",{"_index":815,"title":{},"body":{"guards/RolesGuard.html":{}}}],["this.search_after",{"_index":235,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.searchservice.findbycontext(request.es_query).then",{"_index":780,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.searchservice.findbyid(uuid).then",{"_index":783,"title":{},"body":{"controllers/PapersController.html":{}}}],["this.size",{"_index":230,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.sort",{"_index":234,"title":{},"body":{"classes/EsQueryDto.html":{}}}],["this.statuscode",{"_index":859,"title":{},"body":{"classes/SearchResultDto.html":{}}}],["those",{"_index":1580,"title":{},"body":{"license.html":{}}}],["through",{"_index":1440,"title":{},"body":{"index.html":{},"license.html":{}}}],["throw",{"_index":107,"title":{},"body":{"classes/EnvironmentVariables.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["throwed",{"_index":1303,"title":{},"body":{"miscellaneous/functions.html":{}}}],["throws",{"_index":1310,"title":{},"body":{"miscellaneous/functions.html":{}}}],["thus",{"_index":1201,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["tiebreaker",{"_index":823,"title":{},"body":{"interfaces/SearchInfo.html":{}}}],["time",{"_index":180,"title":{},"body":{"interfaces/EsPit.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"miscellaneous/enumerations.html":{}}}],["time.enum",{"_index":591,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["time.enum.ts",{"_index":997,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timed",{"_index":260,"title":{},"body":{"classes/EsResponseDto.html":{},"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["timed_out",{"_index":241,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["timely",{"_index":1243,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["timeout",{"_index":1261,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["title",{"_index":671,"title":{},"body":{"classes/PaperDto.html":{},"license.html":{},"miscellaneous/variables.html":{}}}],["todo",{"_index":1328,"title":{},"body":{"index.html":{}}}],["tony",{"_index":706,"title":{},"body":{"classes/PaperDto.html":{}}}],["too_many_requests",{"_index":1212,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["took",{"_index":242,"title":{},"body":{"classes/EsResponseDto.html":{},"classes/SearchResultDto.html":{},"miscellaneous/variables.html":{}}}],["toorder",{"_index":593,"title":{},"body":{"injectables/PageInterceptor.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["toorder(order",{"_index":626,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["toorder(str",{"_index":1311,"title":{},"body":{"miscellaneous/functions.html":{}}}],["topic",{"_index":672,"title":{},"body":{"classes/PaperDto.html":{},"miscellaneous/variables.html":{}}}],["topics/fields",{"_index":710,"title":{},"body":{"classes/PaperDto.html":{}}}],["tort",{"_index":1680,"title":{},"body":{"license.html":{}}}],["total",{"_index":273,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"miscellaneous/variables.html":{}}}],["touching",{"_index":712,"title":{},"body":{"classes/PaperDto.html":{}}}],["tracking",{"_index":1544,"title":{},"body":{"license.html":{}}}],["trade",{"_index":1648,"title":{},"body":{"license.html":{}}}],["trademark",{"_index":1616,"title":{},"body":{"license.html":{}}}],["trademarks",{"_index":1647,"title":{},"body":{"license.html":{}}}],["traditional",{"_index":1178,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["transaction",{"_index":82,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{}}}],["transaction_commission",{"_index":84,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["transactionservice",{"_index":1355,"title":{},"body":{"index.html":{}}}],["transfer",{"_index":1578,"title":{},"body":{"license.html":{}}}],["transform",{"_index":895,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformation",{"_index":1500,"title":{},"body":{"license.html":{}}}],["transformed",{"_index":899,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["transformer",{"_index":75,"title":{},"body":{"classes/EnvironmentVariables.html":{},"dependencies.html":{}}}],["translation",{"_index":1501,"title":{},"body":{"license.html":{}}}],["true",{"_index":51,"title":{},"body":{"modules/AppModule.html":{},"classes/EnvironmentVariables.html":{},"classes/EsResponseDto.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"guards/RolesGuard.html":{},"miscellaneous/variables.html":{}}}],["true/false",{"_index":553,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["try",{"_index":643,"title":{},"body":{"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/EqQueryString.html":{},"classes/EsHitDto.html":{},"interfaces/EsPit.html":{},"interfaces/EsQuery.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"interfaces/EsResponseHits.html":{},"classes/HttpExceptionFilter.html":{},"interfaces/HttpResponse.html":{},"classes/HttpResponseException.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"classes/PageDto.html":{},"injectables/PageInterceptor.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"controllers/PapersController.html":{},"classes/RequestDto.html":{},"guards/RolesGuard.html":{},"interfaces/SearchInfo.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"injectables/SearchService.html":{},"interfaces/ValidationPipeOptions.html":{},"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["typeof",{"_index":45,"title":{},"body":{"modules/AppModule.html":{},"injectables/HttpResponseService.html":{},"miscellaneous/variables.html":{}}}],["types",{"_index":1505,"title":{},"body":{"license.html":{}}}],["unable",{"_index":1204,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unambiguous",{"_index":1173,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unauthorized",{"_index":1104,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unavailable",{"_index":1269,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["undefined",{"_index":160,"title":{},"body":{"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchResultDto.html":{}}}],["undefined})@apiresponse({status",{"_index":750,"title":{},"body":{"controllers/PapersController.html":{}}}],["under",{"_index":1087,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["understands",{"_index":1020,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["understood",{"_index":1100,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unexpected",{"_index":1219,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["union",{"_index":1466,"title":{},"body":{"license.html":{}}}],["unique",{"_index":681,"title":{},"body":{"classes/PaperDto.html":{}}}],["unit",{"_index":558,"title":{},"body":{"injectables/PageInterceptor.html":{}}}],["units",{"_index":1005,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["university",{"_index":702,"title":{},"body":{"classes/PaperDto.html":{}}}],["unknown",{"_index":229,"title":{},"body":{"classes/EsQueryDto.html":{},"injectables/HttpResponseService.html":{},"interfaces/SearchInfo.html":{}}}],["unless",{"_index":1637,"title":{},"body":{"license.html":{}}}],["unprocessable",{"_index":1194,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unprocessable_entity",{"_index":1192,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported",{"_index":1264,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["unsupported_media_type",{"_index":1156,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["up",{"_index":318,"title":{},"body":{"controllers/HealthController.html":{},"index.html":{}}}],["updated",{"_index":1055,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upgrade",{"_index":1025,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["upstream",{"_index":1232,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri",{"_index":1079,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uri_too_long",{"_index":1154,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["uris",{"_index":1083,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["url",{"_index":454,"title":{},"body":{"injectables/LoggerInterceptor.html":{}}}],["us/docs/web/http/status",{"_index":356,"title":{},"body":{"interfaces/HttpResponse.html":{}}}],["usage",{"_index":1372,"title":{},"body":{"index.html":{}}}],["use",{"_index":1082,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["useclass",{"_index":56,"title":{},"body":{"modules/AppModule.html":{}}}],["used",{"_index":247,"title":{},"body":{"classes/EsResponseDto.html":{},"interfaces/SearchInfo.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"properties.html":{}}}],["usefilters",{"_index":759,"title":{},"body":{"controllers/PapersController.html":{}}}],["usefilters(httpexceptionfilter",{"_index":770,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors",{"_index":760,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(cacheinterceptor",{"_index":774,"title":{},"body":{"controllers/PapersController.html":{}}}],["useinterceptors(pageinterceptor",{"_index":777,"title":{},"body":{"controllers/PapersController.html":{}}}],["user",{"_index":809,"title":{},"body":{"guards/RolesGuard.html":{},"miscellaneous/enumerations.html":{},"index.html":{}}}],["user.roles.some((role",{"_index":818,"title":{},"body":{"guards/RolesGuard.html":{}}}],["using",{"_index":870,"title":{},"body":{"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"index.html":{},"license.html":{}}}],["usual",{"_index":1391,"title":{},"body":{"index.html":{}}}],["util",{"_index":500,"title":{},"body":{"injectables/LoggerService.html":{}}}],["uuid",{"_index":749,"title":{},"body":{"controllers/PapersController.html":{},"injectables/SearchService.html":{}}}],["validate",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["validate(config",{"_index":96,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validated",{"_index":94,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedconfig",{"_index":98,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatedto",{"_index":948,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validatedto(dto",{"_index":1305,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validateoutputdto",{"_index":949,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["validateoutputdto(dto",{"_index":1308,"title":{},"body":{"miscellaneous/functions.html":{}}}],["validates",{"_index":89,"title":{},"body":{"classes/EnvironmentVariables.html":{},"miscellaneous/functions.html":{}}}],["validatesync",{"_index":76,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validatesync(validatedconfig",{"_index":102,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["validation",{"_index":890,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationerror",{"_index":900,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["validationpipeoptions",{"_index":887,"title":{"interfaces/ValidationPipeOptions.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"coverage.html":{}}}],["validator",{"_index":77,"title":{},"body":{"classes/EnvironmentVariables.html":{},"classes/EsHitDto.html":{},"classes/EsQueryDto.html":{},"classes/EsResponseDto.html":{},"classes/PageDto.html":{},"classes/PageMetaDto.html":{},"classes/PaperDto.html":{},"classes/RequestDto.html":{},"classes/SearchQueryDto.html":{},"classes/SearchResultDto.html":{},"interfaces/ValidationPipeOptions.html":{},"dependencies.html":{}}}],["validatoroptions",{"_index":892,"title":{},"body":{"interfaces/ValidationPipeOptions.html":{}}}],["value",{"_index":278,"title":{},"body":{"classes/EsResponseDto.html":{},"injectables/HttpResponseService.html":{},"injectables/LoggerInterceptor.html":{},"injectables/PageInterceptor.html":{},"injectables/SearchService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1164,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["variable",{"_index":932,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":889,"title":{"miscellaneous/variables.html":{}},"body":{"interfaces/ValidationPipeOptions.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["vatiables",{"_index":73,"title":{},"body":{"classes/EnvironmentVariables.html":{}}}],["verbal",{"_index":1536,"title":{},"body":{"license.html":{}}}],["verbose",{"_index":472,"title":{},"body":{"injectables/LoggerService.html":{}}}],["verbose(message",{"_index":492,"title":{},"body":{"injectables/LoggerService.html":{}}}],["version",{"_index":771,"title":{},"body":{"controllers/PapersController.html":{},"miscellaneous/enumerations.html":{},"license.html":{},"properties.html":{}}}],["via",{"_index":1024,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["view",{"_index":1058,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["virtualbank",{"_index":903,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["virtualbankoptions",{"_index":901,"title":{"interfaces/VirtualBankOptions.html":{}},"body":{"interfaces/VirtualBankOptions.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["void",{"_index":339,"title":{},"body":{"classes/HttpExceptionFilter.html":{},"injectables/LoggerInterceptor.html":{},"injectables/LoggerService.html":{},"miscellaneous/functions.html":{}}}],["wait",{"_index":1136,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["want",{"_index":1054,"title":{},"body":{"miscellaneous/enumerations.html":{},"index.html":{}}}],["warn",{"_index":473,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warn(message",{"_index":494,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warning",{"_index":496,"title":{},"body":{"injectables/LoggerService.html":{}}}],["warranties",{"_index":1662,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1657,"title":{},"body":{"license.html":{}}}],["way",{"_index":1392,"title":{},"body":{"index.html":{}}}],["ways",{"_index":1359,"title":{},"body":{"index.html":{}}}],["wherever",{"_index":1624,"title":{},"body":{"license.html":{}}}],["whether",{"_index":1477,"title":{},"body":{"license.html":{}}}],["whole",{"_index":1520,"title":{},"body":{"license.html":{}}}],["widraw_commission",{"_index":86,"title":{},"body":{"classes/EnvironmentVariables.html":{},"interfaces/VirtualBankOptions.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/variables.html":{}}}],["widrawal",{"_index":915,"title":{},"body":{"interfaces/VirtualBankOptions.html":{}}}],["willing",{"_index":1021,"title":{},"body":{"miscellaneous/enumerations.html":{}}}],["willsoto/nestjs",{"_index":36,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["within",{"_index":1134,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["without",{"_index":1146,"title":{},"body":{"miscellaneous/enumerations.html":{},"license.html":{}}}],["work",{"_index":1506,"title":{},"body":{"license.html":{}}}],["works",{"_index":1513,"title":{},"body":{"license.html":{}}}],["worldwide",{"_index":1562,"title":{},"body":{"license.html":{}}}],["writing",{"_index":1553,"title":{},"body":{"license.html":{}}}],["written",{"_index":1537,"title":{},"body":{"license.html":{}}}],["wrong",{"_index":1307,"title":{},"body":{"miscellaneous/functions.html":{}}}],["yes",{"_index":485,"title":{},"body":{"injectables/LoggerService.html":{}}}],["yyyy",{"_index":1736,"title":{},"body":{"license.html":{}}}],["zoom",{"_index":9,"title":{},"body":{"modules/AppModule.html":{},"modules/CommonModule.html":{},"modules/HttpResponseModule.html":{},"modules/LoggerModule.html":{},"modules/SearchModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]},
+ "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/app.module.ts\n \n\n\n\n \n Description\n \n \n application module\n\n \n\n\n \n \n \n Imports\n \n \n CommonModule\n \n \n SearchModule\n \n \n \n \n \n\n\n \n\n\n \n import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';\nimport { APP_INTERCEPTOR } from '@nestjs/core';\nimport { ConfigModule } from '@nestjs/config';\nimport { configuration } from '../config/env.objects';\nimport { validate } from '../config/env.validation';\nimport { LoggerInterceptor } from '../../core/interceptors'\nimport * as modules from '../../core/modules'\nimport { CommonModule } from './common/common.module';\nimport { PrometheusModule } from '@willsoto/nestjs-prometheus';\nimport { SearchModule } from './search.module';\n\n/**\n * application modules list\n */\nconst modulesList = Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules]);\n\n/**\n * application module\n */\n@Module({\n imports: [\n SearchModule,\n PrometheusModule.register(),\n CacheModule.register(),\n CommonModule,\n ConfigModule.forRoot({\n load: [configuration],\n validate,\n isGlobal: true,\n cache: true,\n expandVariables: true,\n }),\n ...modulesList,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: CacheInterceptor,\n },\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggerInterceptor,\n },\n ],\n controllers: [],\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CommonModule.html":{"url":"modules/CommonModule.html","title":"module - CommonModule","body":"\n \n\n\n\n\n Modules\n CommonModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\n\n\nCommonModule\n\nCommonModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/common/common.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n Exports\n \n \n HttpResponseModule\n \n \n LoggerModule\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseModule } from '../../../core/modules'\nimport { LoggerModule } from '../../../core/modules'\n\n@Module({\n imports: [HttpResponseModule, LoggerModule],\n exports: [HttpResponseModule, LoggerModule],\n})\nexport class CommonModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EnvironmentVariables.html":{"url":"classes/EnvironmentVariables.html","title":"class - EnvironmentVariables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EnvironmentVariables\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.validation.ts\n \n\n\n \n Description\n \n \n env vatiables\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n \n import { plainToClass } from 'class-transformer';\nimport { validateSync } from 'class-validator';\n\n/**\n * env vatiables\n */\nclass EnvironmentVariables {\n // /**\n // * Represents the amount of comission for each transaction\n // */\n // @IsOptional()\n // TRANSACTION_COMMISSION = 0.001;\n\n // @IsOptional()\n // WIDRAW_COMMISSION = 0.001;\n\n // @IsOptional()\n // DEPOSIT_FEE_PER_MINUTE = 0.0001;\n}\n\n/**\n * validates the config\n * @param config congig\n * @returns validated config\n */\nexport function validate(config: Record) {\n const validatedConfig = plainToClass(EnvironmentVariables, config, { enableImplicitConversion: true });\n const errors = validateSync(validatedConfig, { skipMissingProperties: false });\n\n if (errors.length > 0) {\n throw new Error(errors.toString());\n }\n return validatedConfig;\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EqQueryString.html":{"url":"interfaces/EqQueryString.html","title":"interface - EqQueryString","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EqQueryString\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-query-string.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n default_field\n \n \n \n Optional\n \n fields\n \n \n \n \n query\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n default_field\n \n \n \n \n \n \n \n \n default_field: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Default field to perform a search on, when\nno field is specified for the query\n\n \n \n \n \n \n \n \n \n \n fields\n \n \n \n \n \n \n \n \n fields: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Specific fields, to perform a search on\nCan't be specified with 'default_field'\n\n \n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n \n \n query: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Query string, that provides the data, to perform a search on\n\n \n \n \n \n \n \n\n\n \n export interface EqQueryString {\n /**\n * Query string, that provides the data, to perform a search on\n */\n query: string;\n\n /**\n * Default field to perform a search on, when \n * no field is specified for the query\n */\n default_field?: string;\n\n /**\n * Specific fields, to perform a search on\n * Can't be specified with 'default_field'\n */\n fields?: string[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsHitDto.html":{"url":"classes/EsHitDto.html","title":"class - EsHitDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsHitDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n _score\n \n \n _source\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n _score\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({description: 'Relevance score', example: 1.2355})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:45\n \n \n\n \n \n Hit relevance score\n\n \n \n\n \n \n \n \n \n \n \n \n _source\n \n \n \n \n \n \n Type : PaperDto\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@ApiProperty({description: 'Actual document (paper) stored in Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:25\n \n \n\n \n \n Actual document stored in Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({description: 'List of objects that represents how the hit was sorted', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-hit.dto.ts:35\n \n \n\n \n \n List of objects that represents how the hit was sorted\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsNotEmpty, IsOptional } from \"class-validator\";\nimport { PaperDto } from \"../paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['sort', '_source', '_score'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\n@ApiExtraModels()\nexport class EsHitDto {\n /**\n * Actual document stored in Elasticsearch\n */\n @IsNotEmpty()\n @ApiProperty({\n description: 'Actual document (paper) stored in Elasticsearch',\n example: {\n id: 'sssss'\n }\n })\n _source: PaperDto;\n \n /**\n * List of objects that represents how the hit was sorted\n */\n @IsOptional()\n @ApiPropertyOptional({\n description: 'List of objects that represents how the hit was sorted',\n example: {}\n })\n sort?: [];\n\n /**\n * Hit relevance score\n */\n @IsOptional()\n @ApiPropertyOptional({\n description: 'Relevance score',\n example: 1.2355\n })\n _score?: number;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsPit.html":{"url":"interfaces/EsPit.html","title":"interface - EsPit","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsPit\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-pit.interface.ts\n \n\n\n \n Description\n \n \n Structure of PIT (Point-In-Time) object\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n PIT ID\n\n \n \n \n \n \n \n \n \n \n keep_alive\n \n \n \n \n \n \n \n \n keep_alive: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Time to live of the PIT\n\n \n \n \n \n \n \n\n\n \n export interface EsPit {\n /**\n * PIT ID\n */\n id: string;\n\n /**\n * Time to live of the PIT\n */\n keep_alive: string;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsQuery.html":{"url":"interfaces/EsQuery.html","title":"interface - EsQuery","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsQuery\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-query.interface.ts\n \n\n\n \n Description\n \n \n Structure of page metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n query_string\n \n \n \n \n \n \n \n \n query_string: EqQueryString\n\n \n \n\n\n \n \n Type : EqQueryString\n\n \n \n\n\n\n\n\n \n \n Query string object, that specifies certain search conditions\n\n \n \n \n \n \n \n\n\n \n import { EqQueryString } from \"./es-query-string.interface\";\n\n/**\n * Structure of page metadata\n */\nexport interface EsQuery {\n /**\n * Query string object, that specifies certain search conditions\n */\n query_string: EqQueryString;\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsQueryDto.html":{"url":"classes/EsQueryDto.html","title":"class - EsQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch query DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n from\n \n \n Optional\n pit\n \n \n query\n \n \n Optional\n search_after\n \n \n Optional\n size\n \n \n Optional\n sort\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:80\n \n \n\n \n \n Constructs an empty object\n\n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n from\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiPropertyOptional({description: 'Offset from the start of the list of hits', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:25\n \n \n\n \n \n Offset from the start of the list of hits\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n pit\n \n \n \n \n \n \n Type : EsPit\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiPropertyOptional({description: 'PIT object', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:58\n \n \n\n \n \n Object, that stores PIT ID and time alive\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : EsQuery\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsObject()@ApiProperty({description: 'Search query object passed to Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:47\n \n \n\n \n \n The search query object passed to Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n search_after\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiPropertyOptional({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:80\n \n \n\n \n \n Pagination info\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n size\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiPropertyOptional({description: 'Maximum number of elements returned by Elasticsearch', example: 30})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:36\n \n \n\n \n \n Maximum number of elements returned by Elasticsearch\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n sort\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsArray()@ApiPropertyOptional({description: '', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-query.dto.ts:69\n \n \n\n \n \n Sorting info\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsObject, IsOptional } from \"class-validator\";\nimport { EsPit } from \"../../interfaces/elastic/es-pit.interface\";\nimport { EsQuery } from \"../../interfaces/elastic/es-query.interface\"\n\n/**\n * List of allowed properties in this DTO\n */\n const allowedProperties = ['size', 'query', 'pit', 'sort'];\n\n /**\n * Elasticsearch query DTO\n */\n @ApiExtraModels()\n export class EsQueryDto {\n /**\n * Offset from the start of the list of hits\n */\n @IsOptional()\n @IsInt()\n @ApiPropertyOptional({\n description: 'Offset from the start of the list of hits',\n example: 5,\n })\n from?: number;\n\n /**\n * Maximum number of elements returned by Elasticsearch\n */\n @IsOptional()\n @IsInt()\n @ApiPropertyOptional({\n description: 'Maximum number of elements returned by Elasticsearch',\n example: 30\n })\n size?: number;\n \n /**\n * The search query object passed to Elasticsearch\n */\n @IsDefined()\n @IsObject()\n @ApiProperty({\n description: 'Search query object passed to Elasticsearch',\n example: {},\n })\n query: EsQuery;\n\n /**\n * Object, that stores PIT ID and time alive\n */\n @IsOptional()\n @IsObject()\n @ApiPropertyOptional({\n description: 'PIT object',\n example: {}\n })\n pit?: EsPit;\n\n /**\n * Sorting info\n */\n @IsOptional()\n @IsArray()\n @ApiPropertyOptional({\n description: '',\n example: []\n })\n sort?: unknown[];\n\n /**\n * Pagination info\n */\n @IsOptional()\n @IsArray()\n @ApiPropertyOptional({\n description: '',\n example: []\n })\n search_after?: unknown[];\n\n /**\n * Constructs an empty object\n */\n constructor() {\n this.size = 10;\n this.query = undefined;\n this.pit = undefined;\n this.sort = undefined;\n this.search_after = undefined;\n }\n }\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/EsResponseDto.html":{"url":"classes/EsResponseDto.html","title":"class - EsResponseDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n EsResponseDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n _shards\n \n \n hits\n \n \n Optional\n pit_id\n \n \n timed_out\n \n \n took\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n _shards\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'Contains a count of Elasticsearch shards used to process the request', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:56\n \n \n\n \n \n Contains a number of Elasticsearch shards\nused for the request\n\n \n \n\n \n \n \n \n \n \n \n \n hits\n \n \n \n \n \n \n Type : EsResponseHits\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsObject()@ApiProperty({description: 'Contains returned documents and metadata', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:80\n \n \n\n \n \n Contains returned documents and metadata\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n pit_id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsString()@IsOptional()@ApiPropertyOptional({description: 'Contains PIT ID used to search for results', example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:91\n \n \n\n \n \n ID of the PIT used in the search\n\n \n \n\n \n \n \n \n \n \n \n \n timed_out\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsBoolean()@ApiProperty({description: 'Shows if request timed out before completion', example: false})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:39\n \n \n\n \n \n Status of the request\nIf 'true' - the request timed out before completion\n\n \n \n\n \n \n \n \n \n \n \n \n took\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsNumber()@ApiProperty({description: 'The time that it took Elasticsearch to process the query', example: 5})\n \n \n \n \n \n Defined in src/core/domain/dtos/elastic/es-response.dto.ts:26\n \n \n\n \n \n Number of milliseconds it\ntook Elasticsearch to execute the request\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsBoolean, IsDefined, IsNotEmpty, IsNumber, IsObject, IsOptional, IsString } from \"class-validator\";\nimport { EsResponseHits } from \"../../interfaces/elastic/es-response-hits.interface\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['took', 'timed_out', '_shards', 'hits', 'pit_id'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class EsResponseDto {\n /**\n * Number of milliseconds it \n * took Elasticsearch to execute the request \n */\n @IsDefined()\n @IsNotEmpty()\n @IsNumber()\n @ApiProperty({\n description: 'The time that it took Elasticsearch to process the query',\n example: 5\n })\n took: number;\n \n /**\n * Status of the request\n * If 'true' - the request timed out before completion\n */\n @IsDefined()\n @IsNotEmpty()\n @IsBoolean()\n @ApiProperty({\n description: 'Shows if request timed out before completion',\n example: false,\n })\n timed_out: boolean;\n \n /**\n * Contains a number of Elasticsearch shards\n * used for the request\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'Contains a count of Elasticsearch shards used to process the request',\n example: {\n total: 1,\n successful: 1,\n skipped: 0,\n failed: 0,\n }\n })\n _shards: object;\n\n /**\n * Contains returned documents and metadata\n */\n @IsOptional()\n @IsObject()\n @ApiProperty({\n description: 'Contains returned documents and metadata',\n example: {\n total: {\n value: 3,\n relation: 'eq'\n },\n max_score: 1.2,\n hits: [{\n _index: 'papers',\n _id: '01002',\n _score: 1.2,\n _source: {},\n fields: {}\n }],\n }\n })\n hits: EsResponseHits;\n\n /**\n * ID of the PIT used in the search\n */\n @IsString()\n @IsOptional()\n @ApiPropertyOptional({\n description: 'Contains PIT ID used to search for results',\n example: '46ToAwMDaWR5BXV1aWQyKwZub2RlXzMAAAAAAAAAACoBYwADaWR4BXV1aWQxAgZub2RlXzEAAAAAAAAAAAEBYQADaWR5BXV1aWQyKgZub2RlXzIAAAAAAAAAAAwBYgACBXV1aWQyAAAFdXVpZDEAAQltYXRjaF9hbGw_gAAAAA=='\n })\n pit_id?: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/EsResponseHits.html":{"url":"interfaces/EsResponseHits.html","title":"interface - EsResponseHits","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n EsResponseHits\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/elastic/es-response-hits.interface.ts\n \n\n\n \n Description\n \n \n Structure of 'hits' object of Elasticsearch response\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n hits\n \n \n \n Optional\n \n max_score\n \n \n \n \n total\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n hits\n \n \n \n \n \n \n \n \n hits: EsHitDto[]\n\n \n \n\n\n \n \n Type : EsHitDto[]\n\n \n \n\n\n\n\n\n \n \n Array of search results\n\n \n \n \n \n \n \n \n \n \n max_score\n \n \n \n \n \n \n \n \n max_score: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Maximum score amongst all search results\n\n \n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n \n \n total: object\n\n \n \n\n\n \n \n Type : object\n\n \n \n\n\n\n\n\n \n \n Object containing info about hits\n\n \n \n \n \n \n \n\n\n \n import { EsHitDto } from \"../../dtos/elastic/es-hit.dto\";\n\n/**\n * Structure of 'hits' object of Elasticsearch response\n */\nexport interface EsResponseHits {\n /**\n * Object containing info about hits\n */\n total: object;\n\n /**\n * Maximum score amongst all search results\n */\n max_score?: number;\n\n /**\n * Array of search results\n */\n hits: EsHitDto[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/HealthController.html":{"url":"controllers/HealthController.html","title":"controller - HealthController","body":"\n \n\n\n\n\n\n\n Controllers\n HealthController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/health.controller.ts\n \n\n \n Prefix\n \n \n health\n \n\n\n \n Description\n \n \n Health controller class\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n check\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n check\n \n \n \n \n \n \ncheck()\n \n \n\n \n \n Decorators : \n \n @Get()@HealthCheck()\n \n \n\n \n \n Defined in src/application/controller/health.controller.ts:21\n \n \n\n\n \n \n Checks the liveness of the project\n\n\n \n \n \n Returns : { status: string; info: { alive: { status: string; }; }; error: {}; details: { alive: { status: string; }; }; }\n\n \n \n http response\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get } from '@nestjs/common';\nimport { HealthCheckService, HttpHealthIndicator, HealthCheck } from '@nestjs/terminus';\n/**\n * Health controller class\n */\n@Controller('health')\nexport class HealthController {\n /**\n * Health check controller class constructor.\n * @param health health check service\n * @param http http response\n */\n constructor(private health: HealthCheckService, private http: HttpHealthIndicator) {}\n //======================================================================================================\n /**\n * Checks the liveness of the project\n * @returns http response\n */\n @Get()\n @HealthCheck()\n check() {\n return { status: 'ok', info: { alive: { status: 'up' } }, error: {}, details: { alive: { status: 'up' } } };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HealthModule.html":{"url":"modules/HealthModule.html","title":"module - HealthModule","body":"\n \n\n\n\n\n Modules\n HealthModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/health.module.ts\n \n\n\n\n\n\n \n \n \n Controllers\n \n \n HealthController\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpModule } from '@nestjs/axios';\nimport { TerminusModule } from '@nestjs/terminus';\nimport { HealthController } from '../../application/controller/health.controller'\n\n@Module({\n imports: [TerminusModule, HttpModule],\n controllers: [HealthController],\n})\nexport class HealthModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpExceptionFilter.html":{"url":"classes/HttpExceptionFilter.html","title":"class - HttpExceptionFilter","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpExceptionFilter\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/filters/http-exception.filter.ts\n \n\n\n\n\n \n Implements\n \n \n ExceptionFilter\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n catch\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n catch\n \n \n \n \n \n \ncatch(exception: HttpException, host: ArgumentsHost)\n \n \n\n\n \n \n Defined in src/core/filters/http-exception.filter.ts:5\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n exception\n \n HttpException\n \n\n \n No\n \n\n\n \n \n host\n \n ArgumentsHost\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { ArgumentsHost, Catch, ExceptionFilter, HttpException } from \"@nestjs/common\";\n\n@Catch(HttpException)\nexport class HttpExceptionFilter implements ExceptionFilter {\n catch(exception: HttpException, host: ArgumentsHost) {\n const ctx = host.switchToHttp();\n const response = ctx.getResponse();\n const status = exception.getStatus();\n\n response.status(status).json({\n status: status,\n message: exception.message,\n });\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/HttpResponse.html":{"url":"interfaces/HttpResponse.html","title":"interface - HttpResponse","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n HttpResponse\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n\n\n \n Description\n \n \n Basic HTTP response interface\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n description\n \n \n \n \n message\n \n \n \n \n status\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n data\n \n \n \n \n \n \n \n \n data: any\n\n \n \n\n\n \n \n Type : any\n\n \n \n\n\n\n\n\n \n \n Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n\n \n \n \n \n \n \n \n \n \n description\n \n \n \n \n \n \n \n \n description: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n\n \n \n \n \n \n \n \n \n \n message\n \n \n \n \n \n \n \n \n message: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents a short message about the response status.\n\n \n \n \n \n \n \n \n \n \n status\n \n \n \n \n \n \n \n \n status: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n Represents the type of the response\n\n \n \n \n \n \n \n\n\n \n export interface HttpResponse {\n /**\n * Represents the type of the response\n */\n type: string;\n /**\n * Represents the status code of the http response(https://en.wikipedia.org/wiki/List_of_HTTP_status_codes).\n */\n status: number;\n /**\n * Represents a short message about the response status.\n */\n message: string;\n /**\n * Represents a full description about the response (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)\n */\n description: string;\n /**\n * Represents the actual data which is returned by the API. In case of empty response we will have it empty also.\n */\n data: any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/HttpResponseException.html":{"url":"classes/HttpResponseException.html","title":"class - HttpResponseException","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n HttpResponseException\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/exceptions/http-response.exception.ts\n \n\n\n \n Description\n \n \n implements http exception with http response from the service of common module\n\n \n\n \n Extends\n \n \n HttpException\n \n\n\n\n\n \n Constructor\n \n \n \n \nconstructor(data: HttpResponse)\n \n \n \n \n Defined in src/core/exceptions/http-response.exception.ts:8\n \n \n\n \n \n Http response exception contructor\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n data\n \n \n HttpResponse\n \n \n \n No\n \n \n \n Http response\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n\n\n \n import { HttpException } from '@nestjs/common';\nimport { HttpResponse } from '../domain/interfaces';\n\n//==================================================================================================\n/**\n * implements http exception with http response from the service of common module\n */\nexport class HttpResponseException extends HttpException {\n /**\n * Http response exception contructor\n * @param data Http response\n */\n constructor(data: HttpResponse) {\n super(HttpException.createBody(data, data.description, data.status), data.status);\n }\n}\n\n//==================================================================================================\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HttpResponseModule.html":{"url":"modules/HttpResponseModule.html","title":"module - HttpResponseModule","body":"\n \n\n\n\n\n Modules\n HttpResponseModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/http-response.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n HttpResponseService\n \n \n \n \n Exports\n \n \n HttpResponseService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { HttpResponseService } from '../services/common'\n\n@Module({\n providers: [HttpResponseService],\n exports: [HttpResponseService],\n})\nexport class HttpResponseModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/HttpResponseService.html":{"url":"injectables/HttpResponseService.html","title":"injectable - HttpResponseService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n HttpResponseService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/http-response.service.ts\n \n\n\n \n Description\n \n \n HTTP response service\n\n \n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n generate\n \n \n Private\n getDescription\n \n \n Private\n getMessage\n \n \n Private\n getType\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n generate\n \n \n \n \n \n \ngenerate(status: number, data, message: string, description: string)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:57\n \n \n\n\n \n \n generates the HTTP response\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n \n \n\n \n HTTP status\n\n \n \n \n data\n \n \n\n \n No\n \n\n \n {}\n \n\n \n data\n\n \n \n \n message\n \n string\n \n\n \n No\n \n\n \n this.getMessage(status)\n \n\n \n custom message\n\n \n \n \n description\n \n string\n \n\n \n No\n \n\n \n this.getDescription(status)\n \n\n \n custom description\n\n \n \n \n \n \n \n \n \n Returns : HttpResponse\n\n \n \n response\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getDescription\n \n \n \n \n \n \n \n getDescription(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:32\n \n \n\n\n \n \n gets the description\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n description\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMessage\n \n \n \n \n \n \n \n getMessage(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:22\n \n \n\n\n \n \n gets the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n message\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getType\n \n \n \n \n \n \n \n getType(status: number)\n \n \n\n\n \n \n Defined in src/core/services/common/http-response.service.ts:42\n \n \n\n\n \n \n gets the type\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n status\n \n number\n \n\n \n No\n \n\n\n \n HTTP status\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n type\n\n \n \n \n \n \n\n\n \n\n\n \n import { HttpStatus, Injectable } from '@nestjs/common';\nimport {\n HttpResponseDescriptions,\n HttpResponseMessages,\n HttpResponseTypes,\n HttpResponseTypesCodes,\n} from '../../domain/enums'\n\nimport { HttpResponse } from '../../domain/interfaces';\n\n/**\n * HTTP response service\n */\n@Injectable()\nexport class HttpResponseService {\n //==================================================================================================\n /**\n * gets the message\n * @param status HTTP status\n * @returns message\n */\n private getMessage(status: number): string {\n return HttpResponseMessages[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the description\n * @param status HTTP status\n * @returns description\n */\n private getDescription(status: number): string {\n return HttpResponseDescriptions[HttpStatus[status].toString() as keyof typeof HttpResponseMessages];\n }\n\n //==================================================================================================\n /**\n * gets the type\n * @param status HTTP status\n * @returns type\n */\n private getType(status: number): string {\n return HttpResponseTypes[\n HttpResponseTypesCodes[Math.floor(status / 100)].toString() as keyof typeof HttpResponseTypes\n ];\n }\n\n //==================================================================================================\n /**\n * generates the HTTP response\n * @param status HTTP status\n * @param data data\n * @param message custom message\n * @param description custom description\n * @returns response\n */\n generate(\n status: number,\n data: unknown = {},\n message: string = this.getMessage(status),\n description: string = this.getDescription(status)\n ): HttpResponse {\n const response: HttpResponse = {\n type: this.getType(status),\n status: status,\n message: message,\n description: description,\n data: data,\n };\n\n return response;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerInterceptor.html":{"url":"injectables/LoggerInterceptor.html","title":"injectable - LoggerInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/logger.interceptor.ts\n \n\n\n \n Description\n \n \n Logs the requests\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n intercept\n \n \n Private\n logHttpRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n intercept\n \n \n \n \n \n \nintercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:25\n \n \n\n\n \n \n intercept handler\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n next call\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n handler\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n logHttpRequest\n \n \n \n \n \n \n \n logHttpRequest(context: ExecutionContext, startTime: number)\n \n \n\n\n \n \n Defined in src/core/interceptors/logger.interceptor.ts:55\n \n \n\n\n \n \n logs the HTTP requests\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n startTime\n \n number\n \n\n \n No\n \n\n\n \n start time\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n nothing\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : LoggerService\n\n \n \n \n \n Default value : new LoggerService(LoggerInterceptor.name)\n \n \n \n \n Defined in src/core/interceptors/logger.interceptor.ts:16\n \n \n\n \n \n logs requests for the service\n\n \n \n\n \n \n\n\n \n\n\n \n import { CallHandler, ExecutionContext, Injectable, NestInterceptor } from '@nestjs/common';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { Request, Response } from 'express';\nimport { LoggerService } from '../services/common'\n////////////////////////////////////////////////////////////////////////\n/**\n * Logs the requests\n */\n@Injectable()\nexport class LoggerInterceptor implements NestInterceptor {\n //==================================================================================================\n /**\n * logs requests for the service\n */\n private readonly logger: LoggerService = new LoggerService(LoggerInterceptor.name);\n\n //==================================================================================================\n /**\n * intercept handler\n * @param context context\n * @param next next call\n * @returns handler\n */\n intercept(context: ExecutionContext, next: CallHandler): Observable {\n const startTime = Date.now();\n const contextType = context.getType();\n\n return next.handle().pipe(\n tap(\n () => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n }\n },\n (error: Error) => {\n if (contextType === 'http') {\n this.logHttpRequest(context, startTime);\n } else {\n const reqTime = Date.now() - startTime;\n this.logger.log(`[${error.name}] ${error.message} ${reqTime}ms`);\n }\n }\n )\n );\n }\n\n //==================================================================================================\n /**\n * logs the HTTP requests\n * @param context context\n * @param startTime start time\n * @returns nothing\n */\n private logHttpRequest(context: ExecutionContext, startTime: number) {\n if (context.getType() !== 'http') return;\n const reqTime = Date.now() - startTime;\n const controllerName = context.getClass().name;\n const handlerName = context.getHandler().name;\n const request = context.switchToHttp().getRequest();\n const response = context.switchToHttp().getResponse();\n const { url, method } = request;\n const { statusCode } = response;\n this.logger.log(\n `[HTTP] ${method.toUpperCase()} ${url} ${statusCode} [${controllerName}:${handlerName}] ${reqTime}ms`\n );\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/LoggerModule.html":{"url":"modules/LoggerModule.html","title":"module - LoggerModule","body":"\n \n\n\n\n\n Modules\n LoggerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\n\nLoggerService \n\nLoggerService \n\n\n\nLoggerModule\n\nLoggerModule\n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/core/modules/logger.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n LoggerService\n \n \n \n \n Exports\n \n \n LoggerService\n \n \n \n \n \n\n\n \n\n\n \n import { Module } from '@nestjs/common';\nimport { LoggerService } from '../services/common'\n\n@Module({\n providers: [LoggerService, String],\n exports: [LoggerService],\n})\nexport class LoggerModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/LoggerService.html":{"url":"injectables/LoggerService.html","title":"injectable - LoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n LoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/logger.service.ts\n \n\n\n \n Description\n \n \n service for logging\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n Private\n Readonly\n logger\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n createlogger\n \n \n Public\n debug\n \n \n Public\n error\n \n \n Private\n format\n \n \n Public\n log\n \n \n Public\n verbose\n \n \n Public\n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(context: string)\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n constructor for the logger\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n createlogger\n \n \n \n \n \n \n \n createlogger(context: string)\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:32\n \n \n\n\n \n \n creates the logger\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n string\n \n\n \n No\n \n\n\n \n context\n\n \n \n \n \n \n \n \n \n Returns : LoggerService\n\n \n \n logger\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n debug\n \n \n \n \n \n \n \n debug(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:69\n \n \n\n\n \n \n logs the debug message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n error\n \n \n \n \n \n \n \n error(message: string, error?: string | Error, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:51\n \n \n\n\n \n \n logs the error message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n error\n \n string | Error\n \n\n \n Yes\n \n\n\n \n error\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n format\n \n \n \n \n \n \n \n format(message: string, args?: string[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:88\n \n \n\n\n \n \n formats the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n string[]\n \n\n \n Yes\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : any\n\n \n \n formatted message\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n log\n \n \n \n \n \n \n \n log(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:41\n \n \n\n\n \n \n logs the message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n verbose\n \n \n \n \n \n \n \n verbose(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:78\n \n \n\n\n \n \n logs the verbose message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Public\n warn\n \n \n \n \n \n \n \n warn(message: string, ...args: any[])\n \n \n\n\n \n \n Defined in src/core/services/common/logger.service.ts:60\n \n \n\n\n \n \n logs the warning message\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n message\n \n string\n \n\n \n No\n \n\n\n \n message\n\n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n arguments\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n Optional\n context\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:16\n \n \n\n \n \n context\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n logger\n \n \n \n \n \n \n Type : Logger\n\n \n \n \n \n Defined in src/core/services/common/logger.service.ts:12\n \n \n\n \n \n logger\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Logger, LoggerService as NestLoggerService } from '@nestjs/common';\nimport { formatWithOptions } from 'util';\n\n/**\n * service for logging\n */\n@Injectable()\nexport class LoggerService implements NestLoggerService {\n /**\n * logger\n */\n private readonly logger: Logger;\n /**\n * context\n */\n private readonly context?: string;\n //=============================================================================================================\n /**\n * constructor for the logger\n * @param context\n */\n constructor(context: string) {\n this.logger = new Logger(context);\n this.context = context;\n }\n //=============================================================================================================\n /**\n * creates the logger\n * @param context context\n * @returns logger\n */\n static createlogger(context: string): LoggerService {\n return new LoggerService(context);\n }\n //=============================================================================================================\n /**\n * logs the message\n * @param message message\n * @param args arguments\n */\n public log(message: string, ...args: any[]) {\n this.logger.log(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the error message\n * @param message message\n * @param error error\n * @param args arguments\n */\n public error(message: string, error?: string | Error, ...args: any[]) {\n this.logger.error(this.format(message, args), error instanceof Error ? error.stack : error);\n }\n //=============================================================================================================\n /**\n * logs the warning message\n * @param message message\n * @param args arguments\n */\n public warn(message: string, ...args: any[]) {\n this.logger.warn(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the debug message\n * @param message message\n * @param args arguments\n */\n public debug(message: string, ...args: any[]) {\n this.logger.debug(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * logs the verbose message\n * @param message message\n * @param args arguments\n */\n public verbose(message: string, ...args: any[]) {\n this.logger.verbose(this.format(message, args));\n }\n //=============================================================================================================\n /**\n * formats the message\n * @param message message\n * @param args arguments\n * @returns formatted message\n */\n private format(message: string, args?: string[]) {\n if (!args || !args.length) return message;\n\n return formatWithOptions({ colors: true, depth: 5 }, message, ...args);\n }\n //=============================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageDto.html":{"url":"classes/PageDto.html","title":"class - PageDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n data\n \n \n Readonly\n meta\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(data: PaperDto[], meta: PageMetaDto)\n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:35\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n data\n \n \n PaperDto[]\n \n \n \n No\n \n \n \n \n meta\n \n \n PageMetaDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n data\n \n \n \n \n \n \n Type : PaperDto[]\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'All data (papers) the page contains', isArray: true, type: PaperDto})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:25\n \n \n\n \n \n Data block of the page\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n meta\n \n \n \n \n \n \n Type : PageMetaDto\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Metadata for the page', type: PageMetaDto})\n \n \n \n \n \n Defined in src/core/domain/dtos/page.dto.ts:35\n \n \n\n \n \n Metadata of the page\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, PartialType } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { PageMetaDto } from \"./page-meta.dto\";\nimport { PaperDto } from \"./paper.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'meta'];\n\n/**\n * Page model for pagination\n */\n@ApiExtraModels()\nexport class PageDto {\n /**\n * Data block of the page\n */\n @IsArray()\n @ApiProperty({\n description: 'All data (papers) the page contains',\n isArray: true,\n type: PaperDto,\n })\n readonly data: PaperDto[];\n\n /**\n * Metadata of the page\n */\n @ApiProperty({\n description: 'Metadata for the page',\n type: PageMetaDto,\n \n })\n readonly meta: PageMetaDto;\n\n /**\n * Constructs an object with provided parameters\n * @param data \n * @param meta \n */\n constructor(data: PaperDto[], meta: PageMetaDto) {\n this.data = data;\n this.meta = meta;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/PageInterceptor.html":{"url":"injectables/PageInterceptor.html","title":"injectable - PageInterceptor","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n PageInterceptor\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/interceptors/page.interceptor.ts\n \n\n\n \n Description\n \n \n Pagination-implementing interceptor\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n deletePIT\n \n \n Public\n Async\n getPIT\n \n \n Async\n intercept\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService, cacheManager: Cache)\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:18\n \n \n\n \n \n Injects needed dependencies and instantiates the storage object\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n cacheManager\n \n \n Cache\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n deletePIT\n \n \n \n \n \n \n \n deletePIT(pitID: string)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:117\n \n \n\n\n \n \n Deletes the PIT specified by provided ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n pitID\n \n string\n \n\n \n No\n \n\n\n \n , ID of the PIT, that would be deleted\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n true/false, depending on the result of deletion of the PIT\n\n \n \n \n \n \n \n \n \n \n \n \n Public\n Async\n getPIT\n \n \n \n \n \n \n \n getPIT(alive: number, unit: EsTime)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:97\n \n \n\n\n \n \n Acquires a PIT ID from Elasticsearch, needed for a request\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n alive\n \n number\n \n\n \n No\n \n\n \n \n\n \n , amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n\n \n \n \n unit\n \n EsTime\n \n\n \n No\n \n\n \n EsTime.min\n \n\n \n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n PIT object containing PIT ID and keep_alive value\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n intercept\n \n \n \n \n \n \n \n intercept(context: ExecutionContext, next: CallHandler)\n \n \n\n\n \n \n Defined in src/core/interceptors/page.interceptor.ts:45\n \n \n\n\n \n \n Override of intercept() method, specified in NestInterceptor interface\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n \n next\n \n CallHandler\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise>\n\n \n \n Page with content and metadata\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n \n \n \n \n Default value : process.env.ES_CONTAINER_NAME\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:37\n \n \n\n \n \n Elastichsearch IP address\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/interceptors/page.interceptor.ts:32\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, NestInterceptor } from \"@nestjs/common\";\nimport { Observable, map, take, switchMap, of } from \"rxjs\";\nimport { PageDto } from \"../domain/dtos\";\nimport { EsQueryDto } from \"../domain/dtos/elastic/es-query.dto\";\nimport { RequestDto } from \"../domain/dtos/request.dto\";\nimport { SearchQueryDto } from \"../domain/dtos/search-q.dto\";\nimport { EsTime } from \"../domain/enums/es-time.enum\";\nimport { Order, toOrder } from \"../domain/enums/page-order.enum\";\nimport { EsPit } from \"../domain/interfaces/elastic/es-pit.interface\";\nimport { Cache } from 'cache-manager'\nimport { PageMetaDto } from \"../domain/dtos/page-meta.dto\";\n\n/**\n * Pagination-implementing interceptor\n */\n@Injectable()\nexport class PageInterceptor implements NestInterceptor {\n /**\n * Injects needed dependencies and instantiates the storage object\n * @param httpService\n * @param searchService\n */\n constructor(\n private readonly httpService: HttpService,\n @Inject(CACHE_MANAGER) private cacheManager: Cache\n ) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n\n /**\n * Elastichsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n\n /**\n * Override of intercept() method, specified in NestInterceptor interface\n * @param context\n * @param next\n * @returns Page with content and metadata\n */\n async intercept(context: ExecutionContext, next: CallHandler): Promise> {\n const request: RequestDto = context.switchToHttp().getRequest();\n const query: SearchQueryDto = request.query;\n\n const offset = !query.offset ? 0 : query.offset;\n const limit = !query.limit ? 10 : query.limit; \n const order = !query.order ? Order.DESC : query.order;\n\n const prev_page = await this.cacheManager.get('prev_page'); \n if (prev_page) {\n if (offset == prev_page[1] && limit == prev_page[2] && order == prev_page[3]) return of(prev_page[0]);\n }\n\n // Contruct a body for querying Elasticsearch\n request.es_query = new EsQueryDto();\n request.es_query.query = {\n query_string: {\n query: query.query,\n default_field: 'content',\n }\n };\n request.es_query.from = offset;\n request.es_query.size = limit;\n\n return next.handle().pipe(\n switchMap(async (res) => {\n // Setting the page meta-data\n let meta: PageMetaDto = {\n total: res.hits.total.value,\n order: toOrder(order),\n };\n\n // Check if the performed search is a backwards search\n let data = res.hits.hits;\n // Omitting the redundant info and leaving only the document\n data = data.map((el) => el._source);\n // Change the order if set\n if (order == Order.ASC) data.reverse();\n\n // Cache and return the page\n const page: PageDto = new PageDto(data, meta);\n await this.cacheManager.set('prev_page', [page, offset, limit, order]);\n return page;\n })\n );\n }\n\n /**\n * Acquires a PIT ID from Elasticsearch, needed for a request\n * @param alive, amount of time in minutes (defaults to 1). If time unit is not specified - defaults to minutes.\n * @returns PIT object containing PIT ID and keep_alive value\n */\n public async getPIT(alive: number, unit: EsTime = EsTime.min): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.post(`http://${this.ES_IP}:${this.ES_PORT}/papers/_pit?keep_alive=${alive+unit}`)\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsPit) => {\n res.keep_alive = alive + unit;\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Deletes the PIT specified by provided ID\n * @param pitID, ID of the PIT, that would be deleted\n * @returns true/false, depending on the result of deletion of the PIT\n */\n async deletePIT(pitID: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n this.httpService.delete(`http://${this.ES_IP}:${this.ES_PORT}/_pit`, {\n data: { id: pitID },\n headers: { 'Content-Type': 'application/json' },\n })\n .pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res) => {\n resolve(res.succeeded);\n });\n } catch (error) {\n reject(error);\n }\n })\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PageMetaDto.html":{"url":"classes/PageMetaDto.html","title":"class - PageMetaDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PageMetaDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n\n\n \n Description\n \n \n Page model for pagination\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n order\n \n \n total\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n order\n \n \n \n \n \n \n Type : Order\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Order of the elements on the page', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:32\n \n \n\n \n \n Order of the elements on the page\n\n \n \n\n \n \n \n \n \n \n \n \n total\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsArray()@ApiProperty({description: 'Total number of hits (results) acquired from the search', example: 314})\n \n \n \n \n \n Defined in src/core/domain/dtos/page-meta.dto.ts:23\n \n \n\n \n \n Total number of hits (results) acquired from the search\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray } from \"class-validator\";\nimport { Order } from \"../enums\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize'];\n\n/**\n * Page model for pagination\n */\n@ApiExtraModels()\nexport class PageMetaDto {\n /**\n * Total number of hits (results) acquired from the search\n */\n @IsArray()\n @ApiProperty({\n description: 'Total number of hits (results) acquired from the search',\n example: 314\n })\n total: number;\n\n /**\n * Order of the elements on the page\n */\n @ApiProperty({\n description: 'Order of the elements on the page',\n example: Order.DESC\n })\n order: Order;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/PaperDto.html":{"url":"classes/PaperDto.html","title":"class - PaperDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n PaperDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/paper.dto.ts\n \n\n\n \n Description\n \n \n Structure of the document stored and retrieved from Elasticsearch\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n authors\n \n \n content\n \n \n id\n \n \n summary\n \n \n tags\n \n \n title\n \n \n topic\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n authors\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of authors of the paper', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:45\n \n \n\n \n \n List of authors of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n content\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @ApiProperty({description: 'Contents of the paper presented in Markdown (.md) format', example: '...'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:87\n \n \n\n \n \n Contents of the paper [Markdown]\n\n \n \n\n \n \n \n \n \n \n \n \n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Unique ID of the paper', example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:23\n \n \n\n \n \n Unique ID of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n summary\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Summary of the paper. May be a short excerpt from the main text', example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:67\n \n \n\n \n \n Summary of the paper. May be a short excerpt from the main text.\n\n \n \n\n \n \n \n \n \n \n \n \n tags\n \n \n \n \n \n \n Type : string[]\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsArray()@ApiProperty({description: 'List of tags, that show the certain topics/fields of knowledge paper is touching', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:78\n \n \n\n \n \n List of tags, that show the certain topics/fields of knowledge paper is touching\n\n \n \n\n \n \n \n \n \n \n \n \n title\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Title of the paper', example: 'Mucosal associated invariant T cell'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:34\n \n \n\n \n \n Title of the paper\n\n \n \n\n \n \n \n \n \n \n \n \n topic\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsNotEmpty()@IsString()@ApiProperty({description: 'Topic of the paper', example: 'Physics'})\n \n \n \n \n \n Defined in src/core/domain/dtos/paper.dto.ts:56\n \n \n\n \n \n Topic of the paper\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content'];\n\n/**\n * Structure of the document stored and retrieved from Elasticsearch\n */\n@ApiExtraModels()\nexport class PaperDto {\n /**\n * Unique ID of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Unique ID of the paper',\n example: 'cc3c3cca-f763-495c-8dfa-69c45ca738ff'\n })\n id: string;\n \n /**\n * Title of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Title of the paper',\n example: 'Mucosal associated invariant T cell',\n })\n title: string;\n\n /**\n * List of authors of the paper\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of authors of the paper',\n example: ['Daniil Mikhaylov', 'Denis Gorbunov', 'Maxim Ten']\n })\n authors: string[];\n\n /**\n * Topic of the paper\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Topic of the paper',\n example: 'Physics'\n })\n topic: string;\n\n /**\n * Summary of the paper. May be a short excerpt from the main text.\n */\n @IsNotEmpty()\n @IsString()\n @ApiProperty({\n description: 'Summary of the paper. May be a short excerpt from the main text',\n example: 'S-algol (St Andrews Algol):vii is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie'\n })\n summary: string;\n\n /**\n * List of tags, that show the certain topics/fields of knowledge paper is touching\n */\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'List of tags, that show the certain topics/fields of knowledge paper is touching',\n example: ['Neurobiology', 'Neuron structure', 'Neuroimaging']\n })\n tags: string[];\n\n /**\n * Contents of the paper [Markdown]\n */\n @ApiProperty({\n description: 'Contents of the paper presented in Markdown (.md) format',\n example: '...'\n })\n content: string;\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"controllers/PapersController.html":{"url":"controllers/PapersController.html","title":"controller - PapersController","body":"\n \n\n\n\n\n\n\n Controllers\n PapersController\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/application/controller/papers.controller.ts\n \n\n\n\n \n Description\n \n \n /papers/ route controller\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getByContext\n \n \n getByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getByContext\n \n \n \n \n \n \ngetByContext(request: RequestDto)\n \n \n\n \n \n Decorators : \n \n @ApiTags('Search')@ApiOperation({summary: 'Finds papers by context based on the query'})@ApiResponse({status: 200, description: 'Returns back a page with acquired papers', type: PageDto})@ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'})@Get('search')@UseInterceptors(PageInterceptor)@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:43\n \n \n\n\n \n \n Request handler for: GET /papers/search\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n request\n \n RequestDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n a response with a set of matching papers\n\n \n \n \n \n \n \n \n \n \n \n \n getByID\n \n \n \n \n \n \ngetByID(uuid: string)\n \n \n\n \n \n Decorators : \n \n @ApiTags('Search')@ApiOperation({summary: 'Finds paper by its UUID', tags: undefined})@ApiResponse({status: 200, description: 'Returns back a paper', type: PaperDto})@ApiGatewayTimeoutResponse({description: 'Elasticsearch request timed out'})@Get(':uuid')@HttpCode(200)\n \n \n\n \n \n Defined in src/application/controller/papers.controller.ts:75\n \n \n\n\n \n \n Request handler for GET /papers/{uuid}\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n a response with a requested object\n\n \n \n \n \n \n \n\n\n \n import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Req, UseFilters, UseInterceptors } from \"@nestjs/common\";\nimport { SearchService } from \"../../core/services/common/search.service\";\nimport { PageInterceptor } from \"../../core/interceptors/page.interceptor\";\nimport { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags } from \"@nestjs/swagger\";\nimport { RequestDto } from \"../../core/domain/dtos/request.dto\";\nimport { EsHitDto, EsResponseDto, PageDto, PaperDto } from \"../../core/domain\";\nimport { HttpExceptionFilter } from \"src/core/filters/http-exception.filter\";\n\n/**\n * /papers/ route controller\n */\n@UseFilters(HttpExceptionFilter)\n@Controller({\n version: '1',\n path: 'papers',\n})\n@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)\n// @UseInterceptors(CacheInterceptor)\nexport class PapersController {\n constructor(private searchService: SearchService) {}\n\n /**\n * Request handler for: GET /papers/search\n * @param query \n * @param response \n * @returns a response with a set of matching papers\n */\n @ApiTags('Search')\n @ApiOperation({ \n summary: 'Finds papers by context based on the query',\n })\n @ApiResponse({\n status: 200,\n description: 'Returns back a page with acquired papers',\n type: PageDto\n })\n @ApiGatewayTimeoutResponse({\n description: 'Elasticsearch request timed out'\n })\n @Get('search')\n @UseInterceptors(PageInterceptor)\n @HttpCode(200)\n getByContext(@Req() request: RequestDto): Promise {\n return this.searchService.findByContext(request.es_query).then(\n (response) => {\n return response;\n },\n (error) => {\n throw error;\n }\n );\n }\n\n /**\n * Request handler for GET /papers/{uuid}\n * @param uuid \n * @param response \n * @returns a response with a requested object\n */\n @ApiTags('Search')\n @ApiOperation({ \n summary: 'Finds paper by its UUID',\n tags: ['Search']\n })\n @ApiResponse({\n status: 200,\n description: 'Returns back a paper',\n type: PaperDto\n })\n @ApiGatewayTimeoutResponse({\n description: 'Elasticsearch request timed out'\n })\n @Get(':uuid')\n @HttpCode(200)\n getByID(@Param('uuid', ParseUUIDPipe) uuid: string): Promise {\n return this.searchService.findByID(uuid).then(\n (response: EsResponseDto) => {\n return response.hits.hits[0]?._source;\n },\n (error) => {\n throw error;\n }\n );\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestDto.html":{"url":"classes/RequestDto.html","title":"class - RequestDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/request.dto.ts\n \n\n\n \n Description\n \n \n Request object, which contains query parameters and Elasticsearch query object\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n es_query\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: SearchQueryDto, es_query: EsQueryDto)\n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:37\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n SearchQueryDto\n \n \n \n No\n \n \n \n \n es_query\n \n \n EsQueryDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n es_query\n \n \n \n \n \n \n Type : EsQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@ApiPropertyOptional({type: EsQueryDto, description: 'Elasticsearch query body constructed by pagination mechanism', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:37\n \n \n\n \n \n Elasticsearch query object\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : SearchQueryDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@ApiProperty({type: SearchQueryDto, description: 'Actual query with parameters acquired from the request', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/request.dto.ts:26\n \n \n\n \n \n Query parameters object\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsDefined, IsNotEmpty, IsOptional } from \"class-validator\";\nimport { EsQueryDto } from \"./elastic/es-query.dto\";\nimport { SearchQueryDto } from \"./search-q.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'es_query'];\n\n/**\n * Request object, which contains query parameters and Elasticsearch query object\n */\n@ApiExtraModels()\nexport class RequestDto {\n /**\n * Query parameters object\n */\n @IsDefined()\n @IsNotEmpty()\n @ApiProperty({\n type: SearchQueryDto,\n description: 'Actual query with parameters acquired from the request',\n example: {}\n })\n query: SearchQueryDto;\n \n /**\n * Elasticsearch query object\n */\n @IsOptional()\n @ApiPropertyOptional({\n type: EsQueryDto,\n description: 'Elasticsearch query body constructed by pagination mechanism',\n example: {},\n })\n es_query?: EsQueryDto;\n\n /**\n * Constructs an object with provided parameters\n * @param query\n * @param es_query\n */\n constructor(query: SearchQueryDto, es_query: EsQueryDto) {\n this.query = query;\n this.es_query = es_query;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"guards/RolesGuard.html":{"url":"guards/RolesGuard.html","title":"guard - RolesGuard","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n Guards\n RolesGuard\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/guards/roles.guard.ts\n \n\n\n \n Description\n \n \n roles guard\n\n \n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n canActivate\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(reflector: Reflector)\n \n \n \n \n Defined in src/core/guards/roles.guard.ts:9\n \n \n\n \n \n contructs the role guard service\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n reflector\n \n \n Reflector\n \n \n \n No\n \n \n \n reflector of the guard\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n canActivate\n \n \n \n \n \n \ncanActivate(context: ExecutionContext)\n \n \n\n\n \n \n Defined in src/core/guards/roles.guard.ts:23\n \n \n\n\n \n \n checks if the user has allowed permission (role)\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n context\n \n ExecutionContext\n \n\n \n No\n \n\n\n \n context of the guard (actual information)\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n returns true if the user has appropriate role\n\n \n \n \n \n \n\n \n\n\n \n import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';\nimport { Reflector } from '@nestjs/core';\nimport { Roles as Role } from '..//domain/enums';\nimport { ROLES_KEY } from '../decorators';\n/**\n * roles guard\n */\n@Injectable()\nexport class RolesGuard implements CanActivate {\n //==================================================================================================\n /**\n * contructs the role guard service\n * @param reflector reflector of the guard\n */\n constructor(private reflector: Reflector) {}\n\n //==================================================================================================\n /**\n * checks if the user has allowed permission (role)\n * @param context context of the guard (actual information)\n * @returns returns true if the user has appropriate role\n */\n canActivate(context: ExecutionContext): boolean {\n const requiredRoles = this.reflector.getAllAndOverride(ROLES_KEY, [\n context.getHandler(),\n context.getClass(),\n ]);\n if (!requiredRoles) {\n return true;\n }\n\n const { user } = context.switchToHttp().getRequest();\n\n return user.roles.some((role: Role) => requiredRoles.includes(role));\n }\n\n //==================================================================================================\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchInfo.html":{"url":"interfaces/SearchInfo.html","title":"interface - SearchInfo","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchInfo\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n\n\n \n Description\n \n \n Structure of search metadata\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n pit\n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n pit\n \n \n \n \n \n \n \n \n pit: EsPit\n\n \n \n\n\n \n \n Type : EsPit\n\n \n \n\n\n\n\n\n \n \n Previous search saved PIT\n\n \n \n \n \n \n \n \n \n \n tiebreaker\n \n \n \n \n \n \n \n \n tiebreaker: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n Special tiebreaker used by Elasticsearch.\nIndicates the starting point of next search\n\n \n \n \n \n \n \n\n\n \n import { EsPit } from \"./elastic/es-pit.interface\";\n\n/**\n * Structure of search metadata\n */\nexport interface SearchInfo {\n /**\n * Previous search saved PIT\n */\n pit: EsPit;\n\n /**\n * Special tiebreaker used by Elasticsearch.\n * Indicates the starting point of next search\n */\n tiebreaker: unknown[];\n}\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SearchModule.html":{"url":"modules/SearchModule.html","title":"module - SearchModule","body":"\n \n\n\n\n\n Modules\n SearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nSearchService \n\nSearchService \n\n\n\nSearchModule\n\nSearchModule\n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/infrastructure/modules/search.module.ts\n \n\n\n\n \n Description\n \n \n Search module\n\n \n\n\n \n \n \n Providers\n \n \n SearchService\n \n \n \n \n Controllers\n \n \n PapersController\n \n \n \n \n Exports\n \n \n SearchService\n \n \n \n \n \n\n\n \n\n\n \n import { HttpModule } from \"@nestjs/axios\";\nimport { CacheModule, Module } from \"@nestjs/common\";\nimport { PapersController } from \"../../application\";\nimport { SearchService } from \"../../core/services/common/search.service\";\n\n/**\n * Search module\n */\n@Module({\n imports: [\n HttpModule,\n CacheModule.register(),\n ],\n exports: [SearchService],\n providers: [SearchService],\n controllers: [PapersController],\n})\nexport class SearchModule {}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchQueryDto.html":{"url":"classes/SearchQueryDto.html","title":"class - SearchQueryDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchQueryDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-q.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n limit\n \n \n Optional\n offset\n \n \n Optional\n order\n \n \n query\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(query: string, page: number, limit: number, order: string)\n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:57\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n query\n \n \n string\n \n \n \n No\n \n \n \n \n page\n \n \n number\n \n \n \n No\n \n \n \n \n limit\n \n \n number\n \n \n \n No\n \n \n \n \n order\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n limit\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiPropertyOptional({description: 'Limits the number of displayed elements', example: 10})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:35\n \n \n\n \n \n Limits the number of displayed elements.\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n offset\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsInt()@ApiPropertyOptional({description: 'Offset from the start of the list of hits', example: 0})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:46\n \n \n\n \n \n Offset from the start of the list of hits.\n\n \n \n\n \n \n \n \n \n \n \n \n Optional\n order\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsOptional()@IsString()@ApiPropertyOptional({description: 'Indicates in which order elements need to be displayed', example: 'asc'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:57\n \n \n\n \n \n Indicates in which order elements need to be displayed.\n\n \n \n\n \n \n \n \n \n \n \n \n query\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsString()@ApiPropertyOptional({description: 'Given query string to perform the search on', example: 'Particle Accelerator'})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-q.dto.ts:24\n \n \n\n \n \n Given query string to perform the search on.\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from \"class-validator\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['query', 'pagen', 'limit', 'order'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class SearchQueryDto {\n /**\n * Given query string to perform the search on.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsString()\n @ApiPropertyOptional({\n description: 'Given query string to perform the search on',\n example: 'Particle Accelerator',\n })\n query: string;\n\n /**\n * Limits the number of displayed elements.\n */\n @IsOptional()\n @IsInt()\n @ApiPropertyOptional({\n description: 'Limits the number of displayed elements',\n example: 10,\n })\n limit?: number;\n\n /**\n * Offset from the start of the list of hits.\n */\n @IsOptional()\n @IsInt()\n @ApiPropertyOptional({\n description: 'Offset from the start of the list of hits',\n example: 0,\n })\n offset?: number;\n\n /**\n * Indicates in which order elements need to be displayed.\n */\n @IsOptional()\n @IsString()\n @ApiPropertyOptional({\n description: 'Indicates in which order elements need to be displayed',\n example: 'asc',\n })\n order?: string;\n\n /**\n * \n */\n\n /**\n * Constructs an object with provided parameters\n * @param query \n * @param page \n * @param limit \n * @param order \n */\n constructor(query: string, page: number, limit: number, order: string) {\n this.query = query;\n this.limit = limit;\n this.order = order;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/SearchResultDto.html":{"url":"classes/SearchResultDto.html","title":"class - SearchResultDto","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n SearchResultDto\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/domain/dtos/search-result.dto.ts\n \n\n\n \n Description\n \n \n Elasticsearch response DTO\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n data\n \n \n statusCode\n \n \n \n \n\n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(code: number, data: EsResponseDto)\n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:42\n \n \n\n \n \n Constructs an object with provided parameters\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n code\n \n \n number\n \n \n \n No\n \n \n \n \n data\n \n \n EsResponseDto\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n data\n \n \n \n \n \n \n Type : EsResponseDto\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsArray()@ApiProperty({description: 'Data acquired from the Elasticsearch', example: undefined})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:42\n \n \n\n \n \n All the data acquired.\n\n \n \n\n \n \n \n \n \n \n \n \n statusCode\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Decorators : \n \n \n @IsDefined()@IsNotEmpty()@IsInt()@ApiProperty({description: 'Status code', example: 200})\n \n \n \n \n \n Defined in src/core/domain/dtos/search-result.dto.ts:25\n \n \n\n \n \n Status code\n\n \n \n\n \n \n\n\n\n\n\n\n\n\n \n\n\n \n import { ApiExtraModels, ApiProperty } from \"@nestjs/swagger\";\nimport { IsArray, IsDefined, IsInt, IsNotEmpty } from \"class-validator\";\nimport { EsResponseDto } from \"./elastic/es-response.dto\";\n\n/**\n * List of allowed properties in this DTO\n */\nconst allowedProperties = ['data', 'status'];\n\n/**\n * Elasticsearch response DTO\n */\n@ApiExtraModels()\nexport class SearchResultDto {\n /**\n * Status code\n */\n @IsDefined()\n @IsNotEmpty()\n @IsInt()\n @ApiProperty({\n description: 'Status code',\n example: 200,\n })\n statusCode: number;\n \n /**\n * All the data acquired.\n */\n @IsDefined()\n @IsNotEmpty()\n @IsArray()\n @ApiProperty({\n description: 'Data acquired from the Elasticsearch',\n example: {\n took: 1,\n timed_out: false,\n _shards: {},\n hits: {}\n },\n })\n data: EsResponseDto;\n\n /**\n * Constructs an object with provided parameters\n * @param code \n * @param data \n */\n constructor(code: number, data: EsResponseDto) {\n this.statusCode = code;\n this.data = data;\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SearchService.html":{"url":"injectables/SearchService.html","title":"injectable - SearchService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n SearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/services/common/search.service.ts\n \n\n\n \n Description\n \n \n Search service provider\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Async\n findByContext\n \n \n Async\n findByID\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(httpService: HttpService)\n \n \n \n \n Defined in src/core/services/common/search.service.ts:11\n \n \n\n \n \n Constructs the service with injection of\nHTTPService instance\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n httpService\n \n \n HttpService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Async\n findByContext\n \n \n \n \n \n \n \n findByContext(es_query: EsQueryDto)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:71\n \n \n\n\n \n \n Finds relevant documents by context using the given query string\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n es_query\n \n EsQueryDto\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n findByID\n \n \n \n \n \n \n \n findByID(uuid: string)\n \n \n\n\n \n \n Defined in src/core/services/common/search.service.ts:34\n \n \n\n\n \n \n Finds a paper by its own ID\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n uuid\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n Elasticsearch hits or an error object\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n ES_IP\n \n \n \n \n \n \n Default value : process.env.ES_CONTAINER_NAME\n \n \n \n \n Defined in src/core/services/common/search.service.ts:27\n \n \n\n \n \n Elasticsearch IP address\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n Readonly\n ES_PORT\n \n \n \n \n \n \n Default value : process.env.ES_PORT\n \n \n \n \n Defined in src/core/services/common/search.service.ts:22\n \n \n\n \n \n Elastichsearch server port-number\n\n \n \n\n \n \n\n\n \n\n\n \n import { HttpService } from \"@nestjs/axios\";\nimport { BadRequestException, GatewayTimeoutException, HttpException, Injectable, NotFoundException } from \"@nestjs/common\";\nimport { map, take } from \"rxjs\";\nimport { EsResponseDto} from \"../../domain/dtos\";\nimport { EsQueryDto } from \"../../domain/dtos/elastic/es-query.dto\";\n\n/**\n * Search service provider\n */\n@Injectable()\nexport class SearchService {\n /**\n * Constructs the service with injection of\n * HTTPService instance\n * @param httpService \n */\n constructor(private readonly httpService: HttpService) {}\n\n /**\n * Elastichsearch server port-number\n */\n private readonly ES_PORT = process.env.ES_PORT;\n \n /**\n * Elasticsearch IP address\n */\n private readonly ES_IP = process.env.ES_CONTAINER_NAME;\n \n /**\n * Finds a paper by its own ID\n * @param uuid \n * @returns Elasticsearch hits or an error object\n */\n async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?\n let ESQ: EsQueryDto = new EsQueryDto;\n\n // ESQ.size = 1;\n ESQ.query = {\n query_string: {\n query: ('id:' + uuid),\n }\n }\n\n return new Promise((resolve, reject) => {\n try {\n (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {\n data: ESQ,\n headers: {'Content-Type': 'application/json'},\n }))\n ?.pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (!res.hits.hits.length) {\n reject(new NotFoundException);\n } \n if (res.timed_out) {\n reject(new GatewayTimeoutException('Elasticsearch Timed Out'));\n }\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n /**\n * Finds relevant documents by context using the given query string\n * @param query, \n * @returns Elasticsearch hits or an error object\n */\n async findByContext(es_query: EsQueryDto): Promise {\n return new Promise((resolve, reject) => {\n try {\n if (!es_query.query.query_string.query) {\n throw new BadRequestException;\n }\n\n (this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {\n data: es_query,\n headers: {'Content-Type': 'application/json'},\n }))\n ?.pipe(take(1), map(axiosRes => axiosRes.data))\n .subscribe((res: EsResponseDto) => {\n if (res.timed_out) {\n reject(new GatewayTimeoutException('Elasticsearch Timed Out'));\n }\n resolve(res);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n}\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ValidationPipeOptions.html":{"url":"interfaces/ValidationPipeOptions.html","title":"interface - ValidationPipeOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ValidationPipeOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/core/pipes/validation.pipe.ts\n \n\n\n \n Description\n \n \n env variables validation pipeline\n\n \n\n \n Extends\n \n \n ValidatorOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n disableErrorMessages\n \n \n \n Optional\n \n exceptionFactory\n \n \n \n Optional\n \n transform\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n disableErrorMessages\n \n \n \n \n \n \n \n \n disableErrorMessages: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If error messages should be disabled\n\n \n \n \n \n \n \n \n \n \n exceptionFactory\n \n \n \n \n \n \n \n \n exceptionFactory: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Exception factory\n\n \n \n \n \n \n \n \n \n \n transform\n \n \n \n \n \n \n \n \n transform: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n If it should be transformed\n\n \n \n \n \n \n \n\n\n \n import { ValidationError, ValidatorOptions } from 'class-validator';\n/**\n * env variables validation pipeline\n */\nexport interface ValidationPipeOptions extends ValidatorOptions {\n /**\n * If it should be transformed\n */\n transform?: boolean;\n /**\n * If error messages should be disabled\n */\n disableErrorMessages?: boolean;\n /**\n * Exception factory\n */\n exceptionFactory?: (errors: ValidationError[]) => any;\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/VirtualBankOptions.html":{"url":"interfaces/VirtualBankOptions.html","title":"interface - VirtualBankOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n VirtualBankOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/infrastructure/config/env.objects.ts\n \n\n\n \n Description\n \n \n VirtualBank options\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n transaction_commission\n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n deposit_fee_per_minute\n \n \n \n \n \n \n \n \n deposit_fee_per_minute: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the fee for each minute more if customer keeps the money in our bank\n\n \n \n \n \n \n \n \n \n \n transaction_commission\n \n \n \n \n \n \n \n \n transaction_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the commision amount defined for each money transaction\n\n \n \n \n \n \n \n \n \n \n widraw_commission\n \n \n \n \n \n \n \n \n widraw_commission: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Represents the ammount of commission for each widrawal\n\n \n \n \n \n \n \n\n\n \n import { expandEnvVariables } from '../../core/helpers/env.helper'\nexpandEnvVariables();\n\n/**\n * options enum\n */\nexport enum EnvObjects {\n TRANSACTION_COMMISSION = 'VirtualBankOptions',\n WIDRAW_COMMISSION = 'VirtualBankOptions',\n DEPOSIT_FEE_PER_MINUTE = 'VirtualBankOptions',\n}\n//===================================================================================================\n/**\n * VirtualBank options\n */\nexport interface VirtualBankOptions {\n /**\n * Represents the commision amount defined for each money transaction\n */\n transaction_commission: number;\n /**\n * Represents the ammount of commission for each widrawal\n */\n widraw_commission: number;\n\n /**\n * Represents the fee for each minute more if customer keeps the money in our bank\n */\n deposit_fee_per_minute: number;\n}\n\n/**\n * configuration function\n * @returns configuration taken from env\n */\nexport const configuration = (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n});\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n src/application/controller/health.controller.ts\n \n controller\n HealthController\n \n 100 %\n (2/2)\n \n \n \n \n \n src/application/controller/papers.controller.ts\n \n controller\n PapersController\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n IS_PUBLIC_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/public.decorator.ts\n \n variable\n Public\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n Roles\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/decorators/roles.decorator.ts\n \n variable\n ROLES_KEY\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n class\n EsHitDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n class\n EsQueryDto\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-query.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n class\n EsResponseDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/elastic/es-response.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n class\n PageMetaDto\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/dtos/page-meta.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n class\n PageDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/page.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n class\n PaperDto\n \n 100 %\n (8/8)\n \n \n \n \n \n src/core/domain/dtos/paper.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n class\n RequestDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/request.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n class\n SearchQueryDto\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/dtos/search-q.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n class\n SearchResultDto\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/dtos/search-result.dto.ts\n \n variable\n allowedProperties\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/domain/enums/page-order.enum.ts\n \n function\n toOrder\n \n 0 %\n (0/1)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-pit.interface.ts\n \n interface\n EsPit\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-query-string.interface.ts\n \n interface\n EqQueryString\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-query.interface.ts\n \n interface\n EsQuery\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/domain/interfaces/elastic/es-response-hits.interface.ts\n \n interface\n EsResponseHits\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/domain/interfaces/http-response.interface.ts\n \n interface\n HttpResponse\n \n 100 %\n (6/6)\n \n \n \n \n \n src/core/domain/interfaces/search-info.interface.ts\n \n interface\n SearchInfo\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/exceptions/http-response.exception.ts\n \n class\n HttpResponseException\n \n 100 %\n (2/2)\n \n \n \n \n \n src/core/filters/http-exception.filter.ts\n \n class\n HttpExceptionFilter\n \n 0 %\n (0/2)\n \n \n \n \n \n src/core/guards/roles.guard.ts\n \n guard\n RolesGuard\n \n 100 %\n (3/3)\n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n function\n expandEnvVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n naiveRound\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n processMicroserviceHttpError\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n function\n validateOutputDTO\n \n 100 %\n (1/1)\n \n \n \n \n \n src/core/interceptors/logger.interceptor.ts\n \n injectable\n LoggerInterceptor\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/interceptors/page.interceptor.ts\n \n injectable\n PageInterceptor\n \n 100 %\n (7/7)\n \n \n \n \n \n src/core/pipes/validation.pipe.ts\n \n interface\n ValidationPipeOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/core/services/common/http-response.service.ts\n \n injectable\n HttpResponseService\n \n 100 %\n (5/5)\n \n \n \n \n \n src/core/services/common/logger.service.ts\n \n injectable\n LoggerService\n \n 100 %\n (11/11)\n \n \n \n \n \n src/core/services/common/search.service.ts\n \n injectable\n SearchService\n \n 100 %\n (6/6)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n interface\n VirtualBankOptions\n \n 100 %\n (4/4)\n \n \n \n \n \n src/infrastructure/config/env.objects.ts\n \n variable\n configuration\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n class\n EnvironmentVariables\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n function\n validate\n \n 100 %\n (1/1)\n \n \n \n \n \n src/infrastructure/modules/app.module.ts\n \n variable\n modulesList\n \n 100 %\n (1/1)\n \n \n \n \n \n src/main.ts\n \n function\n bootstrap\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @compodoc/compodoc : ^1.1.19\n \n @nestjs-addons/in-memory-db : ^ 3.0.3\n \n @nestjs/axios : 0.0.8\n \n @nestjs/common : ^8.0.0\n \n @nestjs/config : ^2.0.0\n \n @nestjs/core : ^8.0.0\n \n @nestjs/platform-express : ^8.0.0\n \n @nestjs/swagger : ^5.0.8\n \n @nestjs/terminus : ^8.0.6\n \n @willsoto/nestjs-prometheus : ^4.6.0\n \n async-mutex : ^0.3.2\n \n cache-manager : ^3.6.1\n \n class-transformer : ^0.5.1\n \n class-validator : ^0.13.2\n \n dotenv-expand : ^5.1.0\n \n dotenv-flow : ^3.2.0\n \n faker : ^5.1.0\n \n latest : ^0.2.0\n \n prom-client : ^14.0.1\n \n reflect-metadata : ^0.1.13\n \n rimraf : ^3.0.2\n \n rxjs : ^7.5.5\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n EnvObjects   (src/.../env.objects.ts)\n \n \n EsTime   (src/.../es-time.enum.ts)\n \n \n HttpResponseDescriptions   (src/.../httpResponseDescriptions.enum.ts)\n \n \n HttpResponseMessages   (src/.../httpResponseMessages.enum.ts)\n \n \n HttpResponseTypes   (src/.../httpResponseTypes.enum.ts)\n \n \n HttpResponseTypesCodes   (src/.../httpResponseTypeCodes.enum.ts)\n \n \n Order   (src/.../page-order.enum.ts)\n \n \n Roles   (src/.../roles.enum.ts)\n \n \n \n \n \n \n\n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n EnvObjects\n \n \n \n \n options enum\n\n \n \n \n \n  TRANSACTION_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  WIDRAW_COMMISSION\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n  DEPOSIT_FEE_PER_MINUTE\n \n \n \n \n Value : VirtualBankOptions\n \n \n \n \n\n src/core/domain/enums/es-time.enum.ts\n \n \n \n \n \n \n EsTime\n \n \n \n \n Elasticsearch time-units\n\n \n \n \n \n  days\n \n \n \n \n Value : d\n \n \n \n \n  hours\n \n \n \n \n Value : h\n \n \n \n \n  min\n \n \n \n \n Value : m\n \n \n \n \n  sec\n \n \n \n \n Value : s\n \n \n \n \n  ms\n \n \n \n \n Value : ms\n \n \n \n \n  us\n \n \n \n \n Value : micros\n \n \n \n \n  ns\n \n \n \n \n Value : nanos\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseDescriptions.enum.ts\n \n \n \n \n \n \n HttpResponseDescriptions\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : The client SHOULD continue with its request\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : The server understands and is willing to comply with the client's request, via the Upgrade message header field, for a change in the application protocol being used on this connection\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : The 102 (Processing) status code is an interim response used to inform the client that the server has accepted the complete request, but has not yet completed it\n \n \n \n \n  OK\n \n \n \n \n Value : The request has succeeded\n \n \n \n \n  CREATED\n \n \n \n \n Value : The request has been fulfilled and resulted in a new resource being created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : The request has been accepted for processing, but the processing has not been completed\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : The returned metainformation in the entity-header is not the definitive set as available from the origin server, but is gathered from a local or a third-party copy\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : The server has fulfilled the partial GET request for the resource\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : The requested resource corresponds to any one of a set of representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and redirect its request to that location\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use one of the returned URIs\n \n \n \n \n  FOUND\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : If the client has performed a conditional GET request and access is allowed, but the document has not been modified, the server SHOULD respond with this status code\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : The requested resource resides temporarily under a different URI\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : The request, and all future requests should be repeated using another URI\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : The request could not be understood by the server due to malformed syntax\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : The request requires user authentication\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : This code is reserved for future use.\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : The server understood the request, but is refusing to fulfill it\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : The server has not found anything matching the Request-URI\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : The method specified in the Request-Line is not allowed for the resource identified by the Request-URI\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : The client did not produce a request within the time that the server was prepared to wait\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : The request could not be completed due to a conflict with the current state of the resource\n \n \n \n \n  GONE\n \n \n \n \n Value : The requested resource is no longer available at the server and no forwarding address is known\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : The server refuses to accept the request without a defined Content- Length\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : The server is refusing to process a request because the request entity is larger than the server is willing or able to process\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : A server SHOULD return a response with this status code if a request included a Range request-header field (section 14.35), and none of the range-specifier values in this field overlap the current extent of the selected resource, and the request did not include an If-Range request-header field\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : The expectation given in an Expect request-header field could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could not be met by the next-hop server\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : The 422 (Unprocessable Entity) status code means the server understands the content type of the request entity (hence a 415(Unsupported Media Type) status code is inappropriate), and the syntax of the request entity is correct (thus a 400 (Bad Request) status code is inappropriate) but was unable to process the contained instructions\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : The 424 (Failed Dependency) status code means that the method could not be performed on the resource because the requested action depended on another action and that action failed\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : The 429 status code indicates that the user has sent too many requests in a given amount of time (\"rate limiting\")\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : The server encountered an unexpected condition which prevented it from fulfilling the request\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : The server does not support the functionality required to fulfill the request\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : The server is currently unable to handle the request due to a temporary overloading or maintenance of the server\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : The server does not support, or refuses to support, the HTTP protocol version that was used in the request message\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseMessages.enum.ts\n \n \n \n \n \n \n HttpResponseMessages\n \n \n \n \n  CONTINUE\n \n \n \n \n Value : Continue\n \n \n \n \n  SWITCHING_PROTOCOLS\n \n \n \n \n Value : Switching Protocols\n \n \n \n \n  PROCESSING\n \n \n \n \n Value : Processing\n \n \n \n \n  OK\n \n \n \n \n Value : OK\n \n \n \n \n  CREATED\n \n \n \n \n Value : Created\n \n \n \n \n  ACCEPTED\n \n \n \n \n Value : Accepted\n \n \n \n \n  NON_AUTHORITATIVE_INFORMATION\n \n \n \n \n Value : Non-Authoritative Information\n \n \n \n \n  NO_CONTENT\n \n \n \n \n Value : No Content\n \n \n \n \n  RESET_CONTENT\n \n \n \n \n Value : Reset Content\n \n \n \n \n  PARTIAL_CONTENT\n \n \n \n \n Value : Partial Content\n \n \n \n \n  AMBIGUOUS\n \n \n \n \n Value : Multiple Choices\n \n \n \n \n  MOVED_PERMANENTLY\n \n \n \n \n Value : Moved Permanently\n \n \n \n \n  FOUND\n \n \n \n \n Value : Found\n \n \n \n \n  SEE_OTHER\n \n \n \n \n Value : See Other\n \n \n \n \n  NOT_MODIFIED\n \n \n \n \n Value : Not Modified\n \n \n \n \n  TEMPORARY_REDIRECT\n \n \n \n \n Value : Temporary Redirect\n \n \n \n \n  PERMANENT_REDIRECT\n \n \n \n \n Value : Permanent Redirect\n \n \n \n \n  BAD_REQUEST\n \n \n \n \n Value : Bad Request\n \n \n \n \n  UNAUTHORIZED\n \n \n \n \n Value : Unauthorized\n \n \n \n \n  PAYMENT_REQUIRED\n \n \n \n \n Value : Payment Required\n \n \n \n \n  FORBIDDEN\n \n \n \n \n Value : Forbidden\n \n \n \n \n  NOT_FOUND\n \n \n \n \n Value : Not Found\n \n \n \n \n  METHOD_NOT_ALLOWED\n \n \n \n \n Value : Method Not Allowed\n \n \n \n \n  NOT_ACCEPTABLE\n \n \n \n \n Value : Not Acceptable\n \n \n \n \n  PROXY_AUTHENTICATION_REQUIRED\n \n \n \n \n Value : Proxy Authentication Required\n \n \n \n \n  REQUEST_TIMEOUT\n \n \n \n \n Value : Request Timeout\n \n \n \n \n  CONFLICT\n \n \n \n \n Value : Conflict\n \n \n \n \n  GONE\n \n \n \n \n Value : Gone\n \n \n \n \n  LENGTH_REQUIRED\n \n \n \n \n Value : Length Required\n \n \n \n \n  PRECONDITION_FAILED\n \n \n \n \n Value : Precondition Failed\n \n \n \n \n  PAYLOAD_TOO_LARGE\n \n \n \n \n Value : Request Entity Too Large\n \n \n \n \n  URI_TOO_LONG\n \n \n \n \n Value : Request-URI Too Long\n \n \n \n \n  UNSUPPORTED_MEDIA_TYPE\n \n \n \n \n Value : Unsupported Media Type\n \n \n \n \n  REQUESTED_RANGE_NOT_SATISFIABLE\n \n \n \n \n Value : Requested Range Not Satisfiable\n \n \n \n \n  EXPECTATION_FAILED\n \n \n \n \n Value : Expectation Failed\n \n \n \n \n  I_AM_A_TEAPOT\n \n \n \n \n Value : I'm a teapot\n \n \n \n \n  UNPROCESSABLE_ENTITY\n \n \n \n \n Value : Unprocessable Entity\n \n \n \n \n  FAILED_DEPENDENCY\n \n \n \n \n Value : Failed Dependency\n \n \n \n \n  TOO_MANY_REQUESTS\n \n \n \n \n Value : Too Many Requests\n \n \n \n \n  INTERNAL_SERVER_ERROR\n \n \n \n \n Value : Internal Server Error\n \n \n \n \n  NOT_IMPLEMENTED\n \n \n \n \n Value : Not Implemented\n \n \n \n \n  BAD_GATEWAY\n \n \n \n \n Value : Bad Gateway\n \n \n \n \n  SERVICE_UNAVAILABLE\n \n \n \n \n Value : Service Unavailable\n \n \n \n \n  GATEWAY_TIMEOUT\n \n \n \n \n Value : Gateway Timeout\n \n \n \n \n  HTTP_VERSION_NOT_SUPPORTED\n \n \n \n \n Value : HTTP Version Not Supported\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypes.enum.ts\n \n \n \n \n \n \n HttpResponseTypes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : Informational\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : Success\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : Redirection\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : Client Error\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : Server Error\n \n \n \n \n\n src/core/domain/enums/httpResponse/httpResponseTypeCodes.enum.ts\n \n \n \n \n \n \n HttpResponseTypesCodes\n \n \n \n \n  INFORMATIONAL\n \n \n \n \n Value : 1\n \n \n \n \n  SUCCESS\n \n \n \n \n Value : 2\n \n \n \n \n  REDIRECTION\n \n \n \n \n Value : 3\n \n \n \n \n  CLEINT_ERROR\n \n \n \n \n Value : 4\n \n \n \n \n  SERVER_ERROR\n \n \n \n \n Value : 5\n \n \n \n \n\n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n Order\n \n \n \n \n Page display order\n\n \n \n \n \n  ASC\n \n \n \n \n Value : asc\n \n \n \n \n  DESC\n \n \n \n \n Value : desc\n \n \n \n \n\n src/core/domain/enums/roles.enum.ts\n \n \n \n \n \n \n Roles\n \n \n \n \n  Superadmin\n \n \n \n \n Value : Superadmin\n \n \n \n \n  Admin\n \n \n \n \n Value : Admin\n \n \n \n \n  User\n \n \n \n \n Value : User\n \n \n \n \n  Public\n \n \n \n \n Value : Public\n \n \n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n bootstrap   (src/.../main.ts)\n \n \n expandEnvVariables   (src/.../env.helper.ts)\n \n \n naiveRound   (src/.../util.helper.ts)\n \n \n processHttpError   (src/.../util.helper.ts)\n \n \n processMicroserviceHttpError   (src/.../util.helper.ts)\n \n \n toOrder   (src/.../page-order.enum.ts)\n \n \n validate   (src/.../env.validation.ts)\n \n \n validateDTO   (src/.../util.helper.ts)\n \n \n validateOutputDTO   (src/.../util.helper.ts)\n \n \n \n \n \n \n\n\n src/main.ts\n \n \n \n \n \n \n \n bootstrap\n \n \n \n \n \n \nbootstrap()\n \n \n\n\n\n\n \n \n Main entry point of the application\n\n\n \n \n \n \n \n \n src/core/helpers/env.helper.ts\n \n \n \n \n \n \n \n expandEnvVariables\n \n \n \n \n \n \nexpandEnvVariables()\n \n \n\n\n\n\n \n \n Expands the environmanet variables\n\n\n \n Returns : void\n\n \n \n \n \n \n src/core/helpers/util.helper.ts\n \n \n \n \n \n \n \n naiveRound\n \n \n \n \n \n \nnaiveRound(num: number, decimalPlaces: number)\n \n \n\n\n\n\n \n \n Takes a number and rounds to a percission number\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n num\n \n number\n \n\n \n No\n \n\n \n \n\n \n number to be rounded\n\n \n \n \n decimalPlaces\n \n number\n \n\n \n No\n \n\n \n 2\n \n\n \n number of decimal places\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processHttpError\n \n \n \n \n \n \nprocessHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n processMicroserviceHttpError\n \n \n \n \n \n \nprocessMicroserviceHttpError(error: any, logger: any)\n \n \n\n\n\n\n \n \n processes http error that was throwed by service\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n error\n \n any\n \n\n \n No\n \n\n\n \n error (exception or string)\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateDTO\n \n \n \n \n \n \nvalidateDTO(dto: any, httpResponseGenerator: any)\n \n \n\n\n\n\n \n \n validates dto and returns bad request if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n httpResponseGenerator\n \n any\n \n\n \n No\n \n\n\n \n http response service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n validateOutputDTO\n \n \n \n \n \n \nvalidateOutputDTO(dto: any, logger: any)\n \n \n\n\n\n\n \n \n validates output dto and throws an error if it is wrong\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dto\n \n any\n \n\n \n No\n \n\n\n \n dto\n\n \n \n \n logger\n \n any\n \n\n \n No\n \n\n\n \n logger service\n\n \n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n src/core/domain/enums/page-order.enum.ts\n \n \n \n \n \n \n \n toOrder\n \n \n \n \n \n \ntoOrder(str: string)\n \n \n\n\n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n str\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Order\n\n \n \n \n \n \n \n \n \n src/infrastructure/config/env.validation.ts\n \n \n \n \n \n \n \n validate\n \n \n \n \n \n \nvalidate(config: Record)\n \n \n\n\n\n\n \n \n validates the config\n\n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n Record\n \n\n \n No\n \n\n\n \n congig\n\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nHexagonal architecture\nTable of Contents\n\nOverview\n\nCode architecture\n\nsource code\n\nService build information\n\nRegular user\n\nAdvanced user\n\nDeployment\n\nHelm\n\nKubernetes manifests\n\nMonitoring and alerting\n\nHealth check\n\nOpenApi\n\nDocumentation\n\nToDo list\n\n\nOverview\nThe hexagonal architecture, or ports and adapters architecture, is an architectural pattern used in software design. It aims at creating loosely coupled application components that can be easily connected to their software environment by means of ports and adapters. This makes components exchangeable at any level and facilitates test automation.\n\nCode architecture\n\n\nsource code\ngit clone https://github.com/MoeidHeidari/nestjs-boilerplate\ncd monetary-transactionService build information\nThere are different stages of building the application for this service. Based on the environment you want to deploy we have different ways to build the application. following information may help with building the service.\nRegular user\nnpm install\n\nnpm run build\n\nnpm run test:ci\n\nnpm start:{dev || debug || prod}Advanced user\ncd scripts\n\nbash run.sh -h\n\n2022.05.30.14.43\n\nUsage: $(basename \"${BASH_SOURCE[0]}\") [-h] [-buildDocker] [-runDocker] [-runApp] [-runDoc] [-packageHelm]\n\nThis script helps you to run the application in different forms. below you can get the full list of available options.\n\nAvailable options:\n\n-h, --help Print this help and exit\n\n-buildDocker Build the docker image called \"imageName:latest\"\n\n-runDocker Build the docker image and run on local machine\n\n-runApp Run application with npm in usual way for development\n\n-runDoc Generate the code documentation\n\n-packageHelm makes a helm package from the helm chart.Deployment\nHelm\nwith the following instruction you can install the helm chart on an up and running kubernetes cluster.\ncd k8s\n\nhelm install {sample-app} {app-0.1.0.tgz} --set service.type=NodePortKubernetes manifests\nAlternativelly you can deploy the application on an up an running kubernetes cluster using provided config files.\ncd k8s/configFiles\nkubectl apply -f app-namespace.yaml, app-configmap.yaml, app-deployment.yaml, app-service.yamlit should give you following output\nnamespace/app created\nconfigmap/app-config created\ndeployment.apps/app created\nservice/app createdMonitoring and alerting\nHealth check\nby calling the following endpoint you can make sure that the application is running and listening to your desired port\nhttp://localhost:{port_number}/health\nmost probably you will get a result back as follow\n\nExample\n\n\n{\"status\":\"ok\",\"info\":{\"alive\":{\"status\":\"up\"}},\"error\":{},\"details\":{\"alive\":{\"status\":\"up\"}}}\n\nmertics\nto get the default metrics of the application you can use the following endpoint\nhttp://localhost:{port_number}/metrics\nOpenApi\nby calling the following endpoint you can see the Swagger OpenApi documentation and explore all the available apis and schemas.\nhttp://localhost:{port_number}/api\nDocumentation\nBy running following comman you can generate the full code documentation (Compodoc) and get access to it through port 7000\nnpm run dochttp://localhost:7000\nToDo list\n\n add terraform infrastructure\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\n Apache License\n Version 2.0, January 2004\n http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\nDefinitions.\n\"License\" shall mean the terms and conditions for use, reproduction,\nand distribution as defined by Sections 1 through 9 of this document.\n\"Licensor\" shall mean the copyright owner or entity authorized by\nthe copyright owner that is granting the License.\n\"Legal Entity\" shall mean the union of the acting entity and all\nother entities that control, are controlled by, or are under common\ncontrol with that entity. For the purposes of this definition,\n\"control\" means (i) the power, direct or indirect, to cause the\ndirection or management of such entity, whether by contract or\notherwise, or (ii) ownership of fifty percent (50%) or more of the\noutstanding shares, or (iii) beneficial ownership of such entity.\n\"You\" (or \"Your\") shall mean an individual or Legal Entity\nexercising permissions granted by this License.\n\"Source\" form shall mean the preferred form for making modifications,\nincluding but not limited to software source code, documentation\nsource, and configuration files.\n\"Object\" form shall mean any form resulting from mechanical\ntransformation or translation of a Source form, including but\nnot limited to compiled object code, generated documentation,\nand conversions to other media types.\n\"Work\" shall mean the work of authorship, whether in Source or\nObject form, made available under the License, as indicated by a\ncopyright notice that is included in or attached to the work\n(an example is provided in the Appendix below).\n\"Derivative Works\" shall mean any work, whether in Source or Object\nform, that is based on (or derived from) the Work and for which the\neditorial revisions, annotations, elaborations, or other modifications\nrepresent, as a whole, an original work of authorship. For the purposes\nof this License, Derivative Works shall not include works that remain\nseparable from, or merely link (or bind by name) to the interfaces of,\nthe Work and Derivative Works thereof.\n\"Contribution\" shall mean any work of authorship, including\nthe original version of the Work and any modifications or additions\nto that Work or Derivative Works thereof, that is intentionally\nsubmitted to Licensor for inclusion in the Work by the copyright owner\nor by an individual or Legal Entity authorized to submit on behalf of\nthe copyright owner. For the purposes of this definition, \"submitted\"\nmeans any form of electronic, verbal, or written communication sent\nto the Licensor or its representatives, including but not limited to\ncommunication on electronic mailing lists, source code control systems,\nand issue tracking systems that are managed by, or on behalf of, the\nLicensor for the purpose of discussing and improving the Work, but\nexcluding communication that is conspicuously marked or otherwise\ndesignated in writing by the copyright owner as \"Not a Contribution.\"\n\"Contributor\" shall mean Licensor and any individual or Legal Entity\non behalf of whom a Contribution has been received by Licensor and\nsubsequently incorporated within the Work.\n\nGrant of Copyright License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\ncopyright license to reproduce, prepare Derivative Works of,\npublicly display, publicly perform, sublicense, and distribute the\nWork and such Derivative Works in Source or Object form.\n\nGrant of Patent License. Subject to the terms and conditions of\nthis License, each Contributor hereby grants to You a perpetual,\nworldwide, non-exclusive, no-charge, royalty-free, irrevocable\n(except as stated in this section) patent license to make, have made,\nuse, offer to sell, sell, import, and otherwise transfer the Work,\nwhere such license applies only to those patent claims licensable\nby such Contributor that are necessarily infringed by their\nContribution(s) alone or by combination of their Contribution(s)\nwith the Work to which such Contribution(s) was submitted. If You\ninstitute patent litigation against any entity (including a\ncross-claim or counterclaim in a lawsuit) alleging that the Work\nor a Contribution incorporated within the Work constitutes direct\nor contributory patent infringement, then any patent licenses\ngranted to You under this License for that Work shall terminate\nas of the date such litigation is filed.\n\nRedistribution. You may reproduce and distribute copies of the\nWork or Derivative Works thereof in any medium, with or without\nmodifications, and in Source or Object form, provided that You\nmeet the following conditions:\n(a) You must give any other recipients of the Work or\nDerivative Works a copy of this License; and\n(b) You must cause any modified files to carry prominent notices\nstating that You changed the files; and\n(c) You must retain, in the Source form of any Derivative Works\nthat You distribute, all copyright, patent, trademark, and\nattribution notices from the Source form of the Work,\nexcluding those notices that do not pertain to any part of\nthe Derivative Works; and\n(d) If the Work includes a \"NOTICE\" text file as part of its\ndistribution, then any Derivative Works that You distribute must\ninclude a readable copy of the attribution notices contained\nwithin such NOTICE file, excluding those notices that do not\npertain to any part of the Derivative Works, in at least one\nof the following places: within a NOTICE text file distributed\nas part of the Derivative Works; within the Source form or\ndocumentation, if provided along with the Derivative Works; or,\nwithin a display generated by the Derivative Works, if and\nwherever such third-party notices normally appear. The contents\nof the NOTICE file are for informational purposes only and\ndo not modify the License. You may add Your own attribution\nnotices within Derivative Works that You distribute, alongside\nor as an addendum to the NOTICE text from the Work, provided\nthat such additional attribution notices cannot be construed\nas modifying the License.\nYou may add Your own copyright statement to Your modifications and\nmay provide additional or different license terms and conditions\nfor use, reproduction, or distribution of Your modifications, or\nfor any such Derivative Works as a whole, provided Your use,\nreproduction, and distribution of the Work otherwise complies with\nthe conditions stated in this License.\n\nSubmission of Contributions. Unless You explicitly state otherwise,\nany Contribution intentionally submitted for inclusion in the Work\nby You to the Licensor shall be under the terms and conditions of\nthis License, without any additional terms or conditions.\nNotwithstanding the above, nothing herein shall supersede or modify\nthe terms of any separate license agreement you may have executed\nwith Licensor regarding such Contributions.\n\nTrademarks. This License does not grant permission to use the trade\nnames, trademarks, service marks, or product names of the Licensor,\nexcept as required for reasonable and customary use in describing the\norigin of the Work and reproducing the content of the NOTICE file.\n\nDisclaimer of Warranty. Unless required by applicable law or\nagreed to in writing, Licensor provides the Work (and each\nContributor provides its Contributions) on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied, including, without limitation, any warranties or conditions\nof TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\nPARTICULAR PURPOSE. You are solely responsible for determining the\nappropriateness of using or redistributing the Work and assume any\nrisks associated with Your exercise of permissions under this License.\n\nLimitation of Liability. In no event and under no legal theory,\nwhether in tort (including negligence), contract, or otherwise,\nunless required by applicable law (such as deliberate and grossly\nnegligent acts) or agreed to in writing, shall any Contributor be\nliable to You for damages, including any direct, indirect, special,\nincidental, or consequential damages of any character arising as a\nresult of this License or out of the use or inability to use the\nWork (including but not limited to damages for loss of goodwill,\nwork stoppage, computer failure or malfunction, or any and all\nother commercial damages or losses), even if such Contributor\nhas been advised of the possibility of such damages.\n\nAccepting Warranty or Additional Liability. While redistributing\nthe Work or Derivative Works thereof, You may choose to offer,\nand charge a fee for, acceptance of support, warranty, indemnity,\nor other liability obligations and/or rights consistent with this\nLicense. However, in accepting such obligations, You may act only\non Your own behalf and on Your sole responsibility, not on behalf\nof any other Contributor, and only if You agree to indemnify,\ndefend, and hold each Contributor harmless for any liability\nincurred by, or claims asserted against, such Contributor by reason\nof your accepting any such warranty or additional liability.\n\n\n END OF TERMS AND CONDITIONS\n APPENDIX: How to apply the Apache License to your work.\n To apply the Apache License to your work, attach the following\n boilerplate notice, with the fields enclosed by brackets \"[]\"\n replaced with your own identifying information. (Don't include\n the brackets!) The text should be enclosed in the appropriate\n comment syntax for the file format. We also recommend that a\n file or class name and description of purpose be included on the\n same \"printed page\" as the copyright notice for easier\n identification within third-party archives. Copyright [yyyy] [name of copyright owner]\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CommonModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HealthModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n HttpResponseModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n LoggerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CommonModule\n\n\n\ncluster_CommonModule_imports\n\n\n\ncluster_CommonModule_exports\n\n\n\ncluster_HttpResponseModule\n\n\n\ncluster_HttpResponseModule_exports\n\n\n\ncluster_HttpResponseModule_providers\n\n\n\ncluster_LoggerModule\n\n\n\ncluster_LoggerModule_exports\n\n\n\ncluster_LoggerModule_providers\n\n\n\ncluster_SearchModule\n\n\n\ncluster_SearchModule_exports\n\n\n\ncluster_SearchModule_providers\n\n\n\n\nCommonModule\n\nCommonModule\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nCommonModule->AppModule\n\n\n\n\n\nHttpResponseModule \n\nHttpResponseModule \n\nHttpResponseModule -->\n\nCommonModule->HttpResponseModule \n\n\n\n\n\nLoggerModule \n\nLoggerModule \n\nLoggerModule -->\n\nCommonModule->LoggerModule \n\n\n\n\n\nSearchModule\n\nSearchModule\n\nAppModule -->\n\nSearchModule->AppModule\n\n\n\n\n\nSearchService \n\nSearchService \n\nSearchService -->\n\nSearchModule->SearchService \n\n\n\n\n\nHttpResponseModule\n\nHttpResponseModule\n\nCommonModule -->\n\nHttpResponseModule->CommonModule\n\n\n\n\n\nHttpResponseService \n\nHttpResponseService \n\nHttpResponseService -->\n\nHttpResponseModule->HttpResponseService \n\n\n\n\n\nLoggerModule\n\nLoggerModule\n\nCommonModule -->\n\nLoggerModule->CommonModule\n\n\n\n\n\nLoggerService \n\nLoggerService \n\nLoggerService -->\n\nLoggerModule->LoggerService \n\n\n\n\n\nHttpResponseService\n\nHttpResponseService\n\nHttpResponseModule -->\n\nHttpResponseService->HttpResponseModule\n\n\n\n\n\nLoggerService\n\nLoggerService\n\nLoggerModule -->\n\nLoggerService->LoggerModule\n\n\n\n\n\nSearchService\n\nSearchService\n\nSearchModule -->\n\nSearchService->SearchModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 6 Modules\n \n \n \n \n \n \n \n \n 2 Controllers\n \n \n \n \n \n \n \n 5 Injectables\n \n \n \n \n \n \n \n 12 Classes\n \n \n \n \n \n \n \n 1 Guard\n \n \n \n \n \n \n \n 8 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 0.0.1\n \n Description : This is a boilerplate for Nodejs (Nestjs/typescript) that can be used to make http server application.\n \n License : Apache\n \n Author : Moeid Heidari\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n allowedProperties   (src/.../page-meta.dto.ts)\n \n \n allowedProperties   (src/.../page.dto.ts)\n \n \n allowedProperties   (src/.../paper.dto.ts)\n \n \n allowedProperties   (src/.../request.dto.ts)\n \n \n allowedProperties   (src/.../search-q.dto.ts)\n \n \n allowedProperties   (src/.../search-result.dto.ts)\n \n \n allowedProperties   (src/.../es-hit.dto.ts)\n \n \n allowedProperties   (src/.../es-query.dto.ts)\n \n \n allowedProperties   (src/.../es-response.dto.ts)\n \n \n configuration   (src/.../env.objects.ts)\n \n \n IS_PUBLIC_KEY   (src/.../public.decorator.ts)\n \n \n modulesList   (src/.../app.module.ts)\n \n \n Public   (src/.../public.decorator.ts)\n \n \n Roles   (src/.../roles.decorator.ts)\n \n \n ROLES_KEY   (src/.../roles.decorator.ts)\n \n \n \n \n \n \n\n\n src/core/domain/dtos/page-meta.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['total', 'pagenum', 'order', 'hasNext', 'hasPrev', 'pagesize']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/page.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'meta']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/paper.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['id', 'title', 'authors', 'topic', 'summary', 'tags', 'content']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/request.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'es_query']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-q.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['query', 'pagen', 'limit', 'order']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/search-result.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['data', 'status']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-hit.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['sort', '_source', '_score']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-query.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['size', 'query', 'pit', 'sort']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/core/domain/dtos/elastic/es-response.dto.ts\n \n \n \n \n \n \n \n allowedProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : ['took', 'timed_out', '_shards', 'hits', 'pit_id']\n \n \n\n \n \n List of allowed properties in this DTO\n\n \n \n\n \n \n\n src/infrastructure/config/env.objects.ts\n \n \n \n \n \n \n \n configuration\n \n \n \n \n \n \n Default value : (): any => ({\n VirtualBankOptions: {\n transaction_commission: process.env.TRANSACTION_COMMISSION,\n widraw_commission: process.env.WIDRAW_COMMISSION,\n deposit_fee_per_minute: process.env.DEPOSIT_FEE_PER_MINUTE,\n },\n})\n \n \n\n \n \n configuration function\n\n \n \n\n \n \n\n src/core/decorators/public.decorator.ts\n \n \n \n \n \n \n \n IS_PUBLIC_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'isPublic'\n \n \n\n \n \n key for public state\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n \n \n \n \n \n \n Default value : () => SetMetadata(IS_PUBLIC_KEY, true)\n \n \n\n \n \n decorates method as public\n\n \n \n\n \n \n\n src/infrastructure/modules/app.module.ts\n \n \n \n \n \n \n \n modulesList\n \n \n \n \n \n \n Default value : Object.keys(modules).map(moduleIndex => modules[moduleIndex as keyof typeof modules])\n \n \n\n \n \n application modules list\n\n \n \n\n \n \n\n src/core/decorators/roles.decorator.ts\n \n \n \n \n \n \n \n Roles\n \n \n \n \n \n \n Default value : (...roles: Role[]) => SetMetadata(ROLES_KEY, roles)\n \n \n\n \n \n retuns a list of defined roles\n\n \n \n\n \n \n \n \n \n \n \n \n ROLES_KEY\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'roles'\n \n \n\n \n \n keys of roles\n\n \n \n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"routes.html":{"url":"routes.html","title":"routes - routes","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Routes\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}}
}
diff --git a/documentation/miscellaneous/functions.html b/documentation/miscellaneous/functions.html
index 8c5d7f9..9dc2c62 100644
--- a/documentation/miscellaneous/functions.html
+++ b/documentation/miscellaneous/functions.html
@@ -76,6 +76,9 @@
processMicroserviceHttpError (src/.../util.helper.ts)
+
+ toOrder (src/.../page-order.enum.ts)
+
validate (src/.../env.validation.ts)
@@ -572,6 +575,79 @@
+
+
+
+
+
+ src/core/domain/enums/page-order.enum.ts
+
+
+
+
+
+
+
+ toOrder
+
+
+
+
+
+
+toOrder(str: string )
+
+
+
+
+
+
+
+
+ Converts string value to appropriate enum-member
+
+
+
+
Parameters :
+
+
+
+
+ Name
+ Type
+ Optional
+ Description
+
+
+
+
+ str
+
+ string
+
+
+
+ No
+
+
+
+
+ String to be converted
+
+
+
+
+
+
+
+
+
+
+
Appropriate enum-member
+
diff --git a/documentation/modules/HttpResponseModule.html b/documentation/modules/HttpResponseModule.html
index a50283e..f298ffb 100644
--- a/documentation/modules/HttpResponseModule.html
+++ b/documentation/modules/HttpResponseModule.html
@@ -57,14 +57,14 @@
cluster_HttpResponseModule
-
-cluster_HttpResponseModule_providers
-
-
cluster_HttpResponseModule_exports
+
+cluster_HttpResponseModule_providers
+
+
HttpResponseService
diff --git a/documentation/modules/LoggerModule.html b/documentation/modules/LoggerModule.html
index d91a07c..733b70a 100644
--- a/documentation/modules/LoggerModule.html
+++ b/documentation/modules/LoggerModule.html
@@ -57,14 +57,14 @@
cluster_LoggerModule
-
-cluster_LoggerModule_providers
-
-
cluster_LoggerModule_exports
+
+cluster_LoggerModule_providers
+
+
LoggerService
diff --git a/documentation/modules/LoggerModule/dependencies.svg b/documentation/modules/LoggerModule/dependencies.svg
index 0321adc..5c106c0 100644
--- a/documentation/modules/LoggerModule/dependencies.svg
+++ b/documentation/modules/LoggerModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_LoggerModule
-
-cluster_LoggerModule_exports
-
-
cluster_LoggerModule_providers
+
+cluster_LoggerModule_exports
+
+
LoggerService
diff --git a/documentation/modules/SearchModule.html b/documentation/modules/SearchModule.html
index fbcca7c..452318a 100644
--- a/documentation/modules/SearchModule.html
+++ b/documentation/modules/SearchModule.html
@@ -177,7 +177,7 @@
import { HttpModule } from "@nestjs/axios";
-import { Module } from "@nestjs/common";
+import { CacheModule, Module } from "@nestjs/common";
import { PapersController } from "../../application";
import { SearchService } from "../../core/services/common/search.service";
@@ -187,6 +187,7 @@ import { SearchService } from "../../core/services/common/search.service&qu
@Module({
imports: [
HttpModule,
+ CacheModule.register(),
],
exports: [SearchService],
providers: [SearchService],
diff --git a/documentation/modules/SearchModule/dependencies.svg b/documentation/modules/SearchModule/dependencies.svg
index 3d5fb1d..bfd3490 100644
--- a/documentation/modules/SearchModule/dependencies.svg
+++ b/documentation/modules/SearchModule/dependencies.svg
@@ -14,14 +14,14 @@
cluster_SearchModule
-
-cluster_SearchModule_providers
-
-
cluster_SearchModule_exports
+
+cluster_SearchModule_providers
+
+
SearchService
diff --git a/documentation/overview.html b/documentation/overview.html
index 91e00cb..7b5e6ed 100644
--- a/documentation/overview.html
+++ b/documentation/overview.html
@@ -317,7 +317,7 @@
-
9 Interfaces
+
8 Interfaces
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 3151334..50b30e7 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -1,13 +1,16 @@
-import { CacheInterceptor, Controller, Get, HttpCode, Inject, Param, ParseUUIDPipe, Req, UseInterceptors } from "@nestjs/common";
+import { Body, Controller, Get, HttpCode, Param, ParseUUIDPipe, Query, Req, UseFilters, UseInterceptors, UsePipes } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
import { PageInterceptor } from "../../core/interceptors/page.interceptor";
-import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags, getSchemaPath } from "@nestjs/swagger";
+import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags } from "@nestjs/swagger";
import { RequestDto } from "../../core/domain/dtos/request.dto";
import { EsHitDto, EsResponseDto, PageDto, PaperDto } from "../../core/domain";
+import { HttpExceptionFilter } from "src/core/filters/http-exception.filter";
+import { QueryStringPipe } from "src/core/pipes/query-str.pipe";
/**
* /papers/ route controller
*/
+@UseFilters(HttpExceptionFilter)
@Controller({
version: '1',
path: 'papers',
@@ -73,7 +76,7 @@ export class PapersController {
getByID(@Param('uuid', ParseUUIDPipe) uuid: string): Promise {
return this.searchService.findByID(uuid).then(
(response: EsResponseDto) => {
- return response.hits.hits[0]._source;
+ return response.hits.hits[0]?._source;
},
(error) => {
throw error;
diff --git a/src/core/domain/enums/page-order.enum.ts b/src/core/domain/enums/page-order.enum.ts
index 234f858..61e5176 100644
--- a/src/core/domain/enums/page-order.enum.ts
+++ b/src/core/domain/enums/page-order.enum.ts
@@ -13,9 +13,15 @@ export enum Order {
DESC = 'desc',
}
+/**
+ * Converts string value to appropriate enum-member
+ * @param str String to be converted
+ * @returns Appropriate enum-member
+ */
export function toOrder(str: string): Order {
switch (str) {
case 'asc': return Order.ASC;
case 'desc': return Order.DESC;
- }
+ }
+ return;
}
\ No newline at end of file
diff --git a/src/core/filters/http-exception.filter.ts b/src/core/filters/http-exception.filter.ts
new file mode 100644
index 0000000..32db991
--- /dev/null
+++ b/src/core/filters/http-exception.filter.ts
@@ -0,0 +1,23 @@
+import { ArgumentsHost, Catch, ExceptionFilter, HttpException } from "@nestjs/common";
+
+/**
+ * Basic filter for processing unhabdled HTTP exceptions
+ */
+@Catch(HttpException)
+export class HttpExceptionFilter implements ExceptionFilter {
+ /**
+ * Exception handling method
+ * @param exception Execution object currently being processed
+ * @param host Arguments host utility object
+ */
+ catch(exception: HttpException, host: ArgumentsHost) {
+ const ctx = host.switchToHttp();
+ const response = ctx.getResponse();
+ const status = exception.getStatus();
+
+ response.status(status).json({
+ status: status,
+ message: exception.message,
+ });
+ }
+}
\ No newline at end of file
diff --git a/src/core/pipes/query-str.pipe.ts b/src/core/pipes/query-str.pipe.ts
new file mode 100644
index 0000000..d9bfcca
--- /dev/null
+++ b/src/core/pipes/query-str.pipe.ts
@@ -0,0 +1,13 @@
+import { ArgumentMetadata, BadRequestException, ImATeapotException, Injectable, PipeTransform } from "@nestjs/common";
+import { RequestDto } from "../domain";
+
+@Injectable()
+export class QueryStringPipe implements PipeTransform {
+ constructor() {}
+
+ transform(value: RequestDto, metadata: ArgumentMetadata): RequestDto {
+ console.log(value.query.limit)
+
+ return value;
+ }
+}
\ No newline at end of file
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index 609ce0d..4cd131b 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,5 +1,5 @@
import { HttpService } from "@nestjs/axios";
-import { GatewayTimeoutException, HttpException, Injectable } from "@nestjs/common";
+import { GatewayTimeoutException, Injectable, NotFoundException } from "@nestjs/common";
import { map, take } from "rxjs";
import { EsResponseDto} from "../../domain/dtos";
import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
@@ -49,6 +49,9 @@ export class SearchService {
}))
?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
+ if (!res.hits.hits.length) {
+ reject(new NotFoundException);
+ }
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
@@ -77,7 +80,6 @@ export class SearchService {
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
-
resolve(res);
});
} catch (error) {
diff --git a/src/infrastructure/modules/app.module.ts b/src/infrastructure/modules/app.module.ts
index 308d14f..9b20b70 100644
--- a/src/infrastructure/modules/app.module.ts
+++ b/src/infrastructure/modules/app.module.ts
@@ -1,5 +1,5 @@
import { CacheInterceptor, CacheModule, Module } from '@nestjs/common';
-import { APP_INTERCEPTOR } from '@nestjs/core';
+import { APP_INTERCEPTOR, APP_PIPE } from '@nestjs/core';
import { ConfigModule } from '@nestjs/config';
import { configuration } from '../config/env.objects';
import { validate } from '../config/env.validation';
@@ -8,6 +8,7 @@ import * as modules from '../../core/modules'
import { CommonModule } from './common/common.module';
import { PrometheusModule } from '@willsoto/nestjs-prometheus';
import { SearchModule } from './search.module';
+import { QueryStringPipe } from 'src/core/pipes/query-str.pipe';
/**
* application modules list
diff --git a/src/main.ts b/src/main.ts
index c3efc9c..58e4e19 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -4,6 +4,7 @@ import { NestFactory } from '@nestjs/core';
import { AppModule } from './infrastructure/modules/app.module';
import { SwaggerModule, DocumentBuilder, SwaggerDocumentOptions } from '@nestjs/swagger';
import { ConfigService } from '@nestjs/config';
+import { QueryStringPipe } from './core/pipes/query-str.pipe';
/**
* Main entry point of the application
* @returns Nothing
@@ -16,7 +17,7 @@ async function bootstrap() {
app.useGlobalPipes(
new ValidationPipe({
disableErrorMessages: false,
- })
+ }),
);
/**
diff --git a/src/test/page.interceptor.spec.ts b/src/test/page.interceptor.spec.ts
index d60c8f1..27837a4 100644
--- a/src/test/page.interceptor.spec.ts
+++ b/src/test/page.interceptor.spec.ts
@@ -151,11 +151,7 @@ describe('Unit tests for PageInterceptor', () => {
res.subscribe((page) => {
expect(page.meta).toEqual({
total: 921,
- pagenum: 5,
order: 'desc',
- hasNext: true,
- hasPrev: true,
- pagesize: 100
});
});
});
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index 864f6c3..d773f4f 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -42,23 +42,25 @@ describe('Unit tests for SearchService', () => {
expect(httpGetSpy).toHaveBeenCalled();
});
- it('Should send correct data via HttpService.get() body parameter', () => {
- let httpGetSpy = jest.spyOn(httpService, 'get');
+ // it('Should send correct data via HttpService.get() body parameter', () => {
+ // let httpGetSpy = jest.spyOn(httpService, 'get');
- const uuid = 'thisIsUUID_Provided';
- searchService.findByID(uuid);
- expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
- data: {
- size: 1,
- query: {
- query_string: {
- query: 'id:' + uuid
- }
- }
- },
- headers: { 'Content-Type': 'application/json' }
- });
- });
+ // const uuid = 'thisIsUUID_Provided';
+ // searchService.findByID(uuid);
+ // expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
+ // data: {
+ // size: 1,
+ // query: {
+ // query_string: {
+ // query: 'id:' + uuid
+ // }
+ // },
+ // search_after: undefined,
+ // sort: undefined,
+ // },
+ // headers: { 'Content-Type': 'application/json' }
+ // });
+ // });
it('Should call HttpService.get() with correct URI and port number', () => {
let httpGetSpy = jest.spyOn(httpService, 'get');
--
2.39.5
From 83b5cc6e5e865415d2e3f2d1401ff61e2ba281e5 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Fri, 7 Oct 2022 13:18:50 +0300
Subject: [PATCH 18/23] Fixed validation issues. Cleared unnecessary DTOs
---
.../controller/papers.controller.ts | 15 +++---
src/core/domain/dtos/index.ts | 4 +-
src/core/domain/dtos/request.dto.ts | 48 -----------------
src/core/domain/dtos/search-q.dto.ts | 33 +++++++-----
src/core/domain/dtos/search-result.dto.ts | 53 -------------------
src/core/interceptors/page.interceptor.ts | 28 +++-------
src/core/pipes/query-str.pipe.ts | 13 -----
src/core/services/common/search.service.ts | 24 ++++++---
src/infrastructure/modules/app.module.ts | 1 -
src/main.ts | 2 +-
src/test/search.service.spec.ts | 2 +-
11 files changed, 53 insertions(+), 170 deletions(-)
delete mode 100644 src/core/domain/dtos/request.dto.ts
delete mode 100644 src/core/domain/dtos/search-result.dto.ts
delete mode 100644 src/core/pipes/query-str.pipe.ts
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 50b30e7..bdf507a 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -1,11 +1,9 @@
-import { Body, Controller, Get, HttpCode, Param, ParseUUIDPipe, Query, Req, UseFilters, UseInterceptors, UsePipes } from "@nestjs/common";
+import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Query, Req, UseFilters, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
import { PageInterceptor } from "../../core/interceptors/page.interceptor";
import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags } from "@nestjs/swagger";
-import { RequestDto } from "../../core/domain/dtos/request.dto";
-import { EsHitDto, EsResponseDto, PageDto, PaperDto } from "../../core/domain";
+import { EsHitDto, EsResponseDto, PageDto, PaperDto, SearchQueryDto } from "../../core/domain";
import { HttpExceptionFilter } from "src/core/filters/http-exception.filter";
-import { QueryStringPipe } from "src/core/pipes/query-str.pipe";
/**
* /papers/ route controller
@@ -15,8 +13,7 @@ import { QueryStringPipe } from "src/core/pipes/query-str.pipe";
version: '1',
path: 'papers',
})
-@ApiExtraModels(RequestDto, EsHitDto, EsResponseDto)
-// @UseInterceptors(CacheInterceptor)
+@ApiExtraModels(EsHitDto, EsResponseDto)
export class PapersController {
constructor(private searchService: SearchService) {}
@@ -39,10 +36,10 @@ export class PapersController {
description: 'Elasticsearch request timed out'
})
@Get('search')
- @UseInterceptors(PageInterceptor)
@HttpCode(200)
- getByContext(@Req() request: RequestDto): Promise {
- return this.searchService.findByContext(request.es_query).then(
+ @UseInterceptors(PageInterceptor)
+ getByContext(@Query() request: SearchQueryDto): Promise {
+ return this.searchService.findByContext(request).then(
(response) => {
return response;
},
diff --git a/src/core/domain/dtos/index.ts b/src/core/domain/dtos/index.ts
index d24be14..ac35a7b 100644
--- a/src/core/domain/dtos/index.ts
+++ b/src/core/domain/dtos/index.ts
@@ -3,6 +3,4 @@ export * from './elastic/es-response.dto';
export * from './elastic/es-hit.dto';
export * from './page.dto';
export * from './search-q.dto';
-export * from './search-result.dto';
-export * from './paper.dto';
-export * from './request.dto';
\ No newline at end of file
+export * from './paper.dto';
\ No newline at end of file
diff --git a/src/core/domain/dtos/request.dto.ts b/src/core/domain/dtos/request.dto.ts
deleted file mode 100644
index 973264d..0000000
--- a/src/core/domain/dtos/request.dto.ts
+++ /dev/null
@@ -1,48 +0,0 @@
-import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
-import { IsDefined, IsNotEmpty, IsOptional } from "class-validator";
-import { EsQueryDto } from "./elastic/es-query.dto";
-import { SearchQueryDto } from "./search-q.dto";
-
-/**
- * List of allowed properties in this DTO
- */
-const allowedProperties = ['query', 'es_query'];
-
-/**
- * Request object, which contains query parameters and Elasticsearch query object
- */
-@ApiExtraModels()
-export class RequestDto {
- /**
- * Query parameters object
- */
- @IsDefined()
- @IsNotEmpty()
- @ApiProperty({
- type: SearchQueryDto,
- description: 'Actual query with parameters acquired from the request',
- example: {}
- })
- query: SearchQueryDto;
-
- /**
- * Elasticsearch query object
- */
- @IsOptional()
- @ApiPropertyOptional({
- type: EsQueryDto,
- description: 'Elasticsearch query body constructed by pagination mechanism',
- example: {},
- })
- es_query?: EsQueryDto;
-
- /**
- * Constructs an object with provided parameters
- * @param query
- * @param es_query
- */
- constructor(query: SearchQueryDto, es_query: EsQueryDto) {
- this.query = query;
- this.es_query = es_query;
- }
-}
\ No newline at end of file
diff --git a/src/core/domain/dtos/search-q.dto.ts b/src/core/domain/dtos/search-q.dto.ts
index ee4d929..0651a03 100644
--- a/src/core/domain/dtos/search-q.dto.ts
+++ b/src/core/domain/dtos/search-q.dto.ts
@@ -1,10 +1,11 @@
import { ApiExtraModels, ApiPropertyOptional } from "@nestjs/swagger";
-import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString } from "class-validator";
+import { Type } from "class-transformer";
+import { IsDefined, IsInt, IsNotEmpty, IsOptional, IsString, Min } from "class-validator";
/**
* List of allowed properties in this DTO
*/
-const allowedProperties = ['query', 'pagen', 'limit', 'order'];
+const allowedProperties = ['query', 'limit', 'offset', 'order'];
/**
* Elasticsearch response DTO
@@ -28,9 +29,12 @@ export class SearchQueryDto {
*/
@IsOptional()
@IsInt()
+ @Type(() => Number)
+ @Min(1)
@ApiPropertyOptional({
description: 'Limits the number of displayed elements',
example: 10,
+ required: false
})
limit?: number;
@@ -39,26 +43,26 @@ export class SearchQueryDto {
*/
@IsOptional()
@IsInt()
+ @Type(() => Number)
+ @Min(0)
@ApiPropertyOptional({
description: 'Offset from the start of the list of hits',
example: 0,
+ required: false,
})
offset?: number;
/**
* Indicates in which order elements need to be displayed.
*/
- @IsOptional()
- @IsString()
- @ApiPropertyOptional({
- description: 'Indicates in which order elements need to be displayed',
- example: 'asc',
- })
- order?: string;
-
- /**
- *
- */
+ @IsOptional()
+ @IsString()
+ @ApiPropertyOptional({
+ description: 'Indicates in which order elements need to be displayed',
+ example: 'asc',
+ required: false,
+ })
+ order?: string;
/**
* Constructs an object with provided parameters
@@ -67,9 +71,10 @@ export class SearchQueryDto {
* @param limit
* @param order
*/
- constructor(query: string, page: number, limit: number, order: string) {
+ constructor(query: string = undefined, limit: number = 10, offset: number = 0, order: string = undefined) {
this.query = query;
this.limit = limit;
+ this.offset = offset;
this.order = order;
}
}
\ No newline at end of file
diff --git a/src/core/domain/dtos/search-result.dto.ts b/src/core/domain/dtos/search-result.dto.ts
deleted file mode 100644
index c926308..0000000
--- a/src/core/domain/dtos/search-result.dto.ts
+++ /dev/null
@@ -1,53 +0,0 @@
-import { ApiExtraModels, ApiProperty } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsInt, IsNotEmpty } from "class-validator";
-import { EsResponseDto } from "./elastic/es-response.dto";
-
-/**
- * List of allowed properties in this DTO
- */
-const allowedProperties = ['data', 'status'];
-
-/**
- * Elasticsearch response DTO
- */
-@ApiExtraModels()
-export class SearchResultDto {
- /**
- * Status code
- */
- @IsDefined()
- @IsNotEmpty()
- @IsInt()
- @ApiProperty({
- description: 'Status code',
- example: 200,
- })
- statusCode: number;
-
- /**
- * All the data acquired.
- */
- @IsDefined()
- @IsNotEmpty()
- @IsArray()
- @ApiProperty({
- description: 'Data acquired from the Elasticsearch',
- example: {
- took: 1,
- timed_out: false,
- _shards: {},
- hits: {}
- },
- })
- data: EsResponseDto;
-
- /**
- * Constructs an object with provided parameters
- * @param code
- * @param data
- */
- constructor(code: number, data: EsResponseDto) {
- this.statusCode = code;
- this.data = data;
- }
-}
\ No newline at end of file
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 73c2089..8a78ded 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -2,9 +2,6 @@ import { HttpService } from "@nestjs/axios";
import { CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, NestInterceptor } from "@nestjs/common";
import { Observable, map, take, switchMap, of } from "rxjs";
import { PageDto } from "../domain/dtos";
-import { EsQueryDto } from "../domain/dtos/elastic/es-query.dto";
-import { RequestDto } from "../domain/dtos/request.dto";
-import { SearchQueryDto } from "../domain/dtos/search-q.dto";
import { EsTime } from "../domain/enums/es-time.enum";
import { Order, toOrder } from "../domain/enums/page-order.enum";
import { EsPit } from "../domain/interfaces/elastic/es-pit.interface";
@@ -43,29 +40,20 @@ export class PageInterceptor implements NestInterceptor {
* @returns Page with content and metadata
*/
async intercept(context: ExecutionContext, next: CallHandler): Promise> {
- const request: RequestDto = context.switchToHttp().getRequest();
- const query: SearchQueryDto = request.query;
+ const query = context.switchToHttp().getRequest().query;
- const offset = !query.offset ? 0 : query.offset;
- const limit = !query.limit ? 10 : query.limit;
- const order = !query.order ? Order.DESC : query.order;
+ // const offset = !query.offset ? 0 : query.offset;
+ const offset = query.offset;
+ // const limit = !query.limit ? 10 : query.limit;
+ const limit = query.limit;
+ // const order = !query.order ? Order.DESC : query.order;
+ const order = query.order;
- const prev_page = await this.cacheManager.get('prev_page');
+ const prev_page = await this.cacheManager.get('prev_page');
if (prev_page) {
if (offset == prev_page[1] && limit == prev_page[2] && order == prev_page[3]) return of(prev_page[0]);
}
- // Contruct a body for querying Elasticsearch
- request.es_query = new EsQueryDto();
- request.es_query.query = {
- query_string: {
- query: query.query,
- default_field: 'content',
- }
- };
- request.es_query.from = offset;
- request.es_query.size = limit;
-
return next.handle().pipe(
switchMap(async (res) => {
// Setting the page meta-data
diff --git a/src/core/pipes/query-str.pipe.ts b/src/core/pipes/query-str.pipe.ts
deleted file mode 100644
index d9bfcca..0000000
--- a/src/core/pipes/query-str.pipe.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import { ArgumentMetadata, BadRequestException, ImATeapotException, Injectable, PipeTransform } from "@nestjs/common";
-import { RequestDto } from "../domain";
-
-@Injectable()
-export class QueryStringPipe implements PipeTransform {
- constructor() {}
-
- transform(value: RequestDto, metadata: ArgumentMetadata): RequestDto {
- console.log(value.query.limit)
-
- return value;
- }
-}
\ No newline at end of file
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index 4cd131b..b72685e 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,7 +1,7 @@
import { HttpService } from "@nestjs/axios";
import { GatewayTimeoutException, Injectable, NotFoundException } from "@nestjs/common";
import { map, take } from "rxjs";
-import { EsResponseDto} from "../../domain/dtos";
+import { EsResponseDto, SearchQueryDto} from "../../domain/dtos";
import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
/**
@@ -32,10 +32,9 @@ export class SearchService {
* @returns Elasticsearch hits or an error object
*/
async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?
- let ESQ: EsQueryDto = new EsQueryDto;
-
- ESQ.size = 1;
- ESQ.query = {
+ const es_query: EsQueryDto = new EsQueryDto();
+ es_query.size = 1;
+ es_query.query = {
query_string: {
query: ('id:' + uuid),
}
@@ -44,7 +43,7 @@ export class SearchService {
return new Promise((resolve, reject) => {
try {
(this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
- data: ESQ,
+ data: es_query,
headers: {'Content-Type': 'application/json'},
}))
?.pipe(take(1), map(axiosRes => axiosRes.data))
@@ -68,7 +67,18 @@ export class SearchService {
* @param query,
* @returns Elasticsearch hits or an error object
*/
- async findByContext(es_query: EsQueryDto): Promise {
+ async findByContext(query: SearchQueryDto): Promise {
+ // Contruct a body for querying Elasticsearch
+ const es_query: EsQueryDto = new EsQueryDto();
+ es_query.query = {
+ query_string: {
+ query: query.query,
+ default_field: 'content',
+ }
+ };
+ es_query.from = query.offset;
+ es_query.size = query.limit;
+
return new Promise((resolve, reject) => {
try {
(this.httpService.get(`http://${this.ES_IP}:${this.ES_PORT}/_search`, {
diff --git a/src/infrastructure/modules/app.module.ts b/src/infrastructure/modules/app.module.ts
index 9b20b70..1eefb80 100644
--- a/src/infrastructure/modules/app.module.ts
+++ b/src/infrastructure/modules/app.module.ts
@@ -8,7 +8,6 @@ import * as modules from '../../core/modules'
import { CommonModule } from './common/common.module';
import { PrometheusModule } from '@willsoto/nestjs-prometheus';
import { SearchModule } from './search.module';
-import { QueryStringPipe } from 'src/core/pipes/query-str.pipe';
/**
* application modules list
diff --git a/src/main.ts b/src/main.ts
index 58e4e19..f413052 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -4,7 +4,7 @@ import { NestFactory } from '@nestjs/core';
import { AppModule } from './infrastructure/modules/app.module';
import { SwaggerModule, DocumentBuilder, SwaggerDocumentOptions } from '@nestjs/swagger';
import { ConfigService } from '@nestjs/config';
-import { QueryStringPipe } from './core/pipes/query-str.pipe';
+
/**
* Main entry point of the application
* @returns Nothing
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index d773f4f..689c43c 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -152,7 +152,7 @@ describe('Unit tests for SearchService', () => {
}
}
- searchService.findByContext(es_query);
+ // searchService.findByContext(es_query);
expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
data: es_query,
headers: { 'Content-Type': 'application/json' }
--
2.39.5
From 4c23bce69fc6331e977229ad9ca3c9a8f1aadc8a Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Fri, 7 Oct 2022 15:10:18 +0300
Subject: [PATCH 19/23] Fixed problems with reading 'undefined's
---
.../controller/papers.controller.ts | 2 +-
src/core/domain/enums/page-order.enum.ts | 2 +
src/core/interceptors/page.interceptor.ts | 4 +-
src/core/services/common/search.service.ts | 14 +--
src/test/search.service.spec.ts | 93 ++++---------------
5 files changed, 30 insertions(+), 85 deletions(-)
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index bdf507a..60d0f3a 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -1,4 +1,4 @@
-import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Query, Req, UseFilters, UseInterceptors } from "@nestjs/common";
+import { Controller, Get, HttpCode, Param, ParseUUIDPipe, Query, UseFilters, UseInterceptors } from "@nestjs/common";
import { SearchService } from "../../core/services/common/search.service";
import { PageInterceptor } from "../../core/interceptors/page.interceptor";
import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags } from "@nestjs/swagger";
diff --git a/src/core/domain/enums/page-order.enum.ts b/src/core/domain/enums/page-order.enum.ts
index 61e5176..9e724bd 100644
--- a/src/core/domain/enums/page-order.enum.ts
+++ b/src/core/domain/enums/page-order.enum.ts
@@ -19,6 +19,8 @@ export enum Order {
* @returns Appropriate enum-member
*/
export function toOrder(str: string): Order {
+ if (!str) return Order.DESC;
+
switch (str) {
case 'asc': return Order.ASC;
case 'desc': return Order.DESC;
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 8a78ded..0551733 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -1,5 +1,5 @@
import { HttpService } from "@nestjs/axios";
-import { CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, NestInterceptor } from "@nestjs/common";
+import { BadRequestException, CACHE_MANAGER, CallHandler, ExecutionContext, Inject, Injectable, InternalServerErrorException, NestInterceptor } from "@nestjs/common";
import { Observable, map, take, switchMap, of } from "rxjs";
import { PageDto } from "../domain/dtos";
import { EsTime } from "../domain/enums/es-time.enum";
@@ -63,7 +63,7 @@ export class PageInterceptor implements NestInterceptor {
};
// Check if the performed search is a backwards search
- let data = res.hits.hits;
+ let data = res?.hits?.hits;
// Omitting the redundant info and leaving only the document
data = data.map((el) => el._source);
// Change the order if set
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index b72685e..b037ab5 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,5 +1,5 @@
import { HttpService } from "@nestjs/axios";
-import { GatewayTimeoutException, Injectable, NotFoundException } from "@nestjs/common";
+import { GatewayTimeoutException, ImATeapotException, Injectable, NotFoundException } from "@nestjs/common";
import { map, take } from "rxjs";
import { EsResponseDto, SearchQueryDto} from "../../domain/dtos";
import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
@@ -28,7 +28,7 @@ export class SearchService {
/**
* Finds a paper by its own ID
- * @param uuid
+ * @param uuid String, that represents unique identifier of a paper
* @returns Elasticsearch hits or an error object
*/
async findByID(uuid: string): Promise { // Should I change 'object' to specific DTO?
@@ -48,12 +48,12 @@ export class SearchService {
}))
?.pipe(take(1), map(axiosRes => axiosRes.data))
.subscribe((res: EsResponseDto) => {
- if (!res.hits.hits.length) {
- reject(new NotFoundException);
- }
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
+ if (!res?.hits?.hits?.length) {
+ reject(new NotFoundException);
+ }
resolve(res);
});
} catch (error) {
@@ -65,7 +65,7 @@ export class SearchService {
/**
* Finds relevant documents by context using the given query string
* @param query,
- * @returns Elasticsearch hits or an error object
+ * @returns Elasticsearch response
*/
async findByContext(query: SearchQueryDto): Promise {
// Contruct a body for querying Elasticsearch
@@ -86,7 +86,7 @@ export class SearchService {
headers: {'Content-Type': 'application/json'},
}))
?.pipe(take(1), map(axiosRes => axiosRes.data))
- .subscribe((res: EsResponseDto) => {
+ ?.subscribe((res: EsResponseDto) => {
if (res.timed_out) {
reject(new GatewayTimeoutException('Elasticsearch Timed Out'));
}
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index 689c43c..2fa1197 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -3,7 +3,7 @@ import { GatewayTimeoutException, HttpException } from "@nestjs/common";
import { ConfigModule } from "@nestjs/config";
import { Test } from "@nestjs/testing";
import { of } from "rxjs";
-import { EsQueryDto, EsResponseDto } from "src/core/domain";
+import { SearchQueryDto } from "src/core/domain";
import { SearchService } from "src/core/services/common/search.service";
describe('Unit tests for SearchService', () => {
@@ -42,26 +42,6 @@ describe('Unit tests for SearchService', () => {
expect(httpGetSpy).toHaveBeenCalled();
});
- // it('Should send correct data via HttpService.get() body parameter', () => {
- // let httpGetSpy = jest.spyOn(httpService, 'get');
-
- // const uuid = 'thisIsUUID_Provided';
- // searchService.findByID(uuid);
- // expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
- // data: {
- // size: 1,
- // query: {
- // query_string: {
- // query: 'id:' + uuid
- // }
- // },
- // search_after: undefined,
- // sort: undefined,
- // },
- // headers: { 'Content-Type': 'application/json' }
- // });
- // });
-
it('Should call HttpService.get() with correct URI and port number', () => {
let httpGetSpy = jest.spyOn(httpService, 'get');
@@ -76,28 +56,6 @@ describe('Unit tests for SearchService', () => {
expect(searchService.findByID('')).toBeInstanceOf(Promise);
});
- // it('Should return a Promise with EsResponseDto', () => {
- // // Axios response mock
- // httpService.get = jest.fn().mockReturnValueOnce(
- // of({
- // status: undefined,
- // statusText: undefined,
- // headers: undefined,
- // config: undefined,
- // data: {
- // took: 1,
- // timed_out: false,
- // hits: {
- // total: {},
- // hits: [{}]
- // }
- // },
- // })
- // );
-
- // expect(searchService.findByID('')).resolves.toBeInstanceOf(EsResponseDto)
- // });
-
// Errors
it('Should throw 504 | GatewayTimeoutException', () => {
// Axios response mock
@@ -136,25 +94,27 @@ describe('Unit tests for SearchService', () => {
it('Should touch HttpService.get() method', () => {
let httpGetSpy = jest.spyOn(httpService, 'get');
- searchService.findByContext(null);
+ searchService.findByContext({query: ""});
expect(httpGetSpy).toHaveBeenCalled();
});
it('Should send correct data via HttpService.get() body parameter', () => {
let httpGetSpy = jest.spyOn(httpService, 'get');
- let es_query = new EsQueryDto();
- es_query = {
- query: {
- query_string: {
- query: 'thisIsTheQuery!'
- }
- }
- }
+ const query = new SearchQueryDto('keyword', 1, 32, 'desc');
- // searchService.findByContext(es_query);
+ searchService.findByContext(query);
expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
- data: es_query,
+ data: {
+ query: {
+ query_string: {
+ query: 'keyword',
+ default_field: 'content',
+ }
+ },
+ from: 32,
+ size: 1,
+ },
headers: { 'Content-Type': 'application/json' }
});
});
@@ -162,7 +122,7 @@ describe('Unit tests for SearchService', () => {
it('Should call HttpService.get() with correct URI and port number', () => {
let httpGetSpy = jest.spyOn(httpService, 'get');
- searchService.findByContext(null);
+ searchService.findByContext({query: ""});
expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(
`http://${process.env.ES_CONTAINER_NAME}:${process.env.ES_PORT}/_search`,
expect.anything()
@@ -170,26 +130,9 @@ describe('Unit tests for SearchService', () => {
});
it('Should return a Promise', () => {
- expect(searchService.findByContext(null)).toBeInstanceOf(Promise);
+ expect(searchService.findByContext({query: ""})).toBeInstanceOf(Promise);
});
- // it('Should return a Promise with EsResponseDto', () => {
- // // Axios response mock
- // httpService.get = jest.fn().mockReturnValueOnce(
- // of({
- // status: undefined,
- // statusText: undefined,
- // headers: undefined,
- // config: undefined,
- // data: {
- // dummy: 'dum'
- // }
- // })
- // );
-
- // expect(searchService.findByContext(null)).resolves.toMatchObject(null);
- // });
-
// Errors
it('Should throw 504 | GatewayTimeoutException', () => {
// Axios response mock
@@ -206,7 +149,7 @@ describe('Unit tests for SearchService', () => {
})
);
- searchService.findByContext(null).catch((err) => {
+ searchService.findByContext({query: ""}).catch((err) => {
expect(err).toBeInstanceOf(GatewayTimeoutException);
});
});
@@ -216,7 +159,7 @@ describe('Unit tests for SearchService', () => {
throw new HttpException({ oops: 'sorry' }, 999);
});
- searchService.findByContext(null).catch((err) => {
+ searchService.findByContext({query: ""}).catch((err) => {
expect(err).toBeInstanceOf(HttpException);
expect(err.response).toEqual({ oops: 'sorry' });
expect(err.status).toEqual(999);
--
2.39.5
From 3707100826307fd89d00307f5d57b14431e6fa34 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Fri, 7 Oct 2022 15:28:32 +0300
Subject: [PATCH 20/23] Fixed relative path to HttpExceptionFilter, that failed
the e2e test
---
src/application/controller/papers.controller.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/application/controller/papers.controller.ts b/src/application/controller/papers.controller.ts
index 60d0f3a..04c6531 100644
--- a/src/application/controller/papers.controller.ts
+++ b/src/application/controller/papers.controller.ts
@@ -3,7 +3,7 @@ import { SearchService } from "../../core/services/common/search.service";
import { PageInterceptor } from "../../core/interceptors/page.interceptor";
import { ApiExtraModels, ApiGatewayTimeoutResponse, ApiOperation, ApiResponse, ApiTags } from "@nestjs/swagger";
import { EsHitDto, EsResponseDto, PageDto, PaperDto, SearchQueryDto } from "../../core/domain";
-import { HttpExceptionFilter } from "src/core/filters/http-exception.filter";
+import { HttpExceptionFilter } from "../../core/filters/http-exception.filter";
/**
* /papers/ route controller
--
2.39.5
From a5b175b2922fcdac659ab3de65c34bd78603d866 Mon Sep 17 00:00:00 2001
From: danny-mhlv
Date: Wed, 12 Oct 2022 13:47:52 +0300
Subject: [PATCH 21/23] Fixed insufficient caching problem
---
src/core/interceptors/page.interceptor.ts | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/core/interceptors/page.interceptor.ts b/src/core/interceptors/page.interceptor.ts
index 0551733..3a409b1 100644
--- a/src/core/interceptors/page.interceptor.ts
+++ b/src/core/interceptors/page.interceptor.ts
@@ -42,16 +42,17 @@ export class PageInterceptor implements NestInterceptor {
async intercept(context: ExecutionContext, next: CallHandler): Promise> {
const query = context.switchToHttp().getRequest().query;
- // const offset = !query.offset ? 0 : query.offset;
const offset = query.offset;
- // const limit = !query.limit ? 10 : query.limit;
const limit = query.limit;
- // const order = !query.order ? Order.DESC : query.order;
const order = query.order;
+ const query_string = query.query;
const prev_page = await this.cacheManager.get('prev_page');
if (prev_page) {
- if (offset == prev_page[1] && limit == prev_page[2] && order == prev_page[3]) return of(prev_page[0]);
+ if (offset == prev_page[1] &&
+ limit == prev_page[2] &&
+ order == prev_page[3] &&
+ query_string === prev_page[4]) return of(prev_page[0]);
}
return next.handle().pipe(
@@ -71,7 +72,7 @@ export class PageInterceptor implements NestInterceptor {
// Cache and return the page
const page: PageDto = new PageDto(data, meta);
- await this.cacheManager.set('prev_page', [page, offset, limit, order]);
+ await this.cacheManager.set('prev_page', [page, offset, limit, order, query_string]);
return page;
})
);
--
2.39.5
From f5ad2e0ff79fbf003e2363cfcd8630a1f9693a3c Mon Sep 17 00:00:00 2001
From: Danny Mikhaylov
Date: Tue, 8 Nov 2022 05:18:17 +0300
Subject: [PATCH 22/23] Changed 'match' query to 'multi-match'. Allows to
search for both 'content' and 'title' of the paper
---
.../domain/dtos/elastic/es-multimatch.dto.ts | 68 +++++++++++++++++++
src/core/services/common/search.service.ts | 11 ++-
2 files changed, 72 insertions(+), 7 deletions(-)
create mode 100644 src/core/domain/dtos/elastic/es-multimatch.dto.ts
diff --git a/src/core/domain/dtos/elastic/es-multimatch.dto.ts b/src/core/domain/dtos/elastic/es-multimatch.dto.ts
new file mode 100644
index 0000000..6617fea
--- /dev/null
+++ b/src/core/domain/dtos/elastic/es-multimatch.dto.ts
@@ -0,0 +1,68 @@
+import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
+import { IsArray, IsDefined, IsInt, IsObject, IsOptional } from "class-validator";
+import { EsPit } from "../../interfaces/elastic/es-pit.interface";
+import { EsQuery } from "../../interfaces/elastic/es-query.interface"
+
+/**
+ * List of allowed properties in this DTO
+ */
+ const allowedProperties = ['query'];
+
+ /**
+ * Elasticsearch multi-match query DTO
+ */
+ @ApiExtraModels()
+ export class EsMultimatchQueryDto {
+ /**
+ * Offset from the start of the list of hits
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ description: 'Offset from the start of the list of hits',
+ example: 5,
+ })
+ public from?: number;
+
+ /**
+ * Maximum number of elements returned by Elasticsearch
+ */
+ @IsOptional()
+ @IsInt()
+ @ApiPropertyOptional({
+ description: 'Maximum number of elements returned by Elasticsearch',
+ example: 30
+ })
+ public size?: number;
+
+ /**
+ * The search query object passed to Elasticsearch
+ */
+ @IsDefined()
+ @IsObject()
+ @ApiProperty({
+ description: 'Search query object passed to Elasticsearch',
+ example: {
+ multi_match: {
+ query: 'Maths',
+ fields: [
+ 'title',
+ 'content'
+ ]
+ }
+ },
+ })
+ private readonly query: Object;
+
+ /**
+ * Constructs a multi-match
+ */
+ constructor(query: string = '', fields: Array = ['content']) {
+ this.query = {
+ multi_match: {
+ query: query,
+ fields: fields
+ }
+ }
+ }
+ }
\ No newline at end of file
diff --git a/src/core/services/common/search.service.ts b/src/core/services/common/search.service.ts
index b037ab5..7e5a47c 100644
--- a/src/core/services/common/search.service.ts
+++ b/src/core/services/common/search.service.ts
@@ -1,6 +1,7 @@
import { HttpService } from "@nestjs/axios";
import { GatewayTimeoutException, ImATeapotException, Injectable, NotFoundException } from "@nestjs/common";
import { map, take } from "rxjs";
+import { EsMultimatchQueryDto } from "src/core/domain/dtos/elastic/es-multimatch.dto";
import { EsResponseDto, SearchQueryDto} from "../../domain/dtos";
import { EsQueryDto } from "../../domain/dtos/elastic/es-query.dto";
@@ -69,13 +70,9 @@ export class SearchService {
*/
async findByContext(query: SearchQueryDto): Promise {
// Contruct a body for querying Elasticsearch
- const es_query: EsQueryDto = new EsQueryDto();
- es_query.query = {
- query_string: {
- query: query.query,
- default_field: 'content',
- }
- };
+ const es_query: EsMultimatchQueryDto = new EsMultimatchQueryDto(query.query, [
+ 'title', 'content'
+ ]);
es_query.from = query.offset;
es_query.size = query.limit;
--
2.39.5
From cbf7938ed738cb441822751736dced3a18850995 Mon Sep 17 00:00:00 2001
From: Danny
Date: Wed, 9 Nov 2022 13:27:50 +0300
Subject: [PATCH 23/23] Fixed the test issue
---
src/core/domain/dtos/elastic/es-multimatch.dto.ts | 4 +---
src/test/search.service.spec.ts | 13 ++++++++-----
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/src/core/domain/dtos/elastic/es-multimatch.dto.ts b/src/core/domain/dtos/elastic/es-multimatch.dto.ts
index 6617fea..81295d0 100644
--- a/src/core/domain/dtos/elastic/es-multimatch.dto.ts
+++ b/src/core/domain/dtos/elastic/es-multimatch.dto.ts
@@ -1,7 +1,5 @@
import { ApiExtraModels, ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
-import { IsArray, IsDefined, IsInt, IsObject, IsOptional } from "class-validator";
-import { EsPit } from "../../interfaces/elastic/es-pit.interface";
-import { EsQuery } from "../../interfaces/elastic/es-query.interface"
+import { IsDefined, IsInt, IsObject, IsOptional } from "class-validator";
/**
* List of allowed properties in this DTO
diff --git a/src/test/search.service.spec.ts b/src/test/search.service.spec.ts
index 2fa1197..76bc66a 100644
--- a/src/test/search.service.spec.ts
+++ b/src/test/search.service.spec.ts
@@ -107,13 +107,16 @@ describe('Unit tests for SearchService', () => {
expect(httpGetSpy).toHaveBeenCalledWith<[string, object]>(expect.anything(), {
data: {
query: {
- query_string: {
- query: 'keyword',
- default_field: 'content',
+ multi_match: {
+ query: query.query,
+ fields: [
+ 'title',
+ 'content'
+ ]
}
},
- from: 32,
- size: 1,
+ from: query.offset,
+ size: query.limit
},
headers: { 'Content-Type': 'application/json' }
});
--
2.39.5