import { GetUserUseCase } from "@/contexts/users/application";
import { IUserContext } from "../../../User.context";
import { registerUserRepository } from "../../../User.repository";
import { GetUserController } from "./GetUser.controller";
import { GetUserPresenter } from "./presenter";

export const createGetUserController = (context: IUserContext) => {
  registerUserRepository(context);
  return new GetUserController(
    {
      useCase: new GetUserUseCase(context),
      presenter: GetUserPresenter,
    },
    context,
  );
};
