promptYesNoSync function
Notice
This function does block the calling Isolate, until a full line is available. If you do not want to block, use the asynchronous version instead.
See promptYesNo
Description
Prompt the user with question.
Returns true, if the user answered with yes and false if the user
answered with no.
Implementation
bool promptYesNoSync(
String question, {
bool defaultToYes = true,
StringSink? output,
}) {
final oSink = output ?? stdout;
final options = defaultToYes ? "Y/n" : "y/N";
oSink.writeln("$question [$options] ? ");
final answer = stdin.readLineSync();
if (null == answer) return defaultToYes;
return switch (answer.toLowerCase().trim()) {
"y" => true,
"n" => false,
_ => defaultToYes,
};
}