using ApplicationLayer.Services.AuthServices.LoginService.Exceptions; using ApplicationLayer.Services.AuthServices.NeededServices; namespace ApplicationLayer.Services.AuthServices.LoginService { /// public class LoginService(IUsersRepository users, ITokenGenerator tokenGenerator) : ILoginService { async Task ILoginService.LoginAsync(string email, string password, CancellationToken cancellationToken) { var user = await users.FindByEmailAsync(email, cancellationToken); if (user is null || user.Password != password) { throw new IncorrectLoginDataException(); } return tokenGenerator.CreateToken(user); } } }