2
0

♻️ (auth) Group join workspaces queries in a transaction

This commit is contained in:
Baptiste Arnaud
2023-01-28 08:32:29 +01:00
parent d54822af2b
commit bfd85b4fd3

View File

@ -5,16 +5,18 @@ export const joinWorkspaces = async (
{ id, email }: { id: string; email: string }, { id, email }: { id: string; email: string },
invitations: WorkspaceInvitation[] invitations: WorkspaceInvitation[]
) => { ) => {
await p.memberInWorkspace.createMany({ await p.$transaction([
data: invitations.map((invitation) => ({ p.memberInWorkspace.createMany({
workspaceId: invitation.workspaceId, data: invitations.map((invitation) => ({
role: invitation.type, workspaceId: invitation.workspaceId,
userId: id, role: invitation.type,
})), userId: id,
}) })),
return p.workspaceInvitation.deleteMany({ }),
where: { p.workspaceInvitation.deleteMany({
email, where: {
}, email,
}) },
}),
])
} }