import { Prisma } from "@prisma/client"; import type { DefaultArgs, InternalArgs } from "@prisma/client/runtime/library"; export function excludePendingPaymentsExtension() { return Prisma.defineExtension({ query: { team: { async findUnique({ args, query }) { return excludePendingPayments(args, query); }, async findFirst({ args, query }) { return excludePendingPayments(args, query); }, async findMany({ args, query }) { return excludePendingPayments(args, query); }, async findUniqueOrThrow({ args, query }) { return excludePendingPayments(args, query); }, async findFirstOrThrow({ args, query }) { return excludePendingPayments(args, query); }, }, }, }); } async function excludePendingPayments( args: | Prisma.TeamFindUniqueArgs | Prisma.TeamFindFirstArgs | Prisma.TeamFindManyArgs | Prisma.TeamFindUniqueOrThrowArgs | Prisma.TeamFindFirstOrThrowArgs, query: (args: T) => Promise ) { args.where = args.where || {}; if (args.where.pendingPayment === undefined) { args.where.pendingPayment = false; } return query(args); }