private function mergeResolveConfig(SchemaContainer $schemaContainer, Field $field) { $config = $field->getResolveConfig(); $typeName = TypeParser::getFinalType($field->getType()); if (!$schemaContainer->hasType($typeName)) { return; } $typeConfig = $schemaContainer->getType($typeName)->getResolveConfig(); $config = array_merge($typeConfig, $config); $field->setResolveConfig($config); }
/** * Apply the resolve config of types that are used by query fields * * @param SchemaContainer $schemaContainer * @param Field $field */ private function mergeResolveConfig(SchemaContainer $schemaContainer, Field $field) { $typeName = TypeParser::getFinalType($field->getType()); if ($schemaContainer->hasType($typeName)) { $typeConfig = $schemaContainer->getType($typeName)->getResolveConfig(); } elseif ($schemaContainer->hasInterface($typeName)) { $typeConfig = $schemaContainer->getInterface($typeName)->getResolveConfig(); } else { return; } $field->mergeResolveConfig($typeConfig); }