"""
Central API router.

Aggregates all version 1 endpoints into a single router.
Mounted at `/api` in `app/main.py`.
"""

from fastapi import APIRouter

from app.api.v1.appointments import router as appointments_router
from app.api.v1.audit import router as audit_router
from app.api.v1.auth import router as auth_router
from app.api.v1.bills import router as bills_router
from app.api.v1.client import router as client_router
from app.api.v1.commissions import router as commissions_router
from app.api.v1.dashboard import router as dashboard_router
from app.api.v1.discounts import router as discounts_router
from app.api.v1.labs import router as labs_router
from app.api.v1.management_reporting import router as management_reporting_router
from app.api.v1.notifications import router as notifications_router
from app.api.v1.orders import router as orders_router
from app.api.v1.packages import router as packages_router
from app.api.v1.patient_auth import router as patient_auth_router
from app.api.v1.patients import router as patients_router
from app.api.v1.payments import router as payments_router
from app.api.v1.radiologist_commissions import router as radiologist_commissions_router
from app.api.v1.rbac import router as rbac_router
from app.api.v1.referrals import router as referrals_router
from app.api.v1.reports import router as reports_router
from app.api.v1.results import router as results_router
from app.api.v1.samples import router as samples_router
from app.api.v1.schedule import router as schedule_router
from app.api.v1.tests import router as tests_router
from app.api.v1.units import router as units_router
from app.api.v1.users import router as users_router

api_router = APIRouter(prefix="/v1")

# Mount all domain routers
api_router.include_router(auth_router)
api_router.include_router(labs_router)
api_router.include_router(users_router)
api_router.include_router(rbac_router)
api_router.include_router(patients_router)
api_router.include_router(tests_router)
api_router.include_router(units_router)
api_router.include_router(packages_router)
api_router.include_router(appointments_router)
api_router.include_router(schedule_router)
api_router.include_router(orders_router)
api_router.include_router(samples_router)
api_router.include_router(results_router)
api_router.include_router(reports_router)
api_router.include_router(discounts_router)
api_router.include_router(bills_router)
api_router.include_router(payments_router)
api_router.include_router(referrals_router)
api_router.include_router(commissions_router)
api_router.include_router(radiologist_commissions_router)
api_router.include_router(notifications_router)
api_router.include_router(patient_auth_router)
api_router.include_router(client_router)
api_router.include_router(dashboard_router)
api_router.include_router(audit_router)
api_router.include_router(management_reporting_router)
