This commit is contained in:
2025-10-08 18:08:15 +08:00
parent dc71bb19a9
commit 989e5be041
109 changed files with 10815 additions and 170 deletions

View File

@@ -0,0 +1,46 @@
package com.taskttl.data.di
import com.taskttl.data.repository.impl.OnboardingRepositoryImpl
import com.taskttl.data.repository.SettingsRepository
import com.taskttl.data.repository.impl.SettingsRepositoryImpl
import com.taskttl.data.repository.OnboardingRepository
import com.taskttl.data.viewmodel.OnboardingViewModel
import com.taskttl.data.viewmodel.SplashViewModel
import com.taskttl.data.viewmodel.CategoryViewModel
import com.taskttl.data.viewmodel.CountdownViewModel
import com.taskttl.data.viewmodel.TaskViewModel
import org.koin.core.KoinApplication
import org.koin.core.context.startKoin
import org.koin.core.module.Module
import org.koin.core.module.dsl.singleOf
import org.koin.core.module.dsl.viewModelOf
import org.koin.dsl.bind
import org.koin.dsl.module
expect fun platformModule(): Module
/**
* 初始化Koin
* @param [config] 配置
*/
fun initKoin(config: (KoinApplication.() -> Unit)? = null) {
startKoin {
config?.invoke(this)
modules(repositoryModule, viewModelModule, platformModule(), dataModule)
}
}
/** 存储库模块 */
val repositoryModule = module {
singleOf(::OnboardingRepositoryImpl).bind(OnboardingRepository::class)
singleOf(::SettingsRepositoryImpl).bind(SettingsRepository::class)
}
/** 视图模型模块 */
val viewModelModule = module {
viewModelOf(::SplashViewModel)
viewModelOf(::OnboardingViewModel)
viewModelOf(::TaskViewModel)
viewModelOf(::CategoryViewModel)
viewModelOf(::CountdownViewModel)
}