2022-06-19 06:45:36 +12:00
|
|
|
from dataclasses import dataclass
|
|
|
|
from typing import Optional, List, Dict
|
|
|
|
|
2023-02-06 20:45:30 +13:00
|
|
|
from legendary.models.game import Game, SaveGameFile
|
|
|
|
|
2022-06-19 06:45:36 +12:00
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class ApiResults:
|
2023-02-08 00:04:33 +13:00
|
|
|
games: Optional[List[Game]] = None
|
2023-02-06 20:45:30 +13:00
|
|
|
dlcs: Optional[Dict[str, List[Game]]] = None
|
2022-06-19 06:45:36 +12:00
|
|
|
bit32_games: Optional[List] = None
|
|
|
|
mac_games: Optional[List] = None
|
2023-02-08 00:04:33 +13:00
|
|
|
na_games: Optional[List[Game]] = None
|
|
|
|
na_dlcs: Optional[Dict[str, List[Game]]] = None
|
2023-02-06 20:45:30 +13:00
|
|
|
saves: Optional[List[SaveGameFile]] = None
|
2022-06-19 06:45:36 +12:00
|
|
|
|
|
|
|
def __bool__(self):
|
|
|
|
return (
|
2023-02-08 00:04:33 +13:00
|
|
|
self.games is not None
|
2022-06-19 06:45:36 +12:00
|
|
|
and self.dlcs is not None
|
|
|
|
and self.bit32_games is not None
|
|
|
|
and self.mac_games is not None
|
2023-02-08 00:04:33 +13:00
|
|
|
and self.na_games is not None
|
|
|
|
and self.na_dlcs is not None
|
2022-06-19 06:45:36 +12:00
|
|
|
and self.saves is not None
|
|
|
|
)
|