You are here

public function EntityTranslation::resolveValues in GraphQL 8.3

Retrieve the list of field values.

Always returns a list of field values. Even for single value fields. Single/multi field handling is responsibility of the base class.

Parameters

mixed $value: The current object value.

array $args: Field arguments.

$context: The resolve context.

\GraphQL\Type\Definition\ResolveInfo $info: The resolve info object.

Return value

\Generator The value generator.

Overrides FieldPluginBase::resolveValues

File

modules/graphql_core/src/Plugin/GraphQL/Fields/Entity/EntityTranslation.php, line 69

Class

EntityTranslation
Plugin annotation @GraphQLField( id = "entity_translation", secure = true, name = "entityTranslation", type = "Entity", parents = {"Entity"}, arguments = { "language" = "LanguageId!" } )

Namespace

Drupal\graphql_core\Plugin\GraphQL\Fields\Entity

Code

public function resolveValues($value, array $args, ResolveContext $context, ResolveInfo $info) {
  if ($value instanceof EntityInterface && $value instanceof TranslatableInterface && $value
    ->isTranslatable()) {
    if ($value
      ->hasTranslation($args['language'])) {
      (yield $value
        ->getTranslation($args['language']));
    }
  }
}