Version 4.7.6
This commit is contained in:
1 parent
8ba7d43898
commit
7b7404e741
1085 files changed
+30590
-7837
No files matched your search
+10
-3
@@ -34,6 +34,7 @@ class UniqueDirectivesPerLocation extends ValidationRule
|
||||
|
||||
public function getASTVisitor(ASTValidationContext $context)
|
||||
{
|
||||
/** @var array<string, true> $uniqueDirectiveMap */
|
||||
$uniqueDirectiveMap = [];
|
||||
|
||||
$schema = $context->getSchema();
|
||||
@@ -41,16 +42,22 @@ class UniqueDirectivesPerLocation extends ValidationRule
|
||||
? $schema->getDirectives()
|
||||
: Directive::getInternalDirectives();
|
||||
foreach ($definedDirectives as $directive) {
|
||||
$uniqueDirectiveMap[$directive->name] = ! $directive->isRepeatable;
|
||||
if ($directive->isRepeatable) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$uniqueDirectiveMap[$directive->name] = true;
|
||||
}
|
||||
|
||||
$astDefinitions = $context->getDocument()->definitions;
|
||||
foreach ($astDefinitions as $definition) {
|
||||
if (! ($definition instanceof DirectiveDefinitionNode)) {
|
||||
if (! ($definition instanceof DirectiveDefinitionNode)
|
||||
|| $definition->repeatable
|
||||
) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$uniqueDirectiveMap[$definition->name->value] = $definition->repeatable;
|
||||
$uniqueDirectiveMap[$definition->name->value] = true;
|
||||
}
|
||||
|
||||
return [
|
||||
|
||||
Reference in new issue
Block a user