GraphQL: Support required fields on output type (#6279)
* Handle required fields * Fix output fields
This commit is contained in:
committed by
Antonio Davi Macedo Coelho de Castro
parent
2fc328ed24
commit
a72ab50c70
@@ -406,7 +406,9 @@ const load = (
|
||||
[field]: {
|
||||
description: `This is the object ${field}.`,
|
||||
args,
|
||||
type,
|
||||
type: parseClass.fields[field].required
|
||||
? new GraphQLNonNull(type)
|
||||
: type,
|
||||
async resolve(source, args, context, queryInfo) {
|
||||
try {
|
||||
const {
|
||||
@@ -476,7 +478,9 @@ const load = (
|
||||
...fields,
|
||||
[field]: {
|
||||
description: `This is the object ${field}.`,
|
||||
type,
|
||||
type: parseClass.fields[field].required
|
||||
? new GraphQLNonNull(type)
|
||||
: type,
|
||||
async resolve(source) {
|
||||
if (source[field] && source[field].coordinates) {
|
||||
return source[field].coordinates.map(coordinate => ({
|
||||
@@ -494,7 +498,9 @@ const load = (
|
||||
...fields,
|
||||
[field]: {
|
||||
description: `Use Inline Fragment on Array to get results: https://graphql.org/learn/queries/#inline-fragments`,
|
||||
type,
|
||||
type: parseClass.fields[field].required
|
||||
? new GraphQLNonNull(type)
|
||||
: type,
|
||||
async resolve(source) {
|
||||
if (!source[field]) return null;
|
||||
return source[field].map(async elem => {
|
||||
@@ -516,7 +522,9 @@ const load = (
|
||||
...fields,
|
||||
[field]: {
|
||||
description: `This is the object ${field}.`,
|
||||
type,
|
||||
type: parseClass.fields[field].required
|
||||
? new GraphQLNonNull(type)
|
||||
: type,
|
||||
},
|
||||
};
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user