diff --git a/packages/trpc/server/routers/viewer/me/checkForInvalidAppCredentials.ts b/packages/trpc/server/routers/viewer/me/checkForInvalidAppCredentials.ts index 410822f3e1..31f0b855a3 100644 --- a/packages/trpc/server/routers/viewer/me/checkForInvalidAppCredentials.ts +++ b/packages/trpc/server/routers/viewer/me/checkForInvalidAppCredentials.ts @@ -13,24 +13,21 @@ type checkInvalidAppCredentialsOptions = { export const checkInvalidAppCredentials = async ({ ctx }: checkInvalidAppCredentialsOptions) => { const userId = ctx.user.id; + // First get the teams where user is admin/owner + const userTeamIds = await prisma.membership.findMany({ + where: { + userId: userId, + accepted: true, + role: { in: [MembershipRole.ADMIN, MembershipRole.OWNER] }, + }, + select: { + teamId: true, + }, + }); + const apps = await prisma.credential.findMany({ where: { - OR: [ - { - userId: userId, - }, - { - team: { - members: { - some: { - userId: userId, - accepted: true, - role: { in: [MembershipRole.ADMIN, MembershipRole.OWNER] }, - }, - }, - }, - }, - ], + OR: [{ userId }, { teamId: { in: userTeamIds.map((membership) => membership.teamId) } }], invalid: true, }, select: {