12345678module cli910import os1112pub fn interactive() bool {13 return os.is_atty(0) != 014}1516pub fn confirm(yes bool) !bool {17 if yes {18 return true19 }20 if !interactive() {21 return error('needs --yes when not interactive')22 }23 print(' continue? [y/N] ')24 answer := os.get_line()25 println('')26 return answer.trim_right('\r') == 'y'27}28293031pub fn typed_confirm(prompt_text string, expected string) bool {32 print(' ${prompt_text} ')33 answer := os.get_line()34 println('')35 return answer.trim_right('\r') == expected36}