Skip to content

Commit

Permalink
Add global name to user object
Browse files Browse the repository at this point in the history
  • Loading branch information
4Kaylum committed Apr 7, 2024
1 parent 973faeb commit 8feeb28
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 3 deletions.
4 changes: 3 additions & 1 deletion novus/models/guild_member.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ class GuildMember(Hashable, Messageable):
The ID of the user.
username : str
The username of the user.
global_name : str | None
The global name of the user.
discriminator : str
The discriminator of the user.
avatar_hash : str | None
Expand Down Expand Up @@ -268,7 +270,7 @@ def __init__(
__repr__ = generate_repr(("id", "username", "bot", "guild",))

def __str__(self) -> str:
return str(self._user)
return self.nick or str(self._user)

@property
def mention(self) -> str:
Expand Down
8 changes: 6 additions & 2 deletions novus/models/user.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ class User(Hashable, Messageable):
The ID of the user.
username : str
The username of the user.
global_name : str | None
The global name of the user.
discriminator : str
The discriminator of the user.
avatar_hash : str | None
Expand Down Expand Up @@ -89,6 +91,7 @@ class User(Hashable, Messageable):
'state',
'id',
'username',
'global_name',
'discriminator',
'avatar_hash',
'bot',
Expand Down Expand Up @@ -119,11 +122,11 @@ def __init__(
self._dm_channel: Channel | None = None
self._update(data)

__repr__ = generate_repr(('id', 'username', 'bot',))
__repr__ = generate_repr(('id', 'global_name', 'bot',))

def __str__(self) -> str:
if self.discriminator == "0":
return self.username
return self.global_name or self.username
return f"{self.username}#{self.discriminator}"

@property
Expand Down Expand Up @@ -174,6 +177,7 @@ def _update(self, data: payloads.User | payloads.PartialUser) -> Self:
"""

self.username = data['username']
self.global_name = data.get('global_name')
self.discriminator = data['discriminator']
del self.default_avatar
self.avatar_hash = data.get('avatar')
Expand Down
1 change: 1 addition & 0 deletions novus/payloads/user.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ class _UserOptional(TypedDict, total=False):
class User(_UserOptional):
id: Snowflake
username: str
global_name: Optional[str]
discriminator: int
avatar: Optional[str]

Expand Down

0 comments on commit 8feeb28

Please sign in to comment.