From 6a8b25eb2f03a922d13027687d31244e85a8e453 Mon Sep 17 00:00:00 2001 From: SAUL Date: Wed, 23 Oct 2024 12:28:07 +0400 Subject: [PATCH] Password Form Field validation --- src/main/kotlin/ui/components/forms/PasswordForm.kt | 7 ++++--- src/main/kotlin/ui/screens/PasswordFormScreen.kt | 6 ++++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/ui/components/forms/PasswordForm.kt b/src/main/kotlin/ui/components/forms/PasswordForm.kt index 95c545e..afc97fe 100644 --- a/src/main/kotlin/ui/components/forms/PasswordForm.kt +++ b/src/main/kotlin/ui/components/forms/PasswordForm.kt @@ -31,7 +31,8 @@ import ui.validators.PasswordFormFieldName fun PasswordForm( formValidator: FormValidator, isFormValid: Boolean, - onSaveClick: () -> Unit + onSaveClick: () -> Unit, + onCancelClick: () -> Unit ) { val userName = formValidator.getField(PasswordFormFieldName.USERNAME) @@ -226,7 +227,7 @@ fun PasswordForm( horizontalArrangement = Arrangement.spacedBy(30.dp, Alignment.CenterHorizontally) ) { Button( - onClick = {}, + onClick = onSaveClick, modifier = Modifier.width(175.dp), enabled = isFormValid, colors = ButtonColors( @@ -247,7 +248,7 @@ fun PasswordForm( ) } Button( - onClick = onSaveClick, + onClick = onCancelClick, modifier = Modifier.width(175.dp), colors = ButtonColors( containerColor = primary, diff --git a/src/main/kotlin/ui/screens/PasswordFormScreen.kt b/src/main/kotlin/ui/screens/PasswordFormScreen.kt index a5afe81..3674430 100644 --- a/src/main/kotlin/ui/screens/PasswordFormScreen.kt +++ b/src/main/kotlin/ui/screens/PasswordFormScreen.kt @@ -4,6 +4,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import cafe.adriel.voyager.core.screen.Screen +import cafe.adriel.voyager.navigator.LocalNavigator import ui.components.forms.PasswordForm import ui.validators.passwordFormValidator @@ -13,13 +14,14 @@ class PasswordFormScreen : Screen { override fun Content() { val formValidator = remember { passwordFormValidator() } - + val navigator = LocalNavigator.current val isFormValid by formValidator.isValid PasswordForm( formValidator, isFormValid, - onSaveClick = {} + onSaveClick = {}, + onCancelClick = { navigator?.pop() } ) }