/**
* Prefixes all fields in an EntityConditionGroup.
*/
protected static function addConditionFieldPrefix(EntityConditionGroup
$group,
$field_prefix) { $prefixed =
[];
foreach ($group->
members() as $member) { if ($member instanceof EntityConditionGroup
) { $prefixed[] =
static::
addConditionFieldPrefix($member,
$field_prefix);
} else { $field = !
empty($field_prefix) ? "{
$field_prefix}." .
$member->
field() :
$member->
field();
$prefixed[] =
new EntityCondition($field,
$member->
value(),
$member->
operator());
} } return new EntityConditionGroup($group->
conjunction(),
$prefixed);
} /**
* Gets an EntityConditionGroup that filters out inaccessible entities.
*
* @param string $entity_type_id
* The entity type ID for which to get an EntityConditionGroup.
* @param \Drupal\Core\Cache\CacheableMetadata $cacheability
* Collects cacheability for the query.
*
* @return \Drupal\jsonapi\Query\EntityConditionGroup|null
* An EntityConditionGroup or NULL if no conditions need to be applied to
* secure an entity query.
*/