# pyright: reportUnusedFunction=false from fastapi import FastAPI, Request from fastapi.responses import HTMLResponse from fastapi.templating import Jinja2Templates from prophet.domain.improvement_repo import IImprovementRepo from prophet.infra.improvement_pickle_repo import ImprovementPickleRepo repo: IImprovementRepo = ImprovementPickleRepo() templates = Jinja2Templates(directory="templates") def define_routes(app: FastAPI): @app.get("/improvements", response_class=HTMLResponse) def list_improvements(): improved = repo.get_all() return ( """ """ + "\n".join( f"""
{item.title}
{item.summary}
""" for item in sorted( improved, key=lambda i: i.original.date, reverse=True ) ) ) @app.get("/originals", response_class=HTMLResponse) def list_originals(): improved = repo.get_all() return ( """ """ + "\n".join( f"""
{item.original.title}
{item.original.summary}
""" for item in sorted( improved, key=lambda i: i.original.date, reverse=True ) ) ) @app.get("/", response_class=HTMLResponse) def root_route(request: Request): return templates.TemplateResponse(request=request, name="index.html")