import { resolver, NotFoundError } from "blitz" import db from "db" import { z } from "zod" const GetItemUsePrefab = z.object({ // This accepts type of undefined, but is required at runtime id: z.number().optional().refine(Boolean, "Required"), }) export default resolver.pipe( resolver.zod(GetItemUsePrefab), resolver.authorize(), async ({ id }) => { // TODO: in multi-tenant app, you must add validation to ensure correct tenant const itemUsePrefab = await db.itemUsePrefab.findFirst({ where: { id } }) if (!itemUsePrefab) throw new NotFoundError() return itemUsePrefab } )