Skip to content

Commit a2add17

Browse files
committed
fix: respond not returning anything
1 parent daddc05 commit a2add17

File tree

2 files changed

+15
-14
lines changed

2 files changed

+15
-14
lines changed

discord_components/http.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,14 @@ class HTTPClient:
1313
def __init__(self, bot: Client):
1414
self.bot = bot
1515

16-
def edit_response(
17-
self, interaction_token: str, data: dict, files: List[File] = None
18-
):
16+
def edit_response(self, interaction_token: str, data: dict, files: List[File] = None):
1917
route = Route(
2018
"PATCH",
2119
f"/webhooks/{self.bot.user.id}/{interaction_token}/messages/@original",
2220
)
21+
2322
if files is not None:
24-
return self.bot.http.request(
25-
route, data=_form_files(data, files), files=files
26-
)
23+
return self.bot.http.request(route, data=_form_files(data, files), files=files)
2724
else:
2825
return self.bot.http.request(
2926
route,
@@ -41,10 +38,9 @@ def initial_response(
4138
"POST",
4239
f"/interactions/{interaction_id}/{interaction_token}/callback",
4340
)
41+
4442
if files is not None:
45-
return self.bot.http.request(
46-
route, data=_form_files(data, files), files=files
47-
)
43+
return self.bot.http.request(route, data=_form_files(data, files), files=files)
4844
else:
4945
return self.bot.http.request(
5046
route,

discord_components/interaction.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -183,11 +183,12 @@ async def respond(
183183
"Interaction is unknown (you have already responded to the interaction or responding took too long)",
184184
) from None
185185

186-
if not ephemeral and type in (4, 7) and isinstance(res, dict):
186+
if type in (4, 7) and isinstance(res, dict):
187187
return ComponentMessage(
188188
state=state,
189189
data=res,
190190
channel=self.channel or Object(id=self.channel_id),
191+
ephemeral=res.get("flags") == 64,
191192
)
192193
else:
193194
return res
@@ -205,6 +206,7 @@ async def send(
205206
components: List[Union[ActionRow, Component, List[Component]]] = None,
206207
delete_after: float = None,
207208
) -> Optional[Union[ComponentMessage, dict]]:
209+
await self.defer(ephemeral=ephemeral)
208210
res = await self.respond(
209211
type=4,
210212
content=content,
@@ -217,9 +219,10 @@ async def send(
217219
ephemeral=ephemeral,
218220
components=components,
219221
)
220-
if isinstance(res, dict):
222+
223+
if delete_after is None:
221224
return res
222-
elif res is not None and delete_after is not None:
225+
elif res is not None:
223226
await res.delete(delay=delete_after)
224227

225228
async def edit_origin(
@@ -234,6 +237,7 @@ async def edit_origin(
234237
components: List[Union[ActionRow, Component, List[Component]]] = None,
235238
delete_after: float = None,
236239
):
240+
await self.defer(edit_origin=True)
237241
res = await self.respond(
238242
type=7,
239243
content=content,
@@ -245,7 +249,8 @@ async def edit_origin(
245249
allowed_mentions=allowed_mentions,
246250
components=components,
247251
)
248-
if isinstance(res, dict):
252+
253+
if delete_after is None:
249254
return res
250-
elif res is not None and delete_after is not None:
255+
elif res is not None:
251256
await res.delete(delay=delete_after)

0 commit comments

Comments
 (0)