🐛 将Mardown和按钮类型分离

This commit is contained in:
‘KimigaiiWuyi’ 2023-11-30 14:18:38 +08:00
parent eb5b2aa134
commit f499e446ce
2 changed files with 14 additions and 7 deletions

View File

@ -190,10 +190,13 @@ class Bot:
_buttons.append(option) _buttons.append(option)
else: else:
_buttons.append(Button(option, option, option)) _buttons.append(Button(option, option, option))
if self.ev.real_bot_id in enable_markdown_platform:
await self.send( await self.send(
await to_markdown(_reply, _buttons, self.bot_id) await to_markdown(_reply, _buttons, self.bot_id)
) )
else:
_reply.append(MessageSegment.buttons(_buttons))
await self.send(_reply)
else: else:
if unsuported_platform: if unsuported_platform:
_options: List[str] = [] _options: List[str] = []

View File

@ -80,6 +80,12 @@ class MessageSegment:
def text(content: str) -> Message: def text(content: str) -> Message:
return Message(type='text', data=content) return Message(type='text', data=content)
@staticmethod
def buttons(
buttons: Optional[Union[List[Button], List[List[Button]]]] = None,
) -> Message:
return Message(type='buttons', data=msgspec.to_builtins(buttons))
@staticmethod @staticmethod
def markdown( def markdown(
content: str, content: str,
@ -87,9 +93,7 @@ class MessageSegment:
) -> List[Message]: ) -> List[Message]:
data = [Message(type='markdown', data=content)] data = [Message(type='markdown', data=content)]
if buttons: if buttons:
data.append( data.append(MessageSegment.buttons(buttons))
Message(type='buttons', data=msgspec.to_builtins(buttons))
)
return data return data