Then how to use this init block code without using textAsFlow ->
init {
state.email.textAsFlow()
.onEach { email ->
val isValidEmail = userDataValidator.isValidEmail(email.toString())
state = state.copy(
isEmailValid = isValidEmail,
canRegister = isValidEmail && state.passwordValidationState.isValidPassword
&& !state.isRegistering
)
}
.launchIn(viewModelScope)
state.password.textAsFlow()
.onEach { password ->
val passwordValidationState = userDataValidator.validatePassword(password.toString())
state = state.copy(
passwordValidationState = passwordValidationState,
canRegister = state.isEmailValid && passwordValidationState.isValidPassword
&& !state.isRegistering
)
}
.launchIn(viewModelScope)
}
Then how to use this init block code without using textAsFlow ->
init {
state.email.textAsFlow()
.onEach { email ->
val isValidEmail = userDataValidator.isValidEmail(email.toString())
state = state.copy(
isEmailValid = isValidEmail,
canRegister = isValidEmail && state.passwordValidationState.isValidPassword
&& !state.isRegistering
)
}
.launchIn(viewModelScope)