Some checks failed
All route files (admin.py, store.py) now export `router` instead of `admin_router`/`store_router`. Consumer code (definition.py, __init__.py) imports as `router as admin_router` where distinction is needed. ModuleDefinition fields remain admin_router/store_router. 64 files changed across all modules. Architecture rules, docs, and migration plan updated. Added noqa:API001 support to validator for pre-existing raw dict endpoints now visible with standardized router name. All 1114 tests pass. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
29 lines
954 B
Python
29 lines
954 B
Python
# app/modules/customers/routes/__init__.py
|
|
"""
|
|
Customers module route registration.
|
|
|
|
This module provides functions to register customers 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.customers.routes.admin import router
|
|
from app.modules.customers.routes.store import router
|
|
"""
|
|
|
|
# Routers are imported on-demand to avoid circular dependencies
|
|
# Do NOT add auto-imports here
|
|
|
|
__all__ = ["admin_router", "store_router"]
|
|
|
|
|
|
def __getattr__(name: str):
|
|
"""Lazy import routers to avoid circular dependencies."""
|
|
if name == "admin_router":
|
|
from app.modules.customers.routes.admin import router
|
|
return router
|
|
if name == "store_router":
|
|
from app.modules.customers.routes.store import router
|
|
return router
|
|
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|