From 91a8058a3aa2a2b3729ea4ec2a9e6d3b17a99eba Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Thu, 13 Jun 2024 22:24:16 +0600 Subject: [PATCH] try to support nullable marker factory --- .../BusinessConnectionTriggers.kt | 6 +- .../CallbackQueryTriggers.kt | 34 +++---- .../CallbackQueryTriggersUnhandled.kt | 6 +- .../ChatBoostRemovedTriggers.kt | 2 +- .../ChatBoostUpdatedTriggers.kt | 2 +- .../ChatJoinRequestTriggers.kt | 2 +- .../ChatMemberUpdatedTriggers.kt | 8 +- ...sageReactionCountUpdatedUpdatesTriggers.kt | 2 +- ...atMessageReactionUpdatedUpdatesTriggers.kt | 8 +- .../ChosenInlineResultTriggers.kt | 8 +- .../triggers_handling/CommandHandling.kt | 38 ++++---- .../CommandHandlingUnhandled.kt | 8 +- .../triggers_handling/ContentTriggers.kt | 62 ++++++------- .../triggers_handling/DeepLinkHandling.kt | 6 +- .../DeletedBusinessMessagesTriggers.kt | 2 +- .../EditedContentTriggers.kt | 44 +++++----- .../triggers_handling/EventTriggers.kt | 88 +++++++++---------- .../triggers_handling/InlineQueryTriggers.kt | 8 +- .../triggers_handling/MainTrigger.kt | 28 ++++-- .../MediaGroupMessagesTriggers.kt | 16 ++-- .../triggers_handling/MediaGroupTriggers.kt | 16 ++-- .../triggers_handling/MentionTriggers.kt | 72 +++++++-------- .../triggers_handling/PassportTriggers.kt | 4 +- .../triggers_handling/PollAnswersTriggers.kt | 4 +- .../triggers_handling/PollUpdatesTriggers.kt | 8 +- .../PreCheckoutQueryTriggers.kt | 2 +- .../ShippingQueryTriggers.kt | 2 +- 27 files changed, 249 insertions(+), 237 deletions(-) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/BusinessConnectionTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/BusinessConnectionTriggers.kt index 68c0386e46..45e61d0995 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/BusinessConnectionTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/BusinessConnectionTriggers.kt @@ -27,7 +27,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onBusinessConnection( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserBusinessConnectionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByUserBusinessConnectionUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.businessConnectionUpdateOrNull() ?.data) ?.let(::listOfNotNull) @@ -48,7 +48,7 @@ suspend fun BC.onBusinessConnection( suspend fun BC.onBusinessConnectionEnabled( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserBusinessConnectionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByUserBusinessConnectionUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.businessConnectionUpdateOrNull() ?.data ?.enabledOrNull()) ?.let(::listOfNotNull) @@ -68,7 +68,7 @@ suspend fun BC.onBusinessConnectionEnabled( suspend fun BC.onBusinessConnectionDisabled( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserBusinessConnectionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByUserBusinessConnectionUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.businessConnectionUpdateOrNull() ?.data ?.disabledOrNull()) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggers.kt index c2ca912858..15822ace95 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggers.kt @@ -18,7 +18,7 @@ import kotlinx.coroutines.Job internal suspend inline fun BC.onCallbackQuery( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.callbackQueryUpdateOrNull() ?.data as? T) ?.let(::listOfNotNull) @@ -39,7 +39,7 @@ internal suspend inline fun B internal suspend inline fun BC.onDataCallbackQueryCounted( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job { val newInitialFilter = SimpleFilter { @@ -81,7 +81,7 @@ internal suspend inline fun BC.onDataCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onDataCallbackQueryCounted( initialFilter, @@ -108,7 +108,7 @@ suspend fun BC.onDataCallbackQuery( dataRegex: Regex, initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onDataCallbackQuery( initialFilter = initialFilter * { @@ -136,7 +136,7 @@ suspend fun BC.onDataCallbackQuery( data: String, initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onDataCallbackQuery( Regex(data), @@ -161,7 +161,7 @@ suspend fun BC.onDataCallbackQuery( suspend fun BC.onGameShortNameCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter, @@ -185,7 +185,7 @@ suspend fun BC.onGameShortNameCallbackQuery( suspend fun BC.onInlineMessageIdCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter, @@ -209,7 +209,7 @@ suspend fun BC.onInlineMessageIdCallbackQuery( suspend fun BC.onInlineMessageIdDataCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onDataCallbackQueryCounted( initialFilter, @@ -236,7 +236,7 @@ suspend fun BC.onInlineMessageIdDataCallbackQuery( dataRegex: Regex, initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onInlineMessageIdDataCallbackQuery( initialFilter = initialFilter * { @@ -264,7 +264,7 @@ suspend fun BC.onInlineMessageIdDataCallbackQuery( data: String, initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onInlineMessageIdDataCallbackQuery( Regex(data), @@ -289,7 +289,7 @@ suspend fun BC.onInlineMessageIdDataCallbackQuery( suspend fun BC.onInlineMessageIdGameShortNameCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter, @@ -313,7 +313,7 @@ suspend fun BC.onInlineMessageIdGameShortNameCallbackQue suspend fun BC.onMessageCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter, @@ -337,7 +337,7 @@ suspend fun BC.onMessageCallbackQuery( suspend fun BC.onMessageDataCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onDataCallbackQueryCounted( initialFilter, @@ -364,7 +364,7 @@ suspend fun BC.onMessageDataCallbackQuery( dataRegex: Regex, initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onMessageDataCallbackQuery( initialFilter = initialFilter * { @@ -392,7 +392,7 @@ suspend fun BC.onMessageDataCallbackQuery( data: String, initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onMessageDataCallbackQuery( Regex(data), @@ -417,7 +417,7 @@ suspend fun BC.onMessageDataCallbackQuery( suspend fun BC.onMessageGameShortNameCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter, @@ -441,7 +441,7 @@ suspend fun BC.onMessageGameShortNameCallbackQuery( suspend fun BC.onUnknownCallbackQueryType( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggersUnhandled.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggersUnhandled.kt index 22f4fd4bdb..8b8d2ad746 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggersUnhandled.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CallbackQueryTriggersUnhandled.kt @@ -27,7 +27,7 @@ import dev.inmo.tgbotapi.utils.PreviewFeature suspend fun BC.onUnhandledDataCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery ( initialFilter * !SimpleFilter { triggersHolder.handleableCallbackQueriesDataHolder.isHandled(it) }, @@ -52,7 +52,7 @@ suspend fun BC.onUnhandledDataCallbackQuery( suspend fun BC.onUnhandledInlineMessageIdDataCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery ( initialFilter * !SimpleFilter { triggersHolder.handleableCallbackQueriesDataHolder.isHandled(it) }, @@ -77,7 +77,7 @@ suspend fun BC.onUnhandledInlineMessageIdDataCallbackQue suspend fun BC.onUnhandledMessageDataCallbackQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = CallbackQueryFilterByUser, - markerFactory: MarkerFactory = ByUserCallbackQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserCallbackQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onCallbackQuery( initialFilter * !SimpleFilter { triggersHolder.handleableCallbackQueriesDataHolder.isHandled(it) }, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostRemovedTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostRemovedTriggers.kt index 3dae6f99ef..1812aef540 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostRemovedTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostRemovedTriggers.kt @@ -27,7 +27,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onChatBoostRemoved( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdChatBoostRemovedMarkerFactory, + markerFactory: MarkerFactory? = ByIdChatBoostRemovedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.chatBoostRemovedUpdateOrNull() ?.data) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostUpdatedTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostUpdatedTriggers.kt index 5e94dab7ce..6695cfceff 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostUpdatedTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatBoostUpdatedTriggers.kt @@ -27,7 +27,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onChatBoostUpdated( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdChatBoostUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByIdChatBoostUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.chatBoostUpdatedUpdateOrNull() ?.data) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatJoinRequestTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatJoinRequestTriggers.kt index 21cbd37159..523b169545 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatJoinRequestTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatJoinRequestTriggers.kt @@ -25,7 +25,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onChatJoinRequest( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByChatChatJoinRequestMarkerFactory, + markerFactory: MarkerFactory? = ByChatChatJoinRequestMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.chatJoinRequestUpdateOrNull() ?.data) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMemberUpdatedTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMemberUpdatedTriggers.kt index bdfec02d1a..1bcd9497bc 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMemberUpdatedTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMemberUpdatedTriggers.kt @@ -17,7 +17,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onChatMemberUpdatedInternal( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = ChatMemberUpdatedFilterByChat, - markerFactory: MarkerFactory = ByChatChatMemberUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatChatMemberUpdatedMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { ((it as? U) ?.data) ?.let(::listOfNotNull) @@ -39,7 +39,7 @@ internal suspend inline fun BC.onChatMemberUpdated( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = ChatMemberUpdatedFilterByChat, - markerFactory: MarkerFactory = ByChatChatMemberUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatChatMemberUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChatMemberUpdatedInternal( initialFilter, @@ -63,7 +63,7 @@ suspend fun BC.onChatMemberUpdated( suspend fun BC.onCommonChatMemberUpdated( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = ChatMemberUpdatedFilterByChat, - markerFactory: MarkerFactory = ByChatChatMemberUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatChatMemberUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChatMemberUpdatedInternal( initialFilter, @@ -87,7 +87,7 @@ suspend fun BC.onCommonChatMemberUpdated( suspend fun BC.onMyChatMemberUpdated( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = ChatMemberUpdatedFilterByChat, - markerFactory: MarkerFactory = ByChatChatMemberUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatChatMemberUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChatMemberUpdatedInternal( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionCountUpdatedUpdatesTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionCountUpdatedUpdatesTriggers.kt index 9db5e94a07..e8d2f101c3 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionCountUpdatedUpdatesTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionCountUpdatedUpdatesTriggers.kt @@ -31,7 +31,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onChatMessageReactionsCountUpdated( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByChatIdChatMessageReactionsCountUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatIdChatMessageReactionsCountUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.chatMessageReactionsCountUpdatedUpdateOrNull() ?.data) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionUpdatedUpdatesTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionUpdatedUpdatesTriggers.kt index fcad229211..0afe522f72 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionUpdatedUpdatesTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChatMessageReactionUpdatedUpdatesTriggers.kt @@ -15,7 +15,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onChatMessageReactionUpdated( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByChatIdChatMessageReactionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatIdChatMessageReactionUpdatedMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.chatMessageReactionUpdatedUpdateOrNull() ?.data as? T) ?.let(::listOfNotNull) @@ -36,7 +36,7 @@ internal suspend inline fun BC.onChatMessageReactionUpdatedByUser( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByChatIdChatMessageReactionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatIdChatMessageReactionUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChatMessageReactionUpdated( initialFilter, @@ -60,7 +60,7 @@ suspend fun BC.onChatMessageReactionUpdatedByUser( suspend fun BC.onChatMessageReactionUpdatedByChat( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByChatIdChatMessageReactionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatIdChatMessageReactionUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChatMessageReactionUpdated( initialFilter, @@ -84,7 +84,7 @@ suspend fun BC.onChatMessageReactionUpdatedByChat( suspend fun BC.onChatMessageReactionUpdatedUnknown( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByChatIdChatMessageReactionUpdatedMarkerFactory, + markerFactory: MarkerFactory? = ByChatIdChatMessageReactionUpdatedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChatMessageReactionUpdated( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChosenInlineResultTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChosenInlineResultTriggers.kt index b4f7a00dfa..8a6729febc 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChosenInlineResultTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ChosenInlineResultTriggers.kt @@ -13,7 +13,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onChosenInlineResultBase( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserIdChosenInlineResultMarkerFactory, + markerFactory: MarkerFactory? = ByUserIdChosenInlineResultMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.chosenInlineResultUpdateOrNull() ?.data as? T) ?.let(::listOfNotNull) @@ -34,7 +34,7 @@ internal suspend inline fun BC.onChosenInlineResult( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserIdChosenInlineResultMarkerFactory, + markerFactory: MarkerFactory? = ByUserIdChosenInlineResultMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChosenInlineResultBase( initialFilter, @@ -58,7 +58,7 @@ suspend fun BC.onChosenInlineResult( suspend fun BC.onLocationChosenInlineResult( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserIdChosenInlineResultMarkerFactory, + markerFactory: MarkerFactory? = ByUserIdChosenInlineResultMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChosenInlineResultBase( initialFilter, @@ -82,7 +82,7 @@ suspend fun BC.onLocationChosenInlineResult( suspend fun BC.onBaseChosenInlineResult( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByUserIdChosenInlineResultMarkerFactory, + markerFactory: MarkerFactory? = ByUserIdChosenInlineResultMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onChosenInlineResultBase( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandling.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandling.kt index bad353d964..f3044bb2aa 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandling.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandling.kt @@ -25,7 +25,7 @@ internal suspend fun BC.commandUncounted( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = onText( CommonMessageFilter { message -> @@ -52,7 +52,7 @@ suspend fun BC.command( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = runCatchingSafely { commandUncounted( @@ -81,7 +81,7 @@ suspend fun BC.command( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = command(command.toRegex(), requireOnlyCommandInMessage, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -90,7 +90,7 @@ suspend fun BC.command( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = command(botCommand.command, requireOnlyCommandInMessage, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -99,7 +99,7 @@ suspend fun BC.onCommand( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = command(commandRegex, requireOnlyCommandInMessage, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -108,7 +108,7 @@ suspend fun BC.onCommand( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = onCommand(command.toRegex(), requireOnlyCommandInMessage, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -117,7 +117,7 @@ suspend fun BC.onCommand( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = onCommand(botCommand.command, requireOnlyCommandInMessage, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -125,7 +125,7 @@ suspend fun BC.commandWithArgs( commandRegex: Regex, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver> ) = command( @@ -146,7 +146,7 @@ suspend fun BC.commandWithArgs( command: String, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver> ) = commandWithArgs( @@ -162,7 +162,7 @@ suspend fun BC.commandWithArgs( botCommand: BotCommand, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver> ) = commandWithArgs( @@ -178,7 +178,7 @@ suspend fun BC.commandWithNamedArgs( commandRegex: Regex, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, nameArgSeparator: Regex = TelegramBotCommandsDefaults.defaultNamesArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> @@ -200,7 +200,7 @@ suspend fun BC.commandWithNamedArgs( command: String, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, nameArgSeparator: Regex = TelegramBotCommandsDefaults.defaultNamesArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> @@ -218,7 +218,7 @@ suspend fun BC.commandWithNamedArgs( botCommand: BotCommand, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, nameArgSeparator: Regex = TelegramBotCommandsDefaults.defaultNamesArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> @@ -236,7 +236,7 @@ suspend fun BC.onCommandWithArgs( commandRegex: Regex, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver> ): Job = commandWithArgs( @@ -252,7 +252,7 @@ suspend fun BC.onCommandWithArgs( command: String, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver> ): Job = onCommandWithArgs( @@ -268,7 +268,7 @@ suspend fun BC.onCommandWithArgs( botCommand: BotCommand, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver> ): Job = onCommandWithArgs( @@ -284,7 +284,7 @@ suspend fun BC.onCommandWithNamedArgs( commandRegex: Regex, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, nameArgSeparator: Regex = TelegramBotCommandsDefaults.defaultNamesArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> @@ -302,7 +302,7 @@ suspend fun BC.onCommandWithNamedArgs( command: String, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, nameArgSeparator: Regex = TelegramBotCommandsDefaults.defaultNamesArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> @@ -320,7 +320,7 @@ suspend fun BC.onCommandWithNamedArgs( botCommand: BotCommand, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, argsSeparator: Regex = TelegramBotCommandsDefaults.defaultArgsSeparatorRegex, nameArgSeparator: Regex = TelegramBotCommandsDefaults.defaultNamesArgsSeparatorRegex, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandlingUnhandled.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandlingUnhandled.kt index de00275251..57abb71ea4 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandlingUnhandled.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/CommandHandlingUnhandled.kt @@ -21,7 +21,7 @@ suspend fun BC.unhandledCommand( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = onText( CommonMessageFilter { message -> @@ -49,7 +49,7 @@ suspend fun BC.onUnhandledCommand( requireOnlyCommandInMessage: Boolean = true, initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ): Job = unhandledCommand(requireOnlyCommandInMessage, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -57,7 +57,7 @@ suspend fun BC.onUnhandledCommand( suspend fun BC.unhandledCommandWithArgs( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> ) = onUnhandledCommand( requireOnlyCommandInMessage = false, @@ -75,6 +75,6 @@ suspend fun BC.unhandledCommandWithArgs( suspend fun BC.onUnhandledCommandWithArgs( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTwoTypesReceiver>> ): Job = unhandledCommandWithArgs(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ContentTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ContentTriggers.kt index 5d66a1ed66..17745ea21b 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ContentTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ContentTriggers.kt @@ -20,7 +20,7 @@ typealias CommonMessageFilter = SimpleFilter> internal suspend inline fun BC.onContentMessageWithType( initialFilter: CommonMessageFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { when (it) { @@ -47,7 +47,7 @@ internal suspend inline fun suspend fun BC.onContentMessage( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onContentMessageWithType( initialFilter, @@ -71,7 +71,7 @@ suspend fun BC.onContentMessage( suspend fun BC.onContact( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -95,7 +95,7 @@ suspend fun BC.onContact( suspend fun BC.onDice( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -119,7 +119,7 @@ suspend fun BC.onDice( suspend fun BC.onGame( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -143,7 +143,7 @@ suspend fun BC.onGame( suspend fun BC.onLocation( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -167,7 +167,7 @@ suspend fun BC.onLocation( suspend fun BC.onLiveLocation( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -191,7 +191,7 @@ suspend fun BC.onLiveLocation( suspend fun BC.onStaticLocation( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -215,7 +215,7 @@ suspend fun BC.onStaticLocation( suspend fun BC.onPoll( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -239,7 +239,7 @@ suspend fun BC.onPoll( suspend fun BC.onText( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -263,7 +263,7 @@ suspend fun BC.onText( suspend fun BC.onStory( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -287,7 +287,7 @@ suspend fun BC.onStory( suspend fun BC.onTextedContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -311,7 +311,7 @@ suspend fun BC.onTextedContent( suspend fun BC.onVenue( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -335,7 +335,7 @@ suspend fun BC.onVenue( suspend fun BC.onAudioMediaGroup( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -359,7 +359,7 @@ suspend fun BC.onAudioMediaGroup( suspend fun BC.onDocumentMediaGroupContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -383,7 +383,7 @@ suspend fun BC.onDocumentMediaGroupContent( suspend fun BC.onTextedMediaContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -407,7 +407,7 @@ suspend fun BC.onTextedMediaContent( suspend fun BC.onMediaCollection( initialFilter: CommonMessageFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onContentMessageWithType( initialFilter, @@ -431,7 +431,7 @@ suspend fun BC.onMediaCollection( suspend fun BC.onMedia( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -455,7 +455,7 @@ suspend fun BC.onMedia( suspend fun BC.onAnimation( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -479,7 +479,7 @@ suspend fun BC.onAnimation( suspend fun BC.onAudio( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -503,7 +503,7 @@ suspend fun BC.onAudio( suspend fun BC.onDocument( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -527,7 +527,7 @@ suspend fun BC.onDocument( suspend fun BC.onPhoto( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -551,7 +551,7 @@ suspend fun BC.onPhoto( suspend fun BC.onSticker( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -575,7 +575,7 @@ suspend fun BC.onSticker( suspend fun BC.onVideo( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -599,7 +599,7 @@ suspend fun BC.onVideo( suspend fun BC.onVideoNote( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -623,7 +623,7 @@ suspend fun BC.onVideoNote( suspend fun BC.onVoice( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -647,7 +647,7 @@ suspend fun BC.onVoice( suspend fun BC.onInvoice( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -671,7 +671,7 @@ suspend fun BC.onInvoice( suspend fun BC.onVisualContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -695,7 +695,7 @@ suspend fun BC.onVisualContent( suspend fun BC.onMediaContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -719,7 +719,7 @@ suspend fun BC.onMediaContent( suspend fun BC.onGiveawayContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, @@ -744,7 +744,7 @@ suspend fun BC.onGiveawayContent( suspend fun BC.onGiveawayPublicResultsContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onContentMessageWithType( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeepLinkHandling.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeepLinkHandling.kt index 91b1f03872..d56faac244 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeepLinkHandling.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeepLinkHandling.kt @@ -21,7 +21,7 @@ private val startRegex = Regex("start") suspend fun BC.onDeepLink( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = { (message, _), update -> MessageFilterByChat(this, message, update) }, - markerFactory: MarkerFactory, Any> = MarkerFactory { (message, _) -> ByChatMessageMarkerFactory(message) }, + markerFactory: MarkerFactory, Any>? = MarkerFactory { (message, _) -> ByChatMessageMarkerFactory(message) }, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ): Job = on( markerFactory, @@ -47,7 +47,7 @@ suspend fun BC.onDeepLink( regex: Regex, initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = { (message, _), update -> MessageFilterByChat(this, message, update) }, - markerFactory: MarkerFactory, Any> = MarkerFactory { (message, _) -> ByChatMessageMarkerFactory(message) }, + markerFactory: MarkerFactory, Any>? = MarkerFactory { (message, _) -> ByChatMessageMarkerFactory(message) }, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ): Job { val internalFilter = SimpleFilter> { @@ -60,6 +60,6 @@ suspend fun BC.onDeepLink( deepLink: String, initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = { (message, _), update -> MessageFilterByChat(this, message, update) }, - markerFactory: MarkerFactory, Any> = MarkerFactory { (message, _) -> ByChatMessageMarkerFactory(message) }, + markerFactory: MarkerFactory, Any>? = MarkerFactory { (message, _) -> ByChatMessageMarkerFactory(message) }, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ): Job = onDeepLink(Regex("^$deepLink$"), initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeletedBusinessMessagesTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeletedBusinessMessagesTriggers.kt index 3e5b2be96a..61be99d40f 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeletedBusinessMessagesTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/DeletedBusinessMessagesTriggers.kt @@ -30,7 +30,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onBusinessMessagesDeleted( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByBusinessConnectionIdBusinessMessagesDeletedMarkerFactory, + markerFactory: MarkerFactory? = ByBusinessConnectionIdBusinessMessagesDeletedMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.deletedBusinessMessageUpdateOrNull() ?.data) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EditedContentTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EditedContentTriggers.kt index 1978e5540f..0663a3313d 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EditedContentTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EditedContentTriggers.kt @@ -17,7 +17,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onEditedContent( initialFilter: CommonMessageFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { it.baseEditMessageUpdateOrNull() ?.data ?.withContent() ?.let(::listOfNotNull) @@ -39,7 +39,7 @@ internal suspend inline fun suspend fun BC.onEditedContentMessage( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> )= onEditedContent( initialFilter, @@ -63,7 +63,7 @@ suspend fun BC.onEditedContentMessage( suspend fun BC.onEditedContact( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -87,7 +87,7 @@ suspend fun BC.onEditedContact( suspend fun BC.onEditedDice( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -111,7 +111,7 @@ suspend fun BC.onEditedDice( suspend fun BC.onEditedGame( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -135,7 +135,7 @@ suspend fun BC.onEditedGame( suspend fun BC.onEditedLocation( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -159,7 +159,7 @@ suspend fun BC.onEditedLocation( suspend fun BC.onEditedText( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -183,7 +183,7 @@ suspend fun BC.onEditedText( suspend fun BC.onEditedVenue( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -207,7 +207,7 @@ suspend fun BC.onEditedVenue( suspend fun BC.onEditedAudioMediaGroup( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -231,7 +231,7 @@ suspend fun BC.onEditedAudioMediaGroup( suspend fun BC.onEditedDocumentMediaGroupContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -255,7 +255,7 @@ suspend fun BC.onEditedDocumentMediaGroupContent( suspend fun BC.onEditedTextedMediaContent( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -279,7 +279,7 @@ suspend fun BC.onEditedTextedMediaContent( suspend fun BC.onEditedMediaCollection( initialFilter: CommonMessageFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> )= onEditedContent( initialFilter, @@ -303,7 +303,7 @@ suspend fun BC.onEditedMediaCollection( suspend fun BC.onEditedMedia( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -327,7 +327,7 @@ suspend fun BC.onEditedMedia( suspend fun BC.onEditedAnimation( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -351,7 +351,7 @@ suspend fun BC.onEditedAnimation( suspend fun BC.onEditedAudio( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -375,7 +375,7 @@ suspend fun BC.onEditedAudio( suspend fun BC.onEditedDocument( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -399,7 +399,7 @@ suspend fun BC.onEditedDocument( suspend fun BC.onEditedPhoto( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -423,7 +423,7 @@ suspend fun BC.onEditedPhoto( suspend fun BC.onEditedSticker( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -447,7 +447,7 @@ suspend fun BC.onEditedSticker( suspend fun BC.onEditedVideo( initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -471,7 +471,7 @@ suspend fun BC.onEditedVideo( suspend fun BC.onEditedVideoNote( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -495,7 +495,7 @@ suspend fun BC.onEditedVideoNote( suspend fun BC.onEditedVoice( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, @@ -519,7 +519,7 @@ suspend fun BC.onEditedVoice( suspend fun BC.onEditedInvoice( initialFilter: CommonMessageFilter? = CommonMessageFilterExcludeMediaGroups, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver )= onEditedContent( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EventTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EventTriggers.kt index eb60a8b17f..47f188ca40 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EventTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/EventTriggers.kt @@ -33,7 +33,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onEvent( initialFilter: SimpleFilter>? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { @Suppress("UNCHECKED_CAST") @@ -43,7 +43,7 @@ internal suspend inline fun BC.on internal suspend inline fun > BC.onEventWithCustomChatEventMessage( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { @Suppress("UNCHECKED_CAST") @@ -65,7 +65,7 @@ internal suspend inline fun BC.onChannelEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -84,7 +84,7 @@ suspend fun BC.onChannelEvent( suspend fun BC.onPrivateEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -103,7 +103,7 @@ suspend fun BC.onPrivateEvent( suspend fun BC.onChatEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -122,7 +122,7 @@ suspend fun BC.onChatEvent( suspend fun BC.onVideoChatEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -141,7 +141,7 @@ suspend fun BC.onVideoChatEvent( suspend fun BC.onVideoChatStartedEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -160,7 +160,7 @@ suspend fun BC.onVideoChatStartedEvent( suspend fun BC.onVideoChatEndedEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -179,7 +179,7 @@ suspend fun BC.onVideoChatEndedEvent( suspend fun BC.onVideoChatParticipantsInvitedEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -198,7 +198,7 @@ suspend fun BC.onVideoChatParticipantsInvitedEvent( suspend fun BC.onMessageAutoDeleteTimerChangedEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -217,7 +217,7 @@ suspend fun BC.onMessageAutoDeleteTimerChangedEvent( suspend fun BC.onPublicChatEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -236,7 +236,7 @@ suspend fun BC.onPublicChatEvent( suspend fun BC.onCommonEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -255,7 +255,7 @@ suspend fun BC.onCommonEvent( suspend fun BC.onGroupEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -274,7 +274,7 @@ suspend fun BC.onGroupEvent( suspend fun BC.onSupergroupEvent( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -293,7 +293,7 @@ suspend fun BC.onSupergroupEvent( suspend fun BC.onChannelChatCreated( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -312,7 +312,7 @@ suspend fun BC.onChannelChatCreated( suspend fun BC.onDeleteChatPhoto( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -331,7 +331,7 @@ suspend fun BC.onDeleteChatPhoto( suspend fun BC.onGroupChatCreated( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -350,7 +350,7 @@ suspend fun BC.onGroupChatCreated( suspend fun BC.onLeftChatMember( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -369,7 +369,7 @@ suspend fun BC.onLeftChatMember( suspend fun BC.onNewChatMembers( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -388,7 +388,7 @@ suspend fun BC.onNewChatMembers( suspend fun BC.onNewChatPhoto( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -407,7 +407,7 @@ suspend fun BC.onNewChatPhoto( suspend fun BC.onNewChatTitle( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -426,7 +426,7 @@ suspend fun BC.onNewChatTitle( suspend fun BC.onPinnedMessage( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -445,7 +445,7 @@ suspend fun BC.onPinnedMessage( suspend fun BC.onProximityAlertTriggered( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -464,7 +464,7 @@ suspend fun BC.onProximityAlertTriggered( suspend fun BC.onSupergroupChatCreated( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -486,7 +486,7 @@ suspend fun BC.onSupergroupChatCreated( suspend fun BC.onSuccessfulPayment( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -505,7 +505,7 @@ suspend fun BC.onSuccessfulPayment( suspend fun BC.onUserLoggedIn( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEvent(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -524,7 +524,7 @@ suspend fun BC.onUserLoggedIn( suspend fun BC.onWebAppData( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -543,7 +543,7 @@ suspend fun BC.onWebAppData( suspend fun BC.onForumTopicClosed( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -562,7 +562,7 @@ suspend fun BC.onForumTopicClosed( suspend fun BC.onForumTopicCreated( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -581,7 +581,7 @@ suspend fun BC.onForumTopicCreated( suspend fun BC.onForumTopicReopened( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -601,7 +601,7 @@ suspend fun BC.onForumTopicReopened( suspend fun BC.onForumTopicEdited( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -620,7 +620,7 @@ suspend fun BC.onForumTopicEdited( suspend fun BC.onGeneralForumTopicHidden( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -639,7 +639,7 @@ suspend fun BC.onGeneralForumTopicHidden( suspend fun BC.onGeneralForumTopicUnhidden( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -659,7 +659,7 @@ suspend fun BC.onGeneralForumTopicUnhidden( suspend fun BC.onWriteAccessAllowed( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -679,7 +679,7 @@ suspend fun BC.onWriteAccessAllowed( suspend fun BC.onWriteAccessAllowedFromRequest( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -699,7 +699,7 @@ suspend fun BC.onWriteAccessAllowedFromRequest( suspend fun BC.onWriteAccessAllowedFromAttachmentMenu( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -719,7 +719,7 @@ suspend fun BC.onWriteAccessAllowedFromAttachmentMenu( suspend fun BC.onWriteAccessAllowedOther( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -739,7 +739,7 @@ suspend fun BC.onWriteAccessAllowedOther( suspend fun BC.onWriteAccessAllowedFromWebAppLink( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -760,7 +760,7 @@ suspend fun BC.onWriteAccessAllowedFromWebAppLink( suspend fun BC.onChatSharedRequest( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -780,7 +780,7 @@ suspend fun BC.onChatSharedRequest( suspend fun BC.onUsersShared( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -800,7 +800,7 @@ suspend fun BC.onUsersShared( suspend fun BC.onUserShared( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onUsersShared(initialFilter * { it.chatEvent.userIds.size == 1 }, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -821,7 +821,7 @@ suspend fun BC.onUserShared( suspend fun BC.onChatShared( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -842,7 +842,7 @@ suspend fun BC.onChatShared( suspend fun BC.onChatBoostAdded( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -862,6 +862,6 @@ suspend fun BC.onChatBoostAdded( suspend fun BC.onChatBackgroundSet( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = MessageFilterByChat, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onEventWithCustomChatEventMessage(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/InlineQueryTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/InlineQueryTriggers.kt index 8106a24084..b81d71c033 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/InlineQueryTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/InlineQueryTriggers.kt @@ -12,7 +12,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onInlineQuery( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = InlineQueryFilterByUser, - markerFactory: MarkerFactory = ByUserInlineQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserInlineQueryMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.inlineQueryUpdateOrNull() ?.data as? T) ?.let(::listOfNotNull) @@ -33,7 +33,7 @@ internal suspend inline fun BC. suspend fun BC.onAnyInlineQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = InlineQueryFilterByUser, - markerFactory: MarkerFactory = ByUserInlineQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserInlineQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onInlineQuery(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -53,7 +53,7 @@ suspend fun BC.onAnyInlineQuery( suspend fun BC.onBaseInlineQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = InlineQueryFilterByUser, - markerFactory: MarkerFactory = ByUserInlineQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserInlineQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onInlineQuery(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -73,6 +73,6 @@ suspend fun BC.onBaseInlineQuery( suspend fun BC.onLocationInlineQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = InlineQueryFilterByUser, - markerFactory: MarkerFactory = ByUserInlineQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserInlineQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onInlineQuery(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MainTrigger.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MainTrigger.kt index 73819a7fec..5103e4526c 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MainTrigger.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MainTrigger.kt @@ -1,5 +1,7 @@ package dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling +import dev.inmo.micro_utils.coroutines.launchSafelyWithoutExceptions +import dev.inmo.micro_utils.coroutines.subscribeSafelyWithoutExceptions import dev.inmo.micro_utils.coroutines.subscribeSafelyWithoutExceptionsAsync import dev.inmo.tgbotapi.extensions.behaviour_builder.* import dev.inmo.tgbotapi.extensions.behaviour_builder.expectations.expectFlow @@ -8,7 +10,7 @@ import dev.inmo.tgbotapi.extensions.behaviour_builder.utils.marker_factories.Mar import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.on( - markerFactory: MarkerFactory, + markerFactory: MarkerFactory?, initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver, @@ -26,13 +28,23 @@ internal suspend inline fun BC.on( it to data } ?: emptyList() } -).subscribeSafelyWithoutExceptionsAsync( - scope, - { markerFactory(it.second) } -) { (update, triggerData) -> - createSubContextAndDoWithUpdatesFilter { - if (subcontextUpdatesFilter ?.invoke(this, triggerData, update) != false) { - scenarioReceiver(triggerData) +).run { + val handler: suspend (Pair) -> Unit = { (update, triggerData) -> + createSubContextAndDoWithUpdatesFilter { + if (subcontextUpdatesFilter ?.invoke(this, triggerData, update) != false) { + scenarioReceiver(triggerData) + } + } + } + markerFactory ?.let { + subscribeSafelyWithoutExceptionsAsync( + scope, + { markerFactory(it.second) }, + block = handler + ) + } ?: subscribeSafelyWithoutExceptions(scope) { + scope.launchSafelyWithoutExceptions { + handler(it) } } } diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupMessagesTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupMessagesTriggers.kt index b4f80f4fd5..2f705c4de6 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupMessagesTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupMessagesTriggers.kt @@ -18,7 +18,7 @@ import dev.inmo.tgbotapi.utils.PreviewFeature internal suspend inline fun BC.buildMediaGroupMessagesTrigger( initialFilter: SimpleFilter>? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { it.baseSentMessageUpdateOrNull() ?.data ?.commonMessageOrNull() ?.withContentOrNull>() ?.let { @@ -45,7 +45,7 @@ internal suspend inline fun BC.onMediaGroupMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupMessagesTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -64,7 +64,7 @@ suspend fun BC.onMediaGroupMessages( suspend fun BC.onPlaylistMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupMessagesTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -83,7 +83,7 @@ suspend fun BC.onPlaylistMessages( suspend fun BC.onDocumentsGroupMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupMessagesTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -102,7 +102,7 @@ suspend fun BC.onDocumentsGroupMessages( suspend fun BC.onVisualGalleryMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupMessagesTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -121,7 +121,7 @@ suspend fun BC.onVisualGalleryMessages( suspend fun BC.onVisualMediaGroupMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onVisualGalleryMessages(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -140,7 +140,7 @@ suspend fun BC.onVisualMediaGroupMessages( suspend fun BC.onPhotoGalleryMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupMessagesTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -159,6 +159,6 @@ suspend fun BC.onPhotoGalleryMessages( suspend fun BC.onVideoGalleryMessages( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory, Any>? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupMessagesTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupTriggers.kt index 16057119ae..95d2071332 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MediaGroupTriggers.kt @@ -18,7 +18,7 @@ import dev.inmo.tgbotapi.utils.PreviewFeature internal suspend inline fun BC.buildMediaGroupTrigger( initialFilter: SimpleFilter>? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { it.baseSentMessageUpdateOrNull() ?.data ?.commonMessageOrNull() ?.withContentOrNull>() ?.let { @@ -45,7 +45,7 @@ internal suspend inline fun BC.onMediaGroup( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -64,7 +64,7 @@ suspend fun BC.onMediaGroup( suspend fun BC.onPlaylist( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -83,7 +83,7 @@ suspend fun BC.onPlaylist( suspend fun BC.onDocumentsGroup( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -102,7 +102,7 @@ suspend fun BC.onDocumentsGroup( suspend fun BC.onVisualGallery( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -121,7 +121,7 @@ suspend fun BC.onVisualGallery( suspend fun BC.onVisualMediaGroup( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onVisualGallery(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -140,7 +140,7 @@ suspend fun BC.onVisualMediaGroup( suspend fun BC.onPhotoGallery( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -159,6 +159,6 @@ suspend fun BC.onPhotoGallery( suspend fun BC.onVideoGallery( initialFilter: SimpleFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = buildMediaGroupTrigger(initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MentionTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MentionTriggers.kt index 1acc11d2dc..262371f8da 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MentionTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/MentionTriggers.kt @@ -29,7 +29,7 @@ internal suspend inline fun B username: Username, initialFilter: CommonMessageFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onContentMessageWithType( initialFilter * { @@ -44,7 +44,7 @@ internal suspend inline fun B userId: UserId, initialFilter: CommonMessageFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onContentMessageWithType( initialFilter * { @@ -59,7 +59,7 @@ internal suspend inline fun B user: User, initialFilter: CommonMessageFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onContentMessageWithType( initialFilter * { @@ -75,7 +75,7 @@ suspend fun BC.onMentionWithAnyContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -83,7 +83,7 @@ suspend fun BC.onTextMentionWithAnyContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -91,7 +91,7 @@ suspend fun BC.onMentionWithAnyContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -101,7 +101,7 @@ suspend fun BC.onMentionWithVoiceContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -109,7 +109,7 @@ suspend fun BC.onTextMentionWithVoiceContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -117,7 +117,7 @@ suspend fun BC.onMentionWithVoiceContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -127,7 +127,7 @@ suspend fun BC.onMentionWithMediaGroupContent( username: Username, initialFilter: CommonMessageFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver>, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver>> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -135,7 +135,7 @@ suspend fun BC.onTextMentionWithMediaGroupContent( userId: UserId, initialFilter: CommonMessageFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver>, Update>? = null, - markerFactory: MarkerFactory>, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory>, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver>> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -143,7 +143,7 @@ suspend fun BC.onMentionWithMediaGroupContent( user: User, initialFilter: CommonMessageFilter>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver>, Update>? = null, - markerFactory: MarkerFactory>, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory>, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver>> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -153,7 +153,7 @@ suspend fun BC.onMentionWithMediaGroupPartContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -161,7 +161,7 @@ suspend fun BC.onTextMentionWithMediaGroupPartContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -169,7 +169,7 @@ suspend fun BC.onMentionWithMediaGroupPartContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -179,7 +179,7 @@ suspend fun BC.onMentionWithAudioContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -187,7 +187,7 @@ suspend fun BC.onTextMentionWithAudioContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -195,7 +195,7 @@ suspend fun BC.onMentionWithAudioContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -205,7 +205,7 @@ suspend fun BC.onMentionWithDocumentContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -213,7 +213,7 @@ suspend fun BC.onTextMentionWithDocumentContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -221,7 +221,7 @@ suspend fun BC.onMentionWithDocumentContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -231,7 +231,7 @@ suspend fun BC.onMentionWithVisualMediaGroupPartContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -239,7 +239,7 @@ suspend fun BC.onTextMentionWithVisualMediaGroupPartCont userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -247,7 +247,7 @@ suspend fun BC.onMentionWithVisualMediaGroupPartContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -257,7 +257,7 @@ suspend fun BC.onMentionWithVideoContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -265,7 +265,7 @@ suspend fun BC.onTextMentionWithVideoContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -273,7 +273,7 @@ suspend fun BC.onMentionWithVideoContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -283,7 +283,7 @@ suspend fun BC.onMentionWithPhotoContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -291,7 +291,7 @@ suspend fun BC.onTextMentionWithPhotoContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -299,7 +299,7 @@ suspend fun BC.onMentionWithPhotoContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -309,7 +309,7 @@ suspend fun BC.onMentionWithAnimationContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -317,7 +317,7 @@ suspend fun BC.onTextMentionWithAnimationContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -325,7 +325,7 @@ suspend fun BC.onMentionWithAnimationContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -335,7 +335,7 @@ suspend fun BC.onMentionWithTextContent( username: Username, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(username, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -343,7 +343,7 @@ suspend fun BC.onTextMentionWithTextContent( userId: UserId, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onTextMention(userId, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) @@ -351,7 +351,7 @@ suspend fun BC.onMentionWithTextContent( user: User, initialFilter: CommonMessageFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver, Update>? = null, - markerFactory: MarkerFactory, Any> = AnyMarkerFactory(), + markerFactory: MarkerFactory, Any>? = AnyMarkerFactory(), scenarioReceiver: CustomBehaviourContextAndTypeReceiver> ) = onMention(user, initialFilter, subcontextUpdatesFilter, markerFactory, scenarioReceiver) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PassportTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PassportTriggers.kt index b4cd034da8..592fec7e31 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PassportTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PassportTriggers.kt @@ -14,7 +14,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onPassportMessageWith( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.messageUpdateOrNull() ?.data ?.passportMessageOrNull() ?.takeIf { it.passportData.data.any { it is T } }) ?.let(::listOfNotNull) @@ -36,7 +36,7 @@ internal suspend inline fun BC.onPassportMessage( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = MessageFilterByChat, - markerFactory: MarkerFactory = ByChatMessageMarkerFactory, + markerFactory: MarkerFactory? = ByChatMessageMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onPassportMessageWith( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollAnswersTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollAnswersTriggers.kt index a09639754b..8e9c93f6e7 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollAnswersTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollAnswersTriggers.kt @@ -13,7 +13,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onPollAnswered( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdPollAnswerMarkerFactory, + markerFactory: MarkerFactory? = ByIdPollAnswerMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.pollAnswerUpdateOrNull() ?.data) ?.let(::listOfNotNull) @@ -34,7 +34,7 @@ internal suspend inline fun BC.onPollAnswered( suspend fun BC.onPollAnswer( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdPollAnswerMarkerFactory, + markerFactory: MarkerFactory? = ByIdPollAnswerMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onPollAnswered( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollUpdatesTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollUpdatesTriggers.kt index c9098d600d..a0a98a5445 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollUpdatesTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PollUpdatesTriggers.kt @@ -13,7 +13,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update internal suspend inline fun BC.onPollUpdatedBase( initialFilter: SimpleFilter? = null, noinline subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdPollMarkerFactory, + markerFactory: MarkerFactory? = ByIdPollMarkerFactory, noinline scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.pollUpdateOrNull() ?.data as? T) ?.let(::listOfNotNull) @@ -34,7 +34,7 @@ internal suspend inline fun BC.onPollU suspend fun BC.onPollUpdates( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdPollMarkerFactory, + markerFactory: MarkerFactory? = ByIdPollMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onPollUpdatedBase( initialFilter, @@ -58,7 +58,7 @@ suspend fun BC.onPollUpdates( suspend fun BC.onRegularPollUpdates( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdPollMarkerFactory, + markerFactory: MarkerFactory? = ByIdPollMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onPollUpdatedBase( initialFilter, @@ -82,7 +82,7 @@ suspend fun BC.onRegularPollUpdates( suspend fun BC.onQuizPollUpdates( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = null, - markerFactory: MarkerFactory = ByIdPollMarkerFactory, + markerFactory: MarkerFactory? = ByIdPollMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = onPollUpdatedBase( initialFilter, diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PreCheckoutQueryTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PreCheckoutQueryTriggers.kt index c53f1ecda0..463ea3e6fd 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PreCheckoutQueryTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/PreCheckoutQueryTriggers.kt @@ -28,7 +28,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onPreCheckoutQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = PreCheckoutQueryFilterByUser, - markerFactory: MarkerFactory = ByUserPreCheckoutQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserPreCheckoutQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.preCheckoutQueryUpdateOrNull() ?.data) ?.let(::listOfNotNull) diff --git a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ShippingQueryTriggers.kt b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ShippingQueryTriggers.kt index 1f82cf12cb..160ead60f5 100644 --- a/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ShippingQueryTriggers.kt +++ b/tgbotapi.behaviour_builder/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/behaviour_builder/triggers_handling/ShippingQueryTriggers.kt @@ -28,7 +28,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update suspend fun BC.onShippingQuery( initialFilter: SimpleFilter? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver? = ShippingQueryFilterByUser, - markerFactory: MarkerFactory = ByUserShippingQueryMarkerFactory, + markerFactory: MarkerFactory? = ByUserShippingQueryMarkerFactory, scenarioReceiver: CustomBehaviourContextAndTypeReceiver ) = on(markerFactory, initialFilter, subcontextUpdatesFilter, scenarioReceiver) { (it.shippingQueryUpdateOrNull() ?.data) ?.let(::listOfNotNull)