'use server' import { getUserSession } from "@/lib/get-user-session"; import { prisma } from "@/prisma/prisma-client"; import { Category, Prisma } from "@prisma/client"; import { hashSync } from "bcrypt"; export async function updateUserInfo(body: Prisma.UserUpdateInput) { try { const currentUser = await getUserSession(); if (!currentUser) { throw new Error('Not found user') } const findUser = await prisma.user.findFirst({ where: { id: Number(currentUser.id), }, }); await prisma.user.update({ where: { id: Number(currentUser.id), }, data: { name: body.name, email: body.email, password: body.password ? hashSync(body.password as string, 10) : findUser?.password , } }) } catch (error) { console.log('Error [UPDATE_USER]', error); throw error; } } export async function registerUser(body: Prisma.UserCreateInput) { try { const user = await prisma.user.findFirst({ where: { email: body.email } }) if (user) { throw new Error('user exist') } await prisma.user.create({ data: { name: body.name, email: body.email, password: hashSync(body.password as string, 10) , } }) } catch (error) { console.log('Erro [create user]', error); throw error; } }