# app/modules/cms/routes/api/admin_images.py """ Admin image management endpoints. Provides: - Storage statistics (delegates to MediaService) """ import logging from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app.api.deps import get_current_admin_api from app.core.database import get_db from app.modules.cms.schemas.image import ImageStorageStats from app.modules.cms.services.media_service import media_service from app.modules.tenancy.schemas.auth import UserContext admin_images_router = APIRouter(prefix="/images") logger = logging.getLogger(__name__) @admin_images_router.get("/stats", response_model=ImageStorageStats) async def get_storage_stats( current_admin: UserContext = Depends(get_current_admin_api), db: Session = Depends(get_db), ): """Get image storage statistics. Returns: Storage metrics including file counts, sizes, and directory info """ stats = media_service.get_storage_stats(db) return ImageStorageStats(**stats)