From e6d92cdbb8d4d4d1d2b53563f597c7a8a855109c Mon Sep 17 00:00:00 2001 From: EunhoKang Date: Thu, 16 Nov 2023 00:22:47 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=A0=95=EA=B7=9C=EC=8B=9D=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/app/priceguard/ui/login/LoginViewModel.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/android/app/src/main/java/app/priceguard/ui/login/LoginViewModel.kt b/android/app/src/main/java/app/priceguard/ui/login/LoginViewModel.kt index f2f8add8..9a92e376 100644 --- a/android/app/src/main/java/app/priceguard/ui/login/LoginViewModel.kt +++ b/android/app/src/main/java/app/priceguard/ui/login/LoginViewModel.kt @@ -6,6 +6,9 @@ import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.asStateFlow class LoginViewModel : ViewModel() { + private val emailPattern = """^[\w.+-]+@((?!-)[A-Za-z0-9-]{1,63}(? Unit) { - val emailPattern = Regex("""^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}${'$'}""") - val passwordPattern = Regex("""(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#${'$'}%^&*]).{8,16}""") - if (emailPattern.matches(_state.value.email) && passwordPattern.matches(_state.value.password)) { + if (checkEmailAndPassword()) { // TODO: 서버에 정보 전송 } else { onSuccess.invoke(Unit) } } + + private fun checkEmailAndPassword(): Boolean { + return emailPattern.matches(_state.value.email) && passwordPattern.matches(_state.value.password) + } }