Skip to content

Commit a927d31

Browse files
committed
Add locale and guild locale
1 parent 7353452 commit a927d31

File tree

3 files changed

+18
-0
lines changed

3 files changed

+18
-0
lines changed

discord/commands/context.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,14 @@ def guild(self) -> Optional[Guild]:
9797
def guild_id(self) -> Optional[int]:
9898
return self.interaction.guild_id
9999

100+
@cached_property
101+
def locale(self) -> Optional[str]:
102+
return self.interaction.locale
103+
104+
@cached_property
105+
def guild_locale(self) -> Optional[str]:
106+
return self.interaction.guild_locale
107+
100108
@cached_property
101109
def me(self) -> Union[Member, User]:
102110
return self.guild.me if self.guild is not None else self.bot.user

discord/interactions.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,10 @@ class Interaction:
100100
for 15 minutes.
101101
data: :class:`dict`
102102
The raw interaction data.
103+
locale: :class:`str`
104+
The users locale.
105+
guild_locale: :class:`str`
106+
The guilds preferred locale, if invoked in a guild.
103107
"""
104108

105109
__slots__: Tuple[str, ...] = (
@@ -111,6 +115,8 @@ class Interaction:
111115
'application_id',
112116
'message',
113117
'user',
118+
'locale',
119+
'guild_locale',
114120
'token',
115121
'version',
116122
'_permissions',
@@ -137,6 +143,8 @@ def _from_data(self, data: InteractionPayload):
137143
self.channel_id: Optional[int] = utils._get_as_snowflake(data, 'channel_id')
138144
self.guild_id: Optional[int] = utils._get_as_snowflake(data, 'guild_id')
139145
self.application_id: int = int(data['application_id'])
146+
self.locale: Optional[str] = data['locale']
147+
self.guild_locale: Optional[str] = data['guild_locale']
140148

141149
self.message: Optional[Message]
142150
try:

discord/types/interactions.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,8 @@ class _InteractionOptional(TypedDict, total=False):
186186
member: Member
187187
user: User
188188
message: Message
189+
locale: str
190+
guild_locale: str
189191

190192

191193
class Interaction(_InteractionOptional):

0 commit comments

Comments
 (0)