Updated on 2026-08-14

This commit is contained in:
Tangem 2025-09-10 11:17:04 +04:00
parent 155e7e3d2c
commit e0a5bf6e9e
9 changed files with 63 additions and 28 deletions

View file

@ -18,7 +18,7 @@ class DefaultKycComponent @AssistedInject constructor(
private val model: DefaultKycModel = getOrCreateModel()
override fun launch(params: KycComponent.Params) {
override fun launch() {
componentScope.launch {
model.uiState.collect {
it?.let { startInfo ->
@ -35,7 +35,7 @@ class DefaultKycComponent @AssistedInject constructor(
}
}
}
model.getKycToken(params)
model.getKycToken()
}
@AssistedFactory

View file

@ -4,7 +4,7 @@ import androidx.compose.runtime.Stable
import com.tangem.core.decompose.di.ModelScoped
import com.tangem.core.decompose.model.Model
import com.tangem.domain.pay.KycStartInfo
import com.tangem.domain.pay.repository.KycRepository
import com.tangem.domain.pay.usecase.KycStartInfoUseCase
import com.tangem.utils.coroutines.CoroutineDispatcherProvider
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow
@ -15,18 +15,15 @@ import javax.inject.Inject
@ModelScoped
class DefaultKycModel @Inject constructor(
override val dispatchers: CoroutineDispatcherProvider,
kycRepositoryFactory: KycRepository.Factory,
private val kycStartInfoUseCase: KycStartInfoUseCase,
) : Model() {
private val kycRepository = kycRepositoryFactory.create()
private val _uiState: MutableStateFlow<KycStartInfo?> = MutableStateFlow(null)
val uiState = _uiState.asStateFlow()
fun getKycToken(params: KycComponent.Params) {
fun getKycToken() {
modelScope.launch {
kycRepository.getKycStartInfo(address = params.targetAddress, cardId = params.cardId).getOrNull()
?.let { _uiState.emit(it) }
kycStartInfoUseCase().getOrNull()?.let { _uiState.emit(it) }
}
}
}