Extending teams' API

This commit is contained in:
Unknown committed 2019-02-18 13:37:11 +01:00
1 parent df113ec99f
commit 9265220dcc
2 files changed
+26 -3

No files matched your search

+2 -2
View File
@@ -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) {
+24 -1
View File
@@ -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
})
}
}
}
})