feat: Improved preview output for quality sizes

pull/201/head
Robert Dailey 1 year ago
parent 806a0fa64f
commit 61c9dbcbf9

@ -17,6 +17,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed ### Changed
- The CLI has been completely redesigned to be more consistent and structured (#142). - The CLI has been completely redesigned to be more consistent and structured (#142).
- Improved preview output for quality sizes
### Deprecated ### Deprecated

@ -69,20 +69,24 @@ internal class QualitySizeUpdater : IQualitySizeUpdater
await ProcessQualityDefinition(selectedQuality.Qualities); await ProcessQualityDefinition(selectedQuality.Qualities);
} }
private void PrintQualityPreview(IReadOnlyCollection<QualitySizeItem> quality) private void PrintQualityPreview(IReadOnlyCollection<QualitySizeItem> qualitySizeItems)
{ {
_console.WriteLine(""); var table = new Table();
const string format = "{0,-20} {1,-10} {2,-15} {3,-15}";
_console.WriteLine(format.FormatWith(format, "Quality", "Min", "Max", "Preferred"));
_console.WriteLine(format.FormatWith(format, "-------", "---", "---", "---------"));
foreach (var q in quality) table.Title("Quality Sizes [red](Preview)[/]");
table.AddColumn("[bold]Quality[/]");
table.AddColumn("[bold]Min[/]");
table.AddColumn("[bold]Max[/]");
table.AddColumn("[bold]Preferred[/]");
foreach (var q in qualitySizeItems)
{ {
_console.WriteLine(format.FormatWith(format, q.Quality, q.AnnotatedMin, q.AnnotatedMax, var quality = $"[dodgerblue1]{q.Quality}[/]";
q.AnnotatedPreferred)); table.AddRow(quality, q.AnnotatedMin, q.AnnotatedMax, q.AnnotatedPreferred);
} }
_console.WriteLine(""); _console.WriteLine();
_console.Write(table);
} }
private static bool QualityIsDifferent(ServiceQualityDefinitionItem a, QualitySizeItem b) private static bool QualityIsDifferent(ServiceQualityDefinitionItem a, QualitySizeItem b)

Loading…
Cancel
Save