Skip to content

Commit b73ce0d

Browse files
fix: Don't assume root type names
query is not required to be named "Query" and so on.
1 parent 55bac29 commit b73ce0d

2 files changed

Lines changed: 12 additions & 12 deletions

File tree

Sources/GraphQLGeneratorCore/Generator/SchemaGenerator.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ package struct SchemaGenerator {
7878
$0 as? GraphQLObjectType
7979
}.filter {
8080
// Skip root operation types
81-
$0.name != "Query" &&
82-
$0.name != "Mutation" &&
83-
$0.name != "Subscription"
81+
$0.name != schema.queryType?.name &&
82+
$0.name != schema.mutationType?.name &&
83+
$0.name != schema.subscriptionType?.name
8484
}
8585
for objectType in objectTypes {
8686
output += try"""

Sources/GraphQLGeneratorCore/Generator/TypeGenerator.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,22 @@ package struct TypeGenerator {
2121
2222
public protocol ResolversProtocol: Sendable {
2323
"""
24-
if schema.queryType != nil {
24+
if let queryType = schema.queryType {
2525
output += """
2626
27-
associatedtype Query: QueryProtocol
27+
associatedtype Query: \(try swiftTypeDeclaration(for: queryType, nameGenerator: nameGenerator))
2828
"""
2929
}
30-
if schema.mutationType != nil {
30+
if let mutationType = schema.mutationType {
3131
output += """
3232
33-
associatedtype Mutation: MutationProtocol
33+
associatedtype Mutation: \(try swiftTypeDeclaration(for: mutationType, nameGenerator: nameGenerator))
3434
"""
3535
}
36-
if schema.subscriptionType != nil {
36+
if let subscriptionType = schema.subscriptionType {
3737
output += """
3838
39-
associatedtype Subscription: SubscriptionProtocol
39+
associatedtype Subscription: \(try swiftTypeDeclaration(for: subscriptionType, nameGenerator: nameGenerator))
4040
"""
4141
}
4242
output += """
@@ -118,9 +118,9 @@ package struct TypeGenerator {
118118
$0 as? GraphQLObjectType
119119
}.filter {
120120
// Skip root operation types
121-
$0.name != "Query" &&
122-
$0.name != "Mutation" &&
123-
$0.name != "Subscription"
121+
$0.name != schema.queryType?.name &&
122+
$0.name != schema.mutationType?.name &&
123+
$0.name != schema.subscriptionType?.name
124124
}
125125
for type in objectTypes {
126126
output += try"""

0 commit comments

Comments
 (0)