from loguru import logger from chain_service.database.models.chain import Chain from chain_service.repositories.chain import ChainRepository from chain_service.dependencies.chain import get_chain_repository from typing import Annotated from fastapi import APIRouter, Depends, HTTPException router = APIRouter(prefix="/chain") @router.post("/") async def chain_create_controller( chain: Chain, chain_repository: Annotated[ChainRepository, Depends(get_chain_repository)], ): try: created_chain = await chain_repository.create(chain) return created_chain except Exception: logger.exception(f"Error during chain creation {chain.model_dump_json()}") return HTTPException(status_code=500, detail="Error during chain creation")