11from .misc import DictSerializerMixin , Snowflake
2+ from .flags import UserFlags
23
34
45class User (DictSerializerMixin ):
@@ -8,18 +9,18 @@ class User(DictSerializerMixin):
89 :ivar Snowflake id: The User ID
910 :ivar str username: The Username associated (not necessarily unique across the platform)
1011 :ivar str discriminator: The User's 4-digit discord-tag (i.e.: XXXX)
11- :ivar Optional[str] avatar?: The user's avatar hash, if any.
12- :ivar Optional[bool] bot?: A status denoting if the user is a bot.
13- :ivar Optional[bool] system?: A status denoting if the user is an Official Discord System user.
14- :ivar Optional[bool] mfa_enabled?: A status denoting if the user has 2fa on their account.
15- :ivar Optional[str] banner?: The user's banner hash, if any.
12+ :ivar Optional[str] avatar?: The user's avatar hash, if any
13+ :ivar Optional[bool] bot?: A status denoting if the user is a bot
14+ :ivar Optional[bool] system?: A status denoting if the user is an Official Discord System user
15+ :ivar Optional[bool] mfa_enabled?: A status denoting if the user has 2fa on their account
16+ :ivar Optional[str] banner?: The user's banner hash, if any
1617 :ivar Optional[int] accent_color?: The user's banner color as an integer represented of hex color codes
1718 :ivar Optional[str] locale?: The user's chosen language option
1819 :ivar Optional[bool] verified?: Whether the email associated with this account has been verified
19- :ivar Optional[str] email?: The user's email, if any.
20- :ivar Optional[int ] flags?: The user's flags
20+ :ivar Optional[str] email?: The user's email, if any
21+ :ivar Optional[UserFlags ] flags?: The user's flags
2122 :ivar Optional[int] premium_type?: The type of Nitro subscription the user has
22- :ivar Optional[int ] public_flags?: The user's public flags
23+ :ivar Optional[UserFlags ] public_flags?: The user's public flags
2324 """
2425
2526 __slots__ = (
@@ -44,3 +45,15 @@ class User(DictSerializerMixin):
4445 def __init__ (self , ** kwargs ):
4546 super ().__init__ (** kwargs )
4647 self .id = Snowflake (self .id ) if self ._json .get ("id" ) else None
48+
49+ self .public_flags = (
50+ UserFlags (int (self ._json .get ("public_flags" )))
51+ if self ._json .get ("public_flags" )
52+ else None
53+ )
54+
55+ self .flags = (
56+ UserFlags (int (self ._json .get ("flags" )))
57+ if self ._json .get ("flags" )
58+ else None
59+ )
0 commit comments