Reputation: 867
I am using nodejs with graphql and graphql-compose so i define scheme as
schemaComposer.Query.addFields({
Me: MyResolvers,
Info: MyInfoResolvers,
Post: PostResolvers
})
schemaComposer.Mutation.addFields({
Login: MyLoginResolvers,
Register: RegisterResolvers
})
schemaComposer.Subscription.addFields({
Subscribe: Mysubscribe
})
So any function to get all query, mutation and subscribe to list array example i need print to
[
{ operator: "Me", name: "Query" }
{ operator: "Info", name: "Query" }
{ operator: "Post", name: "Query" }
{ operator: "Login", name: "Mutation" }
{ operator: "Register", name: "Mutation" }
{ operator: "Subscribe", name: "Subscription" }
]
or Object is best
{
Query: ["Me", "Info", "Post"],
Mutation: ["Login", "Register"],
Subscription: ["Subscribe"]
}
I can parse the query from request using parse function from graphql library to get operator and name using
import { parse } from "graphql"
const query:any = parse(context.req.body?.query)
const operator = query.definitions[0]?.operation
const name = query.definitions[0]?.selectionSet?.selections[0]?.name?.value
Now i need list all defined query, mutation, subscribe in schema? is it possible ?
Thanks
Upvotes: 1
Views: 952