diff --git a/app/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/di/AppModule.kt b/app/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/di/AppModule.kt index 841490e1f..258e99464 100644 --- a/app/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/di/AppModule.kt +++ b/app/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/di/AppModule.kt @@ -33,16 +33,10 @@ import com.google.samples.apps.nowinandroid.feature.settings.di.settingsModule import com.google.samples.apps.nowinandroid.feature.topic.di.topicModule import com.google.samples.apps.nowinandroid.sync.di.syncModule import com.google.samples.apps.nowinandroid.ui.interests2pane.Interests2PaneViewModel -import org.koin.core.annotation.ComponentScan -import org.koin.core.annotation.Module import org.koin.core.module.dsl.viewModelOf import org.koin.dsl.module import org.koin.ksp.generated.module -@Module -@ComponentScan -class AppModule - internal val appViewModelModule = module { viewModelOf(::MainScreenViewModel) viewModelOf(::Interests2PaneViewModel) @@ -61,11 +55,11 @@ internal val featureModules = module { internal val appModules = module { includes( - *commonModule().toTypedArray(), + commonModule, AnalyticsModule().module, databaseModule, dataModule, - dataStoreModule(), + dataStoreModule, domainModule, networkModule, notificationModule, @@ -73,5 +67,4 @@ internal val appModules = module { includes(featureModules) includes(syncModule) includes(appViewModelModule) - includes(AppModule().module) } diff --git a/core/common/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/di/CommonModule.kt b/core/common/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/di/CommonModule.kt index 28784a280..18791aa43 100644 --- a/core/common/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/di/CommonModule.kt +++ b/core/common/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/di/CommonModule.kt @@ -16,17 +16,13 @@ package com.google.samples.apps.nowinandroid.core.di -import org.koin.core.annotation.ComponentScan -import org.koin.core.annotation.Module -import org.koin.ksp.generated.module +import org.koin.core.module.Module +import org.koin.dsl.module -fun commonModule() = listOf( - CommonModule().module, - coroutineDispatcherModule, - coroutineScopeModule, - imageLoaderModule, -) - -@Module -@ComponentScan -class CommonModule +val commonModule: Module = module { + includes( + coroutineDispatcherModule, + coroutineScopeModule, + imageLoaderModule, + ) +} diff --git a/core/datastore/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/datastore/di/DataStoreModule.kt b/core/datastore/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/datastore/di/DataStoreModule.kt index 30c852f3d..3d880e34c 100644 --- a/core/datastore/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/datastore/di/DataStoreModule.kt +++ b/core/datastore/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/core/datastore/di/DataStoreModule.kt @@ -18,14 +18,10 @@ package com.google.samples.apps.nowinandroid.core.datastore.di import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesDataSource import com.russhwolf.settings.Settings +import org.koin.core.module.dsl.singleOf import org.koin.dsl.module -fun dataStoreModule() = module { - single { Settings() } - single { - NiaPreferencesDataSource( - settings = get(), - dispatcher = get(), - ) - } +val dataStoreModule = module { + singleOf(::Settings) + singleOf(::NiaPreferencesDataSource) }