diff --git a/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/Responses.kt b/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/Responses.kt index 37c99cc0ab..532a5debfb 100644 --- a/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/Responses.kt +++ b/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/Responses.kt @@ -11,7 +11,7 @@ sealed interface TangemTechResponse : HttpResponse data class CoinsResponse( val imageHost: String?, val coins: List, - val total: Int + val total: Int, ) : TangemTechResponse { data class Coin( @@ -19,13 +19,14 @@ data class CoinsResponse( val name: String, val symbol: String, val active: Boolean, - val networks: List = listOf() + val networks: List = listOf(), ) : TangemTechResponse { data class Network( val networkId: String, val contractAddress: String? = null, val decimalCount: BigDecimal? = null, + val exchangeable: Boolean? = false, ) : TangemTechResponse } } diff --git a/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/TangemTechApi.kt b/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/TangemTechApi.kt index a0eafa51d8..e518041674 100644 --- a/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/TangemTechApi.kt +++ b/core/datasource/src/main/java/com/tangem/datasource/api/tangemTech/TangemTechApi.kt @@ -14,11 +14,12 @@ interface TangemTechApi { @GET("coins") suspend fun coins( @Query("contractAddress") contractAddress: String? = null, + @Query("exchangeable") exchangeable: Boolean? = false, @Query("networkIds") networkIds: String? = null, @Query("active") active: Boolean? = null, @Query("searchText") searchText: String? = null, @Query("offset") offset: Int? = null, - @Query("limit") limit: Int? = null + @Query("limit") limit: Int? = null, ): CoinsResponse @GET("rates") diff --git a/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt b/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt index 0e88861b6d..d662a98721 100644 --- a/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt +++ b/core/datasource/src/main/java/com/tangem/datasource/di/NetworkModule.kt @@ -5,6 +5,7 @@ import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory import com.tangem.datasource.api.AuthHeaderInterceptor import com.tangem.datasource.api.oneinch.OneInchApi import com.tangem.datasource.api.referral.ReferralApi +import com.tangem.datasource.api.tangemTech.TangemTechApi import com.tangem.datasource.di.qualifiers.OneInchEthereum import com.tangem.lib.auth.AuthProvider import dagger.Module @@ -21,6 +22,19 @@ import javax.inject.Singleton @InstallIn(SingletonComponent::class) class NetworkModule { + @Provides + @Singleton + fun provideTangemTechApi(okHttpClient: OkHttpClient): TangemTechApi { + return Retrofit.Builder() + .addConverterFactory( + MoshiConverterFactory.create(), + ) + .baseUrl(DEV_TANGEM_TECH_BASE_URL) + .client(okHttpClient) + .build() + .create(TangemTechApi::class.java) + } + @Provides @Singleton @OneInchEthereum @@ -46,7 +60,7 @@ class NetworkModule { .build(), ), ) - .baseUrl(PROD_REFERRAL_BASE_URL) + .baseUrl(DEV_TANGEM_TECH_BASE_URL) .client(okHttpClient) .build() .create(ReferralApi::class.java) @@ -64,7 +78,8 @@ class NetworkModule { } private companion object { - const val PROD_REFERRAL_BASE_URL = "https://devapi.tangem-tech.com/v1/"//"https://api.tangem-tech.com/v1/" + const val PROD_TANGEM_TECH_BASE_URL = "https://api.tangem-tech.com/v1/" + const val DEV_TANGEM_TECH_BASE_URL = "https://devapi.tangem-tech.com/v1/" const val ONE_INCH_ETHER_BASE_URL = "" } } \ No newline at end of file