import * as TypeGraphQL from "type-graphql"; import type { GraphQLResolveInfo } from "graphql"; import { FindFirstUserArgs } from "./args/FindFirstUserArgs"; import { User } from "../../../models/User"; import { transformInfoIntoPrismaArgs, getPrismaFromContext, transformCountFieldIntoSelectRelationsCount } from "../../../helpers"; @TypeGraphQL.Resolver(_of => User) export class FindFirstUserResolver { @TypeGraphQL.Query(_returns => User, { nullable: true }) async findFirstUser(@TypeGraphQL.Ctx() ctx: any, @TypeGraphQL.Info() info: GraphQLResolveInfo, @TypeGraphQL.Args() args: FindFirstUserArgs): Promise { const { _count } = transformInfoIntoPrismaArgs(info); return getPrismaFromContext(ctx).user.findFirst({ ...args, ...(_count && transformCountFieldIntoSelectRelationsCount(_count)), }); } }