sendou.ink/app/features/tournament-bracket/core/RunningTournaments.server.ts
Kalle fef1ffc955
Design refresh + a bunch of stuff (#2864)
Co-authored-by: hfcRed <hfcred@gmx.net>
2026-03-19 17:51:42 +02:00

32 lines
632 B
TypeScript

import type { Tournament } from "./Tournament";
class RunningTournamentsRegistry {
tournaments = new Map<number, Tournament>();
add(tournament: Tournament) {
this.tournaments.set(tournament.ctx.id, tournament);
}
remove(tournamentId: number) {
this.tournaments.delete(tournamentId);
}
get(tournamentId: number) {
return this.tournaments.get(tournamentId);
}
get all() {
return Array.from(this.tournaments.values());
}
has(tournamentId: number) {
return this.tournaments.has(tournamentId);
}
clear() {
this.tournaments.clear();
}
}
export const RunningTournaments = new RunningTournamentsRegistry();