From e0cc143436aa1db6418222eef3be13351519ebcc Mon Sep 17 00:00:00 2001 From: Mir Arif Hasan Date: Tue, 11 Jul 2023 17:23:57 +0600 Subject: [PATCH] chore: input-arg file added --- .../src/team-invitation/input-type.args.ts | 20 +++++++++++++ .../team-invitation.resolver.ts | 29 ++++--------------- 2 files changed, 26 insertions(+), 23 deletions(-) create mode 100644 packages/hoppscotch-backend/src/team-invitation/input-type.args.ts diff --git a/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts b/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts new file mode 100644 index 000000000..9cb3f2987 --- /dev/null +++ b/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts @@ -0,0 +1,20 @@ +import { ArgsType, Field, ID } from '@nestjs/graphql'; +import { TeamMemberRole } from 'src/team/team.model'; + +@ArgsType() +export class CreateTeamInvitationArgs { + @Field(() => ID, { + name: 'teamID', + description: 'ID of the Team ID to invite from', + }) + teamID: string; + + @Field({ name: 'inviteeEmail', description: 'Email of the user to invite' }) + inviteeEmail: string; + + @Field(() => TeamMemberRole, { + name: 'inviteeRole', + description: 'Role to be given to the user', + }) + inviteeRole: TeamMemberRole; +} diff --git a/packages/hoppscotch-backend/src/team-invitation/team-invitation.resolver.ts b/packages/hoppscotch-backend/src/team-invitation/team-invitation.resolver.ts index 88c941aed..32a903fa6 100644 --- a/packages/hoppscotch-backend/src/team-invitation/team-invitation.resolver.ts +++ b/packages/hoppscotch-backend/src/team-invitation/team-invitation.resolver.ts @@ -32,6 +32,7 @@ import { PubSubService } from 'src/pubsub/pubsub.service'; import { GqlThrottlerGuard } from 'src/guards/gql-throttler.guard'; import { SkipThrottle } from '@nestjs/throttler'; import { AuthUser } from 'src/types/AuthUser'; +import { CreateTeamInvitationArgs } from './input-type.args'; @UseGuards(GqlThrottlerGuard) @Resolver(() => TeamInvitation) @@ -97,32 +98,14 @@ export class TeamInvitationResolver { @UseGuards(GqlAuthGuard, GqlTeamMemberGuard) @RequiresTeamRole(TeamMemberRole.OWNER) async createTeamInvitation( - @GqlUser() - user: AuthUser, - - @Args({ - name: 'teamID', - description: 'ID of the Team ID to invite from', - type: () => ID, - }) - teamID: string, - @Args({ - name: 'inviteeEmail', - description: 'Email of the user to invite', - }) - inviteeEmail: string, - @Args({ - name: 'inviteeRole', - type: () => TeamMemberRole, - description: 'Role to be given to the user', - }) - inviteeRole: TeamMemberRole, + @GqlUser() user: AuthUser, + @Args() args: CreateTeamInvitationArgs, ): Promise { const teamInvitation = await this.teamInvitationService.createInvitation( user, - teamID, - inviteeEmail, - inviteeRole, + args.teamID, + args.inviteeEmail, + args.inviteeRole, ); if (E.isLeft(teamInvitation)) throwErr(teamInvitation.left);