From 79c9e6258f347e544a87b54050829f7cbdfd6dcf Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Fri, 10 Mar 2023 12:28:16 +0600 Subject: [PATCH] add setStickerMaskPosition --- .../api/stickers/SetStickerMaskPosition.kt | 19 ++++++++++++++ .../stickers/SetStickerMaskPosition.kt | 26 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/stickers/SetStickerMaskPosition.kt create mode 100644 tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/stickers/SetStickerMaskPosition.kt diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/stickers/SetStickerMaskPosition.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/stickers/SetStickerMaskPosition.kt new file mode 100644 index 0000000000..7d05db2349 --- /dev/null +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/stickers/SetStickerMaskPosition.kt @@ -0,0 +1,19 @@ +package dev.inmo.tgbotapi.extensions.api.stickers + +import dev.inmo.tgbotapi.bot.TelegramBot +import dev.inmo.tgbotapi.requests.abstracts.FileId +import dev.inmo.tgbotapi.requests.stickers.SetStickerEmojiList +import dev.inmo.tgbotapi.requests.stickers.SetStickerMaskPosition +import dev.inmo.tgbotapi.requests.stickers.SetStickerPositionInSet +import dev.inmo.tgbotapi.types.files.Sticker +import dev.inmo.tgbotapi.types.stickers.MaskPosition + +suspend fun TelegramBot.setStickerMaskPosition( + sticker: FileId, + maskPosition: MaskPosition +) = execute( + SetStickerMaskPosition( + sticker, + maskPosition + ) +) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/stickers/SetStickerMaskPosition.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/stickers/SetStickerMaskPosition.kt new file mode 100644 index 0000000000..853e7ad893 --- /dev/null +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/stickers/SetStickerMaskPosition.kt @@ -0,0 +1,26 @@ +package dev.inmo.tgbotapi.requests.stickers + +import dev.inmo.tgbotapi.requests.abstracts.* +import dev.inmo.tgbotapi.requests.common.CommonMultipartFileRequest +import dev.inmo.tgbotapi.requests.stickers.abstracts.OwnerStickerSetAction +import dev.inmo.tgbotapi.requests.stickers.abstracts.StickerAction +import dev.inmo.tgbotapi.requests.stickers.abstracts.StickerSetAction +import dev.inmo.tgbotapi.types.* +import dev.inmo.tgbotapi.types.stickers.MaskPosition +import kotlinx.serialization.* +import kotlinx.serialization.builtins.serializer + +@Serializable +data class SetStickerMaskPosition ( + @SerialName(stickerField) + override val sticker: FileId, + @SerialName(maskPositionField) + val maskPosition: MaskPosition +) : StickerAction { + override val resultDeserializer: DeserializationStrategy + get() = Boolean.serializer() + override val requestSerializer: SerializationStrategy<*> + get() = serializer() + + override fun method(): String = "setStickerMaskPosition" +}