private bool IsEol(DotNetSdk sdk) { return(sdk.EndOfLife is not null && sdk.EndOfLife != "TBA" && ToDate(sdk.EndOfLife) .Match(false, eol => eol < DateTime.Now)); }
private string InstalledSdk(DotNetSdk sdk) { var installed = GetInstalledSdks(); return(installed.Contains(sdk.SdkVersion) ? "Installed".Pastel(Color.Green) : "Not Installed".Pastel(Color.OrangeRed)); }
private string Lts(DotNetSdk sdk) { var lts = "LTS".Pastel(Color.Green); return(sdk.IsLts ? $"({lts})" : string.Empty); }
private SelectionValue ToSelectionValue(DotNetSdk sdk) { return(new() { Description = $".NET SDK {sdk.SdkVersion} ({Eol(sdk)})[{InstalledSdk(sdk)}]{Lts(sdk)} [Released: {sdk.Released}]", Value = sdk.SdkVersion, }); }
private string Eol(DotNetSdk sdk) { return(IsEol(sdk) ? "EOL".Pastel(Color.OrangeRed) : "OK".Pastel(Color.Green)); }