41 lines
1.3 KiB
Python
41 lines
1.3 KiB
Python
from __future__ import annotations
|
|
from fastapi import Depends
|
|
from src.application.abstractions import IUnitOfWork
|
|
from src.application.commands import GetKycSessionCommand,PassKycCommand
|
|
from src.application.contracts import IBeorgService,ILogger
|
|
from src.infrastructure.config import settings
|
|
from src.infrastructure.beorg import BeorgService
|
|
from src.presentation.dependencies.logger import get_logger
|
|
from src.presentation.dependencies.unit_of_work import get_unit_of_work
|
|
|
|
|
|
def get_beorg_service() -> IBeorgService:
|
|
return BeorgService(
|
|
project_id=settings.BEORG_PROJECT_ID,
|
|
machine_uid=settings.BEORG_MACHINE_UID,
|
|
token=settings.BEORG_TOKEN,
|
|
process_info=settings.BEORG_PROCESS_INFO,
|
|
timeout=settings.BEORG_TIMEOUT,
|
|
)
|
|
|
|
|
|
def get_pass_kyc_command(
|
|
logger: ILogger = Depends(get_logger),
|
|
unit_of_work: IUnitOfWork = Depends(get_unit_of_work),
|
|
beorg_service: IBeorgService = Depends(get_beorg_service),
|
|
) -> PassKycCommand:
|
|
return PassKycCommand(
|
|
unit_of_work=unit_of_work,
|
|
logger=logger,
|
|
beorg_service=beorg_service,
|
|
kyc_session_ttl_seconds=settings.KYC_SESSION_TTL_SECONDS,
|
|
)
|
|
|
|
|
|
def get_kyc_session_command(
|
|
unit_of_work: IUnitOfWork = Depends(get_unit_of_work),
|
|
) -> GetKycSessionCommand:
|
|
return GetKycSessionCommand(
|
|
unit_of_work=unit_of_work,
|
|
)
|