if ($parent) { $this->helper->
resolveField($parent,
$definition,
$definition->
getEntityName(),
$query,
$context);
} } if ($criteria->
getTerm()) { $pattern =
$this->interpreter->
interpret((string) $criteria->
getTerm());
$queries =
$this->scoreBuilder->
buildScoreQueries($pattern,
$definition,
$definition->
getEntityName(),
$context);
$criteria->
addQuery(...
$queries);
} $filters =
$this->
groupFilters($definition,
$criteria,
$paths);
$this->criteriaPartResolver->
resolve($filters,
$definition,
$query,
$context);
$this->criteriaPartResolver->
resolve($criteria->
getQueries(),
$definition,
$query,
$context);
$this->criteriaPartResolver->
resolve($criteria->
getSorting(),
$definition,
$query,
$context);
// do not use grouped filters, because the grouped filters are mapped flat and the logical OR/AND are removed
$filter =
new AndFilter(array_merge( $criteria->
getFilters(),
$criteria->
getPostFilters() ));