mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2025-09-16 13:49:26 +00:00
StickerSetName now is value class
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package dev.inmo.tgbotapi.requests.get
|
||||
|
||||
import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest
|
||||
import dev.inmo.tgbotapi.types.StickerSetName
|
||||
import dev.inmo.tgbotapi.types.nameField
|
||||
import dev.inmo.tgbotapi.types.stickerSetNameField
|
||||
import dev.inmo.tgbotapi.types.stickers.StickerSet
|
||||
@@ -9,7 +10,7 @@ import kotlinx.serialization.*
|
||||
@Serializable
|
||||
data class GetStickerSet(
|
||||
@SerialName(nameField)
|
||||
val name: String
|
||||
val name: StickerSetName
|
||||
): SimpleRequest<StickerSet> {
|
||||
override fun method(): String = "getStickerSet"
|
||||
override val resultDeserializer: DeserializationStrategy<StickerSet>
|
||||
|
@@ -8,7 +8,7 @@ import kotlinx.serialization.*
|
||||
|
||||
fun AddStickerToSet(
|
||||
userId: UserId,
|
||||
stickerSetName: String,
|
||||
stickerSetName: StickerSetName,
|
||||
inputSticker: InputSticker
|
||||
): Request<Boolean> {
|
||||
val data = AddStickerToSetData(userId, stickerSetName, inputSticker)
|
||||
@@ -21,12 +21,22 @@ fun AddStickerToSet(
|
||||
}
|
||||
}
|
||||
|
||||
fun AddStickerToSet(
|
||||
userId: UserId,
|
||||
stickerSetName: String,
|
||||
inputSticker: InputSticker
|
||||
): Request<Boolean> = AddStickerToSet(
|
||||
userId = userId,
|
||||
stickerSetName = StickerSetName(stickerSetName),
|
||||
inputSticker = inputSticker
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class AddStickerToSetData internal constructor(
|
||||
@SerialName(userIdField)
|
||||
override val userId: UserId,
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(stickerField)
|
||||
override val inputSticker: InputSticker
|
||||
) : StandardStickerSetAction {
|
||||
|
@@ -19,7 +19,7 @@ import kotlinx.serialization.encoding.Encoder
|
||||
*/
|
||||
fun CreateNewStickerSet(
|
||||
userId: UserId,
|
||||
name: String,
|
||||
name: StickerSetName,
|
||||
title: String,
|
||||
stickersFormat: StickerFormat,
|
||||
stickers: List<InputSticker>,
|
||||
@@ -53,6 +53,28 @@ fun CreateNewStickerSet(
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Will create one of [CreateNewStickerSet] types based on the first element of [stickers]
|
||||
*
|
||||
* @param needsRepainting Will be used only if you are creating custom emojis sticker pack (by passing [stickers] with
|
||||
* type [InputSticker.WithKeywords.CustomEmoji])
|
||||
*/
|
||||
fun CreateNewStickerSet(
|
||||
userId: UserId,
|
||||
name: String,
|
||||
title: String,
|
||||
stickersFormat: StickerFormat,
|
||||
stickers: List<InputSticker>,
|
||||
needsRepainting: Boolean? = null
|
||||
) = CreateNewStickerSet(
|
||||
userId = userId,
|
||||
name = StickerSetName(name),
|
||||
title = title,
|
||||
stickersFormat = stickersFormat,
|
||||
stickers = stickers,
|
||||
needsRepainting = needsRepainting
|
||||
)
|
||||
|
||||
@Serializable(CreateNewStickerSetSerializer::class)
|
||||
sealed interface CreateNewStickerSet : CreateStickerSetAction {
|
||||
val stickerType: StickerType
|
||||
@@ -69,7 +91,7 @@ sealed interface CreateNewStickerSet : CreateStickerSetAction {
|
||||
@SerialName(userIdField)
|
||||
override val userId: UserId,
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickerFormatField)
|
||||
@@ -86,7 +108,7 @@ sealed interface CreateNewStickerSet : CreateStickerSetAction {
|
||||
@SerialName(userIdField)
|
||||
override val userId: UserId,
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickerFormatField)
|
||||
@@ -103,7 +125,7 @@ sealed interface CreateNewStickerSet : CreateStickerSetAction {
|
||||
@SerialName(userIdField)
|
||||
override val userId: UserId,
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickerFormatField)
|
||||
@@ -123,7 +145,7 @@ sealed interface CreateNewStickerSet : CreateStickerSetAction {
|
||||
@SerialName(userIdField)
|
||||
override val userId: UserId,
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickerFormatField)
|
||||
|
@@ -8,7 +8,7 @@ import kotlinx.serialization.*
|
||||
|
||||
fun SetStickerSetThumbnail(
|
||||
userId: UserId,
|
||||
stickerSetName: String,
|
||||
stickerSetName: StickerSetName,
|
||||
thumbnail: MultipartFile
|
||||
): Request<Boolean> {
|
||||
return CommonMultipartFileRequest(
|
||||
@@ -17,6 +17,16 @@ fun SetStickerSetThumbnail(
|
||||
)
|
||||
}
|
||||
|
||||
fun SetStickerSetThumbnail(
|
||||
userId: UserId,
|
||||
stickerSetName: String,
|
||||
thumbnail: MultipartFile
|
||||
): Request<Boolean> = SetStickerSetThumbnail(
|
||||
userId = userId,
|
||||
stickerSetName = StickerSetName(stickerSetName),
|
||||
thumbnail = thumbnail
|
||||
)
|
||||
|
||||
@Serializable
|
||||
data class SetStickerSetThumbnail (
|
||||
@SerialName(userIdField)
|
||||
|
@@ -15,7 +15,6 @@ typealias AuthorSignature = ForwardSignature
|
||||
typealias PaymentQueryIdentifier = String
|
||||
typealias InvoicePayload = String
|
||||
typealias StartParameter = String
|
||||
typealias StickerSetName = String
|
||||
typealias DiceResult = Int
|
||||
typealias FoursquareId = String
|
||||
typealias FoursquareType = String
|
||||
|
@@ -0,0 +1,14 @@
|
||||
package dev.inmo.tgbotapi.types
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlin.jvm.JvmInline
|
||||
|
||||
@Serializable
|
||||
@JvmInline
|
||||
value class StickerSetName(
|
||||
val string: String
|
||||
) {
|
||||
override fun toString(): String {
|
||||
return string
|
||||
}
|
||||
}
|
@@ -11,7 +11,7 @@ import kotlinx.serialization.json.JsonElement
|
||||
|
||||
@Serializable
|
||||
data class SurrogateStickerSet(
|
||||
val name: String,
|
||||
val name: StickerSetName,
|
||||
val title: String,
|
||||
val sticker_type: StickerType,
|
||||
val is_animated: Boolean? = false,
|
||||
@@ -22,7 +22,7 @@ data class SurrogateStickerSet(
|
||||
|
||||
@Serializable(StickerSet.Serializer::class)
|
||||
sealed interface StickerSet {
|
||||
val name: String
|
||||
val name: StickerSetName
|
||||
val title: String
|
||||
val stickerType: StickerType
|
||||
val stickerFormat: StickerFormat
|
||||
@@ -146,7 +146,7 @@ sealed interface CustomEmojiStickerSet : StickerSet
|
||||
@Serializable
|
||||
data class RegularSimpleStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -165,7 +165,7 @@ data class RegularSimpleStickerSet(
|
||||
@Serializable
|
||||
data class RegularAnimatedStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -181,7 +181,7 @@ data class RegularAnimatedStickerSet(
|
||||
@Serializable
|
||||
data class RegularVideoStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -197,7 +197,7 @@ data class RegularVideoStickerSet(
|
||||
@Serializable
|
||||
data class MaskSimpleStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -217,7 +217,7 @@ data class MaskSimpleStickerSet(
|
||||
@Serializable
|
||||
data class MaskAnimatedStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -233,7 +233,7 @@ data class MaskAnimatedStickerSet(
|
||||
@Serializable
|
||||
data class MaskVideoStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -249,7 +249,7 @@ data class MaskVideoStickerSet(
|
||||
@Serializable
|
||||
data class CustomEmojiSimpleStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -269,7 +269,7 @@ data class CustomEmojiSimpleStickerSet(
|
||||
@Serializable
|
||||
data class CustomEmojiAnimatedStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -285,7 +285,7 @@ data class CustomEmojiAnimatedStickerSet(
|
||||
@Serializable
|
||||
data class CustomEmojiVideoStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
@@ -301,7 +301,7 @@ data class CustomEmojiVideoStickerSet(
|
||||
@Serializable
|
||||
data class UnknownStickerSet(
|
||||
@SerialName(nameField)
|
||||
override val name: String,
|
||||
override val name: StickerSetName,
|
||||
@SerialName(titleField)
|
||||
override val title: String,
|
||||
@SerialName(stickersField)
|
||||
|
Reference in New Issue
Block a user