Tipo de campo Apollo / GraphQL para objeto com chaves dinâmicas
Digamos que meu servidor graphql queira buscar os seguintes dados como JSON, em queperson3
eperson5
são alguns id's:
"persons": {
"person3": {
"id": "person3",
"name": "Mike"
},
"person5": {
"id": "person5",
"name": "Lisa"
}
}
Pergunta, questão: Como criar a definição de tipo de esquema com o apollo?
As chavesperson3
eperson5
aqui são gerados dinamicamente, dependendo da minha consulta (ou seja, oarea
usado na consulta). Então, em outro momento, eu posso terperson1
, person2
, person3
devolvida. Como você vêpersons
não é um Iterable, portanto, o seguinte não funcionará como uma definição de tipo graphql que fiz com o apollo:
type Person {
id: String
name: String
}
type Query {
persons(area: String): [Person]
}
As teclas nopersons
O objeto pode sempre ser diferente.
Uma solução, é claro, seria transformar os dados JSON recebidos para usar uma matriz parapersons
, mas não há como trabalhar com os dados como tal?