protected function parseArgumentsValues(FieldInterface $field, AstFieldInterface $ast)
{
$values = [];
$defaults = [];
foreach ($field->getArguments() as $argument) {
/** @var $argument InputField */
if ($argument->getConfig()->has('default')) {
$defaults[$argument->getName()] = $argument->getConfig()->getDefaultValue();
}
}
foreach ($ast->getArguments() as $astArgument) {
$argument = $field->getArgument($astArgument->getName());
$argumentType = $argument->getType()->getNullableType();
$values[$argument->getName()] = $argumentType->parseValue($astArgument->getValue());
if (isset($defaults[$argument->getName()])) {
unset($defaults[$argument->getName()]);
}
}
return array_merge($values, $defaults);
}