Files
iceglass/IceGlass/Models/StandingsModel.swift
T
rzen 57358797e1 Add playoff round view, game numbers, goal scorer notifications, standings
- Fetch NHL standings and surface league/season game counts in the menu bar
- Prefix regular-season rows with the league-wide game number (from gameId)
- New ROUND section shows each active playoff series (matchup, series score,
  next game number + time) derived from /v1/playoff-bracket; rows always open
  the NHL series page so completed series remain clickable
- Goal notifications include scorer sweater, abbreviated name, and strength
  (PPG/SHG/EN), resolved via /v1/gamecenter/{id}/play-by-play
- Drop the per-team filter submenu and NHLTeam enum
- Regenerate AppIcon with the full 10-size macOS set (alpha preserved) so
  notifications render the app icon correctly; rename the iOS marketing PNG
  to icon-ios-1024.png
- gitignore .claude/ local tooling settings
2026-04-18 21:51:27 -04:00

36 lines
800 B
Swift

//
// StandingsModel.swift
// IceGlass
//
// Copyright 2026 Rouslan Zenetl. All Rights Reserved.
//
import Foundation
struct Standings: Codable {
let standings: [TeamStanding]
struct LocalizedString: Codable {
let `default`: String
}
struct TeamStanding: Codable {
let teamAbbrev: LocalizedString
let teamLogo: String
let gamesPlayed: Int
let wins: Int
let losses: Int
let otLosses: Int
let points: Int
let seasonId: Int
}
/// Total unique games played across the league (each game counted once)
var totalGamesPlayed: Int {
standings.reduce(0) { $0 + $1.gamesPlayed } / 2
}
/// Total regular season games: 32 teams * 82 games / 2
static let totalRegularSeasonGames = 1312
}