from pathlib import Path

from django.http import HttpResponse
from django.shortcuts import render

SPEC_PATH = Path(__file__).parent / 'openapi.yaml'


def api_docs(request):
    """Interactive OpenAPI documentation (Swagger UI), gated like the rest."""
    return render(request, 'api/docs.html')


def api_docs_spec(request):
    """The OpenAPI spec served to Swagger UI (YAML, gated)."""
    with open(SPEC_PATH, 'rb') as fh:
        return HttpResponse(fh.read(), content_type='application/yaml; charset=utf-8')
