""" Helper pour injecter automatiquement current_user dans le contexte Jinja2. """ from fastapi import Request from fastapi.templating import Jinja2Templates from starlette.responses import HTMLResponse, Response def render(templates: Jinja2Templates, template_name: str, request: Request, context: dict = None, status_code: int = 200) -> HTMLResponse: ctx = context or {} ctx["request"] = request if "current_user" not in ctx: ctx["current_user"] = getattr(request.state, "current_user", None) # Compatible avec toutes les versions de Starlette/FastAPI response = templates.TemplateResponse(template_name, ctx) response.status_code = status_code return response