diff --git a/src/Transformer/ArgumentsTransformer.php b/src/Transformer/ArgumentsTransformer.php index 06ecf2bf9..c4e65507f 100644 --- a/src/Transformer/ArgumentsTransformer.php +++ b/src/Transformer/ArgumentsTransformer.php @@ -81,6 +81,9 @@ private function getType(string $type, ResolveInfo $info): Type private function populateObject(Type $type, $data, bool $multiple, ResolveInfo $info) { if (null === $data) { + if ($type instanceof InputObjectType) { + return $this->getTypeClassInstance($type->name) ?: null; + } return $data; } @@ -129,9 +132,9 @@ private function populateObject(Type $type, $data, bool $multiple, ResolveInfo $ } return $instance; - } else { - return $data; } + + return $data; } /** @@ -170,9 +173,9 @@ public function getInstanceAndValidate(string $argType, $data, ResolveInfo $info if (\count($errors) > 0) { throw new InvalidArgumentError($argName, $errors); - } else { - return $result; } + + return $result; } /**