1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2025-12-31 10:29:21 +00:00

Compare commits

..

3 Commits

6 changed files with 54 additions and 3 deletions

View File

@@ -1,6 +1,9 @@
# TelegramBotAPI changelog
## 13.1.0
## 14.0.0
* `Core`:
* `TelegramPaymentChargeId` has been added as value class and replaced raw strings in `SuccessfulPayment` type of `telegramPaymentChargeId`
## 13.0.0

View File

@@ -6,4 +6,4 @@ kotlin.incremental=true
kotlin.incremental.js=true
library_group=dev.inmo
library_version=13.1.0
library_version=14.0.0

View File

@@ -0,0 +1,17 @@
package dev.inmo.tgbotapi.extensions.api.send.payments
import dev.inmo.tgbotapi.bot.TelegramBot
import dev.inmo.tgbotapi.requests.send.payments.RefundStarPayment
import dev.inmo.tgbotapi.types.UserId
import dev.inmo.tgbotapi.types.payments.SuccessfulPayment
import dev.inmo.tgbotapi.types.payments.abstracts.TelegramPaymentChargeId
suspend fun TelegramBot.refundStarPayment(
userId: UserId,
telegramPaymentChargeId: TelegramPaymentChargeId
) = execute(RefundStarPayment(userId, telegramPaymentChargeId))
suspend fun TelegramBot.refundStarPayment(
userId: UserId,
successfulPayment: SuccessfulPayment
) = refundStarPayment(userId, successfulPayment.telegramPaymentChargeId)

View File

@@ -0,0 +1,21 @@
package dev.inmo.tgbotapi.requests.send.payments
import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest
import dev.inmo.tgbotapi.types.*
import dev.inmo.tgbotapi.types.payments.abstracts.TelegramPaymentChargeId
import kotlinx.serialization.*
import kotlinx.serialization.builtins.serializer
@Serializable
data class RefundStarPayment(
@SerialName(userIdField)
val userId: UserId,
@SerialName(telegramPaymentChargeIdField)
val telegramPaymentChargeId: TelegramPaymentChargeId
) : SimpleRequest<Boolean> {
override fun method(): String = "refundStarPayment"
override val resultDeserializer: DeserializationStrategy<Boolean>
get() = Boolean.serializer()
override val requestSerializer: SerializationStrategy<*>
get() = serializer()
}

View File

@@ -14,7 +14,7 @@ data class SuccessfulPayment(
@SerialName(invoicePayloadField)
val invoicePayload: String,
@SerialName(telegramPaymentChargeIdField)
val telegramPaymentChargeId: String,
val telegramPaymentChargeId: TelegramPaymentChargeId,
@SerialName(providerPaymentChargeIdField)
val providerPaymentChargeId: String,
@SerialName(shippingOptionIdField)

View File

@@ -0,0 +1,10 @@
package dev.inmo.tgbotapi.types.payments.abstracts
import kotlinx.serialization.Serializable
import kotlin.jvm.JvmInline
@Serializable
@JvmInline
value class TelegramPaymentChargeId(
val string: String
)