diff --git a/apps/api/src/modules/reservations/reservation.presenter.ts b/apps/api/src/modules/reservations/reservation.presenter.ts index b7c651c..d11cae2 100644 --- a/apps/api/src/modules/reservations/reservation.presenter.ts +++ b/apps/api/src/modules/reservations/reservation.presenter.ts @@ -124,6 +124,25 @@ export function buildBookingRequestProgress(reservation: { } } +type DashboardReservationCustomer = { + id: string + driverLicense?: string | null + dateOfBirth?: Date | null + address?: unknown + licenseImageUrl?: string | null + licenseValidationStatus?: string | null +} + +type SerializedDashboardReservation = Omit & { + customer?: DashboardReservationCustomer | null + paymentMode: string | null + spareWheel: boolean + radioCd: boolean + contractFields: Record + workflow: ReturnType + bookingRequest: ReturnType +} + export function serializeReservationForDashboard(reservation: T): T & { - paymentMode: string | null - spareWheel: boolean - radioCd: boolean - contractFields: Record - workflow: ReturnType - bookingRequest: ReturnType -} { + customer?: DashboardReservationCustomer | null +}>(reservation: T): SerializedDashboardReservation { const extras = parseReservationExtras(reservation.extras) const contractFields = serializeContractFields(extras.contractFields) const customer = @@ -160,10 +165,14 @@ export function serializeReservationForDashboard), ...(customer !== undefined ? { customer } : {}), paymentMode: typeof extras.paymentMode === 'string' ? extras.paymentMode : null, spareWheel: typeof extras.spareWheel === 'boolean' ? extras.spareWheel : false,