1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2025-09-15 13:19:30 +00:00

add publisher_chat support

This commit is contained in:
2025-09-09 18:00:53 +06:00
parent 255416f72a
commit 8101c4c9fb
2 changed files with 19 additions and 3 deletions

View File

@@ -727,6 +727,7 @@ const val starCountField = "star_count"
const val upgradeStarCountField = "upgrade_star_count" const val upgradeStarCountField = "upgrade_star_count"
const val payToUpgradeField = "pay_for_upgrade" const val payToUpgradeField = "pay_for_upgrade"
const val paidMediaField = "paid_media" const val paidMediaField = "paid_media"
const val publisherChatField = "publisher_chat"
const val centerColorField = "center_color" const val centerColorField = "center_color"
const val edgeColorField = "edge_color" const val edgeColorField = "edge_color"

View File

@@ -1,6 +1,7 @@
package dev.inmo.tgbotapi.types.gifts package dev.inmo.tgbotapi.types.gifts
import dev.inmo.tgbotapi.types.* import dev.inmo.tgbotapi.types.*
import dev.inmo.tgbotapi.types.chat.PreviewChat
import dev.inmo.tgbotapi.types.files.Sticker import dev.inmo.tgbotapi.types.files.Sticker
import dev.inmo.tgbotapi.types.gifts.unique.UniqueGiftBackdrop import dev.inmo.tgbotapi.types.gifts.unique.UniqueGiftBackdrop
import dev.inmo.tgbotapi.types.gifts.unique.UniqueGiftModel import dev.inmo.tgbotapi.types.gifts.unique.UniqueGiftModel
@@ -14,6 +15,7 @@ import kotlinx.serialization.encoding.Encoder
@Serializable(Gift.Companion::class) @Serializable(Gift.Companion::class)
sealed interface Gift { sealed interface Gift {
val publisherChat: PreviewChat?
@Serializable(Regular.Companion::class) @Serializable(Regular.Companion::class)
sealed interface Regular : Gift { sealed interface Regular : Gift {
val id: GiftId val id: GiftId
@@ -32,7 +34,9 @@ sealed interface Gift {
@SerialName(starCountField) @SerialName(starCountField)
override val starCount: Int, override val starCount: Int,
@SerialName(upgradeStarCountField) @SerialName(upgradeStarCountField)
override val upgradeStarCount: Int? = null override val upgradeStarCount: Int? = null,
@SerialName(publisherChatField)
override val publisherChat: PreviewChat? = null,
) : Regular { ) : Regular {
override val totalCount: Int? override val totalCount: Int?
get() = null get() = null
@@ -54,6 +58,8 @@ sealed interface Gift {
override val remainingCount: Int, override val remainingCount: Int,
@SerialName(upgradeStarCountField) @SerialName(upgradeStarCountField)
override val upgradeStarCount: Int? = null, override val upgradeStarCount: Int? = null,
@SerialName(publisherChatField)
override val publisherChat: PreviewChat? = null,
) : Regular ) : Regular
companion object : KSerializer<Regular> { companion object : KSerializer<Regular> {
@@ -66,6 +72,7 @@ sealed interface Gift {
val total_count: Int? = null, val total_count: Int? = null,
val remaining_count: Int? = null, val remaining_count: Int? = null,
val upgrade_star_count: Int? = null, val upgrade_star_count: Int? = null,
val publisher_chat: PreviewChat? = null,
) )
override val descriptor: SerialDescriptor override val descriptor: SerialDescriptor
@@ -82,6 +89,7 @@ sealed interface Gift {
totalCount = surrogate.total_count, totalCount = surrogate.total_count,
remainingCount = surrogate.remaining_count, remainingCount = surrogate.remaining_count,
upgradeStarCount = surrogate.upgrade_star_count, upgradeStarCount = surrogate.upgrade_star_count,
publisherChat = surrogate.publisher_chat
) )
} else { } else {
Unlimited( Unlimited(
@@ -89,6 +97,7 @@ sealed interface Gift {
sticker = surrogate.sticker, sticker = surrogate.sticker,
starCount = surrogate.star_count, starCount = surrogate.star_count,
upgradeStarCount = surrogate.upgrade_star_count, upgradeStarCount = surrogate.upgrade_star_count,
publisherChat = surrogate.publisher_chat,
) )
} }
} }
@@ -100,7 +109,8 @@ sealed interface Gift {
star_count = value.starCount, star_count = value.starCount,
total_count = value.totalCount, total_count = value.totalCount,
remaining_count = value.remainingCount, remaining_count = value.remainingCount,
upgrade_star_count = value.upgradeStarCount upgrade_star_count = value.upgradeStarCount,
publisher_chat = value.publisherChat
) )
RegularGiftSurrogate.serializer().serialize(encoder, surrogate) RegularGiftSurrogate.serializer().serialize(encoder, surrogate)
} }
@@ -120,7 +130,9 @@ sealed interface Gift {
@SerialName(symbolField) @SerialName(symbolField)
val symbol: UniqueGiftSymbol, val symbol: UniqueGiftSymbol,
@SerialName(backdropField) @SerialName(backdropField)
val backdrop: UniqueGiftBackdrop val backdrop: UniqueGiftBackdrop,
@SerialName(publisherChatField)
override val publisherChat: PreviewChat? = null
) : Gift ) : Gift
companion object : KSerializer<Gift> { companion object : KSerializer<Gift> {
@@ -141,6 +153,7 @@ sealed interface Gift {
val model: UniqueGiftModel? = null, val model: UniqueGiftModel? = null,
val symbol: UniqueGiftSymbol? = null, val symbol: UniqueGiftSymbol? = null,
val backdrop: UniqueGiftBackdrop? = null, val backdrop: UniqueGiftBackdrop? = null,
val publisher_chat: PreviewChat? = null,
) )
override val descriptor: SerialDescriptor override val descriptor: SerialDescriptor
@@ -157,6 +170,7 @@ sealed interface Gift {
model = surrogate.model, model = surrogate.model,
symbol = surrogate.symbol, symbol = surrogate.symbol,
backdrop = surrogate.backdrop, backdrop = surrogate.backdrop,
publisherChat = surrogate.publisher_chat
) )
} else { } else {
decoder.decodeSerializableValue(Regular.serializer()) decoder.decodeSerializableValue(Regular.serializer())
@@ -180,6 +194,7 @@ sealed interface Gift {
model = (value as? Unique)?.model, model = (value as? Unique)?.model,
symbol = (value as? Unique)?.symbol, symbol = (value as? Unique)?.symbol,
backdrop = (value as? Unique)?.backdrop, backdrop = (value as? Unique)?.backdrop,
publisher_chat = value.publisherChat,
) )
GiftSurrogate.serializer().serialize(encoder, surrogate) GiftSurrogate.serializer().serialize(encoder, surrogate)
} }