diff --git a/core/persistence/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/persistence/di/PersistenceModule.kt b/core/persistence/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/persistence/di/PersistenceModule.kt index c17f2c301..bdba43989 100644 --- a/core/persistence/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/persistence/di/PersistenceModule.kt +++ b/core/persistence/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/persistence/di/PersistenceModule.kt @@ -11,7 +11,10 @@ import org.koin.ksp.generated.module @Module @ComponentScan("com.livefast.eattrash.raccoonforfriendica.core.persistence.provider") -internal class ProviderModule { +internal class ProviderModule + +@Module +internal class DaoModule { @Single fun provideAccountDao(dbProvider: DatabaseProvider): AccountDao = dbProvider.provideDatabase().getAccountDao() @@ -22,7 +25,7 @@ internal class ProviderModule { fun provideDraftDao(dbProvider: DatabaseProvider): DraftDao = dbProvider.provideDatabase().getDraftDao() } -@Module(includes = [BuilderModule::class, ProviderModule::class]) +@Module(includes = [BuilderModule::class, ProviderModule::class, DaoModule::class]) internal class PersistenceModule val corePersistenceModule = PersistenceModule().module diff --git a/core/preferences/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/preferences/di/PreferencesModule.kt b/core/preferences/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/preferences/di/PreferencesModule.kt index 183f492b7..40997826e 100644 --- a/core/preferences/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/preferences/di/PreferencesModule.kt +++ b/core/preferences/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/core/preferences/di/PreferencesModule.kt @@ -9,16 +9,26 @@ import org.koin.ksp.generated.module @Module @ComponentScan("com.livefast.eattrash.raccoonforfriendica.core.preferences.settings") -internal class SettingsModule { - @Single - fun provideSettings(provider: SettingsProvider): Settings = provider.provide() -} +internal class SettingsWrapperModule @Module @ComponentScan("com.livefast.eattrash.raccoonforfriendica.core.preferences.store") internal class StoreModule -@Module(includes = [SettingsModule::class, StoreModule::class]) +@Module +internal class SettingsModule { + @Single + fun provideSettings(provider: SettingsProvider): Settings = provider.provide() +} + +@Module( + includes = [ + ProviderModule::class, + SettingsModule::class, + SettingsWrapperModule::class, + StoreModule::class, + ], +) internal class PreferencesModule val corePreferencesModule = PreferencesModule().module diff --git a/domain/content/repository/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/domain/content/repository/di/ContentRepositoryModule.kt b/domain/content/repository/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/domain/content/repository/di/ContentRepositoryModule.kt index 13d00445b..704eaab43 100644 --- a/domain/content/repository/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/domain/content/repository/di/ContentRepositoryModule.kt +++ b/domain/content/repository/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/domain/content/repository/di/ContentRepositoryModule.kt @@ -12,9 +12,12 @@ import org.koin.core.annotation.Module import org.koin.core.annotation.Single import org.koin.ksp.generated.module -@Module +@Module(includes = [CacheModule::class]) @ComponentScan("com.livefast.eattrash.raccoonforfriendica.domain.content.repository") -internal class ContentRepositoryModule { +internal class ContentRepositoryModule + +@Module +internal class CacheModule { @Single fun provideLocalItemCacheUserModel(): LocalItemCache = DefaultLocalItemCache() diff --git a/feature/composer/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/composer/ComposerViewModel.kt b/feature/composer/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/composer/ComposerViewModel.kt index 6abb5c70b..04fbe5315 100644 --- a/feature/composer/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/composer/ComposerViewModel.kt +++ b/feature/composer/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/composer/ComposerViewModel.kt @@ -65,7 +65,7 @@ private const val PLACEHOLDER_ID = "placeholder" @Factory(binds = [ComposerMviModel::class]) @OptIn(FlowPreview::class) class ComposerViewModel( - @InjectedParam private val inReplyToId: String? = null, + @InjectedParam private val inReplyToId: String?, private val identityRepository: IdentityRepository, private val timelineEntryRepository: TimelineEntryRepository, private val photoRepository: PhotoRepository, diff --git a/feature/userlist/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/userlist/UserListViewModel.kt b/feature/userlist/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/userlist/UserListViewModel.kt index 899c7ccdc..d60665f1a 100644 --- a/feature/userlist/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/userlist/UserListViewModel.kt +++ b/feature/userlist/src/commonMain/kotlin/com/livefast/eattrash/raccoonforfriendica/feature/userlist/UserListViewModel.kt @@ -28,8 +28,8 @@ import org.koin.core.annotation.InjectedParam @Factory(binds = [UserListMviModel::class]) internal class UserListViewModel( @InjectedParam private val type: UserListType, - @InjectedParam private val userId: String? = null, - @InjectedParam private val entryId: String? = null, + @InjectedParam private val userId: String?, + @InjectedParam private val entryId: String?, private val paginationManager: UserPaginationManager, private val userRepository: UserRepository, private val identityRepository: IdentityRepository,