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 }) ); // Verify membership const hunt = await prisma.hunt.findUnique({ where: { id: huntId, members: { some: { memberId: userId } } }, select: { id: true } }); if (!hunt) { throw createError({ statusCode: 404, statusMessage: 'Not found!' }); } return await prisma.huntQuest.findMany({ where: { huntId }, select: { id: true, title_de: true, title_en: true, order: true, points: true, optional: true, pictureRequired: true, textRequired: true, picture: { select: { id: true, url: true } }, _count: { select: { answers: true } } }, orderBy: { order: 'asc' } }); });