fix(dashboard): Handle interaction timeout.

This commit is contained in:
2023-10-08 07:30:20 +03:00
parent 4085846f55
commit 7ae1c5cb51

View File

@@ -185,23 +185,28 @@ class GuildDashboard(BasePager):
# ----- UI Control -----
async def reload(self, *args):
self._cached_pages.clear()
if not self._original.is_expired():
if self._original and not self._original.is_expired():
await self.redraw()
else:
await self.close()
async def refresh(self):
await super().refresh()
await self.config_menu_refresh()
self._layout = [
self.set_layout(
(self.config_menu,),
(self.prev_page_button, self.next_page_button)
]
)
async def redraw(self, *args):
await self.refresh()
if self._original and not self._original.is_expired():
await self._original.edit_original_response(
**self.current_page.edit_args,
view=self
)
else:
await self.close()
async def run(self, interaction: discord.Interaction):
await self.refresh()