import { PrismaClient } from '@prisma/client' const prisma = new PrismaClient() export const deletePost = async (slug: string) => { try { const post = await prisma.post.findUnique({ where: { slug: slug }, include: { comments: true } }) if (!post) { throw new Error('Post not found') } await prisma.like.deleteMany({ where: { postId: post.id } }) await prisma.comment.deleteMany({ where: { postSlug: slug } }) await prisma.post.delete({ where: { slug: slug } }) } catch (error) { console.error(error, 'Error deleting post') throw new Error('Error deleting post') } } export const editPost = async (slug: string, newData: any) => { try { // Buscar el post que se va a editar const existingPost = await prisma.post.findUnique({ where: { slug: slug } }) // Verificar si el post existe if (!existingPost) { throw new Error('Post not found') } // Actualizar el post con los nuevos datos const updatedPost = await prisma.post.update({ where: { slug: slug }, data: { ...newData // Tags: { // set: newData.Tags.map((tag: any) => ({ id: tag.id })) // } } }) return updatedPost } catch (error) { console.error(error, 'Error editing post') throw new Error('Error editing post') } }