From c8dff11d1ee9439fcf13994283a534023fdcd47e Mon Sep 17 00:00:00 2001 From: Alex Root Junior Date: Fri, 24 Nov 2023 21:10:02 +0200 Subject: [PATCH] Update thumbnail type to InputFile only (#1374) * Update thumbnail type to InputFile only The thumbnail's type restriction has been changed in several methods and types. Previously, it accepted Union[InputFile, str], allowing both InputFile instances and strings. Now it's changed to accept only InputFile instances. This change enhances meaning of the thumbnail fields in due to Bot API accepts only InputFile instances. * Added changelog * Fixed typehints --- .butcher/methods/sendAnimation/replace.yml | 6 ++++++ .butcher/methods/sendAudio/replace.yml | 6 ++++++ .butcher/methods/sendDocument/replace.yml | 6 ++++++ .butcher/methods/sendVideo/replace.yml | 6 ++++++ .butcher/methods/sendVideoNote/replace.yml | 6 ++++++ .../types/InputMediaAnimation/replace.yml | 6 ++++++ .butcher/types/InputMediaAudio/replace.yml | 6 ++++++ .butcher/types/InputMediaDocument/replace.yml | 6 ++++++ .butcher/types/InputMediaVideo/replace.yml | 6 ++++++ CHANGES/1372.misc.rst | 1 + aiogram/client/bot.py | 10 +++++----- aiogram/methods/send_animation.py | 4 ++-- aiogram/methods/send_audio.py | 4 ++-- aiogram/methods/send_document.py | 4 ++-- aiogram/methods/send_video.py | 4 ++-- aiogram/methods/send_video_note.py | 4 ++-- aiogram/types/chat_join_request.py | 20 +++++++++---------- aiogram/types/chat_member_updated.py | 10 +++++----- aiogram/types/input_media_animation.py | 4 ++-- aiogram/types/input_media_audio.py | 4 ++-- aiogram/types/input_media_document.py | 4 ++-- aiogram/types/input_media_video.py | 4 ++-- aiogram/types/message.py | 20 +++++++++---------- aiogram/utils/media_group.py | 6 +++--- 24 files changed, 106 insertions(+), 51 deletions(-) create mode 100644 CHANGES/1372.misc.rst diff --git a/.butcher/methods/sendAnimation/replace.yml b/.butcher/methods/sendAnimation/replace.yml index cc4fe9b2..2c8e719e 100644 --- a/.butcher/methods/sendAnimation/replace.yml +++ b/.butcher/methods/sendAnimation/replace.yml @@ -3,3 +3,9 @@ annotations: value: UNSET_PARSE_MODE protect_content: value: UNSET_PROTECT_CONTENT + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile diff --git a/.butcher/methods/sendAudio/replace.yml b/.butcher/methods/sendAudio/replace.yml index cc4fe9b2..2c8e719e 100644 --- a/.butcher/methods/sendAudio/replace.yml +++ b/.butcher/methods/sendAudio/replace.yml @@ -3,3 +3,9 @@ annotations: value: UNSET_PARSE_MODE protect_content: value: UNSET_PROTECT_CONTENT + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile diff --git a/.butcher/methods/sendDocument/replace.yml b/.butcher/methods/sendDocument/replace.yml index cc4fe9b2..2c8e719e 100644 --- a/.butcher/methods/sendDocument/replace.yml +++ b/.butcher/methods/sendDocument/replace.yml @@ -3,3 +3,9 @@ annotations: value: UNSET_PARSE_MODE protect_content: value: UNSET_PROTECT_CONTENT + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile diff --git a/.butcher/methods/sendVideo/replace.yml b/.butcher/methods/sendVideo/replace.yml index cc4fe9b2..2c8e719e 100644 --- a/.butcher/methods/sendVideo/replace.yml +++ b/.butcher/methods/sendVideo/replace.yml @@ -3,3 +3,9 @@ annotations: value: UNSET_PARSE_MODE protect_content: value: UNSET_PROTECT_CONTENT + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile diff --git a/.butcher/methods/sendVideoNote/replace.yml b/.butcher/methods/sendVideoNote/replace.yml index 39cba814..db5fd3eb 100644 --- a/.butcher/methods/sendVideoNote/replace.yml +++ b/.butcher/methods/sendVideoNote/replace.yml @@ -1,3 +1,9 @@ annotations: protect_content: value: UNSET_PROTECT_CONTENT + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile diff --git a/.butcher/types/InputMediaAnimation/replace.yml b/.butcher/types/InputMediaAnimation/replace.yml index be3f441b..fb705c9a 100644 --- a/.butcher/types/InputMediaAnimation/replace.yml +++ b/.butcher/types/InputMediaAnimation/replace.yml @@ -9,5 +9,11 @@ annotations: references: category: types name: InputFile + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile parse_mode: value: UNSET_PARSE_MODE diff --git a/.butcher/types/InputMediaAudio/replace.yml b/.butcher/types/InputMediaAudio/replace.yml index be3f441b..fb705c9a 100644 --- a/.butcher/types/InputMediaAudio/replace.yml +++ b/.butcher/types/InputMediaAudio/replace.yml @@ -9,5 +9,11 @@ annotations: references: category: types name: InputFile + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile parse_mode: value: UNSET_PARSE_MODE diff --git a/.butcher/types/InputMediaDocument/replace.yml b/.butcher/types/InputMediaDocument/replace.yml index be3f441b..fb705c9a 100644 --- a/.butcher/types/InputMediaDocument/replace.yml +++ b/.butcher/types/InputMediaDocument/replace.yml @@ -9,5 +9,11 @@ annotations: references: category: types name: InputFile + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile parse_mode: value: UNSET_PARSE_MODE diff --git a/.butcher/types/InputMediaVideo/replace.yml b/.butcher/types/InputMediaVideo/replace.yml index be3f441b..fb705c9a 100644 --- a/.butcher/types/InputMediaVideo/replace.yml +++ b/.butcher/types/InputMediaVideo/replace.yml @@ -9,5 +9,11 @@ annotations: references: category: types name: InputFile + thumbnail: + parsed_type: + type: entity + references: + category: types + name: InputFile parse_mode: value: UNSET_PARSE_MODE diff --git a/CHANGES/1372.misc.rst b/CHANGES/1372.misc.rst new file mode 100644 index 00000000..07b2eb80 --- /dev/null +++ b/CHANGES/1372.misc.rst @@ -0,0 +1 @@ +Updated :code:`thumbnail` fields type to :code:`InputFile` only diff --git a/aiogram/client/bot.py b/aiogram/client/bot.py index bcaeff35..bd2329cc 100644 --- a/aiogram/client/bot.py +++ b/aiogram/client/bot.py @@ -2120,7 +2120,7 @@ class Bot: duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2190,7 +2190,7 @@ class Bot: duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, @@ -2374,7 +2374,7 @@ class Bot: chat_id: Union[int, str], document: Union[InputFile, str], message_thread_id: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2966,7 +2966,7 @@ class Bot: duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -3035,7 +3035,7 @@ class Bot: message_thread_id: Optional[int] = None, duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, diff --git a/aiogram/methods/send_animation.py b/aiogram/methods/send_animation.py index e803b0b1..cb737aa2 100644 --- a/aiogram/methods/send_animation.py +++ b/aiogram/methods/send_animation.py @@ -38,7 +38,7 @@ class SendAnimation(TelegramMethod[Message]): """Animation width""" height: Optional[int] = None """Animation height""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """Animation caption (may also be used when resending animation by *file_id*), 0-1024 characters after entities parsing""" @@ -74,7 +74,7 @@ class SendAnimation(TelegramMethod[Message]): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/methods/send_audio.py b/aiogram/methods/send_audio.py index fd6404cb..98826340 100644 --- a/aiogram/methods/send_audio.py +++ b/aiogram/methods/send_audio.py @@ -45,7 +45,7 @@ class SendAudio(TelegramMethod[Message]): """Performer""" title: Optional[str] = None """Track name""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" disable_notification: Optional[bool] = None """Sends the message `silently `_. Users will receive a notification with no sound.""" @@ -76,7 +76,7 @@ class SendAudio(TelegramMethod[Message]): duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, diff --git a/aiogram/methods/send_document.py b/aiogram/methods/send_document.py index d7ac0e20..e73b2603 100644 --- a/aiogram/methods/send_document.py +++ b/aiogram/methods/send_document.py @@ -32,7 +32,7 @@ class SendDocument(TelegramMethod[Message]): """File to send. Pass a file_id as String to send a file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data. :ref:`More information on Sending Files » `""" message_thread_id: Optional[int] = None """Unique identifier for the target message thread (topic) of the forum; for forum supergroups only""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """Document caption (may also be used when resending documents by *file_id*), 0-1024 characters after entities parsing""" @@ -65,7 +65,7 @@ class SendDocument(TelegramMethod[Message]): chat_id: Union[int, str], document: Union[InputFile, str], message_thread_id: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/methods/send_video.py b/aiogram/methods/send_video.py index c61a8c92..6f5a5ff2 100644 --- a/aiogram/methods/send_video.py +++ b/aiogram/methods/send_video.py @@ -38,7 +38,7 @@ class SendVideo(TelegramMethod[Message]): """Video width""" height: Optional[int] = None """Video height""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """Video caption (may also be used when resending videos by *file_id*), 0-1024 characters after entities parsing""" @@ -76,7 +76,7 @@ class SendVideo(TelegramMethod[Message]): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/methods/send_video_note.py b/aiogram/methods/send_video_note.py index 235134dd..bd6a1cb1 100644 --- a/aiogram/methods/send_video_note.py +++ b/aiogram/methods/send_video_note.py @@ -34,7 +34,7 @@ class SendVideoNote(TelegramMethod[Message]): """Duration of sent video in seconds""" length: Optional[int] = None """Video width and height, i.e. diameter of the video message""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" disable_notification: Optional[bool] = None """Sends the message `silently `_. Users will receive a notification with no sound.""" @@ -61,7 +61,7 @@ class SendVideoNote(TelegramMethod[Message]): message_thread_id: Optional[int] = None, duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, diff --git a/aiogram/types/chat_join_request.py b/aiogram/types/chat_join_request.py index b8ba33d2..47774e61 100644 --- a/aiogram/types/chat_join_request.py +++ b/aiogram/types/chat_join_request.py @@ -279,7 +279,7 @@ class ChatJoinRequest(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -352,7 +352,7 @@ class ChatJoinRequest(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -428,7 +428,7 @@ class ChatJoinRequest(TelegramObject): duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, @@ -499,7 +499,7 @@ class ChatJoinRequest(TelegramObject): duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, @@ -680,7 +680,7 @@ class ChatJoinRequest(TelegramObject): self, document: Union[InputFile, str], message_thread_id: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -744,7 +744,7 @@ class ChatJoinRequest(TelegramObject): self, document: Union[InputFile, str], message_thread_id: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -1963,7 +1963,7 @@ class ChatJoinRequest(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2039,7 +2039,7 @@ class ChatJoinRequest(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2114,7 +2114,7 @@ class ChatJoinRequest(TelegramObject): message_thread_id: Optional[int] = None, duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, @@ -2172,7 +2172,7 @@ class ChatJoinRequest(TelegramObject): message_thread_id: Optional[int] = None, duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, diff --git a/aiogram/types/chat_member_updated.py b/aiogram/types/chat_member_updated.py index 46110092..1ce453ad 100644 --- a/aiogram/types/chat_member_updated.py +++ b/aiogram/types/chat_member_updated.py @@ -201,7 +201,7 @@ class ChatMemberUpdated(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -277,7 +277,7 @@ class ChatMemberUpdated(TelegramObject): duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, @@ -400,7 +400,7 @@ class ChatMemberUpdated(TelegramObject): self, document: Union[InputFile, str], message_thread_id: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -1043,7 +1043,7 @@ class ChatMemberUpdated(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -1118,7 +1118,7 @@ class ChatMemberUpdated(TelegramObject): message_thread_id: Optional[int] = None, duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, diff --git a/aiogram/types/input_media_animation.py b/aiogram/types/input_media_animation.py index 72220db8..fff6da3a 100644 --- a/aiogram/types/input_media_animation.py +++ b/aiogram/types/input_media_animation.py @@ -22,7 +22,7 @@ class InputMediaAnimation(InputMedia): """Type of the result, must be *animation*""" media: Union[str, InputFile] """File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass 'attach://' to upload a new one using multipart/form-data under name. :ref:`More information on Sending Files » `""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """*Optional*. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """*Optional*. Caption of the animation to be sent, 0-1024 characters after entities parsing""" @@ -48,7 +48,7 @@ class InputMediaAnimation(InputMedia): *, type: Literal[InputMediaType.ANIMATION] = InputMediaType.ANIMATION, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/types/input_media_audio.py b/aiogram/types/input_media_audio.py index c05513a0..61797453 100644 --- a/aiogram/types/input_media_audio.py +++ b/aiogram/types/input_media_audio.py @@ -22,7 +22,7 @@ class InputMediaAudio(InputMedia): """Type of the result, must be *audio*""" media: Union[str, InputFile] """File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass 'attach://' to upload a new one using multipart/form-data under name. :ref:`More information on Sending Files » `""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """*Optional*. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """*Optional*. Caption of the audio to be sent, 0-1024 characters after entities parsing""" @@ -46,7 +46,7 @@ class InputMediaAudio(InputMedia): *, type: Literal[InputMediaType.AUDIO] = InputMediaType.AUDIO, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/types/input_media_document.py b/aiogram/types/input_media_document.py index 121896b7..87d39e4d 100644 --- a/aiogram/types/input_media_document.py +++ b/aiogram/types/input_media_document.py @@ -22,7 +22,7 @@ class InputMediaDocument(InputMedia): """Type of the result, must be *document*""" media: Union[str, InputFile] """File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass 'attach://' to upload a new one using multipart/form-data under name. :ref:`More information on Sending Files » `""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """*Optional*. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """*Optional*. Caption of the document to be sent, 0-1024 characters after entities parsing""" @@ -42,7 +42,7 @@ class InputMediaDocument(InputMedia): *, type: Literal[InputMediaType.DOCUMENT] = InputMediaType.DOCUMENT, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/types/input_media_video.py b/aiogram/types/input_media_video.py index 1c153d94..f4c46b82 100644 --- a/aiogram/types/input_media_video.py +++ b/aiogram/types/input_media_video.py @@ -22,7 +22,7 @@ class InputMediaVideo(InputMedia): """Type of the result, must be *video*""" media: Union[str, InputFile] """File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass 'attach://' to upload a new one using multipart/form-data under name. :ref:`More information on Sending Files » `""" - thumbnail: Optional[Union[InputFile, str]] = None + thumbnail: Optional[InputFile] = None """*Optional*. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass 'attach://' if the thumbnail was uploaded using multipart/form-data under . :ref:`More information on Sending Files » `""" caption: Optional[str] = None """*Optional*. Caption of the video to be sent, 0-1024 characters after entities parsing""" @@ -50,7 +50,7 @@ class InputMediaVideo(InputMedia): *, type: Literal[InputMediaType.VIDEO] = InputMediaType.VIDEO, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, diff --git a/aiogram/types/message.py b/aiogram/types/message.py index 87798b7e..dc22f192 100644 --- a/aiogram/types/message.py +++ b/aiogram/types/message.py @@ -526,7 +526,7 @@ class Message(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -601,7 +601,7 @@ class Message(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -680,7 +680,7 @@ class Message(TelegramObject): duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, allow_sending_without_reply: Optional[bool] = None, @@ -753,7 +753,7 @@ class Message(TelegramObject): duration: Optional[int] = None, performer: Optional[str] = None, title: Optional[str] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, @@ -942,7 +942,7 @@ class Message(TelegramObject): def reply_document( self, document: Union[InputFile, str], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -1008,7 +1008,7 @@ class Message(TelegramObject): def answer_document( self, document: Union[InputFile, str], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2396,7 +2396,7 @@ class Message(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2474,7 +2474,7 @@ class Message(TelegramObject): duration: Optional[int] = None, width: Optional[int] = None, height: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -2552,7 +2552,7 @@ class Message(TelegramObject): video_note: Union[InputFile, str], duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, allow_sending_without_reply: Optional[bool] = None, @@ -2612,7 +2612,7 @@ class Message(TelegramObject): video_note: Union[InputFile, str], duration: Optional[int] = None, length: Optional[int] = None, - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, disable_notification: Optional[bool] = None, protect_content: Optional[bool] = UNSET_PROTECT_CONTENT, reply_to_message_id: Optional[int] = None, diff --git a/aiogram/utils/media_group.py b/aiogram/utils/media_group.py index c017c2ea..e4277d2f 100644 --- a/aiogram/utils/media_group.py +++ b/aiogram/utils/media_group.py @@ -145,7 +145,7 @@ class MediaGroupBuilder: def add_audio( self, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -234,7 +234,7 @@ class MediaGroupBuilder: def add_video( self, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None, @@ -296,7 +296,7 @@ class MediaGroupBuilder: def add_document( self, media: Union[str, InputFile], - thumbnail: Optional[Union[InputFile, str]] = None, + thumbnail: Optional[InputFile] = None, caption: Optional[str] = None, parse_mode: Optional[str] = UNSET_PARSE_MODE, caption_entities: Optional[List[MessageEntity]] = None,