diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index fe20af4..ce9388e 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -221,7 +221,7 @@ ) ); const liveCount = $derived(healthy.filter((server) => (server.last_players ?? 0) > 0).length); - function grouped(items: FleetServer[]) { + function grouped(items: FleetServer[], groupBy: typeof grouping = grouping) { const result = new Map< string, { @@ -233,13 +233,13 @@ for (const server of items) { const identity = fleetIdentity(server); const key = - grouping === 'map' ? identity.group : grouping === 'game' ? identity.game : 'all'; + groupBy === 'map' ? identity.group : groupBy === 'game' ? identity.game : 'all'; if (!result.has(key)) result.set(key, { title: - grouping === 'map' + groupBy === 'map' ? identity.map - : grouping === 'game' + : groupBy === 'game' ? identity.game === 't5' ? 'Black Ops I' : identity.game === 't6' @@ -247,7 +247,7 @@ : 'Other servers' : '', servers: [], - launch: grouping === 'map' ? identity.launch : null + launch: groupBy === 'map' ? identity.launch : null }); result.get(key)!.servers.push(server); } @@ -529,8 +529,13 @@

{section.title} {section.servers.length}

+ {#if section.compact && canOperate}{/if}
- {#each grouped(section.servers) as [key, group] (key)} + {#each grouped(section.servers, section.compact ? 'none' : grouping) as [key, group] (key)} {#if group.title}

{group.title}

{#if canOperate && group.launch}