diff --git a/crates/lanspread-tauri-deno-ts/src/lib/gameState.ts b/crates/lanspread-tauri-deno-ts/src/lib/gameState.ts index ab50802..6c8015b 100644 --- a/crates/lanspread-tauri-deno-ts/src/lib/gameState.ts +++ b/crates/lanspread-tauri-deno-ts/src/lib/gameState.ts @@ -157,8 +157,11 @@ export interface FilterCounts { installed: number; } +const isNetworkGame = (game: Game): boolean => + game.installed || game.downloaded || game.peer_count > 0; + export const countByFilter = (games: Game[]): FilterCounts => ({ - all: games.length, + all: games.filter(isNetworkGame).length, local: games.filter(g => g.installed || g.downloaded).length, installed: games.filter(g => g.installed).length, }); @@ -170,7 +173,7 @@ const matchesFilter = (game: Game, filter: GameFilter): boolean => { case 'installed': return game.installed; case 'all': - return game.installed || game.downloaded || game.peer_count > 0; + return isNetworkGame(game); } };