35 lines
897 B
JavaScript
35 lines
897 B
JavaScript
'use strict'
|
|
|
|
const appRoot = require('app-root-path')
|
|
const { createAndSendInvite } = require(`${appRoot}/modules/serverinvites/services`)
|
|
const { authorizeResolver } = require(`${appRoot}/modules/shared`)
|
|
|
|
module.exports = {
|
|
Mutation: {
|
|
async serverInviteCreate(parent, args, context) {
|
|
await createAndSendInvite({
|
|
email: args.input.email,
|
|
inviterId: context.userId,
|
|
message: args.input.message
|
|
})
|
|
|
|
return true
|
|
},
|
|
|
|
async streamInviteCreate(parent, args, context) {
|
|
await authorizeResolver(context.userId, args.input.streamId, 'stream:owner')
|
|
|
|
await createAndSendInvite({
|
|
email: args.input.email,
|
|
inviterId: context.userId,
|
|
message: args.input.message,
|
|
resourceTarget: 'streams',
|
|
resourceId: args.input.streamId,
|
|
role: 'stream:contributor'
|
|
})
|
|
|
|
return true
|
|
}
|
|
}
|
|
}
|