[tasks] Fix dataclass models

This commit is contained in:
2025-07-30 15:46:07 -04:00
parent 1531b77b5c
commit ad0f9a54d0
2 changed files with 30 additions and 3 deletions

View File

@ -78,6 +78,14 @@ class BoardGameScoreLogData(JSONDataclass):
rank: Optional[int] = None
seat_order: Optional[int] = None
role: Optional[str] = None
rank: Optional[int] = None
seat_order: Optional[int] = None
role: Optional[str] = None
lichess_username: Optional[str] = None
# Legacy
user_id: Optional[int] = None
name_str: Optional[str] = None
@property
def person(self) -> Optional[Person]:
@ -111,7 +119,19 @@ class BoardGameLogData(LongPlayLogData):
solo: Optional[bool] = None
two_handed: Optional[bool] = None
expansion_ids: Optional[int] = None
moves: Optional[list] = None
rated: Optional[str] = None
speed: Optional[str] = None
variant: Optional[str] = None
lichess_id: Optional[int] = None
board: Optional[str] = None
rounds: Optional[int] = None
details: Optional[str] = None
# Legacy
learning: Optional[bool] = None
location: Optional[str] = None
geo_location_id: Optional[int] = None
scenario: Optional[str] = None
@cached_property
def geo_location(self) -> Optional[GeoLocation]:
if self.geo_location_id:
@ -119,7 +139,9 @@ class BoardGameLogData(LongPlayLogData):
@cached_property
def player_log(self) -> str:
return ", ".join([BoardGameScoreLogData(**player).__str__() for player in self.players])
if self.players:
return ", ".join([BoardGameScoreLogData(**player).__str__() for player in self.players])
return ""
@dataclass
class BookPageLogData(JSONDataclass):

View File

@ -18,10 +18,15 @@ class TaskLogData(JSONDataclass):
description: Optional[str] = None
title: Optional[str] = None
project: Optional[str] = None
notes: Optional[dict] = None
updated_at: Optional[str] = None
todoist_id: Optional[str] = None
todoist_event: Optional[str] = None
todoist_type: Optional[str] = None
notes: Optional[dict] = None
todoist_type: Optional[str] = None
todoist_label_list: Optional[list] = None
todoist_project_id: Optional[str] = None
def notes_as_str(self) -> str:
"""Return formatted notes with line breaks and no keys"""