view data fixes

This commit is contained in:
2026-01-24 00:52:27 +01:00
parent 62e8b768ce
commit ae59df61eb
321 changed files with 1157 additions and 2234 deletions

View File

@@ -1,22 +1,11 @@
import { ViewData } from '@/lib/contracts/view-data/ViewData';
import type { DashboardStats } from '@/lib/types/admin';
'use client';
import type { DashboardStatsResponseDTO } from '@/lib/types/generated/DashboardStatsResponseDTO';
import type { AdminDashboardViewData } from '@/lib/view-data/AdminDashboardViewData';
import type { ViewDataBuilder } from '@/lib/contracts/builders/ViewDataBuilder';
/**
* AdminDashboardViewDataBuilder
*
* Transforms DashboardStats API DTO into AdminDashboardViewData for server-side rendering.
* Deterministic; side-effect free; no HTTP calls.
*/
import { ViewDataBuilder } from "../../contracts/builders/ViewDataBuilder";
export class AdminDashboardViewDataBuilder implements ViewDataBuilder<any, any> {
build(input: any): any {
return AdminDashboardViewDataBuilder.build(input);
}
static build(
static build(apiDto: DashboardStats): AdminDashboardViewData {
export class AdminDashboardViewDataBuilder {
public static build(apiDto: DashboardStatsResponseDTO): AdminDashboardViewData {
return {
stats: {
totalUsers: apiDto.totalUsers,
@@ -29,4 +18,6 @@ export class AdminDashboardViewDataBuilder implements ViewDataBuilder<any, any>
},
};
}
}
}
AdminDashboardViewDataBuilder satisfies ViewDataBuilder<DashboardStatsResponseDTO, AdminDashboardViewData>;