Presupuestador_web/server/src/contexts/auth/application/authServices.ts

19 lines
527 B
TypeScript
Raw Normal View History

2024-05-16 11:56:46 +00:00
import { IAdapter, RepositoryBuilder } from "@/contexts/common/domain";
import { Email } from "@shared/contexts";
import { User } from "../domain";
import { IAuthRepository } from "../domain/repository";
export const findUserByEmail = async (
email: Email,
adapter: IAdapter,
repository: RepositoryBuilder<IAuthRepository>,
): Promise<User | null> => {
const user = await adapter
.startTransaction()
.complete(async (t) =>
repository({ transaction: t }).findUserByEmail(email),
);
return user;
};