24 lines
874 B
TypeScript
24 lines
874 B
TypeScript
import { ViewModel } from "../contracts/view-models/ViewModel";
|
|
import type { LeagueScoringChampionshipViewData } from "../view-data/LeagueScoringChampionshipViewData";
|
|
|
|
export class LeagueScoringChampionshipViewModel extends ViewModel {
|
|
readonly id: string;
|
|
readonly name: string;
|
|
readonly type: string;
|
|
readonly sessionTypes: string[];
|
|
readonly pointsPreview: Array<{ sessionType: string; position: number; points: number }>;
|
|
readonly bonusSummary: string[];
|
|
readonly dropPolicyDescription?: string;
|
|
|
|
constructor(data: LeagueScoringChampionshipViewData) {
|
|
super();
|
|
this.id = data.id;
|
|
this.name = data.name;
|
|
this.type = data.type;
|
|
this.sessionTypes = data.sessionTypes;
|
|
this.pointsPreview = data.pointsPreview ?? [];
|
|
this.bonusSummary = data.bonusSummary ?? [];
|
|
this.dropPolicyDescription = data.dropPolicyDescription;
|
|
}
|
|
}
|