Updated on 2026-08-14

This commit is contained in:
Tangem 2024-10-28 17:46:06 +03:00
parent f5eca5ab2a
commit 679a54bc0d
16 changed files with 87 additions and 46 deletions

View file

@ -148,6 +148,8 @@ dependencies {
implementation(projects.features.markets.impl)
implementation(projects.features.onramp.api)
implementation(projects.features.onramp.impl)
implementation(projects.features.onboardingV2.api)
implementation(projects.features.onboardingV2.impl)
/** AndroidX libraries */
implementation(deps.androidx.core.ktx)

View file

@ -16,4 +16,7 @@ dependencies {
/* Project - Core */
implementation(projects.core.decompose)
implementation(projects.core.ui)
/* Compose */
implementation(deps.compose.runtime)
}

View file

@ -13,4 +13,7 @@ dependencies {
/* Project - Core */
implementation(projects.core.decompose)
implementation(projects.core.ui)
/* Compose */
implementation(deps.compose.runtime)
}

View file

@ -1,18 +0,0 @@
package com.tangem.feature.onboarding.legacy.di
import com.tangem.feature.onboarding.legacy.featuretoggle.DefaultOnboardingLegacyFeatureToggles
import com.tangem.feature.onboarding.legacy.featuretoggle.OnboardingLegacyFeatureToggles
import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton
@Module
@InstallIn(SingletonComponent::class)
internal interface FeatureModule {
@Singleton
@Binds
fun provideFeatureToggles(featureToggles: DefaultOnboardingLegacyFeatureToggles): OnboardingLegacyFeatureToggles
}

View file

@ -1,5 +0,0 @@
package com.tangem.feature.onboarding.legacy.featuretoggle
interface OnboardingLegacyFeatureToggles {
val isRewrittenOnboardingCodeInUse: Boolean
}

View file

@ -0,0 +1,22 @@
plugins {
alias(deps.plugins.android.library)
alias(deps.plugins.kotlin.android)
id("configuration")
}
android {
namespace = "com.tangem.features.onboarding.v2.api"
}
dependencies {
/* Project - Domain */
implementation(projects.domain.wallets.models)
/* Project - Core */
implementation(projects.core.decompose)
implementation(projects.core.ui)
/* Compose */
implementation(deps.compose.runtime)
}

View file

@ -0,0 +1,5 @@
package com.tangem.features.onboarding.v2
interface OnboardingV2FeatureToggles {
val isRewrittenOnboardingCodeInUse: Boolean
}

View file

@ -0,0 +1,13 @@
package com.tangem.features.onboarding.v2.entry
import com.tangem.core.decompose.factory.ComponentFactory
import com.tangem.core.ui.decompose.ComposableContentComponent
interface OnboardingEntryComponent : ComposableContentComponent {
data class Params(
val todo: String,
)
interface Factory : ComponentFactory<Params, OnboardingEntryComponent>
}

View file

@ -0,0 +1 @@
/build

View file

@ -8,21 +8,20 @@ plugins {
}
android {
namespace = "com.tangem.feature.onboarding.legacy"
namespace = "com.tangem.features.onboarding.v2.impl"
}
dependencies {
/** Api */
implementation(projects.features.onboardingV2.api)
/** Core modules */
implementation(project(":common"))
implementation(project(":domain:models"))
implementation(project(":core:featuretoggles"))
implementation(project(":core:datasource"))
implementation(project(":core:analytics"))
implementation(projects.core.featuretoggles)
implementation(projects.core.analytics)
implementation(projects.core.analytics.models)
implementation(project(":core:utils"))
implementation(project(":core:ui"))
implementation(project(":core:res"))
implementation(project(":data:common"))
implementation(projects.core.utils)
implementation(projects.core.ui)
implementation(projects.core.res)
/** Tangem libraries */
implementation(deps.tangem.card.core)
@ -33,27 +32,18 @@ dependencies {
/** AndroidX libraries */
implementation(deps.androidx.core.ktx)
implementation(deps.androidx.appCompat)
implementation(deps.androidx.fragment.ktx)
implementation(deps.androidx.constraintLayout)
implementation(deps.androidx.activity.compose)
implementation(deps.lifecycle.runtime.ktx)
implementation(deps.lifecycle.common.java8)
implementation(deps.lifecycle.viewModel.ktx)
/** Compose libraries */
implementation(deps.compose.material)
implementation(deps.compose.material3)
implementation(deps.compose.animation)
implementation(deps.compose.foundation)
implementation(deps.compose.ui)
implementation(deps.compose.ui.tooling)
implementation(deps.compose.coil)
implementation(deps.compose.shimmer)
implementation(deps.tangem.card.core)
/** Other libraries */
implementation(deps.compose.shimmer)
implementation(deps.kotlin.immutable.collections)
implementation(deps.kotlin.serialization)
implementation(deps.timber)

View file

@ -1,11 +1,11 @@
package com.tangem.feature.onboarding.legacy.featuretoggle
package com.tangem.features.onboarding.v2
import com.tangem.core.featuretoggle.manager.FeatureTogglesManager
import javax.inject.Inject
internal class DefaultOnboardingLegacyFeatureToggles @Inject constructor(
internal class DefaultOnboardingV2FeatureToggles @Inject constructor(
private val featureTogglesManager: FeatureTogglesManager,
) : OnboardingLegacyFeatureToggles {
) : OnboardingV2FeatureToggles {
override val isRewrittenOnboardingCodeInUse: Boolean
get() = featureTogglesManager.isFeatureEnabled("ONBOARDING_CODE_REFACTORING_ENABLED")
}

View file

@ -0,0 +1,18 @@
package com.tangem.features.onboarding.v2.di
import com.tangem.features.onboarding.v2.DefaultOnboardingV2FeatureToggles
import com.tangem.features.onboarding.v2.OnboardingV2FeatureToggles
import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton
@Module
@InstallIn(SingletonComponent::class)
internal interface FeatureModule {
@Singleton
@Binds
fun provideFeatureToggles(featureToggles: DefaultOnboardingV2FeatureToggles): OnboardingV2FeatureToggles
}

View file

@ -13,4 +13,7 @@ dependencies {
/* Project - Core */
implementation(projects.core.decompose)
implementation(projects.core.ui)
/* Compose */
implementation(deps.compose.runtime)
}

View file

@ -16,4 +16,7 @@ dependencies {
/* Project - Core */
implementation(projects.core.decompose)
implementation(projects.core.ui)
/* Compose */
implementation(deps.compose.runtime)
}

View file

@ -151,7 +151,8 @@ include(":libs:visa")
// region Feature modules
include(":features:onboarding")
include(":features:onboarding-legacy")
include(":features:onboarding-v2:api")
include(":features:onboarding-v2:impl")
include(":features:referral:data")
include(":features:referral:domain")