Files
speckle-server/modules/core/graph/resolvers/apitoken.js
T
2020-04-21 11:40:22 +01:00

21 lines
677 B
JavaScript

'use strict'
const { createToken, revokeToken, revokeTokenById, validateToken, getUserTokens } = require( '../../users/services' )
module.exports = {
Query: {},
User: {
async apiTokens( parent, args, context, info ) {
return await getUserTokens( context.userId )
}
},
Mutation: {
async apiTokenCreate( parent, args, context, info ) {
//@todo enforce token creation authorization
await createToken( context.userId, args.name, args.scopes, args.lifespan )
},
async apiTokenRevoke( parent, args, context, info ) {
//@todo enforce token revokation authorization
await revokeToken( args.token )
return true
}
}
}