Skip to content

Commit 5c21875

Browse files
authored
feat: add guild & channel properties to ThreadMembersUpdate (#1504)
1 parent 159e020 commit 5c21875

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

interactions/api/events/discord.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ class ThreadMemberUpdate(ThreadCreate):
249249

250250

251251
@attrs.define(eq=False, order=False, hash=False, kw_only=False)
252-
class ThreadMembersUpdate(BaseEvent):
252+
class ThreadMembersUpdate(GuildEvent):
253253
"""Dispatched when anyone is added or removed from a thread."""
254254

255255
id: "Snowflake_Type" = attrs.field(
@@ -263,6 +263,11 @@ class ThreadMembersUpdate(BaseEvent):
263263
removed_member_ids: List["Snowflake_Type"] = attrs.field(repr=False, factory=list)
264264
"""Users removed from the thread"""
265265

266+
@property
267+
def channel(self) -> Optional["TYPE_THREAD_CHANNEL"]:
268+
"""The thread channel this event is dispatched from"""
269+
return self.client.get_channel(self.id)
270+
266271

267272
@attrs.define(eq=False, order=False, hash=False, kw_only=False)
268273
class GuildJoin(GuildEvent):

interactions/api/events/processors/thread_events.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ async def _on_raw_thread_members_update(self, event: "RawGatewayEvent") -> None:
4343
g_id = event.data.get("guild_id")
4444
self.dispatch(
4545
events.ThreadMembersUpdate(
46+
g_id,
4647
event.data.get("id"),
4748
event.data.get("member_count"),
4849
[await self.cache.fetch_member(g_id, m["user_id"]) for m in event.data.get("added_members", [])],

0 commit comments

Comments
 (0)