in src/AWS.Deploy.CLI/ConsoleUtilities.cs [558:597]
public YesNo AskYesNoQuestion(string question, YesNo? defaultValue = default)
{
string message = string.Empty;
if(!string.IsNullOrEmpty(question))
{
message += question + ": ";
}
message += "y/n";
if (defaultValue.HasValue)
{
var defaultChar = defaultValue == YesNo.Yes ? 'y' : 'n';
message += $" (default {defaultChar})";
}
_interactiveService.WriteLine(message);
YesNo? selectedValue = null;
while (selectedValue == null)
{
var line = _interactiveService.ReadLine()?.Trim();
if (string.IsNullOrEmpty(line) && defaultValue.HasValue)
{
selectedValue = defaultValue.Value;
}
else if (string.Equals(line, "y", StringComparison.OrdinalIgnoreCase))
{
selectedValue = YesNo.Yes;
}
else if (String.Equals(line, "n", StringComparison.OrdinalIgnoreCase))
{
selectedValue = YesNo.No;
}
else
{
_interactiveService.WriteLine($"Invalid option. The value should be either y or n.");
}
}
return selectedValue.Value;
}