aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/vektah/gqlparser/validator/rules
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/vektah/gqlparser/validator/rules')
-rw-r--r--vendor/github.com/vektah/gqlparser/validator/rules/known_argument_names.go2
-rw-r--r--vendor/github.com/vektah/gqlparser/validator/rules/overlapping_fields_can_be_merged.go4
-rw-r--r--vendor/github.com/vektah/gqlparser/validator/rules/possible_fragment_spreads.go2
3 files changed, 6 insertions, 2 deletions
diff --git a/vendor/github.com/vektah/gqlparser/validator/rules/known_argument_names.go b/vendor/github.com/vektah/gqlparser/validator/rules/known_argument_names.go
index 83b47387..1a46431d 100644
--- a/vendor/github.com/vektah/gqlparser/validator/rules/known_argument_names.go
+++ b/vendor/github.com/vektah/gqlparser/validator/rules/known_argument_names.go
@@ -9,7 +9,7 @@ func init() {
AddRule("KnownArgumentNames", func(observers *Events, addError AddErrFunc) {
// A GraphQL field is only valid if all supplied arguments are defined by that field.
observers.OnField(func(walker *Walker, field *ast.Field) {
- if field.Definition == nil {
+ if field.Definition == nil || field.ObjectDefinition == nil {
return
}
for _, arg := range field.Arguments {
diff --git a/vendor/github.com/vektah/gqlparser/validator/rules/overlapping_fields_can_be_merged.go b/vendor/github.com/vektah/gqlparser/validator/rules/overlapping_fields_can_be_merged.go
index 52eab3a2..bb2f1831 100644
--- a/vendor/github.com/vektah/gqlparser/validator/rules/overlapping_fields_can_be_merged.go
+++ b/vendor/github.com/vektah/gqlparser/validator/rules/overlapping_fields_can_be_merged.go
@@ -292,7 +292,11 @@ func (m *overlappingFieldsCanBeMergedManager) collectConflictsBetweenFieldsAndFr
// (E) Then collect any conflicts between the provided collection of fields
// and any fragment names found in the given fragment.
+ baseFragmentSpread := fragmentSpread
for _, fragmentSpread := range fragmentSpreads {
+ if fragmentSpread.Name == baseFragmentSpread.Name {
+ continue
+ }
m.collectConflictsBetweenFieldsAndFragment(conflicts, areMutuallyExclusive, fieldsMap, fragmentSpread)
}
}
diff --git a/vendor/github.com/vektah/gqlparser/validator/rules/possible_fragment_spreads.go b/vendor/github.com/vektah/gqlparser/validator/rules/possible_fragment_spreads.go
index 971decbf..04611834 100644
--- a/vendor/github.com/vektah/gqlparser/validator/rules/possible_fragment_spreads.go
+++ b/vendor/github.com/vektah/gqlparser/validator/rules/possible_fragment_spreads.go
@@ -20,7 +20,7 @@ func init() {
case ast.Interface, ast.Union:
parentDefs = walker.Schema.GetPossibleTypes(parentDef)
default:
- panic("unexpected type")
+ return
}
fragmentDefType := walker.Schema.Types[fragmentName]