Files
gridpilot.gg/core/identity/application/use-cases/GetUserUseCase.ts
2025-12-15 18:34:20 +01:00

14 lines
425 B
TypeScript

import { User } from '../../domain/entities/User';
import { IUserRepository } from '../../domain/repositories/IUserRepository';
export class GetUserUseCase {
constructor(private userRepo: IUserRepository) {}
async execute(userId: string): Promise<User> {
const stored = await this.userRepo.findById(userId);
if (!stored) {
throw new Error('User not found');
}
return User.fromStored(stored);
}
}