mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2024-11-22 16:23:48 +00:00
add support of setStickerSetTitle
This commit is contained in:
parent
a0aadef31b
commit
a9725eb439
@ -0,0 +1,22 @@
|
||||
package dev.inmo.tgbotapi.extensions.api.stickers
|
||||
|
||||
import dev.inmo.tgbotapi.bot.TelegramBot
|
||||
import dev.inmo.tgbotapi.requests.stickers.SetStickerSetTitle
|
||||
import dev.inmo.tgbotapi.types.StickerSetName
|
||||
import dev.inmo.tgbotapi.types.files.Sticker
|
||||
import dev.inmo.tgbotapi.types.stickers.StickerSet
|
||||
|
||||
suspend fun TelegramBot.setStickerSetTitle(
|
||||
name: StickerSetName,
|
||||
title: String
|
||||
) = execute(SetStickerSetTitle(name, title))
|
||||
|
||||
suspend fun TelegramBot.setStickerSetTitle(
|
||||
sticker: Sticker,
|
||||
title: String
|
||||
) = setStickerSetTitle(sticker.stickerSetName ?: error("Unable to take name of sticker set from sticker $sticker"), title)
|
||||
|
||||
suspend fun TelegramBot.setStickerSetTitle(
|
||||
stickerSet: StickerSet,
|
||||
title: String
|
||||
) = setStickerSetTitle(stickerSet.name, title)
|
@ -2,6 +2,7 @@ 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.StickerSetAction
|
||||
import dev.inmo.tgbotapi.types.*
|
||||
import kotlinx.serialization.*
|
||||
@ -25,7 +26,7 @@ data class SetStickerSetThumb (
|
||||
override val name: StickerSetName,
|
||||
@SerialName(thumbField)
|
||||
val thumb: FileId? = null
|
||||
) : StickerSetAction {
|
||||
) : OwnerStickerSetAction {
|
||||
override val requestSerializer: SerializationStrategy<*>
|
||||
get() = serializer()
|
||||
|
||||
|
@ -0,0 +1,20 @@
|
||||
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.StickerSetAction
|
||||
import dev.inmo.tgbotapi.types.*
|
||||
import kotlinx.serialization.*
|
||||
|
||||
@Serializable
|
||||
data class SetStickerSetTitle (
|
||||
@SerialName(nameField)
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
val title: String
|
||||
) : StickerSetAction {
|
||||
override val requestSerializer: SerializationStrategy<*>
|
||||
get() = serializer()
|
||||
|
||||
override fun method(): String = "setStickerSetTitle"
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package dev.inmo.tgbotapi.requests.stickers.abstracts
|
||||
|
||||
import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest
|
||||
import dev.inmo.tgbotapi.types.StickerSetName
|
||||
import dev.inmo.tgbotapi.types.UserId
|
||||
import kotlinx.serialization.KSerializer
|
||||
import kotlinx.serialization.builtins.serializer
|
||||
|
||||
interface OwnerStickerSetAction : StickerSetAction {
|
||||
val userId: UserId
|
||||
}
|
@ -2,7 +2,7 @@ package dev.inmo.tgbotapi.requests.stickers.abstracts
|
||||
|
||||
import dev.inmo.tgbotapi.types.stickers.MaskPosition
|
||||
|
||||
interface StandardStickerSetAction : StickerSetAction {
|
||||
interface StandardStickerSetAction : OwnerStickerSetAction {
|
||||
val emojis: String // must be more than one
|
||||
val maskPosition: MaskPosition?
|
||||
}
|
@ -1,13 +1,13 @@
|
||||
package dev.inmo.tgbotapi.requests.stickers.abstracts
|
||||
|
||||
import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest
|
||||
import dev.inmo.tgbotapi.types.StickerSetName
|
||||
import dev.inmo.tgbotapi.types.UserId
|
||||
import kotlinx.serialization.KSerializer
|
||||
import kotlinx.serialization.builtins.serializer
|
||||
|
||||
interface StickerSetAction : SimpleRequest<Boolean> {
|
||||
val userId: UserId
|
||||
val name: String
|
||||
val name: StickerSetName
|
||||
|
||||
override val resultDeserializer: KSerializer<Boolean>
|
||||
get() = Boolean.serializer()
|
||||
|
Loading…
Reference in New Issue
Block a user