# app/modules/messaging/routes/__init__.py """ Messaging module route registration. This module provides functions to register messaging routes with module-based access control. NOTE: Routers are NOT auto-imported to avoid circular dependencies. Import directly from admin.py or store.py as needed: from app.modules.messaging.routes.admin import admin_router, admin_notifications_router from app.modules.messaging.routes.store import store_router, store_notifications_router """ # Routers are imported on-demand to avoid circular dependencies # Do NOT add auto-imports here __all__ = ["admin_router", "admin_notifications_router", "store_router", "store_notifications_router"] def __getattr__(name: str): """Lazy import routers to avoid circular dependencies.""" if name == "admin_router": from app.modules.messaging.routes.admin import admin_router return admin_router if name == "admin_notifications_router": from app.modules.messaging.routes.admin import admin_notifications_router return admin_notifications_router if name == "store_router": from app.modules.messaging.routes.store import store_router return store_router if name == "store_notifications_router": from app.modules.messaging.routes.store import store_notifications_router return store_notifications_router raise AttributeError(f"module {__name__!r} has no attribute {name!r}")