presenter refactoring

This commit is contained in:
2025-12-20 17:06:11 +01:00
parent 92be9d2e1b
commit e9d6f90bb2
109 changed files with 4159 additions and 1283 deletions

View File

@@ -0,0 +1,36 @@
export interface CommandResultViewModel {
success: boolean;
errorCode?: string;
message?: string;
}
export class CommandResultPresenter {
private result: CommandResultViewModel | null = null;
presentSuccess(message?: string): void {
this.result = {
success: true,
message,
};
}
presentFailure(errorCode: string, message?: string): void {
this.result = {
success: false,
errorCode,
message,
};
}
getViewModel(): CommandResultViewModel | null {
return this.result;
}
get viewModel(): CommandResultViewModel {
if (!this.result) {
throw new Error('Presenter not presented');
}
return this.result;
}
}