diff --git a/pkg/auth/kas.go b/pkg/auth/kas.go index 4af3240d..3365bc4a 100644 --- a/pkg/auth/kas.go +++ b/pkg/auth/kas.go @@ -159,14 +159,14 @@ func (a KasAuthenticator) maybePromptForEmail() (string, error) { } else if a.Email != "" { return a.Email, nil } else { - t := terminal.New() - fmt.Print(t.Green("Enter your email: ")) - _, err := fmt.Scanln(&email) - if err != nil { - return "", breverrors.WrapAndTrace(err) - } - } - return email, nil + // PromptGetInput validates and re-prompts on empty input, so hitting + // enter with no email no longer surfaces a raw "unexpected newline" error. + email = terminal.PromptGetInput(terminal.PromptContent{ + Label: "Enter your email:", + ErrorMsg: "please enter a valid email address", + }) + } + return strings.TrimSpace(email), nil } func (a KasAuthenticator) pollForTokens(sessionKey, id string) (*LoginTokens, error) {