"""Health response mappers.

Convert domain models (from health_service) to response models (for HTTP API).

This is the mapping layer at the router boundary, ensuring the service layer
remains independent of HTTP response shapes.
"""

from __future__ import annotations

from app.models.health_domain import DomainServerStatus
from app.models.server import ServerStatus


def map_domain_server_status_to_response(domain: DomainServerStatus) -> ServerStatus:
    """Convert domain server status to response model."""
    return ServerStatus(
        online=domain.online,
        version=domain.version,
        active_jails=domain.active_jails,
        total_bans=domain.total_bans,
        total_failures=domain.total_failures,
    )
