I am using Flutter to develope a cross platform mobile application. I use firebase to login, and require the user to do email verification before signing in. The user creates an account, and then the account is in the state "waiting to verification". Then when they accept the email, account state is now "verified".
I am trying to decide how I will facilitate that at the UI level. I have two potential approaches, but was curious about how others have tackled this problem, and if there is a prevalent way of doing this.
Once the user creates the account, and the email verification is pending, the app always loads to an "Your account is awaiting email verification" screen. Once the verification arrives, the screen auto logs the user in. On this screen there would be a "restart login" button, to forget the current "pending verification user" and start fresh at the create account / log in home screen. This would prevent the user from being locked into the "Awaiting verification" screen.
Once the user creates an account successfully, and account is pending email verification, the UI just kicks the user to the main login screen and makes them log in with their new account. If the account is not verified, it would just be a generic login error like "Please accept the verification email".
Thoughts? Is there another way to skin this cat?