fix issues

This commit is contained in:
2025-12-26 11:49:20 +01:00
parent d08ec10b40
commit 68ae9da22a
44 changed files with 505 additions and 179 deletions

View File

@@ -108,30 +108,40 @@ export class LeagueDetailPageViewModel {
this.ownerId = league.ownerId;
this.createdAt = league.createdAt;
this.settings = {
maxDrivers: league.settings?.maxDrivers,
maxDrivers: league.settings?.maxDrivers ?? (league as any).maxDrivers,
};
this.socialLinks = {
discordUrl: league.discordUrl,
youtubeUrl: league.youtubeUrl,
websiteUrl: league.websiteUrl,
discordUrl: league.discordUrl ?? (league as any).socialLinks?.discordUrl,
youtubeUrl: league.youtubeUrl ?? (league as any).socialLinks?.youtubeUrl,
websiteUrl: league.websiteUrl ?? (league as any).socialLinks?.websiteUrl,
};
this.owner = owner;
this.scoringConfig = scoringConfig;
this.drivers = drivers;
this.memberships = memberships.members.map(m => ({
const membershipDtos = ((memberships as any).members ?? (memberships as any).memberships ?? []) as Array<{
driverId: string;
role: string;
status?: 'active' | 'inactive';
joinedAt: string;
}>;
this.memberships = membershipDtos.map((m) => ({
driverId: m.driverId,
role: m.role as 'owner' | 'admin' | 'steward' | 'member',
status: 'active',
status: m.status ?? 'active',
joinedAt: m.joinedAt,
}));
this.allRaces = allRaces;
this.runningRaces = allRaces.filter(r => r.status === 'running');
const leagueStatsAny = leagueStats as any;
// Calculate SOF from available data
this.averageSOF = leagueStats.averageRating ?? null;
this.completedRacesCount = leagueStats.totalRaces ?? 0;
this.averageSOF = leagueStatsAny.averageSOF ?? leagueStats.averageRating ?? null;
this.completedRacesCount = leagueStatsAny.completedRaces ?? leagueStats.totalRaces ?? 0;
this.sponsors = sponsors;