Unify style for di

pull/2064/head
lihenggui 1 year ago
parent ff4b553181
commit e03cf253b0

@ -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)
}

@ -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,
)
}

@ -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)
}

Loading…
Cancel
Save