# from fastapi import FastAPI
# from fastapi.middleware.cors import CORSMiddleware
# from app.core.database import create_indexes
# from app.routes.auth_routes import router as auth_router
# from app.routes.image_routes import router as image_router
# from app.routes.history_routes import router as history_router



# app = FastAPI(
#     title= "Background Remover API",
#     version="1.0.0"
# )

# @app.on_event("startup")
# async def startup():
#     await create_indexes()


# app.add_middleware(
#     CORSMiddleware,
#     allow_origins=["http://localhost:5173"],
#     allow_credentials=True,
#     allow_methods=["*"],
#     allow_headers=["*"],
# )

# app.include_router(auth_router)
# app.include_router(image_router)
# app.include_router(history_router)


from fastapi import FastAPI

from fastapi.middleware.cors import (
    CORSMiddleware
)

from app.core.database import (
    create_indexes,
    check_database_connection
)

from app.core.config import settings

from app.routes.auth_routes import (
    router as auth_router
)

from app.routes.image_routes import (
    router as image_router
)

from app.routes.history_routes import (
    router as history_router
)


app = FastAPI(
    title=settings.APP_NAME,
    version="1.0.0"
)


@app.on_event("startup")
async def startup():

    await check_database_connection()

    await create_indexes()


@app.get("/health")
async def health():

    return {
        "status": "ok"
    }


app.add_middleware(
    CORSMiddleware,
    allow_origins=["*"],
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)


app.include_router(auth_router)

app.include_router(image_router)

app.include_router(history_router)