diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 4543073e2a..3682efb9f5 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -65,6 +65,8 @@ dependencies { implementation(projects.domain.visa) implementation(projects.domain.onboarding) implementation(projects.domain.feedback) + implementation(projects.domain.qrScanning) + implementation(projects.domain.qrScanning.models) implementation(projects.common) implementation(projects.core.analytics) @@ -95,6 +97,7 @@ dependencies { implementation(projects.data.promo) implementation(projects.data.onboarding) implementation(projects.data.feedback) + implementation(projects.data.qrScanning) /** Features */ implementation(projects.features.onboarding) @@ -112,9 +115,9 @@ dependencies { implementation(projects.features.wallet.impl) implementation(projects.features.tokendetails.api) implementation(projects.features.tokendetails.impl) - implementation(projects.features.send.api) implementation(projects.features.manageTokens.api) implementation(projects.features.manageTokens.impl) + implementation(projects.features.send.api) implementation(projects.features.send.impl) implementation(projects.features.qrScanning.api) implementation(projects.features.qrScanning.impl) diff --git a/app/src/main/java/com/tangem/tap/di/domain/QrScanningDomainModule.kt b/app/src/main/java/com/tangem/tap/di/domain/QrScanningDomainModule.kt index ba2c69965b..43f66670c6 100644 --- a/app/src/main/java/com/tangem/tap/di/domain/QrScanningDomainModule.kt +++ b/app/src/main/java/com/tangem/tap/di/domain/QrScanningDomainModule.kt @@ -1,7 +1,8 @@ package com.tangem.tap.di.domain -import com.tangem.feature.qrscanning.repo.QrScanningEventsRepository -import com.tangem.feature.qrscanning.usecase.ListenToQrScanningUseCase +import com.tangem.domain.qrscanning.repository.QrScanningEventsRepository +import com.tangem.domain.qrscanning.usecases.EmitQrScannedEventUseCase +import com.tangem.domain.qrscanning.usecases.ListenToQrScanningUseCase import dagger.Module import dagger.Provides import dagger.hilt.InstallIn @@ -17,4 +18,10 @@ internal object QrScanningDomainModule { fun provideListenToQrScanUseCase(repository: QrScanningEventsRepository): ListenToQrScanningUseCase { return ListenToQrScanningUseCase(repository) } + + @Provides + @Singleton + fun provideEmitQrScannedEventUseCase(repository: QrScanningEventsRepository): EmitQrScannedEventUseCase { + return EmitQrScannedEventUseCase(repository) + } } \ No newline at end of file diff --git a/app/src/main/java/com/tangem/tap/features/details/redux/walletconnect/WalletConnectMiddleware.kt b/app/src/main/java/com/tangem/tap/features/details/redux/walletconnect/WalletConnectMiddleware.kt index c6422a0706..c45ec9dae3 100644 --- a/app/src/main/java/com/tangem/tap/features/details/redux/walletconnect/WalletConnectMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/details/redux/walletconnect/WalletConnectMiddleware.kt @@ -13,12 +13,12 @@ import com.tangem.domain.common.extensions.withMainContext import com.tangem.domain.common.util.cardTypesResolver import com.tangem.domain.common.util.derivationStyleProvider import com.tangem.domain.models.scan.ScanResponse +import com.tangem.domain.qrscanning.models.SourceType import com.tangem.domain.tokens.model.CryptoCurrency import com.tangem.domain.walletconnect.WalletConnectActions import com.tangem.domain.wallets.models.UserWallet import com.tangem.domain.wallets.models.UserWalletId import com.tangem.feature.qrscanning.QrScanningRouter -import com.tangem.feature.qrscanning.SourceType import com.tangem.tap.common.extensions.dispatchOnMain import com.tangem.tap.common.extensions.inject import com.tangem.tap.common.redux.AppState diff --git a/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/WalletConnectViewModel.kt b/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/WalletConnectViewModel.kt index c096d0531e..cb6a206195 100644 --- a/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/WalletConnectViewModel.kt +++ b/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/WalletConnectViewModel.kt @@ -2,8 +2,8 @@ package com.tangem.tap.features.details.ui.walletconnect import androidx.lifecycle.* import arrow.core.getOrElse -import com.tangem.feature.qrscanning.SourceType -import com.tangem.feature.qrscanning.usecase.ListenToQrScanningUseCase +import com.tangem.domain.qrscanning.models.SourceType +import com.tangem.domain.qrscanning.usecases.ListenToQrScanningUseCase import com.tangem.tap.features.details.redux.walletconnect.WalletConnectAction import com.tangem.tap.features.details.redux.walletconnect.WalletConnectSession import com.tangem.tap.features.details.redux.walletconnect.WalletConnectState diff --git a/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/dialogs/ClipboardOrScanQrDialog.kt b/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/dialogs/ClipboardOrScanQrDialog.kt index d3f92e4286..23a605e2d5 100644 --- a/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/dialogs/ClipboardOrScanQrDialog.kt +++ b/app/src/main/java/com/tangem/tap/features/details/ui/walletconnect/dialogs/ClipboardOrScanQrDialog.kt @@ -7,7 +7,7 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.tangem.core.navigation.AppScreen import com.tangem.core.navigation.NavigationAction import com.tangem.feature.qrscanning.QrScanningRouter -import com.tangem.feature.qrscanning.SourceType +import com.tangem.domain.qrscanning.models.SourceType import com.tangem.tap.common.redux.global.GlobalAction import com.tangem.tap.features.details.redux.walletconnect.WalletConnectAction import com.tangem.tap.store diff --git a/app/src/main/java/com/tangem/tap/features/send/ui/SendFragment.kt b/app/src/main/java/com/tangem/tap/features/send/ui/SendFragment.kt index 775a5cc578..84628d0ffa 100644 --- a/app/src/main/java/com/tangem/tap/features/send/ui/SendFragment.kt +++ b/app/src/main/java/com/tangem/tap/features/send/ui/SendFragment.kt @@ -25,10 +25,10 @@ import com.tangem.core.analytics.Analytics import com.tangem.core.navigation.AppScreen import com.tangem.core.navigation.NavigationAction import com.tangem.domain.appcurrency.model.AppCurrency +import com.tangem.domain.qrscanning.models.SourceType +import com.tangem.domain.qrscanning.usecases.ListenToQrScanningUseCase import com.tangem.domain.tokens.legacy.TradeCryptoAction import com.tangem.feature.qrscanning.QrScanningRouter -import com.tangem.feature.qrscanning.SourceType -import com.tangem.feature.qrscanning.usecase.ListenToQrScanningUseCase import com.tangem.sdk.extensions.hideSoftKeyboard import com.tangem.tap.common.KeyboardObserver import com.tangem.tap.common.analytics.events.Token diff --git a/data/qr-scanning/.gitignore b/data/qr-scanning/.gitignore new file mode 100644 index 0000000000..42afabfd2a --- /dev/null +++ b/data/qr-scanning/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/data/qr-scanning/build.gradle.kts b/data/qr-scanning/build.gradle.kts new file mode 100644 index 0000000000..ec2f620228 --- /dev/null +++ b/data/qr-scanning/build.gradle.kts @@ -0,0 +1,22 @@ +plugins { + alias(deps.plugins.android.library) + alias(deps.plugins.kotlin.android) + alias(deps.plugins.kotlin.kapt) + alias(deps.plugins.hilt.android) + id("configuration") +} + +android { + namespace = "com.tangem.data.qrscanning" +} + +dependencies { + + /** Domain */ + implementation(projects.domain.qrScanning) + implementation(projects.domain.qrScanning.models) + + /** DI */ + implementation(deps.hilt.android) + kapt(deps.hilt.kapt) +} \ No newline at end of file diff --git a/data/qr-scanning/src/main/java/com/tangem/data/qrscanning/di/QrScanningDataModule.kt b/data/qr-scanning/src/main/java/com/tangem/data/qrscanning/di/QrScanningDataModule.kt new file mode 100644 index 0000000000..efe697f667 --- /dev/null +++ b/data/qr-scanning/src/main/java/com/tangem/data/qrscanning/di/QrScanningDataModule.kt @@ -0,0 +1,20 @@ +package com.tangem.data.qrscanning.di + +import com.tangem.data.qrscanning.repository.DefaultQrScanningEventsRepository +import com.tangem.domain.qrscanning.repository.QrScanningEventsRepository +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 QrScanningDataModule { + + @Provides + @Singleton + fun provideQrScanningEventsRepository(): QrScanningEventsRepository { + return DefaultQrScanningEventsRepository() + } +} \ No newline at end of file diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/repo/DefaultQrScanningEventsRepository.kt b/data/qr-scanning/src/main/java/com/tangem/data/qrscanning/repository/DefaultQrScanningEventsRepository.kt similarity index 63% rename from features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/repo/DefaultQrScanningEventsRepository.kt rename to data/qr-scanning/src/main/java/com/tangem/data/qrscanning/repository/DefaultQrScanningEventsRepository.kt index 146bee2ef6..1732996a6b 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/repo/DefaultQrScanningEventsRepository.kt +++ b/data/qr-scanning/src/main/java/com/tangem/data/qrscanning/repository/DefaultQrScanningEventsRepository.kt @@ -1,7 +1,10 @@ -package com.tangem.feature.qrscanning.repo +package com.tangem.data.qrscanning.repository -import com.tangem.feature.qrscanning.SourceType -import kotlinx.coroutines.flow.* +import com.tangem.domain.qrscanning.models.SourceType +import com.tangem.domain.qrscanning.repository.QrScanningEventsRepository +import kotlinx.coroutines.flow.MutableSharedFlow +import kotlinx.coroutines.flow.filter +import kotlinx.coroutines.flow.map internal class DefaultQrScanningEventsRepository : QrScanningEventsRepository { diff --git a/domain/qr-scanning/.gitignore b/domain/qr-scanning/.gitignore new file mode 100644 index 0000000000..42afabfd2a --- /dev/null +++ b/domain/qr-scanning/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/domain/qr-scanning/build.gradle.kts b/domain/qr-scanning/build.gradle.kts new file mode 100644 index 0000000000..fe5d126eb1 --- /dev/null +++ b/domain/qr-scanning/build.gradle.kts @@ -0,0 +1,13 @@ +plugins { + alias(deps.plugins.kotlin.jvm) + id("configuration") +} + +dependencies { + + /** Domain */ + implementation(projects.domain.qrScanning.models) + + implementation(deps.kotlin.coroutines) + implementation(deps.arrow.core) +} \ No newline at end of file diff --git a/domain/qr-scanning/models/.gitignore b/domain/qr-scanning/models/.gitignore new file mode 100644 index 0000000000..42afabfd2a --- /dev/null +++ b/domain/qr-scanning/models/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/domain/qr-scanning/models/build.gradle.kts b/domain/qr-scanning/models/build.gradle.kts new file mode 100644 index 0000000000..7ff7fb7522 --- /dev/null +++ b/domain/qr-scanning/models/build.gradle.kts @@ -0,0 +1,4 @@ +plugins { + alias(deps.plugins.kotlin.jvm) + id("configuration") +} \ No newline at end of file diff --git a/features/qr-scanning/api/src/main/java/com/tangem/feature/qrscanning/SourceType.kt b/domain/qr-scanning/models/src/main/java/com/tangem/domain/qrscanning/models/SourceType.kt similarity index 56% rename from features/qr-scanning/api/src/main/java/com/tangem/feature/qrscanning/SourceType.kt rename to domain/qr-scanning/models/src/main/java/com/tangem/domain/qrscanning/models/SourceType.kt index 96640d74e6..87be83fd0c 100644 --- a/features/qr-scanning/api/src/main/java/com/tangem/feature/qrscanning/SourceType.kt +++ b/domain/qr-scanning/models/src/main/java/com/tangem/domain/qrscanning/models/SourceType.kt @@ -1,4 +1,4 @@ -package com.tangem.feature.qrscanning +package com.tangem.domain.qrscanning.models enum class SourceType { WALLET_CONNECT, diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/repo/QrScanningEventsRepository.kt b/domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/repository/QrScanningEventsRepository.kt similarity index 67% rename from features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/repo/QrScanningEventsRepository.kt rename to domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/repository/QrScanningEventsRepository.kt index 3640e79c2a..b834c4dbcd 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/repo/QrScanningEventsRepository.kt +++ b/domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/repository/QrScanningEventsRepository.kt @@ -1,6 +1,6 @@ -package com.tangem.feature.qrscanning.repo +package com.tangem.domain.qrscanning.repository -import com.tangem.feature.qrscanning.SourceType +import com.tangem.domain.qrscanning.models.SourceType import kotlinx.coroutines.flow.Flow interface QrScanningEventsRepository { diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/usecase/EmitQrScannedEventUseCase.kt b/domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/usecases/EmitQrScannedEventUseCase.kt similarity index 65% rename from features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/usecase/EmitQrScannedEventUseCase.kt rename to domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/usecases/EmitQrScannedEventUseCase.kt index cc7f7bc6c2..ebe0e5980f 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/usecase/EmitQrScannedEventUseCase.kt +++ b/domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/usecases/EmitQrScannedEventUseCase.kt @@ -1,12 +1,12 @@ -package com.tangem.feature.qrscanning.usecase +package com.tangem.domain.qrscanning.usecases import arrow.core.Either import arrow.core.left import arrow.core.right -import com.tangem.feature.qrscanning.SourceType -import com.tangem.feature.qrscanning.repo.QrScanningEventsRepository +import com.tangem.domain.qrscanning.models.SourceType +import com.tangem.domain.qrscanning.repository.QrScanningEventsRepository -internal class EmitQrScannedEventUseCase( +class EmitQrScannedEventUseCase( private val repository: QrScanningEventsRepository, ) { suspend operator fun invoke(type: SourceType, qrCode: String): Either { diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/usecase/ListenToQrScanningUseCase.kt b/domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/usecases/ListenToQrScanningUseCase.kt similarity index 69% rename from features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/usecase/ListenToQrScanningUseCase.kt rename to domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/usecases/ListenToQrScanningUseCase.kt index e3ef9f9dc1..3c42400420 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/usecase/ListenToQrScanningUseCase.kt +++ b/domain/qr-scanning/src/main/java/com/tangem/domain/qrscanning/usecases/ListenToQrScanningUseCase.kt @@ -1,12 +1,11 @@ -package com.tangem.feature.qrscanning.usecase +package com.tangem.domain.qrscanning.usecases import arrow.core.Either import arrow.core.left import arrow.core.right -import com.tangem.feature.qrscanning.SourceType -import com.tangem.feature.qrscanning.repo.QrScanningEventsRepository +import com.tangem.domain.qrscanning.models.SourceType +import com.tangem.domain.qrscanning.repository.QrScanningEventsRepository import kotlinx.coroutines.flow.Flow -import java.lang.Exception class ListenToQrScanningUseCase( val repository: QrScanningEventsRepository, diff --git a/features/qr-scanning/impl/build.gradle.kts b/features/qr-scanning/impl/build.gradle.kts index e1d37506b4..5ad7d8346d 100644 --- a/features/qr-scanning/impl/build.gradle.kts +++ b/features/qr-scanning/impl/build.gradle.kts @@ -10,7 +10,6 @@ android { namespace = "com.tangem.feature.qrscanning.impl" } - dependencies { /** Core */ @@ -40,8 +39,13 @@ dependencies { implementation(deps.hilt.android) kapt(deps.hilt.kapt) + /** Api */ implementation(projects.features.qrScanning.api) + /** Domain */ + implementation(projects.domain.qrScanning) + implementation(projects.domain.qrScanning.models) + /** Compose */ implementation(deps.compose.foundation) implementation(deps.compose.ui) diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/di/QrScanningModule.kt b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/di/QrScanningModule.kt deleted file mode 100644 index ad088e8c28..0000000000 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/di/QrScanningModule.kt +++ /dev/null @@ -1,27 +0,0 @@ -package com.tangem.feature.qrscanning.di - -import com.tangem.feature.qrscanning.repo.DefaultQrScanningEventsRepository -import com.tangem.feature.qrscanning.repo.QrScanningEventsRepository -import com.tangem.feature.qrscanning.usecase.EmitQrScannedEventUseCase -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 QrScanningModule { - - @Provides - @Singleton - fun provideQrScannedEventsRepository(): QrScanningEventsRepository { - return DefaultQrScanningEventsRepository() - } - - @Provides - @Singleton - fun provideEmitQrScannedEventUseCase(repository: QrScanningEventsRepository): EmitQrScannedEventUseCase { - return EmitQrScannedEventUseCase(repository) - } -} \ No newline at end of file diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/presentation/transformers/InitializeQrScanningStateTransformer.kt b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/presentation/transformers/InitializeQrScanningStateTransformer.kt index c4df653e5a..2f38d3e545 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/presentation/transformers/InitializeQrScanningStateTransformer.kt +++ b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/presentation/transformers/InitializeQrScanningStateTransformer.kt @@ -2,7 +2,7 @@ package com.tangem.feature.qrscanning.presentation.transformers import com.tangem.core.ui.extensions.resourceReference import com.tangem.core.ui.extensions.wrappedList -import com.tangem.feature.qrscanning.SourceType +import com.tangem.domain.qrscanning.models.SourceType import com.tangem.feature.qrscanning.impl.R import com.tangem.feature.qrscanning.presentation.QrScanningState import com.tangem.feature.qrscanning.viewmodel.QrScanningClickIntents diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/BaseQrScanningClickIntents.kt b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/BaseQrScanningClickIntents.kt index 3ae564a745..a9c37e465c 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/BaseQrScanningClickIntents.kt +++ b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/BaseQrScanningClickIntents.kt @@ -1,7 +1,7 @@ package com.tangem.feature.qrscanning.viewmodel import androidx.activity.result.ActivityResultLauncher -import com.tangem.feature.qrscanning.SourceType +import com.tangem.domain.qrscanning.models.SourceType import com.tangem.feature.qrscanning.navigation.QrScanningInnerRouter import kotlinx.coroutines.CoroutineScope import kotlin.properties.Delegates diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningClickIntents.kt b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningClickIntents.kt index 7ecbdae562..64d837b7f4 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningClickIntents.kt +++ b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningClickIntents.kt @@ -1,8 +1,8 @@ package com.tangem.feature.qrscanning.viewmodel +import com.tangem.domain.qrscanning.usecases.EmitQrScannedEventUseCase import com.tangem.feature.qrscanning.presentation.QrScanningStateController import com.tangem.feature.qrscanning.presentation.transformers.DismissBottomSheetTransformer -import com.tangem.feature.qrscanning.usecase.EmitQrScannedEventUseCase import com.tangem.utils.coroutines.CoroutineDispatcherProvider import dagger.hilt.android.scopes.ViewModelScoped import kotlinx.coroutines.launch diff --git a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningViewModel.kt b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningViewModel.kt index 5402f469b0..231081714b 100644 --- a/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningViewModel.kt +++ b/features/qr-scanning/impl/src/main/java/com/tangem/feature/qrscanning/viewmodel/QrScanningViewModel.kt @@ -6,7 +6,7 @@ import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import com.tangem.feature.qrscanning.QrScanningRouter.Companion.NETWORK_KEY import com.tangem.feature.qrscanning.QrScanningRouter.Companion.SOURCE_KEY -import com.tangem.feature.qrscanning.SourceType +import com.tangem.domain.qrscanning.models.SourceType import com.tangem.feature.qrscanning.navigation.QrScanningInnerRouter import com.tangem.feature.qrscanning.presentation.QrScanningState import com.tangem.feature.qrscanning.presentation.QrScanningStateController diff --git a/features/send/impl/build.gradle.kts b/features/send/impl/build.gradle.kts index 062932fd25..eb9e87bdf6 100644 --- a/features/send/impl/build.gradle.kts +++ b/features/send/impl/build.gradle.kts @@ -69,12 +69,13 @@ dependencies { implementation(projects.domain.card) implementation(projects.domain.balanceHiding) implementation(projects.domain.balanceHiding.models) + implementation(projects.domain.qrScanning) + implementation(projects.domain.qrScanning.models) /** Feature modules */ implementation(projects.features.send.api) implementation(projects.features.tokendetails.api) implementation(projects.features.qrScanning.api) - implementation(projects.features.qrScanning.impl) /** DI */ implementation(deps.hilt.android) diff --git a/features/send/impl/src/main/java/com/tangem/features/send/impl/navigation/DefaultSendRouter.kt b/features/send/impl/src/main/java/com/tangem/features/send/impl/navigation/DefaultSendRouter.kt index db243390ea..0629979fd1 100644 --- a/features/send/impl/src/main/java/com/tangem/features/send/impl/navigation/DefaultSendRouter.kt +++ b/features/send/impl/src/main/java/com/tangem/features/send/impl/navigation/DefaultSendRouter.kt @@ -5,10 +5,10 @@ import androidx.fragment.app.Fragment import com.tangem.core.navigation.AppScreen import com.tangem.core.navigation.NavigationAction import com.tangem.core.navigation.ReduxNavController +import com.tangem.domain.qrscanning.models.SourceType import com.tangem.domain.tokens.model.CryptoCurrency import com.tangem.domain.wallets.models.UserWalletId import com.tangem.feature.qrscanning.QrScanningRouter -import com.tangem.feature.qrscanning.SourceType import com.tangem.features.send.impl.presentation.SendFragment import com.tangem.features.tokendetails.navigation.TokenDetailsRouter diff --git a/features/send/impl/src/main/java/com/tangem/features/send/impl/presentation/SendFragment.kt b/features/send/impl/src/main/java/com/tangem/features/send/impl/presentation/SendFragment.kt index 539fd6d734..0a3521b1eb 100644 --- a/features/send/impl/src/main/java/com/tangem/features/send/impl/presentation/SendFragment.kt +++ b/features/send/impl/src/main/java/com/tangem/features/send/impl/presentation/SendFragment.kt @@ -13,8 +13,8 @@ import com.tangem.core.ui.components.SystemBarsEffect import com.tangem.core.ui.res.TangemTheme import com.tangem.core.ui.screen.ComposeFragment import com.tangem.core.ui.theme.AppThemeModeHolder -import com.tangem.feature.qrscanning.SourceType -import com.tangem.feature.qrscanning.usecase.ListenToQrScanningUseCase +import com.tangem.domain.qrscanning.models.SourceType +import com.tangem.domain.qrscanning.usecases.ListenToQrScanningUseCase import com.tangem.features.send.api.navigation.SendRouter import com.tangem.features.send.impl.navigation.InnerSendRouter import com.tangem.features.send.impl.presentation.state.StateRouter diff --git a/settings.gradle.kts b/settings.gradle.kts index a7380d73d8..8c94ba65a8 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -139,6 +139,8 @@ include(":domain:analytics") include(":domain:visa") include(":domain:onboarding") include(":domain:feedback") +include(":domain:qr-scanning") +include(":domain:qr-scanning:models") // endregion Domain modules // region Data modules @@ -158,4 +160,5 @@ include(":data:visa") include(":data:promo") include(":data:onboarding") include(":data:feedback") +include(":data:qr-scanning") // endregion Data modules \ No newline at end of file