import { Injectable } from "@nestjs/common"; import { InjectRepository } from "@nestjs/typeorm"; import { Repository } from "typeorm"; import { User } from "../entities/user.entity"; @Injectable() export class UserRepository extends Repository { constructor(@InjectRepository(User) userRepository: Repository) { super(userRepository.target, userRepository.manager, userRepository.queryRunner); } async findOneWithEmail(email: string): Promise { return this.findOneBy({ email, }); } async findOneWithPhone(phone: string): Promise { return this.findOneBy({ phone, }); } async findOneWithUserName(userName: string): Promise { return this.findOneBy({ userName, }); } }