From 8f4b733eda0ff6728d0e49dbee18cf12e74eece8 Mon Sep 17 00:00:00 2001 From: Timur Ercan Date: Wed, 25 Jan 2023 12:26:19 +0100 Subject: [PATCH] patch user endpoint --- apps/web/pages/api/users/index.ts | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/apps/web/pages/api/users/index.ts b/apps/web/pages/api/users/index.ts index 8ac592de6..a7de762b8 100644 --- a/apps/web/pages/api/users/index.ts +++ b/apps/web/pages/api/users/index.ts @@ -1,9 +1,11 @@ -// POST to create -import { defaultHandler, defaultResponder } from "@documenso/lib/server"; +import { + defaultHandler, + defaultResponder, + getUserFromToken, +} from "@documenso/lib/server"; import prisma from "@documenso/prisma"; import type { NextApiRequest, NextApiResponse } from "next"; -import { json } from "stream/consumers"; async function postHandler(req: NextApiRequest, res: NextApiResponse) { const { method, body } = req; @@ -22,6 +24,27 @@ async function postHandler(req: NextApiRequest, res: NextApiResponse) { }); } +async function patchHandler(req: NextApiRequest, res: NextApiResponse) { + const user = await getUserFromToken(req, res); + if (!user) return; + + const updatedUser = req.body; + console.log(updatedUser); + await prisma.user + .update({ + where: { + id: user.id, + }, + data: { + name: updatedUser.name, + }, + }) + .then(() => { + return res.status(200).end(); + }); +} + export default defaultHandler({ POST: Promise.resolve({ default: defaultResponder(postHandler) }), + PATCH: Promise.resolve({ default: defaultResponder(patchHandler) }), });