diff --git a/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/league_all.py b/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/league_all.py index 0229109..d9b789e 100644 --- a/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/league_all.py +++ b/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/league_all.py @@ -28,20 +28,20 @@ class SuccessModel(BaseSuccessModel): league: League supporter: bool verified: bool - country: str | None + country: str | None = None class InvalidUser(BaseModel): class League(BaseModel): gamesplayed: int gameswon: int rating: float - glicko: float | None - rd: float | None + glicko: float | None = None + rd: float | None = None rank: Rank bestrank: Rank - apm: float | None - pps: float | None - vs: float | None + apm: float | None = None + pps: float | None = None + vs: float | None = None decaying: bool id: str = Field(..., alias='_id') diff --git a/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_info.py b/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_info.py index 6abf5e8..2400d72 100644 --- a/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_info.py +++ b/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_info.py @@ -14,7 +14,7 @@ class SuccessModel(BaseSuccessModel): class Badge(BaseModel): id: str label: str - ts: datetime | None + ts: datetime | None = None class NeverPlayedLeague(BaseModel): gamesplayed: Literal[0] @@ -60,8 +60,8 @@ class SuccessModel(BaseSuccessModel): bestrank: Rank standing: int standing_local: int - next_rank: Rank | None - prev_rank: Rank | None + next_rank: Rank | None = None + prev_rank: Rank | None = None next_at: int prev_at: int percentile: float @@ -70,7 +70,7 @@ class SuccessModel(BaseSuccessModel): rd: float apm: float pps: float - vs: float | None + vs: float | None = None decaying: bool class Connections(BaseModel): @@ -78,7 +78,7 @@ class SuccessModel(BaseSuccessModel): id: str username: str - discord: Discord | None + discord: Discord | None = None class Distinguishment(BaseModel): type: str @@ -86,33 +86,33 @@ class SuccessModel(BaseSuccessModel): id: str = Field(..., alias='_id') username: str role: Literal['anon', 'user', 'bot', 'halfmod', 'mod', 'admin', 'sysop', 'banned'] - ts: datetime | None - botmaster: str | None + ts: datetime | None = None + botmaster: str | None = None badges: list[Badge] xp: float gamesplayed: int gameswon: int gametime: float - country: str | None - badstanding: bool | None - supporter: bool | None # osk说是必有, 但实际上不是 fk osk + country: str | None = None + badstanding: bool | None = None + supporter: bool | None = None # osk说是必有, 但实际上不是 fk osk supporter_tier: int verified: bool league: NeverPlayedLeague | NeverRatedLeague | RatedLeague - avatar_revision: int | None + avatar_revision: int | None = None """This user's avatar ID. Get their avatar at https://tetr.io/user-content/avatars/{ USERID }.jpg?rv={ AVATAR_REVISION }""" - banner_revision: int | None + banner_revision: int | None = None """This user's banner ID. Get their banner at https://tetr.io/user-content/banners/{ USERID }.jpg?rv={ BANNER_REVISION } Ignore this field if the user is not a supporter.""" - bio: str | None + bio: str | None = None connections: Connections - friend_count: int | None - distinguishment: Distinguishment | None + friend_count: int | None = None + distinguishment: Distinguishment | None = None user: User diff --git a/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_records.py b/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_records.py index ecfe16d..e191f20 100644 --- a/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_records.py +++ b/nonebot_plugin_tetris_stats/game_data_processor/io_data_processor/schemas/user_records.py @@ -12,14 +12,14 @@ class EndContext(BaseModel): zero: bool locked: bool prev: int - frameoffset: int | None + frameoffset: int | None = None class Clears(BaseModel): singles: int doubles: int triples: int quads: int - pentas: int | None + pentas: int | None = None realtspins: int minitspins: int minitspinsingles: int @@ -33,7 +33,7 @@ class EndContext(BaseModel): class Garbage(BaseModel): sent: int received: int - attack: int | None + attack: int | None = None cleared: int class Finesse(BaseModel): @@ -46,18 +46,18 @@ class EndContext(BaseModel): level_lines: int level_lines_needed: int inputs: int - holds: int | None + holds: int | None = None time: Time score: int - zenlevel: int | None - zenprogress: int | None + zenlevel: int | None = None + zenprogress: int | None = None level: int combo: int - currentcombopower: int | None # WTF + currentcombopower: int | None = None # WTF topcombo: int btb: int topbtb: int - currentbtbchainpower: int | None # WTF * 2 + currentbtbchainpower: int | None = None # WTF * 2 tspins: int piecesplaced: int clears: Clears @@ -79,7 +79,7 @@ class BaseModeRecord(BaseModel): replayid: str user: User ts: datetime - ismulti: bool | None + ismulti: bool | None = None endcontext: EndContext class MultiRecord(BaseModel): @@ -92,21 +92,19 @@ class BaseModeRecord(BaseModel): replayid: str user: User ts: datetime - ismulti: bool | None + ismulti: bool | None = None endcontext: list[EndContext] - record: SoloRecord | MultiRecord | None - rank: int | None + record: SoloRecord | MultiRecord | None = None + rank: int | None = None class SuccessModel(BaseSuccessModel): class Data(BaseModel): class Records(BaseModel): - class Sprint(BaseModeRecord): - ... + class Sprint(BaseModeRecord): ... - class Blitz(BaseModeRecord): - ... + class Blitz(BaseModeRecord): ... sprint: Sprint = Field(..., alias='40l') blitz: Blitz