from dependency_injector import containers, providers from repositories.user_repository import UserRepository from services import UserService, AuthService from controllers import AuthController from flask_pymongo import PyMongo class Container(containers.DeclarativeContainer): """Dependency Injection Container""" mongo = providers.Dependency() user_repository = providers.Factory( UserRepository, mongo.provided.db, ) auth_service = providers.Factory( AuthService, user_repository, ) auth_controller = providers.Factory( AuthController, AuthService, )