diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d7cdffd7e..4ea9c3df80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,11 +40,13 @@ ### 0.26.2 +* `TelegramBotAPI`: + * Now `EditMediaGroupUpdate` also extends `BaseEditMessageUpdate` * `TelegramBotAPI-extensions-api`: * `startGettingOfUpdates` extension which do not require filter (but return a new one) was added * `TelegramBotAPI-extensions-utils`: * Subproject was added - * `filterByChat` and `filterByChatId` extensions was added + * `filterBaseMessageUpdates`, `filterSentMediaGroupUpdates` and `filterEditMediaGroupUpdates` extensions was added * `filterExactCommands` and `filterCommandsInsideTextMessages` extensions was added * `asContentMessagesFlow`, `asChatEventsFlow` and `asUnknownMessagesFlow` extensions was added * `withContentType` extension was added diff --git a/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/UpdatesChatFilters.kt b/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/UpdatesChatFilters.kt index 146bb2e63a..d4a95cd1c3 100644 --- a/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/UpdatesChatFilters.kt +++ b/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/UpdatesChatFilters.kt @@ -7,19 +7,13 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.BaseMes import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.filter -fun Flow.filterByChatId(chatId: ChatId): Flow = filter { +fun Flow.filterBaseMessageUpdates(chatId: ChatId): Flow = filter { it.data.chat.id == chatId } -fun Flow.filterByChat(chat: Chat): Flow = filterByChatId(chat.id) +fun Flow.filterBaseMessageUpdates(chat: Chat): Flow = filterBaseMessageUpdates(chat.id) -fun Flow.filterByChatId(chatId: ChatId): Flow = filter { +fun Flow.filterSentMediaGroupUpdates(chatId: ChatId): Flow = filter { it.data.first().chat.id == chatId } -fun Flow.filterByChatId(chat: Chat): Flow = filterByChatId(chat.id) - - -fun Flow.filterByChatId(chatId: ChatId): Flow = filter { - it.data.chat.id == chatId -} -fun Flow.filterByChatId(chat: Chat): Flow = filterByChatId(chat.id) +fun Flow.filterSentMediaGroupUpdates(chat: Chat): Flow = filterSentMediaGroupUpdates(chat.id) diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/MediaGroupUpdates/MediaGroupUpdate.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/MediaGroupUpdates/MediaGroupUpdate.kt index c61ae5b674..5724d2d9b6 100644 --- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/MediaGroupUpdates/MediaGroupUpdate.kt +++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/MediaGroupUpdates/MediaGroupUpdate.kt @@ -1,8 +1,7 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.update.MediaGroupUpdates import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.MediaGroupMessage -import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.BaseMessageUpdate -import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.Update +import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.* interface MediaGroupUpdate : Update @@ -11,7 +10,7 @@ interface SentMediaGroupUpdate: MediaGroupUpdate { val origins: List } -interface EditMediaGroupUpdate : MediaGroupUpdate { +interface EditMediaGroupUpdate : BaseEditMessageUpdate, MediaGroupUpdate { override val data: MediaGroupMessage val origin: BaseMessageUpdate }