import { DashboardStats } from '@/lib/api/admin/AdminApiClient'; import { AdminDashboardViewData } from '@/lib/view-data/AdminDashboardViewData'; /** * AdminDashboardViewDataBuilder * * Server-side builder that transforms API DashboardStats DTO * directly into ViewData for the AdminDashboardTemplate. * * Deterministic, side-effect free. */ export class AdminDashboardViewDataBuilder { static build(apiStats: DashboardStats): AdminDashboardViewData { return { stats: { totalUsers: apiStats.totalUsers, activeUsers: apiStats.activeUsers, suspendedUsers: apiStats.suspendedUsers, deletedUsers: apiStats.deletedUsers, systemAdmins: apiStats.systemAdmins, recentLogins: apiStats.recentLogins, newUsersToday: apiStats.newUsersToday, }, }; } }