Per-tournament time zone for all clock times (Central by default)

Release 0.6.1.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01MB7nCCAscYsb3zzkT6LHZi
This commit is contained in:
bkvargyasandClaude Fable 5.1 committed 2026-09-06 03:54:48 +00:00
1 parent 103c221a12
commit 110077314d
10 files changed
+40 -11

No files matched your search

+2 -2
View File
@@ -30,12 +30,12 @@ export class Registry {
list() { return [...this.items.entries()].map(([slug, { t }]) => ({ slug, name: t.name, date: t.date, phase: t.phase, teams: t.activeTeams().length, createdAt: t.createdAt })); }
get(slug) { return this.items.get(slug) ?? null; }
create({ name, date, courtCount = 2, rules = {}, stages = ['pool', 'bracket'], notes = '', slug: wanted = null }) {
create({ name, date, courtCount = 2, rules = {}, stages = ['pool', 'bracket'], notes = '', timezone = null, slug: wanted = null }) {
const base = slugify(wanted ?? name);
let slug = base, n = 2;
while (this.items.has(slug)) slug = `${base}-${n++}`;
const t = new Tournament({ name, courtCount: Number(courtCount), rules, stages });
t.slug = slug; t.date = date || null; t.notes = notes; t.createdAt = Date.now();
t.slug = slug; t.date = date || null; t.notes = notes; t.timezone = timezone || null; t.createdAt = Date.now();
const engine = new CourtEngine(t, { courtCount: t.courtCount });
this._attach(slug, t, engine);
this.persist(slug);