private static buildElasticSearchFilterPart()

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