in src/elasticSearchService.ts [590:609]
private static buildElasticSearchFilterPart(searchFilter: SearchFilter): any {
const { key, value, comparisonOperator, logicalOperator } = searchFilter;
if (value.length === 0) {
throw new Error('Malformed SearchFilter, at least 1 value is required for the comparison');
}
const parts: any[] = value.map((v: string) =>
ElasticSearchService.buildSingleElasticSearchFilterPart(key, v, comparisonOperator),
);
if (logicalOperator === 'AND' && parts.length > 1) {
return {
bool: {
should: parts,
},
};
}
return parts;
}