import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { FindOptionsWhere, Repository } from 'typeorm'; import { User } from '../../user/entities'; @Injectable() export class UserRepository { constructor(@InjectRepository(User) private readonly userRepository: Repository) {} createUnverifiedUser(data: Partial) { return this.userRepository.save( this.userRepository.create({ ...data, }), ); } findOne(where: FindOptionsWhere | FindOptionsWhere[]) { return this.userRepository.findOne({ where, relations: ['profilePicture'] }); } update(userId: string, data: Partial) { return this.userRepository.update(userId, data); } createUser(data: Partial) { const user = this.userRepository.create({ ...data, }); return this.userRepository.save(user); } }