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

feat: added the transactionType field to TransactionPartner.User

This commit is contained in:
bpavuk
2025-04-16 18:51:55 +03:00
parent 389a508fa7
commit 1bde43ceaf
2 changed files with 6 additions and 0 deletions

View File

@@ -487,6 +487,7 @@ const val optionsField = "options"
const val payField = "pay"
const val permissionsField = "permissions"
const val premiumSubscriptionDurationField = "premium_subscription_duration"
const val transactionTypeField = "transaction_type"
const val typeField = "type"
const val valueField = "value"
const val creatorField = "creator"

View File

@@ -63,6 +63,8 @@ sealed interface TransactionPartner {
val gift: Gift? = null,
@SerialName(premiumSubscriptionDurationField)
val premiumSubscriptionDuration: Int? = null,
@SerialName(transactionTypeField)
val transactionType: String,
) : TransactionPartner, SubscriptionPeriodInfo {
@EncodeDefault
override val type: String = Companion.type
@@ -154,6 +156,7 @@ sealed interface TransactionPartner {
val paid_media_payload: PaidMediaPayload? = null,
val gift: Gift? = null,
val premium_subscription_duration: Int? = null,
val transaction_type: String? = null,
val request_count: Int? = null,
val sponsor_user: PreviewBot? = null,
val commission_per_mille: Int? = null,
@@ -185,6 +188,7 @@ sealed interface TransactionPartner {
paidMediaPayload = paid_media_payload,
gift = gift,
premiumSubscriptionDuration = premium_subscription_duration,
transactionType = transaction_type ?: return unknown,
)
TelegramAPI.type -> TelegramAPI(
data.request_count ?: return unknown,
@@ -222,6 +226,7 @@ sealed interface TransactionPartner {
paid_media_payload = paidMediaPayload,
gift = gift,
premium_subscription_duration = premiumSubscriptionDuration,
transaction_type = transactionType
)
is TelegramAPI -> Surrogate(type = value.type, request_count = requestCount)
is Fragment -> Surrogate(