Skip to content

Commit

Permalink
fix: compatibility with python 3.9
Browse files Browse the repository at this point in the history
  • Loading branch information
vanutp committed Aug 9, 2022
1 parent d0f4969 commit f3c0468
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 18 deletions.
29 changes: 14 additions & 15 deletions tgpy/handlers/__init__.py
Expand Up @@ -49,21 +49,20 @@ async def on_message_edited(event: events.MessageEdited.Event) -> None:
message_data = message_design.parse_message(message)
reactions_fix_result = reactions_fix.check_hash(message)
try:
match reactions_fix_result:
case ReactionsFixResult.ignore:
return
case ReactionsFixResult.show_warning:
if message_data.is_tgpy_message:
message = await message_design.edit_message(
message, message_data.code, 'Edit message again to evaluate'
)
else:
message = await handle_message(message, only_show_warning=True)
return
case ReactionsFixResult.evaluate:
pass
case _:
raise ValueError(f'Bad reactions fix result: {reactions_fix_result}')
if reactions_fix_result == ReactionsFixResult.ignore:
return
elif reactions_fix_result == ReactionsFixResult.show_warning:
if message_data.is_tgpy_message:
message = await message_design.edit_message(
message, message_data.code, 'Edit message again to evaluate'
)
else:
message = await handle_message(message, only_show_warning=True)
return
elif reactions_fix_result == ReactionsFixResult.evaluate:
pass
else:
raise ValueError(f'Bad reactions fix result: {reactions_fix_result}')

if not message_data.is_tgpy_message:
message = await handle_message(message)
Expand Down
7 changes: 4 additions & 3 deletions tgpy/message_design.py
@@ -1,6 +1,7 @@
import sys
import traceback as tb
from dataclasses import dataclass
from typing import Optional

from telethon.tl.custom import Message
from telethon.tl.types import MessageEntityBold, MessageEntityCode, MessageEntityTextUrl
Expand Down Expand Up @@ -83,11 +84,11 @@ async def edit_message(
@dataclass
class MessageParseResult:
is_tgpy_message: bool
code: str | None
result: str | None
code: Optional[str]
result: Optional[str]


def get_title_entity(message: Message) -> MessageEntityTextUrl | None:
def get_title_entity(message: Message) -> Optional[MessageEntityTextUrl]:
for e in message.entities or []:
if isinstance(e, MessageEntityTextUrl) and e.url == TITLE_URL:
return e
Expand Down

0 comments on commit f3c0468

Please sign in to comment.