Compare commits

...

1 Commits

Author SHA1 Message Date
8e443b1795 fix: team member invites 2025-02-27 14:21:42 +11:00
4 changed files with 7 additions and 4 deletions

View File

@ -65,7 +65,9 @@ export const createTeamMemberInvites = async ({
});
const teamMemberEmails = team.members.map((member) => member.user.email);
const teamMemberInviteEmails = team.invites.map((invite) => invite.email);
const teamMemberInviteEmails = team.invites
.filter((invite) => invite.status === TeamMemberInviteStatus.PENDING)
.map((invite) => invite.email);
const currentTeamMember = team.members.find((member) => member.user.id === userId);
if (!currentTeamMember) {

View File

@ -1,5 +1,5 @@
import type { TeamMemberInvite } from '@prisma/client';
import { Prisma } from '@prisma/client';
import { Prisma, TeamMemberInviteStatus } from '@prisma/client';
import { P, match } from 'ts-pattern';
import type { z } from 'zod';
@ -71,6 +71,7 @@ export const findTeamMemberInvites = async ({
const whereClause: Prisma.TeamMemberInviteWhereInput = {
...termFilters,
teamId: userTeam.id,
status: TeamMemberInviteStatus.PENDING,
};
const [data, count] = await Promise.all([

View File

@ -1,3 +1,4 @@
import { TeamMemberInviteStatus } from '@prisma/client';
import type { z } from 'zod';
import { prisma } from '@documenso/prisma';
@ -25,6 +26,7 @@ export const getTeamInvitations = async ({
return await prisma.teamMemberInvite.findMany({
where: {
email,
status: TeamMemberInviteStatus.PENDING,
},
include: {
team: {

View File

@ -647,8 +647,6 @@ model TeamMemberInvite {
role TeamMemberRole
token String @unique
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
@@unique([teamId, email])
}
enum TemplateType {