You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 25, 2024. It is now read-only.
At the moment, the fields key in %GraphQL.Type.ObjectType{} and args key only take a map with atom keys. For example:
%GraphQL.Schema{
query: %GraphQL.Type.ObjectType{
name: "RootQueryType",
fields: %{
greeting: %{
type: %GraphQL.Type.String{},
args: %{
name: %{type: %GraphQL.Type.String{}, description: "The name of who you'd like to greet."}
},
resolve: fn(_,_,_) -> "Hello" end
}
}
}
}
However, there are cases where those fields are generated from user's input. By using atoms, we can run out of atoms in the Erlang shell, since atoms are not garbage collected.
It would be ideal to also support this:
%GraphQL.Schema{
query: %GraphQL.Type.ObjectType{
name: "RootQueryType",
fields: %{
"greeting" => %{
type: %GraphQL.Type.String{},
args: %{
"name" => %{type: %GraphQL.Type.String{}, description: "The name of who you'd like to greet."}
},
resolve: fn(_,_,_) -> "Hello" end
}
}
}
}