refactor(api): type I18nObject.to_dict with I18nObjectDict TypedDict (#34680)

This commit is contained in:
Statxc 2026-04-07 19:57:32 -03:00 committed by GitHub
parent 2575a3a3ab
commit 5aa2524d33
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 34 additions and 4 deletions

View File

@ -1,6 +1,15 @@
from typing import TypedDict
from pydantic import BaseModel, Field, model_validator
class I18nObjectDict(TypedDict):
zh_Hans: str | None
en_US: str
pt_BR: str | None
ja_JP: str | None
class I18nObject(BaseModel):
"""
Model class for i18n object.
@ -18,5 +27,11 @@ class I18nObject(BaseModel):
self.ja_JP = self.ja_JP or self.en_US
return self
def to_dict(self) -> dict:
return {"zh_Hans": self.zh_Hans, "en_US": self.en_US, "pt_BR": self.pt_BR, "ja_JP": self.ja_JP}
def to_dict(self) -> I18nObjectDict:
result: I18nObjectDict = {
"zh_Hans": self.zh_Hans,
"en_US": self.en_US,
"pt_BR": self.pt_BR,
"ja_JP": self.ja_JP,
}
return result

View File

@ -1,6 +1,15 @@
from typing import TypedDict
from pydantic import BaseModel, Field, model_validator
class I18nObjectDict(TypedDict):
zh_Hans: str | None
en_US: str
pt_BR: str | None
ja_JP: str | None
class I18nObject(BaseModel):
"""
Model class for i18n object.
@ -18,5 +27,11 @@ class I18nObject(BaseModel):
self.ja_JP = self.ja_JP or self.en_US
return self
def to_dict(self):
return {"zh_Hans": self.zh_Hans, "en_US": self.en_US, "pt_BR": self.pt_BR, "ja_JP": self.ja_JP}
def to_dict(self) -> I18nObjectDict:
result: I18nObjectDict = {
"zh_Hans": self.zh_Hans,
"en_US": self.en_US,
"pt_BR": self.pt_BR,
"ja_JP": self.ja_JP,
}
return result