diff --git a/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/BaseMessagesUpdatesConversations.kt b/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/BaseMessagesUpdatesConversations.kt index 1280b4a397..0341007268 100644 --- a/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/BaseMessagesUpdatesConversations.kt +++ b/TelegramBotAPI-extensions-utils/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/utils/updates/BaseMessagesUpdatesConversations.kt @@ -2,26 +2,19 @@ package com.github.insanusmokrassar.TelegramBotAPI.extensions.utils.updates import com.github.insanusmokrassar.TelegramBotAPI.types.update.MediaGroupUpdates.* import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.* -import kotlinx.coroutines.flow.Flow -import kotlinx.coroutines.flow.mapNotNull +import kotlinx.coroutines.flow.* -fun Flow.onlyBaseMessageUpdates(): Flow = mapNotNull { - it as? BaseMessageUpdate -} +fun Flow.onlyBaseMessageUpdates(): Flow = filterIsInstance() /** * Converts flow to [Flow] of [BaseSentMessageUpdate] */ -fun Flow.onlySentMessageUpdates(): Flow = mapNotNull { - it as? BaseSentMessageUpdate -} +fun Flow.onlySentMessageUpdates(): Flow = filterIsInstance() /** * Converts flow to [Flow] of [BaseSentMessageUpdate] */ -fun Flow.onlyEditMessageUpdates(): Flow = mapNotNull { - it as? BaseEditMessageUpdate -} +fun Flow.onlyEditMessageUpdates(): Flow = filterIsInstance() /** * Converts flow to [Flow] of [MediaGroupUpdate]. Please, remember that it could be either [EditMediaGroupUpdate] @@ -30,20 +23,14 @@ fun Flow.onlyEditMessageUpdates(): Flow.onlyMediaGroupsUpdates(): Flow = mapNotNull { - it as? MediaGroupUpdate -} +fun Flow.onlyMediaGroupsUpdates(): Flow = filterIsInstance() /** * Converts flow to [Flow] of [SentMediaGroupUpdate] */ -fun Flow.onlySentMediaGroupUpdates(): Flow = mapNotNull { - it as? SentMediaGroupUpdate -} +fun Flow.onlySentMediaGroupUpdates(): Flow = filterIsInstance() /** * Converts flow to [Flow] of [EditMediaGroupUpdate] */ -fun Flow.onlyEditMediaGroupUpdates(): Flow = mapNotNull { - it as? EditMediaGroupUpdate -} +fun Flow.onlyEditMediaGroupUpdates(): Flow = filterIsInstance()