from fastapi import APIRouter, Depends, status

from app.deps import verify_internal_token
from app.schemas.answers import (
    AnswerEvaluationRequest,
    AnswerEvaluationResponse,
)
from app.services.answers import AnswerEvaluationService

router = APIRouter(prefix="/answers")
_service = AnswerEvaluationService()


@router.post(
    "/evaluate",
    response_model=AnswerEvaluationResponse,
    status_code=status.HTTP_200_OK,
    summary="Answer Feedback Evaluation",
    dependencies=[Depends(verify_internal_token)],
)
async def evaluate_answers(
    payload: AnswerEvaluationRequest,
) -> AnswerEvaluationResponse:
    return await _service.evaluate(payload)
