public PackageViewModel(Package package) { _package = package ?? throw new ArgumentNullException(nameof(package)); FullVersion = NuGetVersionFormatter.ToFullStringOrFallback(package.Version, fallback: package.Version); IsSemVer2 = package.SemVerLevelKey == SemVerLevelKey.SemVer2; Version = String.IsNullOrEmpty(package.NormalizedVersion) ? NuGetVersionFormatter.Normalize(package.Version) : package.NormalizedVersion; NuGetVersion = NuGetVersion.Parse(FullVersion); Description = package.Description; ReleaseNotes = package.ReleaseNotes; IconUrl = package.IconUrl; LatestVersion = package.IsLatest; LatestVersionSemVer2 = package.IsLatestSemVer2; LatestStableVersion = package.IsLatestStable; LatestStableVersionSemVer2 = package.IsLatestStableSemVer2; LastUpdated = package.Published; Listed = package.Listed; _packageStatus = package.PackageStatusKey; DownloadCount = package.DownloadCount; Prerelease = package.IsPrerelease; }
public PackageViewModel(Package package) { _package = package; _fullVersion = NuGetVersionFormatter.ToFullStringOrFallback(package.Version, fallback: package.Version); _isSemVer2 = package.SemVerLevelKey == SemVerLevelKey.SemVer2; Version = String.IsNullOrEmpty(package.NormalizedVersion) ? NuGetVersionFormatter.Normalize(package.Version) : package.NormalizedVersion; Description = package.Description; ReleaseNotes = package.ReleaseNotes; IconUrl = package.IconUrl; ProjectUrl = package.ProjectUrl; LicenseUrl = package.LicenseUrl; HideLicenseReport = package.HideLicenseReport; LatestVersion = package.IsLatest; LatestVersionSemVer2 = package.IsLatestSemVer2; LatestStableVersion = package.IsLatestStable; LatestStableVersionSemVer2 = package.IsLatestStableSemVer2; LastUpdated = package.Published; Listed = package.Listed; Deleted = package.Deleted; DownloadCount = package.DownloadCount; Prerelease = package.IsPrerelease; LicenseReportUrl = package.LicenseReportUrl; var licenseNames = package.LicenseNames; if (!String.IsNullOrEmpty(licenseNames)) { LicenseNames = licenseNames.Split(',').Select(l => l.Trim()); } }
public PackageViewModel(Package package) { if (package == null) { throw new ArgumentNullException(nameof(package)); } _package = package; FullVersion = NuGetVersionFormatter.ToFullStringOrFallback(package.Version, fallback: package.Version); IsSemVer2 = package.SemVerLevelKey == SemVerLevelKey.SemVer2; Version = String.IsNullOrEmpty(package.NormalizedVersion) ? NuGetVersionFormatter.Normalize(package.Version) : package.NormalizedVersion; NuGetVersion = NuGetVersion.Parse(FullVersion); Description = package.Description; ReleaseNotes = package.ReleaseNotes; IconUrl = package.IconUrl; ProjectUrl = package.ProjectUrl; RepositoryUrl = package.RepositoryUrl; RepositoryType = GetRepositoryKind(package.RepositoryUrl, package.RepositoryType); LicenseUrl = package.LicenseUrl; HideLicenseReport = package.HideLicenseReport; LatestVersion = package.IsLatest; LatestVersionSemVer2 = package.IsLatestSemVer2; LatestStableVersion = package.IsLatestStable; LatestStableVersionSemVer2 = package.IsLatestStableSemVer2; LastUpdated = package.Published; Listed = package.Listed; _packageStatus = package.PackageStatusKey; DownloadCount = package.DownloadCount; Prerelease = package.IsPrerelease; LicenseReportUrl = package.LicenseReportUrl; var licenseNames = package.LicenseNames; if (!string.IsNullOrEmpty(licenseNames)) { LicenseNames = licenseNames.Split(',').Select(l => l.Trim()); } }
public PackageViewModel(Package package) { _package = package; _fullVersion = NuGetVersionFormatter.ToFullStringOrFallback(package.Version, fallback: package.Version); _isSemVer2 = package.SemVerLevelKey == SemVerLevelKey.SemVer2; Version = String.IsNullOrEmpty(package.NormalizedVersion) ? NuGetVersionFormatter.Normalize(package.Version) : package.NormalizedVersion; NuGetVersion = NuGetVersion.Parse(_fullVersion); HasSemVer2Version = NuGetVersion.IsSemVer2; HasSemVer2Dependency = package.Dependencies.ToList() .Where(pd => !string.IsNullOrEmpty(pd.VersionSpec)) .Select(pd => VersionRange.Parse(pd.VersionSpec)) .Any(p => (p.HasUpperBound && p.MaxVersion.IsSemVer2) || (p.HasLowerBound && p.MinVersion.IsSemVer2)); Description = package.Description; ReleaseNotes = package.ReleaseNotes; IconUrl = package.IconUrl; ProjectUrl = package.ProjectUrl; LicenseUrl = package.LicenseUrl; HideLicenseReport = package.HideLicenseReport; LatestVersion = package.IsLatest; LatestVersionSemVer2 = package.IsLatestSemVer2; LatestStableVersion = package.IsLatestStable; LatestStableVersionSemVer2 = package.IsLatestStableSemVer2; LastUpdated = package.Published; Listed = package.Listed; Deleted = package.PackageStatusKey == PackageStatus.Deleted; DownloadCount = package.DownloadCount; Prerelease = package.IsPrerelease; LicenseReportUrl = package.LicenseReportUrl; var licenseNames = package.LicenseNames; if (!String.IsNullOrEmpty(licenseNames)) { LicenseNames = licenseNames.Split(',').Select(l => l.Trim()); } }