import { useValidatedQuery, z } from 'h3-zod'; import prisma from '~~/lib/prisma'; export default defineEventHandler(async (event) => { const user = await requireUserSession(event); if (user.user.role !== 'ADMIN') { throw createError({ status: 403, statusText: 'Not allowed!' }); } const { email } = await useValidatedQuery( event, z.object({ email: z.string().trim().default('') }) ); return prisma.user.findMany({ where: { role: 'USER', deactivated: false, deletedAt: null, email: { contains: email } }, select: { id: true, name: true, email: true, role: true }, take: 10, orderBy: { createdAt: 'desc' } }); });