# app/modules/cms/routes/vendor.py """ CMS module vendor routes. This module wraps the existing vendor content pages and media routes and adds module-based access control. Routes are re-exported from the original location with the module access dependency. Includes: - /content-pages/* - Content page management - /media/* - Media library """ from fastapi import APIRouter, Depends from app.api.deps import require_module_access # Import original routers (direct import to avoid circular dependency) from app.api.v1.vendor.content_pages import router as content_original_router from app.api.v1.vendor.media import router as media_original_router # Create module-aware router for content pages vendor_router = APIRouter( prefix="/content-pages", dependencies=[Depends(require_module_access("cms"))], ) # Re-export all routes from the original content pages module for route in content_original_router.routes: vendor_router.routes.append(route) # Create separate router for media library vendor_media_router = APIRouter( prefix="/media", dependencies=[Depends(require_module_access("cms"))], ) for route in media_original_router.routes: vendor_media_router.routes.append(route)