import { useValidatedParams, z, zh } from 'h3-zod'; import prisma from '~~/lib/prisma'; export default defineEventHandler(async (event) => { const user = await requireUserSession(event); const userId = user.user.id; const { huntId } = await useValidatedParams( event, z.object({ huntId: zh.numAsString }) ); const team = await prisma.huntTeam.findFirst({ where: { huntId, OR: [ { ownerId: userId }, { members: { some: { memberId: userId } } } ] }, select: { id: true, name: true, description: true, password: true, ownerId: true, createdAt: true, owner: { select: { id: true, name: true } }, members: { select: { member: { select: { id: true, name: true } } }, orderBy: { createdAt: 'asc' } } } }); if (!team) { throw createError({ status: 404, statusText: 'Not found!' }); } return team; });