diff --git a/src/SearchEndpoint/QueryEndpoint.php b/src/SearchEndpoint/QueryEndpoint.php index 9b610b5190e13c440759438d76c0fbc743db3680..8caf6515577c46e52a729801c2a381d3c822c55d 100644 --- a/src/SearchEndpoint/QueryEndpoint.php +++ b/src/SearchEndpoint/QueryEndpoint.php @@ -40,20 +40,24 @@ class QueryEndpoint extends AbstractSearchEndpoint implements OrderedNormalizerI */ public function normalize(NormalizerInterface $normalizer, $format = null, array $context = []) { + $query = $this->getBool(); + if ($this->hasReference('filtered_query')) { /** @var FilteredQuery $filteredQuery */ $filteredQuery = $this->getReference('filtered_query'); - $this->add($filteredQuery); + + if ($query) { + $filteredQuery->setQuery($query); + } + + $query = $filteredQuery; } - if (!$this->bool) { + if (!$query) { return null; } - $queryArray = $this->bool->toArray(); - $queryArray = [$this->bool->getType() => $queryArray]; - - return $queryArray; + return [$query->getType() => $query->toArray()]; } /**