Loading feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ServerConfigModule.kt +5 −5 Original line number Diff line number Diff line package app.k9mail.feature.account.server.settings import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigValidator import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigViewModel import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsValidator import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsViewModel import app.k9mail.feature.account.server.settings.ui.outgoing.AccountOutgoingConfigContract import app.k9mail.feature.account.server.settings.ui.outgoing.AccountOutgoingConfigValidator import app.k9mail.feature.account.server.settings.ui.outgoing.AccountOutgoingConfigViewModel Loading @@ -11,11 +11,11 @@ import org.koin.core.module.Module import org.koin.dsl.module val featureAccountServerConfigModule: Module = module { factory<AccountIncomingConfigContract.Validator> { AccountIncomingConfigValidator() } factory<IncomingServerSettingsContract.Validator> { IncomingServerSettingsValidator() } factory<AccountOutgoingConfigContract.Validator> { AccountOutgoingConfigValidator() } viewModel { AccountIncomingConfigViewModel( IncomingServerSettingsViewModel( validator = get(), accountStateRepository = get(), ) Loading feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigContent.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsContent.kt +8 −8 Original line number Diff line number Diff line Loading @@ -31,12 +31,12 @@ import app.k9mail.feature.account.common.ui.item.defaultItemPadding import app.k9mail.feature.account.server.settings.R import app.k9mail.feature.account.server.settings.ui.common.ClientCertificateInput import app.k9mail.feature.account.server.settings.ui.common.mapper.toResourceString import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.State import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.State @Suppress("LongMethod") @Composable internal fun AccountIncomingConfigContent( internal fun IncomingServerSettingsContent( state: State, onEvent: (Event) -> Unit, contentPadding: PaddingValues, Loading @@ -46,7 +46,7 @@ internal fun AccountIncomingConfigContent( ResponsiveWidthContainer( modifier = Modifier .testTag("AccountIncomingConfigContent") .testTag("IncomingServerSettingsContent") .padding(contentPadding) .fillMaxWidth() .then(modifier), Loading Loading @@ -197,9 +197,9 @@ internal fun AccountIncomingConfigContent( @Composable @DevicePreviews internal fun AccountIncomingConfigContentK9Preview() { internal fun IncomingServerSettingsContentK9Preview() { K9Theme { AccountIncomingConfigContent( IncomingServerSettingsContent( onEvent = { }, state = State(), contentPadding = PaddingValues(), Loading @@ -209,9 +209,9 @@ internal fun AccountIncomingConfigContentK9Preview() { @Composable @DevicePreviews internal fun AccountIncomingConfigContentThunderbirdPreview() { internal fun IncomingServerSettingsContentThunderbirdPreview() { ThunderbirdTheme { AccountIncomingConfigContent( IncomingServerSettingsContent( onEvent = { }, state = State(), contentPadding = PaddingValues(), Loading feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigContract.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsContract.kt +1 −1 Original line number Diff line number Diff line Loading @@ -9,7 +9,7 @@ import app.k9mail.feature.account.common.domain.entity.toDefaultPort import app.k9mail.feature.account.common.domain.input.NumberInputField import app.k9mail.feature.account.common.domain.input.StringInputField interface AccountIncomingConfigContract { interface IncomingServerSettingsContract { interface ViewModel : UnidirectionalViewModel<State, Event, Effect> Loading feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigScreen.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsScreen.kt +14 −14 Original line number Diff line number Diff line Loading @@ -14,13 +14,13 @@ import app.k9mail.feature.account.common.ui.AccountTopAppBar import app.k9mail.feature.account.common.ui.WizardNavigationBar import app.k9mail.feature.account.common.ui.preview.PreviewAccountStateRepository import app.k9mail.feature.account.server.settings.R import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.Effect import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.ViewModel import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.Effect import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.ViewModel @Composable fun AccountIncomingConfigScreen( onNext: (AccountIncomingConfigContract.State) -> Unit, fun IncomingServerSettingsScreen( onNext: (IncomingServerSettingsContract.State) -> Unit, onBack: () -> Unit, viewModel: ViewModel, modifier: Modifier = Modifier, Loading Loading @@ -54,7 +54,7 @@ fun AccountIncomingConfigScreen( }, modifier = modifier, ) { innerPadding -> AccountIncomingConfigContent( IncomingServerSettingsContent( onEvent = { dispatch(it) }, state = state.value, contentPadding = innerPadding, Loading @@ -64,13 +64,13 @@ fun AccountIncomingConfigScreen( @Composable @DevicePreviews internal fun AccountIncomingConfigScreenK9Preview() { internal fun IncomingServerSettingsScreenK9Preview() { K9Theme { AccountIncomingConfigScreen( IncomingServerSettingsScreen( onNext = {}, onBack = {}, viewModel = AccountIncomingConfigViewModel( validator = AccountIncomingConfigValidator(), viewModel = IncomingServerSettingsViewModel( validator = IncomingServerSettingsValidator(), accountStateRepository = PreviewAccountStateRepository(), ), ) Loading @@ -79,13 +79,13 @@ internal fun AccountIncomingConfigScreenK9Preview() { @Composable @DevicePreviews internal fun AccountIncomingConfigScreenThunderbirdPreview() { internal fun IncomingServerSettingsScreenThunderbirdPreview() { ThunderbirdTheme { AccountIncomingConfigScreen( IncomingServerSettingsScreen( onNext = {}, onBack = {}, viewModel = AccountIncomingConfigViewModel( validator = AccountIncomingConfigValidator(), viewModel = IncomingServerSettingsViewModel( validator = IncomingServerSettingsValidator(), accountStateRepository = PreviewAccountStateRepository(), ), ) Loading feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigStateExtensions.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsStateExtensions.kt +2 −2 Original line number Diff line number Diff line Loading @@ -5,10 +5,10 @@ import app.k9mail.feature.account.common.domain.entity.IncomingProtocolType import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.toImmutableList internal val AccountIncomingConfigContract.State.isPasswordFieldVisible: Boolean internal val IncomingServerSettingsContract.State.isPasswordFieldVisible: Boolean get() = authenticationType.isPasswordRequired internal val AccountIncomingConfigContract.State.allowedAuthenticationTypes: ImmutableList<AuthenticationType> internal val IncomingServerSettingsContract.State.allowedAuthenticationTypes: ImmutableList<AuthenticationType> get() = protocolType.allowedAuthenticationTypes.toImmutableList() internal val IncomingProtocolType.allowedAuthenticationTypes: List<AuthenticationType> Loading Loading
feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ServerConfigModule.kt +5 −5 Original line number Diff line number Diff line package app.k9mail.feature.account.server.settings import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigValidator import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigViewModel import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsValidator import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsViewModel import app.k9mail.feature.account.server.settings.ui.outgoing.AccountOutgoingConfigContract import app.k9mail.feature.account.server.settings.ui.outgoing.AccountOutgoingConfigValidator import app.k9mail.feature.account.server.settings.ui.outgoing.AccountOutgoingConfigViewModel Loading @@ -11,11 +11,11 @@ import org.koin.core.module.Module import org.koin.dsl.module val featureAccountServerConfigModule: Module = module { factory<AccountIncomingConfigContract.Validator> { AccountIncomingConfigValidator() } factory<IncomingServerSettingsContract.Validator> { IncomingServerSettingsValidator() } factory<AccountOutgoingConfigContract.Validator> { AccountOutgoingConfigValidator() } viewModel { AccountIncomingConfigViewModel( IncomingServerSettingsViewModel( validator = get(), accountStateRepository = get(), ) Loading
feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigContent.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsContent.kt +8 −8 Original line number Diff line number Diff line Loading @@ -31,12 +31,12 @@ import app.k9mail.feature.account.common.ui.item.defaultItemPadding import app.k9mail.feature.account.server.settings.R import app.k9mail.feature.account.server.settings.ui.common.ClientCertificateInput import app.k9mail.feature.account.server.settings.ui.common.mapper.toResourceString import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.State import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.State @Suppress("LongMethod") @Composable internal fun AccountIncomingConfigContent( internal fun IncomingServerSettingsContent( state: State, onEvent: (Event) -> Unit, contentPadding: PaddingValues, Loading @@ -46,7 +46,7 @@ internal fun AccountIncomingConfigContent( ResponsiveWidthContainer( modifier = Modifier .testTag("AccountIncomingConfigContent") .testTag("IncomingServerSettingsContent") .padding(contentPadding) .fillMaxWidth() .then(modifier), Loading Loading @@ -197,9 +197,9 @@ internal fun AccountIncomingConfigContent( @Composable @DevicePreviews internal fun AccountIncomingConfigContentK9Preview() { internal fun IncomingServerSettingsContentK9Preview() { K9Theme { AccountIncomingConfigContent( IncomingServerSettingsContent( onEvent = { }, state = State(), contentPadding = PaddingValues(), Loading @@ -209,9 +209,9 @@ internal fun AccountIncomingConfigContentK9Preview() { @Composable @DevicePreviews internal fun AccountIncomingConfigContentThunderbirdPreview() { internal fun IncomingServerSettingsContentThunderbirdPreview() { ThunderbirdTheme { AccountIncomingConfigContent( IncomingServerSettingsContent( onEvent = { }, state = State(), contentPadding = PaddingValues(), Loading
feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigContract.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsContract.kt +1 −1 Original line number Diff line number Diff line Loading @@ -9,7 +9,7 @@ import app.k9mail.feature.account.common.domain.entity.toDefaultPort import app.k9mail.feature.account.common.domain.input.NumberInputField import app.k9mail.feature.account.common.domain.input.StringInputField interface AccountIncomingConfigContract { interface IncomingServerSettingsContract { interface ViewModel : UnidirectionalViewModel<State, Event, Effect> Loading
feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigScreen.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsScreen.kt +14 −14 Original line number Diff line number Diff line Loading @@ -14,13 +14,13 @@ import app.k9mail.feature.account.common.ui.AccountTopAppBar import app.k9mail.feature.account.common.ui.WizardNavigationBar import app.k9mail.feature.account.common.ui.preview.PreviewAccountStateRepository import app.k9mail.feature.account.server.settings.R import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.Effect import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.AccountIncomingConfigContract.ViewModel import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.Effect import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.Event import app.k9mail.feature.account.server.settings.ui.incoming.IncomingServerSettingsContract.ViewModel @Composable fun AccountIncomingConfigScreen( onNext: (AccountIncomingConfigContract.State) -> Unit, fun IncomingServerSettingsScreen( onNext: (IncomingServerSettingsContract.State) -> Unit, onBack: () -> Unit, viewModel: ViewModel, modifier: Modifier = Modifier, Loading Loading @@ -54,7 +54,7 @@ fun AccountIncomingConfigScreen( }, modifier = modifier, ) { innerPadding -> AccountIncomingConfigContent( IncomingServerSettingsContent( onEvent = { dispatch(it) }, state = state.value, contentPadding = innerPadding, Loading @@ -64,13 +64,13 @@ fun AccountIncomingConfigScreen( @Composable @DevicePreviews internal fun AccountIncomingConfigScreenK9Preview() { internal fun IncomingServerSettingsScreenK9Preview() { K9Theme { AccountIncomingConfigScreen( IncomingServerSettingsScreen( onNext = {}, onBack = {}, viewModel = AccountIncomingConfigViewModel( validator = AccountIncomingConfigValidator(), viewModel = IncomingServerSettingsViewModel( validator = IncomingServerSettingsValidator(), accountStateRepository = PreviewAccountStateRepository(), ), ) Loading @@ -79,13 +79,13 @@ internal fun AccountIncomingConfigScreenK9Preview() { @Composable @DevicePreviews internal fun AccountIncomingConfigScreenThunderbirdPreview() { internal fun IncomingServerSettingsScreenThunderbirdPreview() { ThunderbirdTheme { AccountIncomingConfigScreen( IncomingServerSettingsScreen( onNext = {}, onBack = {}, viewModel = AccountIncomingConfigViewModel( validator = AccountIncomingConfigValidator(), viewModel = IncomingServerSettingsViewModel( validator = IncomingServerSettingsValidator(), accountStateRepository = PreviewAccountStateRepository(), ), ) Loading
feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/AccountIncomingConfigStateExtensions.kt→feature/account/server/settings/src/main/kotlin/app/k9mail/feature/account/server/settings/ui/incoming/IncomingServerSettingsStateExtensions.kt +2 −2 Original line number Diff line number Diff line Loading @@ -5,10 +5,10 @@ import app.k9mail.feature.account.common.domain.entity.IncomingProtocolType import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.toImmutableList internal val AccountIncomingConfigContract.State.isPasswordFieldVisible: Boolean internal val IncomingServerSettingsContract.State.isPasswordFieldVisible: Boolean get() = authenticationType.isPasswordRequired internal val AccountIncomingConfigContract.State.allowedAuthenticationTypes: ImmutableList<AuthenticationType> internal val IncomingServerSettingsContract.State.allowedAuthenticationTypes: ImmutableList<AuthenticationType> get() = protocolType.allowedAuthenticationTypes.toImmutableList() internal val IncomingProtocolType.allowedAuthenticationTypes: List<AuthenticationType> Loading