Updated on 2026-08-14
This commit is contained in:
parent
434c459728
commit
42f276c56f
25 changed files with 308 additions and 157 deletions
|
|
@ -3,9 +3,11 @@ package com.tangem.datasource.api.common.adapter
|
|||
import com.squareup.moshi.JsonAdapter
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.squareup.moshi.adapters.EnumJsonAdapter
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.BalanceDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.BalanceDTO.BalanceTypeDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.NetworkTypeDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.YieldDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.YieldDTO.MetadataDTO.RewardClaimingDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.YieldDTO.MetadataDTO.RewardScheduleDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.YieldDTO.RewardTypeDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.action.StakingActionStatusDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.action.StakingActionTypeDTO
|
||||
import com.tangem.datasource.api.stakekit.models.response.model.transaction.StakingTransactionStatusDTO
|
||||
|
|
@ -24,13 +26,15 @@ object UnknownEnumMoshiAdapter {
|
|||
|
||||
fun Moshi.Builder.addStakeKitEnumFallbackAdapters(): Moshi.Builder {
|
||||
val map = mapOf(
|
||||
BalanceTypeDTO::class.java to BalanceTypeDTO.UNKNOWN,
|
||||
NetworkTypeDTO::class.java to NetworkTypeDTO.UNKNOWN,
|
||||
StakingActionTypeDTO::class.java to StakingActionTypeDTO.UNKNOWN,
|
||||
YieldDTO.RewardTypeDTO::class.java to YieldDTO.RewardTypeDTO.UNKNOWN,
|
||||
BalanceDTO.BalanceType::class.java to BalanceDTO.BalanceType.UNKNOWN,
|
||||
StakingTransactionTypeDTO::class.java to StakingTransactionTypeDTO.UNKNOWN,
|
||||
StakingTransactionStatusDTO::class.java to StakingTransactionStatusDTO.UNKNOWN,
|
||||
RewardClaimingDTO::class.java to RewardClaimingDTO.UNKNOWN,
|
||||
RewardScheduleDTO::class.java to RewardScheduleDTO.UNKNOWN,
|
||||
RewardTypeDTO::class.java to RewardTypeDTO.UNKNOWN,
|
||||
StakingActionStatusDTO::class.java to StakingActionStatusDTO.UNKNOWN,
|
||||
StakingActionTypeDTO::class.java to StakingActionTypeDTO.UNKNOWN,
|
||||
StakingTransactionStatusDTO::class.java to StakingTransactionStatusDTO.UNKNOWN,
|
||||
StakingTransactionTypeDTO::class.java to StakingTransactionTypeDTO.UNKNOWN,
|
||||
)
|
||||
|
||||
return apply {
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ data class BalanceDTO(
|
|||
@Json(name = "groupId")
|
||||
val groupId: String,
|
||||
@Json(name = "type")
|
||||
val type: BalanceType,
|
||||
val type: BalanceTypeDTO,
|
||||
@Json(name = "amount")
|
||||
val amount: BigDecimal,
|
||||
@Json(name = "date")
|
||||
|
|
@ -38,7 +38,7 @@ data class BalanceDTO(
|
|||
val providerId: String?,
|
||||
) {
|
||||
|
||||
enum class BalanceType {
|
||||
enum class BalanceTypeDTO {
|
||||
@Json(name = "available")
|
||||
AVAILABLE,
|
||||
|
||||
|
|
|
|||
|
|
@ -105,13 +105,13 @@ data class YieldDTO(
|
|||
@Json(name = "type")
|
||||
val type: String,
|
||||
@Json(name = "rewardSchedule")
|
||||
val rewardSchedule: String,
|
||||
val rewardSchedule: RewardScheduleDTO,
|
||||
@Json(name = "cooldownPeriod")
|
||||
val cooldownPeriod: PeriodDTO,
|
||||
@Json(name = "warmupPeriod")
|
||||
val warmupPeriod: PeriodDTO,
|
||||
@Json(name = "rewardClaiming")
|
||||
val rewardClaiming: String,
|
||||
val rewardClaiming: RewardClaimingDTO,
|
||||
@Json(name = "defaultValidator")
|
||||
val defaultValidator: String?,
|
||||
@Json(name = "minimumStake")
|
||||
|
|
@ -135,6 +135,41 @@ data class YieldDTO(
|
|||
@Json(name = "enabled")
|
||||
val enabled: Boolean,
|
||||
)
|
||||
|
||||
enum class RewardScheduleDTO {
|
||||
@Json(name = "block")
|
||||
BLOCK,
|
||||
|
||||
@Json(name = "week")
|
||||
WEEK,
|
||||
|
||||
@Json(name = "hour")
|
||||
HOUR,
|
||||
|
||||
@Json(name = "day")
|
||||
DAY,
|
||||
|
||||
@Json(name = "month")
|
||||
MONTH,
|
||||
|
||||
@Json(name = "era")
|
||||
ERA,
|
||||
|
||||
@Json(name = "epoch")
|
||||
EPOCH,
|
||||
|
||||
UNKNOWN,
|
||||
}
|
||||
|
||||
enum class RewardClaimingDTO {
|
||||
@Json(name = "auto")
|
||||
AUTO,
|
||||
|
||||
@Json(name = "manual")
|
||||
MANUAL,
|
||||
|
||||
UNKNOWN,
|
||||
}
|
||||
}
|
||||
|
||||
enum class RewardTypeDTO {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue