Fix message_pin, message_unpin target id being None

Co-authored-by: Michael H <michael@michaelhall.tech>
Co-authored-by: Alex Nørgaard <Umbra@AbstractUmbra.dev>
This commit is contained in:
iyad-f 2025-02-09 07:17:41 +05:30 committed by GitHub
parent db7b2d9058
commit 88d7bd1275
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -874,7 +874,13 @@ class AuditLogEntry(Hashable):
def _convert_target_emoji(self, target_id: int) -> Union[Emoji, Object]:
return self._state.get_emoji(target_id) or Object(id=target_id, type=Emoji)
def _convert_target_message(self, target_id: int) -> Union[Member, User, Object]:
def _convert_target_message(self, target_id: Optional[int]) -> Optional[Union[Member, User, Object]]:
# The message_pin and message_unpin action types do not have a
# non-null target_id so safeguard against that
if target_id is None:
return None
return self._get_member(target_id) or Object(id=target_id, type=Member)
def _convert_target_stage_instance(self, target_id: int) -> Union[StageInstance, Object]: