Extending teams' API
This commit is contained in:
1 parent
df113ec99f
commit
9265220dcc
2 files changed
+26
-3
No files matched your search
+2
-2
@@ -76,9 +76,9 @@ async function run () {
|
||||
|
||||
if (transformedTeamsSchema) {
|
||||
schemas.push(transformedTeamsSchema)
|
||||
if (transformedUsersSchema) {
|
||||
if (transformedUsersSchema && transformedEventsSchema) {
|
||||
schemas.push(teams.linkSchemaDefs)
|
||||
resolvers = Object.assign(resolvers, teams.resolver(transformedUsersSchema))
|
||||
resolvers = Object.assign(resolvers, teams.resolver(transformedUsersSchema, transformedEventsSchema))
|
||||
}
|
||||
}
|
||||
if (transformedUsersSchema) {
|
||||
|
||||
@@ -3,9 +3,19 @@ export const linkSchemaDefs =
|
||||
extend type teams_Team {
|
||||
ownerUser: users_User
|
||||
}
|
||||
extend type teams_Team {
|
||||
events(
|
||||
hostId: String,
|
||||
inviteeId: String,
|
||||
minStartDate: Int,
|
||||
maxStartDate: Int,
|
||||
minEndDate: Int,
|
||||
maxEndDate: Int
|
||||
): [events_Event]
|
||||
}
|
||||
`
|
||||
|
||||
export const resolver = (usersSchema) => ({
|
||||
export const resolver = (usersSchema, eventsSchema) => ({
|
||||
teams_Team: {
|
||||
ownerUser: {
|
||||
fragment: `fragment UserFragment on teams_Team{owner}`,
|
||||
@@ -19,6 +29,19 @@ export const resolver = (usersSchema) => ({
|
||||
info
|
||||
})
|
||||
}
|
||||
},
|
||||
events: {
|
||||
fragment: `fragment EventFragment on teams_Team{id}`,
|
||||
resolve ({id: participantId}, args, context, info) {
|
||||
return info.mergeInfo.delegateToSchema({
|
||||
schema: eventsSchema,
|
||||
operation: 'query',
|
||||
fieldName: 'events_Events',
|
||||
args: { ...args, participantId },
|
||||
context,
|
||||
info
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
Reference in new issue
Block a user