Updated on 2026-08-14

This commit is contained in:
Tangem 2026-06-05 12:35:03 +05:00
parent c637c9a194
commit 0b3914cf6a
29 changed files with 453 additions and 37 deletions

View file

@ -0,0 +1,5 @@
package com.tangem.features.virtualaccount
interface VirtualAccountFeatureToggles {
val isVirtualAccountsEnabled: Boolean
}

View file

@ -1,6 +1,8 @@
plugins {
alias(deps.plugins.android.library)
alias(deps.plugins.kotlin.android)
alias(deps.plugins.kotlin.kapt)
alias(deps.plugins.hilt.android)
id("configuration")
}
@ -9,4 +11,13 @@ android {
}
dependencies {
implementation(projects.features.virtualAccounts.details.api)
implementation(projects.core.configToggles)
implementation(deps.compose.runtime)
/** DI */
implementation(deps.hilt.android)
kapt(deps.hilt.kapt)
}

View file

@ -1,15 +1,12 @@
package com.tangem.features.virtualaccount.onboarding.impl
package com.tangem.features.virtualaccount
import com.tangem.core.configtoggle.FeatureToggles
import com.tangem.core.configtoggle.feature.FeatureTogglesManager
import com.tangem.features.virtualaccount.onboarding.api.VirtualAccountsFeatureToggles
import javax.inject.Inject
internal class DefaultVirtualAccountsFeatureToggles
@Inject constructor(
internal class DefaultVirtualAccountFeatureToggles @Inject constructor(
private val featureTogglesManager: FeatureTogglesManager,
) : VirtualAccountsFeatureToggles {
) : VirtualAccountFeatureToggles {
override val isVirtualAccountsEnabled: Boolean
get() = featureTogglesManager.isFeatureEnabled(toggle = FeatureToggles.VIRTUAL_ACCOUNTS_ENABLED)
}

View file

@ -0,0 +1,23 @@
package com.tangem.features.virtualaccount.di
import com.tangem.core.configtoggle.feature.FeatureTogglesManager
import com.tangem.features.virtualaccount.DefaultVirtualAccountFeatureToggles
import com.tangem.features.virtualaccount.VirtualAccountFeatureToggles
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton
@Module
@InstallIn(SingletonComponent::class)
internal object VirtualAccountDetailsModule {
@Provides
@Singleton
fun provideVirtualAccountFeatureToggles(
featureTogglesManager: FeatureTogglesManager,
): VirtualAccountFeatureToggles {
return DefaultVirtualAccountFeatureToggles(featureTogglesManager = featureTogglesManager)
}
}

View file

@ -1,5 +0,0 @@
package com.tangem.features.virtualaccount.onboarding.api
interface VirtualAccountsFeatureToggles {
val isVirtualAccountsEnabled: Boolean
}

View file

@ -1,23 +0,0 @@
package com.tangem.features.virtualaccount.onboarding.impl.di
import com.tangem.core.configtoggle.feature.FeatureTogglesManager
import com.tangem.features.virtualaccount.onboarding.api.VirtualAccountsFeatureToggles
import com.tangem.features.virtualaccount.onboarding.impl.DefaultVirtualAccountsFeatureToggles
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton
@Module
@InstallIn(SingletonComponent::class)
internal object VirtualAccountsOnboardingModule {
@Provides
@Singleton
fun provideVirtualAccountsFeatureToggles(
featureTogglesManager: FeatureTogglesManager,
): VirtualAccountsFeatureToggles {
return DefaultVirtualAccountsFeatureToggles(featureTogglesManager)
}
}