it0/packages/services/auth-service/src/infrastructure/repositories/user.repository.ts

25 lines
620 B
TypeScript

import { Injectable } from '@nestjs/common';
import { InjectRepository } from '@nestjs/typeorm';
import { Repository } from 'typeorm';
import { User } from '../../domain/entities/user.entity';
@Injectable()
export class UserRepository {
constructor(
@InjectRepository(User)
private readonly repo: Repository<User>,
) {}
async findByEmail(email: string): Promise<User | null> {
return this.repo.findOneBy({ email });
}
async findById(id: string): Promise<User | null> {
return this.repo.findOneBy({ id });
}
async save(user: User): Promise<User> {
return this.repo.save(user);
}
}