internal static InteractivePackageDescription FromPackageViewModel(PackageViewModel package)
 => new InteractivePackageDescription(
     package.Package.Id,
     package.Package.HasVersion
             ? package.Package.Version.ToString()
             : null,
     null,
     true,
     InteractivePackageSource.FromPackageSource(package.SourceRepository?.PackageSource));
        public InteractivePackageDescription(
            string packageId,
            string identityVersion          = null,
            string versionRange             = null,
            bool isExplicitlySelected       = true,
            InteractivePackageSource source = null)
        {
            PackageId = packageId
                        ?? throw new ArgumentNullException(nameof(packageId));

            IdentityVersion      = identityVersion;
            VersionRange         = versionRange;
            IsExplicitlySelected = isExplicitlySelected;
            Source = source;
        }