From 7b97e139dc4ca0817d83d9dc718acf0d52013a9a Mon Sep 17 00:00:00 2001 From: yupix Date: Fri, 2 Feb 2024 22:19:44 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20Antenna=E3=82=92=E6=9C=80=E6=96=B0?= =?UTF-8?q?=E3=81=AB=E8=BF=BD=E5=BE=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- compiler/datas/endpoints.json | 2 +- compiler/datas/support_status.md | 2 +- mipac/models/antenna.py | 48 +++++++++++++++++--------------- mipac/types/antenna.py | 17 +++++------ 4 files changed, 37 insertions(+), 32 deletions(-) diff --git a/compiler/datas/endpoints.json b/compiler/datas/endpoints.json index a479034..ce05f55 100644 --- a/compiler/datas/endpoints.json +++ b/compiler/datas/endpoints.json @@ -2340,7 +2340,7 @@ "Antenna": { "name": "Antenna", "hash": "14ad7ea1c5a1ac52e744b4cff951e0dfe7a6710497d191f2756eec7436e2d8f5", - "status": "needToWork" + "status": "supported" }, "Clip": { "name": "Clip", diff --git a/compiler/datas/support_status.md b/compiler/datas/support_status.md index e34dd06..958c91d 100644 --- a/compiler/datas/support_status.md +++ b/compiler/datas/support_status.md @@ -407,7 +407,7 @@ - [ ] Page (Need to work) - [ ] Channel (Need to work) - [ ] QueueCount (Need to work) -- [ ] Antenna (Need to work) +- [x] Antenna - [ ] Clip (Need to work) - [ ] FederationInstance (Need to work) - [ ] GalleryPost (Need to work) diff --git a/mipac/models/antenna.py b/mipac/models/antenna.py index e6a3c6a..10588d1 100644 --- a/mipac/models/antenna.py +++ b/mipac/models/antenna.py @@ -17,40 +17,24 @@ class Antenna: self.__client: ClientManager = client @property - def case_sensitive(self) -> bool: - return self.__antenna["case_sensitive"] + def id(self) -> str: + return self.__antenna["id"] @property def created_at(self) -> datetime: return str_to_datetime(self.__antenna["created_at"]) @property - def exclude_keywords(self) -> list[str]: - return self.__antenna["exclude_keywords"] - - @property - def has_unread_note(self) -> bool: - return self.__antenna["has_unread_note"] - - @property - def id(self) -> str: - return self.__antenna["id"] - - @property - def is_actor(self) -> bool: - return self.__antenna["is_actor"] + def name(self) -> str: + return self.__antenna["name"] @property def keywords(self) -> list[str]: return self.__antenna["keywords"] @property - def name(self) -> str: - return self.__antenna["name"] - - @property - def notify(self) -> bool: - return self.__antenna["notify"] + def exclude_keywords(self) -> list[str]: + return self.__antenna["exclude_keywords"] @property def src(self) -> IAntennaReceiveSource: @@ -64,6 +48,22 @@ class Antenna: def users(self) -> list[str]: return self.__antenna["users"] + @property + def case_sensitive(self) -> bool: + return self.__antenna["case_sensitive"] + + @property + def local_only(self) -> bool: + return self.__antenna["local_only"] + + @property + def notify(self) -> bool: + return self.__antenna["notify"] + + @property + def has_unread_note(self) -> bool: + return self.__antenna["has_unread_note"] + @property def with_file(self) -> bool: return self.__antenna["with_file"] @@ -72,6 +72,10 @@ class Antenna: def with_replies(self) -> bool: return self.__antenna["with_replies"] + @property + def is_active(self) -> bool: + return self.__antenna["is_active"] + @property def api(self) -> ClientAntennaManager: return self.__client.antenna._create_client_antenna_manager(antenna_id=self.id) diff --git a/mipac/types/antenna.py b/mipac/types/antenna.py index 6facf79..036deb9 100644 --- a/mipac/types/antenna.py +++ b/mipac/types/antenna.py @@ -4,17 +4,18 @@ IAntennaReceiveSource = Literal["home", "all", "users", "list"] class IAntenna(TypedDict): - case_sensitive: bool - created_at: str - exclude_keywords: list[str] - has_unread_note: bool id: str - is_actor: bool - keywords: list[str] + created_at: str name: str - notify: bool + keywords: list[str] + exclude_keywords: list[str] src: IAntennaReceiveSource user_list_id: str | None users: list[str] - with_file: bool + case_sensitive: bool + local_only: bool + notify: bool with_replies: bool + with_file: bool + is_active: bool + has_unread_note: bool