"""SeasonStats-related data models.""" from dataclasses import dataclass, field @dataclass class SeasonStats: """Competitive season statistics.""" season_id: str season_name: str = "" rank: int = 0 rating: int = 0 games_played: int = 0 wins: int = 0 division: str = "" raw_data: dict = field(default_factory=dict) @classmethod def from_api_response(cls, data: dict) -> "SeasonStats": """Create SeasonStats from API response.""" return cls( season_id=data.get("seasonId", data.get("id", "")), season_name=data.get("seasonName", data.get("name", "")), rank=data.get("rank", data.get("position", 0)), rating=data.get("rating", data.get("elo", data.get("score", 0))), games_played=data.get("gamesPlayed", data.get("games", 0)), wins=data.get("wins", 0), division=data.get("division", data.get("tier", "")), raw_data=data, )