diff --git a/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift b/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift index 5d3f5eb0d..a165716c2 100644 --- a/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift +++ b/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift @@ -150,10 +150,15 @@ final class MastodonRegisterViewModel: ObservableObject { .assign(to: \.emailValidateState, on: self) .store(in: &disposeBag) - $password - .map { password in + Publishers.CombineLatest($password, $passwordConfirmation) + .map { password, confirmation in guard !password.isEmpty else { return .empty } - return password.count >= 8 ? .valid : .invalid + + if password.count >= 8 && password == confirmation { + return .valid + } else { + return .invalid + } } .assign(to: \.passwordValidateState, on: self) .store(in: &disposeBag)