Files
gridpilot.gg/apps/api/src/modules/payments/presenters/UpdateMemberPaymentPresenter.ts
2025-12-16 11:52:26 +01:00

26 lines
684 B
TypeScript

import type {
IUpdateMemberPaymentPresenter,
UpdateMemberPaymentResultDTO,
UpdateMemberPaymentViewModel,
} from '@core/payments/application/presenters/IUpdateMemberPaymentPresenter';
export class UpdateMemberPaymentPresenter implements IUpdateMemberPaymentPresenter {
private result: UpdateMemberPaymentViewModel | null = null;
reset() {
this.result = null;
}
present(dto: UpdateMemberPaymentResultDTO) {
this.result = dto;
}
getViewModel(): UpdateMemberPaymentViewModel | null {
return this.result;
}
get viewModel(): UpdateMemberPaymentViewModel {
if (!this.result) throw new Error('Presenter not presented');
return this.result;
}
}