Updated on 2026-08-14
This commit is contained in:
commit
bf0cb06cb3
297 changed files with 4771 additions and 2376 deletions
|
|
@ -1,3 +1,5 @@
|
|||
import com.tangem.plugin.configuration.configurations.extension.kaptForObfuscatingVariants
|
||||
|
||||
plugins {
|
||||
alias(deps.plugins.android.library)
|
||||
alias(deps.plugins.kotlin.android)
|
||||
|
|
@ -31,6 +33,8 @@ dependencies {
|
|||
implementation(deps.moshi)
|
||||
implementation(deps.moshi.kotlin)
|
||||
implementation(deps.timber)
|
||||
kaptForObfuscatingVariants(deps.moshi.kotlin.codegen)
|
||||
kaptForObfuscatingVariants(deps.retrofit.response.type.keeper)
|
||||
// endregion
|
||||
|
||||
// region Firebase libraries
|
||||
|
|
|
|||
|
|
@ -152,6 +152,10 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? {
|
|||
"dione/test" -> Blockchain.OdysseyChainTestnet
|
||||
"bitrock" -> Blockchain.Bitrock
|
||||
"bitrock/test" -> Blockchain.BitrockTestnet
|
||||
"sonic" -> Blockchain.Sonic
|
||||
"sonic/test" -> Blockchain.SonicTestnet
|
||||
"apechain" -> Blockchain.ApeChain
|
||||
"apechain/test" -> Blockchain.ApeChainTestnet
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
|
|
@ -301,6 +305,10 @@ fun Blockchain.toNetworkId(): String {
|
|||
Blockchain.OdysseyChainTestnet -> "dione/test"
|
||||
Blockchain.Bitrock -> "bitrock"
|
||||
Blockchain.BitrockTestnet -> "bitrock/test"
|
||||
Blockchain.Sonic -> "sonic"
|
||||
Blockchain.SonicTestnet -> "sonic/test"
|
||||
Blockchain.ApeChain -> "apechain"
|
||||
Blockchain.ApeChainTestnet -> "apechain/test"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -398,6 +406,8 @@ fun Blockchain.toCoinId(): String {
|
|||
Blockchain.Clore -> "clore-ai"
|
||||
Blockchain.OdysseyChain, Blockchain.OdysseyChainTestnet -> "dione"
|
||||
Blockchain.Bitrock, Blockchain.BitrockTestnet -> "bitrock"
|
||||
Blockchain.Sonic, Blockchain.SonicTestnet -> "sonic-3"
|
||||
Blockchain.ApeChain, Blockchain.ApeChainTestnet -> "apecoin"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,11 +17,13 @@ import com.tangem.domain.models.scan.CardDTO
|
|||
import com.tangem.domain.models.scan.ScanResponse
|
||||
import com.tangem.domain.visa.model.VisaActivationInput
|
||||
import com.tangem.domain.visa.model.VisaAuthChallenge
|
||||
import com.tangem.domain.visa.model.VisaCardActivationResponse
|
||||
import com.tangem.domain.visa.model.VisaDataForApprove
|
||||
import com.tangem.domain.wallets.models.UserWalletId
|
||||
import com.tangem.operations.derivation.DerivationTaskResponse
|
||||
import com.tangem.operations.preflightread.PreflightReadFilter
|
||||
import com.tangem.operations.sign.SignHashResponse
|
||||
import com.tangem.operations.wallet.CreateWalletResponse
|
||||
import com.tangem.sdk.api.visa.VisaCardActivationResponse
|
||||
|
||||
@Suppress("TooManyFunctions")
|
||||
interface TangemSdkManager {
|
||||
|
|
@ -153,5 +155,7 @@ interface TangemSdkManager {
|
|||
activationInput: VisaActivationInput,
|
||||
): CompletionResult<VisaCardActivationResponse>
|
||||
|
||||
suspend fun visaCustomerWalletApprove(visaDataForApprove: VisaDataForApprove): CompletionResult<SignHashResponse>
|
||||
|
||||
// endregion
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.tangem.sdk.api.visa
|
||||
|
||||
import com.tangem.domain.models.scan.CardDTO
|
||||
import com.tangem.domain.visa.model.SignedActivationOrder
|
||||
import com.tangem.domain.visa.model.VisaRootOTP
|
||||
|
||||
data class VisaCardActivationResponse(
|
||||
val signedActivationOrder: SignedActivationOrder,
|
||||
val rootOTP: VisaRootOTP,
|
||||
val newCardDTO: CardDTO,
|
||||
)
|
||||
|
|
@ -1,6 +1,9 @@
|
|||
import com.tangem.plugin.configuration.configurations.extension.kaptForObfuscatingVariants
|
||||
|
||||
plugins {
|
||||
alias(deps.plugins.android.library)
|
||||
alias(deps.plugins.kotlin.android)
|
||||
alias(deps.plugins.kotlin.kapt)
|
||||
id("configuration")
|
||||
}
|
||||
|
||||
|
|
@ -21,6 +24,8 @@ dependencies {
|
|||
implementation(deps.okHttp.prettyLogging)
|
||||
implementation(deps.retrofit)
|
||||
implementation(deps.retrofit.moshi)
|
||||
kaptForObfuscatingVariants(deps.moshi.kotlin.codegen)
|
||||
kaptForObfuscatingVariants(deps.retrofit.response.type.keeper)
|
||||
|
||||
/** Libs - Other */
|
||||
implementation(deps.web3j.core)
|
||||
|
|
|
|||
|
|
@ -3,12 +3,14 @@ package com.tangem.lib.visa.api
|
|||
import com.tangem.datasource.api.common.response.ApiResponse
|
||||
import com.tangem.lib.visa.model.VisaTxHistoryResponse
|
||||
import retrofit2.http.GET
|
||||
import retrofit2.http.Header
|
||||
import retrofit2.http.Query
|
||||
|
||||
interface VisaApi {
|
||||
|
||||
@GET("transaction")
|
||||
suspend fun getTxHistory(
|
||||
@Header("Authorization") authorizationHeader: String,
|
||||
@Query("card_public_key") cardPublicKey: String,
|
||||
@Query("limit") limit: Int,
|
||||
@Query("offset") offset: Int,
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
package com.tangem.lib.visa.model
|
||||
|
||||
import com.squareup.moshi.Json
|
||||
import com.squareup.moshi.JsonClass
|
||||
import org.joda.time.DateTime
|
||||
import java.math.BigDecimal
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class VisaTxHistoryResponse(
|
||||
@Json(name = "card_wallet_address")
|
||||
val cardWalletAddress: String,
|
||||
|
|
@ -11,6 +13,7 @@ data class VisaTxHistoryResponse(
|
|||
val transactions: List<Transaction>,
|
||||
) {
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class Transaction(
|
||||
@Json(name = "auth_code")
|
||||
val authCode: String?,
|
||||
|
|
@ -52,6 +55,7 @@ data class VisaTxHistoryResponse(
|
|||
val transactionType: String,
|
||||
) {
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class Request(
|
||||
@Json(name = "billing_amount")
|
||||
val billingAmount: BigDecimal,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue