From 781247de5141f4b0532801194ac904763db7da39 Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Fri, 10 May 2024 13:39:21 +0200 Subject: [PATCH] feat: add username validation to prevent duplicate --- packages/api/src/router/user.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/api/src/router/user.ts b/packages/api/src/router/user.ts index e57fd2fa3..f548a7f15 100644 --- a/packages/api/src/router/user.ts +++ b/packages/api/src/router/user.ts @@ -32,6 +32,16 @@ export const userRouter = createTRPCRouter({ create: publicProcedure .input(validation.user.create) .mutation(async ({ ctx, input }) => { + const user = await ctx.db.query.users.findFirst({ + where: eq(users.name, input.username), + }); + + if (user !== null) { + throw new TRPCError({ + code: "FORBIDDEN", + message: "User already exists", + }); + } await createUser(ctx.db, input); }), getAll: publicProcedure.query(async ({ ctx }) => {