"""MercadoPago (MOCK) Vein - FastAPI app.""" from pathlib import Path from fastapi import FastAPI, Request from fastapi.responses import HTMLResponse from fastapi.templating import Jinja2Templates from fastapi.middleware.cors import CORSMiddleware from .api.routes import router from .core.config import settings app = FastAPI( title="MercadoPago (MOCK)", description="Mock MercadoPago API for testing - simulates payment processing", version="0.1.0", ) # Enable CORS for testing from backend app.add_middleware( CORSMiddleware, allow_origins=["*"], # In production, specify exact origins allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) # Templates for configuration UI templates = Jinja2Templates(directory=Path(__file__).parent / "templates") @app.get("/", response_class=HTMLResponse) def index(request: Request): """Mock configuration UI.""" return templates.TemplateResponse("index.html", {"request": request}) # Include router at root (matches real MercadoPago API structure) app.include_router(router) if __name__ == "__main__": import uvicorn uvicorn.run(app, host="0.0.0.0", port=settings.api_port)