import { cache } from "react"; import { getCMS } from "@/lib/payload/getPayload"; import type { BookingRequest } from "@/payload-types"; /** * These are called only after the caller has already verified who the * current customer is (see lib/auth/customer.ts) — the `where: { user }` * filter below is what actually scopes results to that one customer. */ export const getCustomerBookings = cache(async (customerId: number): Promise => { const payload = await getCMS(); const result = await payload.find({ collection: "booking-requests", where: { user: { equals: customerId } }, sort: "-date", depth: 2, limit: 200, }); return result.docs; }); export async function getCustomerBookingById(customerId: number, id: number): Promise { const payload = await getCMS(); const result = await payload.find({ collection: "booking-requests", where: { and: [{ id: { equals: id } }, { user: { equals: customerId } }] }, depth: 2, limit: 1, }); return result.docs[0] ?? null; }