diff --git a/packages/backend/server/src/core/auth/resolver.ts b/packages/backend/server/src/core/auth/resolver.ts index edd2d2168d70..f6ab9711b414 100644 --- a/packages/backend/server/src/core/auth/resolver.ts +++ b/packages/backend/server/src/core/auth/resolver.ts @@ -54,7 +54,7 @@ export class AuthResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Public() @@ -70,7 +70,7 @@ export class AuthResolver { @Throttle({ default: { limit: 20, - ttl: 60, + ttl: 60 * 1000, }, }) @ResolveField(() => ClientTokenType, { @@ -102,7 +102,7 @@ export class AuthResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => UserType) @@ -123,7 +123,7 @@ export class AuthResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => UserType) @@ -142,7 +142,7 @@ export class AuthResolver { @Throttle({ default: { limit: 5, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => UserType) @@ -173,7 +173,7 @@ export class AuthResolver { @Throttle({ default: { limit: 5, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => UserType) @@ -203,7 +203,7 @@ export class AuthResolver { @Throttle({ default: { limit: 5, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Boolean) @@ -236,7 +236,7 @@ export class AuthResolver { @Throttle({ default: { limit: 5, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Boolean) @@ -274,7 +274,7 @@ export class AuthResolver { @Throttle({ default: { limit: 5, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Boolean) @@ -300,7 +300,7 @@ export class AuthResolver { @Throttle({ default: { limit: 5, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Boolean) diff --git a/packages/backend/server/src/core/user/management.ts b/packages/backend/server/src/core/user/management.ts index af6f740f2900..0a6a3c6167e4 100644 --- a/packages/backend/server/src/core/user/management.ts +++ b/packages/backend/server/src/core/user/management.ts @@ -27,7 +27,7 @@ export class UserManagementResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Int) @@ -52,7 +52,7 @@ export class UserManagementResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Int) @@ -73,7 +73,7 @@ export class UserManagementResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Query(() => [UserType]) diff --git a/packages/backend/server/src/core/user/resolver.ts b/packages/backend/server/src/core/user/resolver.ts index d877a154dd09..437122ce49e5 100644 --- a/packages/backend/server/src/core/user/resolver.ts +++ b/packages/backend/server/src/core/user/resolver.ts @@ -53,7 +53,7 @@ export class UserResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Query(() => UserOrLimitedUser, { @@ -89,7 +89,12 @@ export class UserResolver { }; } - @Throttle({ default: { limit: 10, ttl: 60 } }) + @Throttle({ + default: { + limit: 10, + ttl: 60 * 1000, + }, + }) @ResolveField(() => UserQuotaType, { name: 'quota', nullable: true }) async getQuota(@CurrentUser() me: User) { const quota = await this.quota.getUserQuota(me.id); @@ -97,7 +102,12 @@ export class UserResolver { return quota.feature; } - @Throttle({ default: { limit: 10, ttl: 60 } }) + @Throttle({ + default: { + limit: 10, + ttl: 60 * 1000, + }, + }) @ResolveField(() => Int, { name: 'invoiceCount', description: 'Get user invoice count', @@ -120,7 +130,7 @@ export class UserResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => UserType, { @@ -155,7 +165,7 @@ export class UserResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => UserType, { @@ -203,7 +213,7 @@ export class UserResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => DeleteAccount) diff --git a/packages/backend/server/src/core/workspaces/management.ts b/packages/backend/server/src/core/workspaces/management.ts index c8625c4d43e8..93ae876512ba 100644 --- a/packages/backend/server/src/core/workspaces/management.ts +++ b/packages/backend/server/src/core/workspaces/management.ts @@ -26,7 +26,7 @@ export class WorkspaceManagementResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Int) @@ -45,7 +45,7 @@ export class WorkspaceManagementResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Mutation(() => Int) @@ -64,7 +64,7 @@ export class WorkspaceManagementResolver { @Throttle({ default: { limit: 10, - ttl: 60, + ttl: 60 * 1000, }, }) @Query(() => [WorkspaceType]) diff --git a/packages/backend/server/src/core/workspaces/resolvers/workspace.ts b/packages/backend/server/src/core/workspaces/resolvers/workspace.ts index d322a69c1b4d..064b6c82d87c 100644 --- a/packages/backend/server/src/core/workspaces/resolvers/workspace.ts +++ b/packages/backend/server/src/core/workspaces/resolvers/workspace.ts @@ -191,7 +191,7 @@ export class WorkspaceResolver { @Throttle({ default: { limit: 10, - ttl: 30, + ttl: 30 * 1000, }, }) @Public() @@ -224,6 +224,12 @@ export class WorkspaceResolver { return workspace; } + @Throttle({ + default: { + limit: 10, + ttl: 120 * 1000, + }, + }) @Mutation(() => WorkspaceType, { description: 'Create a new workspace', }) @@ -300,6 +306,12 @@ export class WorkspaceResolver { }); } + @Throttle({ + default: { + limit: 10, + ttl: 120 * 1000, + }, + }) @Mutation(() => Boolean) async deleteWorkspace( @CurrentUser() user: CurrentUser, @@ -318,6 +330,12 @@ export class WorkspaceResolver { return true; } + @Throttle({ + default: { + limit: 10, + ttl: 120 * 1000, + }, + }) @Mutation(() => String) async invite( @CurrentUser() user: CurrentUser, @@ -409,7 +427,7 @@ export class WorkspaceResolver { @Throttle({ default: { limit: 10, - ttl: 30, + ttl: 30 * 1000, }, }) @Public() @@ -470,6 +488,12 @@ export class WorkspaceResolver { }; } + @Throttle({ + default: { + limit: 10, + ttl: 120 * 1000, + }, + }) @Mutation(() => Boolean) async revoke( @CurrentUser() user: CurrentUser, @@ -514,6 +538,12 @@ export class WorkspaceResolver { return this.permissions.acceptWorkspaceInvitation(inviteId, workspaceId); } + @Throttle({ + default: { + limit: 10, + ttl: 120 * 1000, + }, + }) @Mutation(() => Boolean) async leaveWorkspace( @CurrentUser() user: CurrentUser,