Expand HTML tag checks for existing entities

Just added the necessary tag checks for ALREADY existing `MessageEntitySpoiler` entity and expanded checking for `MessageEntityStrike` by adding one conservative `strike` tag
This commit is contained in:
Serj Berbeha 2024-04-19 13:57:48 +03:00
parent 3625bf849d
commit fe224fd35b

View File

@ -14,7 +14,7 @@ from ..tl.types import (
MessageEntityPre, MessageEntityEmail, MessageEntityUrl, MessageEntityPre, MessageEntityEmail, MessageEntityUrl,
MessageEntityTextUrl, MessageEntityMentionName, MessageEntityTextUrl, MessageEntityMentionName,
MessageEntityUnderline, MessageEntityStrike, MessageEntityBlockquote, MessageEntityUnderline, MessageEntityStrike, MessageEntityBlockquote,
TypeMessageEntity MessageEntitySpoiler, TypeMessageEntity
) )
@ -40,8 +40,10 @@ class HTMLToTelegramParser(HTMLParser):
EntityType = MessageEntityItalic EntityType = MessageEntityItalic
elif tag == 'u': elif tag == 'u':
EntityType = MessageEntityUnderline EntityType = MessageEntityUnderline
elif tag == 'del' or tag == 's': elif tag in ('del', 's', 'strike'):
EntityType = MessageEntityStrike EntityType = MessageEntityStrike
elif tag == 'details':
EntityType = MessageEntitySpoiler
elif tag == 'blockquote': elif tag == 'blockquote':
EntityType = MessageEntityBlockquote EntityType = MessageEntityBlockquote
elif tag == 'code': elif tag == 'code':
@ -132,6 +134,7 @@ def parse(html: str) -> Tuple[str, List[TypeMessageEntity]]:
ENTITY_TO_FORMATTER = { ENTITY_TO_FORMATTER = {
MessageEntityBold: ('<strong>', '</strong>'), MessageEntityBold: ('<strong>', '</strong>'),
MessageEntityItalic: ('<em>', '</em>'), MessageEntityItalic: ('<em>', '</em>'),
MessageEntitySpoiler: ('<details>', '</details>'),
MessageEntityCode: ('<code>', '</code>'), MessageEntityCode: ('<code>', '</code>'),
MessageEntityUnderline: ('<u>', '</u>'), MessageEntityUnderline: ('<u>', '</u>'),
MessageEntityStrike: ('<del>', '</del>'), MessageEntityStrike: ('<del>', '</del>'),