fix log embed header section

This commit is contained in:
Codex 2025-06-05 19:35:22 +00:00 committed by Slipstream
parent c77346f099
commit 8685bdabda
Signed by: slipstream
GPG Key ID: 13E498CE010AC6FD

View File

@ -65,8 +65,17 @@ class LoggingCog(commands.Cog):
self.container = ui.Container(accent_colour=color)
self.add_item(self.container)
self.header = ui.Section(accessory=(ui.Thumbnail(media=author.display_avatar.url)
if author else None))
# Header section with a thumbnail if author is provided. Otherwise
# use a disabled button as a placeholder accessory to satisfy the
# API requirement that a section accessory must be a dispatchable
# component.
self.header = ui.Section(
accessory=(
ui.Thumbnail(media=author.display_avatar.url)
if author
else ui.Button(label="\u200b", disabled=True)
)
)
self.header.add_item(ui.TextDisplay(f"**{title}**"))
if description:
self.header.add_item(ui.TextDisplay(description))
@ -102,7 +111,9 @@ class LoggingCog(commands.Cog):
if icon_url:
self.header.accessory = ui.Thumbnail(media=icon_url)
else:
self.header.accessory = None
# Provide a disabled button as a fallback accessory to keep the
# section dispatchable when no icon is supplied.
self.header.accessory = ui.Button(label="\u200b", disabled=True)
self.header.add_item(ui.TextDisplay(name))
def _user_display(self, user: Union[discord.Member, discord.User]) -> str:
"""Return display name, username and ID string for a user."""