From bb7c056b455ca64ba7296c849fba3abe12d4cd11 Mon Sep 17 00:00:00 2001 From: Soheab_ <33902984+Soheab@users.noreply.github.com> Date: Fri, 17 Jan 2025 22:49:28 +0100 Subject: [PATCH] Add Guild.acronym --- discord/guild.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/discord/guild.py b/discord/guild.py index faf64e27923c..661370fff02a 100644 --- a/discord/guild.py +++ b/discord/guild.py @@ -48,6 +48,7 @@ overload, ) import warnings +import re from . import utils, abc from .role import Role @@ -447,6 +448,7 @@ class Guild(Hashable): 'max_stage_video_users', '_incidents_data', '_soundboard_sounds', + '_acronym', ) _PREMIUM_GUILD_LIMITS: ClassVar[Dict[Optional[int], _GuildLimit]] = { @@ -578,6 +580,8 @@ def _from_data(self, guild: GuildPayload) -> None: pass self.name: str = guild.get('name', '') + self._acronym = re.sub(r"\s", "", re.sub(r"\w+", lambda e: e.group(0)[0], re.sub(r"'s ", " ", self.name))) + self.verification_level: VerificationLevel = try_enum(VerificationLevel, guild.get('verification_level')) self.default_notifications: NotificationLevel = try_enum( NotificationLevel, guild.get('default_message_notifications') @@ -4787,3 +4791,11 @@ async def create_soundboard_sound( data = await self._state.http.create_soundboard_sound(self.id, reason=reason, **payload) return SoundboardSound(guild=self, state=self._state, data=data) + + @property + def acronym(self) -> str: + """:class:`str`: Returns the acronym that shows up in place of a guild icon + + .. versionadded:: 2.5 + """ + return self._acronym \ No newline at end of file