35.0.0
THIS UPDATE CONTAINS SUPPORT OF TELEGRAM BOTS API 10.1
Breaking changes:
EditTextChatMessage.textchanged fromStringtoString?(rich edits carry no text) ��� implementations overriding it must widen the type and readers must handlenullEditChatMessageText.textchanged fromStringtoString?; itstextSourcesis nownullwhen there is no text ��� code readingtextas non-null must handlenullExtendedBotgained thesupportsJoinRequestQueriesfield inserted betweensupportsGuestQueriesandcanConnectToBusiness��� positional constructor calls andcomponentNdestructuring shift and must be updated
Migration advice: Handle nullable text on EditTextChatMessage/EditChatMessageText; construct ExtendedBot with named arguments
Core:- (
Rich Messages) AddedRichText(RichTextPlain,RichTextGroup,RichTextEntity) hierarchy with all 25RichText*entity types and a recursive serializer supporting plain strings, arrays and typed objects; everyRichTextexposesrawText,markdownandhtmlrenderings - (
Rich Messages) AddedRichBlockhierarchy with all 21RichBlock*types plusRichBlockCaption,RichBlockTableCellandRichBlockListItem; everyRichBlockexposesmarkdown/htmlsource, theRichBlockMediamarker interface andsubBlocks/searchnavigation helpers - (
Rich Messages) AddedRichTextInfotype (withmarkdown/htmlsource built from its blocks) andRichMessageContentmessage content;RichMessageContent.createResendre-sends the content (forwarded when it contains media blocks, otherwise re-built throughSendRichMessage); parsedrich_messageinRawMessage; addedRichMessageContentMessagetypealias - (
Rich Messages) AddedInputRichMessage(internal constructor withInputRichMessageHTML/InputRichMessageMarkdownfactories) andInputRichMessageContentusable asInputMessageContent - (
Rich Messages) Added Rich Messages DSL buildersbuildRichText/RichTextBuilder,buildRichBlocks/RichBlocksBuilder,buildRichTextInfoandRichBlockListBuilder(marked with the@RichTextDslDSL marker) - (
Rich Messages) Added Rich Markdown/HTML source helpersString.escapeRichMarkdown()andList<RichBlock>.toRichMarkdown()/toRichHtml() - (
Rich Messages) AddedSendRichMessageandSendRichMessageDraftrequests - (
Rich Messages) AddedrichMessageparameter toEditChatMessageText; itstextis now nullable (per API) and theEditChatMessageRichTextfactory builds a rich edit; widenedEditTextChatMessage.textto nullable - (
Polls) AddedLinktype (dev.inmo.tgbotapi.types.Link) implementingPollMedia, carrying theurlof a link attached to a poll option - (
Polls) Addedlinkfield parsing toPollMediadeserialization/serialization - (
Polls) AddedTelegramMediaLink(InputMediaLink) implementingInputPollOptionMedia, usable as a poll option media - (
Join Request Queries) AddedChatJoinRequestQueryIdvalue class andqueryIdfield toChatJoinRequest - (
Join Request Queries) AddedsupportsJoinRequestQueriesflag toExtendedBot(User.supports_join_request_queries) - (
Join Request Queries) AddedguardBotfield toExtendedChat(ChatFullInfo.guard_bot), parsed for public chats - (
Join Request Queries) AddedAnswerChatJoinRequestQueryrequest andChatJoinRequestQueryResultsealed interface (Approve/Decline/Queue/Unknown) serialized as a plain string - (
Join Request Queries) AddedSendChatJoinRequestWebApprequest
- (
API:- (
Rich Messages) AddedsendRichMessageandsendRichMessageDraftTelegramBotextensions - (
Join Request Queries) AddedanswerChatJoinRequestQueryandsendChatJoinRequestWebAppTelegramBotextensions
- (
BehaviourBuilder:- (
Rich Messages) AddedonRichMessagetrigger andwaitRichMessage/waitRichMessageMessageexpectations
- (
Utils:- (
Rich Messages) AddedFlow<ContentMessage<*>>.onlyRichMessageContentMessages() - (
Join Request Queries) AddedChatJoinRequest.query_idraw accessor
- (