Updated on 2026-08-14

This commit is contained in:
Tangem 2026-02-12 19:55:51 +07:00
commit e2f9535a05
7 changed files with 27 additions and 4 deletions

View file

@ -6,6 +6,7 @@ import com.squareup.moshi.JsonClass
import com.tangem.datasource.api.common.response.ApiResponse
import com.tangem.datasource.api.tangemTech.TangemTechApi
import com.tangem.datasource.api.tangemTech.models.BindWalletsByReferralCodeBody
import com.tangem.datasource.local.appsflyer.AppsFlyerStore
import com.tangem.datasource.local.preferences.AppPreferencesStore
import com.tangem.datasource.local.preferences.utils.getObjectSyncOrNull
import com.tangem.datasource.local.preferences.utils.storeObject
@ -21,6 +22,7 @@ internal class DefaultWalletsPromoRepository(
private val tangemTechApi: TangemTechApi,
private val userWalletsListRepository: UserWalletsListRepository,
private val dispatchers: CoroutineDispatcherProvider,
private val appsFlyerStore: AppsFlyerStore,
) : WalletsPromoRepository {
override suspend fun bindRefcodeWithWallets(conversionData: AppsFlyerConversionData) = withContext(dispatchers.io) {
@ -49,6 +51,10 @@ internal class DefaultWalletsPromoRepository(
}
}
override suspend fun getReferralCodeIfExists(): String? {
return appsFlyerStore.get()?.refcode
}
private suspend fun getSavedBindingData(): ReferralWalletsBindingData? {
return appPreferencesStore.getObjectSyncOrNull(key = REFERRAL_WALLETS_BINDING_DATA_KEY)
}

View file

@ -76,12 +76,14 @@ internal object WalletsDataModule {
tangemTechApi: TangemTechApi,
userWalletsListRepository: UserWalletsListRepository,
dispatchers: CoroutineDispatcherProvider,
appsFlyerStore: AppsFlyerStore,
): WalletsPromoRepository {
return DefaultWalletsPromoRepository(
appPreferencesStore = appPreferencesStore,
tangemTechApi = tangemTechApi,
userWalletsListRepository = userWalletsListRepository,
dispatchers = dispatchers,
appsFlyerStore = appsFlyerStore,
)
}
}