Merge pull request #9425 from abpframework/docs-domain-refactor

Fix & Refactor docs domain module
pull/9438/head
ebicoglu 4 years ago committed by GitHub
commit 8585be6c31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -10,6 +10,10 @@
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NuGet.Versioning" Version="5.6.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.Localization\Volo.Abp.Localization.csproj" />
</ItemGroup>

@ -7,24 +7,24 @@ using Volo.Docs.Projects;
namespace Volo.Docs.GitHub.Documents.Version
{
public class SemanticVersionHelper : IVersionHelper, ITransientDependency
public static class SemanticVersionHelper
{
public List<string> OrderByDescending(List<string> versions)
public static List<string> OrderByDescending(List<string> versions)
{
return versions.OrderByDescending(v=> SemanticVersion.Parse(NormalizeVersion(v)), new VersionComparer()).ToList();
}
public List<VersionInfo> OrderByDescending(List<VersionInfo> versions)
public static List<VersionInfo> OrderByDescending(List<VersionInfo> versions)
{
return versions.OrderByDescending(v => SemanticVersion.Parse(NormalizeVersion(v.Name)), new VersionComparer()).ToList();
}
public bool IsPreRelease(string version)
public static bool IsPreRelease(string version)
{
return SemanticVersion.Parse(NormalizeVersion(version)).IsPrerelease;
}
private string NormalizeVersion(string version)
private static string NormalizeVersion(string version)
{
version = version.RemovePreFix("v");

@ -21,7 +21,6 @@
<PackageReference Include="Octokit" Version="0.48.0" />
<PackageReference Include="NEST" Version="7.7.1" />
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="$(MicrosoftPackageVersion)" />
<PackageReference Include="NuGet.Versioning" Version="5.6.0" />
</ItemGroup>
<ItemGroup>

@ -23,13 +23,11 @@ namespace Volo.Docs.GitHub.Documents
private readonly IGithubRepositoryManager _githubRepositoryManager;
private readonly IGithubPatchAnalyzer _githubPatchAnalyzer;
private readonly IVersionHelper _versionHelper;
public GithubDocumentSource(IGithubRepositoryManager githubRepositoryManager, IGithubPatchAnalyzer githubPatchAnalyzer, IVersionHelper versionHelper)
public GithubDocumentSource(IGithubRepositoryManager githubRepositoryManager, IGithubPatchAnalyzer githubPatchAnalyzer)
{
_githubRepositoryManager = githubRepositoryManager;
_githubPatchAnalyzer = githubPatchAnalyzer;
_versionHelper = versionHelper;
}
public virtual async Task<Document> GetDocumentAsync(Project project, string documentName, string languageCode, string version, DateTime? lastKnownSignificantUpdateTime = null)
@ -277,7 +275,7 @@ namespace Volo.Docs.GitHub.Documents
}
}
versions = _versionHelper.OrderByDescending(versions);
versions = SemanticVersionHelper.OrderByDescending(versions);
}
if(githubVersionProviderSource == GithubVersionProviderSource.Releases)
@ -288,7 +286,7 @@ namespace Volo.Docs.GitHub.Documents
}
else
{
versions = _versionHelper.OrderByDescending(versions);
versions = SemanticVersionHelper.OrderByDescending(versions);
}
}

@ -1,14 +0,0 @@
using System.Collections.Generic;
using Volo.Docs.Projects;
namespace Volo.Docs.GitHub.Documents.Version
{
public interface IVersionHelper
{
List<string> OrderByDescending(List<string> versions);
List<VersionInfo> OrderByDescending(List<VersionInfo> versions);
bool IsPreRelease(string version);
}
}

@ -83,7 +83,6 @@ namespace Volo.Docs.Pages.Documents.Project
private readonly IDocumentToHtmlConverterFactory _documentToHtmlConverterFactory;
private readonly IProjectAppService _projectAppService;
private readonly IDocumentSectionRenderer _documentSectionRenderer;
private readonly IVersionHelper _versionHelper;
private readonly DocsUiOptions _uiOptions;
public IndexModel(
@ -91,8 +90,7 @@ namespace Volo.Docs.Pages.Documents.Project
IDocumentToHtmlConverterFactory documentToHtmlConverterFactory,
IProjectAppService projectAppService,
IOptions<DocsUiOptions> options,
IDocumentSectionRenderer documentSectionRenderer,
IVersionHelper versionHelper)
IDocumentSectionRenderer documentSectionRenderer)
{
ObjectMapperContext = typeof(DocsWebModule);
@ -100,7 +98,6 @@ namespace Volo.Docs.Pages.Documents.Project
_documentToHtmlConverterFactory = documentToHtmlConverterFactory;
_projectAppService = projectAppService;
_documentSectionRenderer = documentSectionRenderer;
_versionHelper = versionHelper;
_uiOptions = options.Value;
LocalizationResourceType = typeof(DocsResource);
@ -331,7 +328,7 @@ namespace Volo.Docs.Pages.Documents.Project
}
}
return versions.FirstOrDefault(v => !_versionHelper.IsPreRelease(v.Version)) ?? versions.First();
return versions.FirstOrDefault(v => !SemanticVersionHelper.IsPreRelease(v.Version)) ?? versions.First();
}
private string RemoveVersionPrefix(string version)
@ -356,7 +353,7 @@ namespace Volo.Docs.Pages.Documents.Project
if (!Project.ExtraProperties.ContainsKey("GithubVersionProviderSource")
|| (GithubVersionProviderSource) (long) Project.ExtraProperties["GithubVersionProviderSource"] == GithubVersionProviderSource.Releases)
{
versions.First(v=> !_versionHelper.IsPreRelease(v.Version)).Version = Project.LatestVersionBranchName;
versions.First(v=> !SemanticVersionHelper.IsPreRelease(v.Version)).Version = Project.LatestVersionBranchName;
}
}

@ -30,17 +30,14 @@ namespace Volo.Docs.Pages.Documents
private readonly IProjectAppService _projectAppService;
private readonly IDocumentAppService _documentAppService;
private readonly HtmlEncoder _encoder;
private readonly IVersionHelper _versionHelper;
public SearchModel(IProjectAppService projectAppService,
IDocumentAppService documentAppService,
HtmlEncoder encoder,
IVersionHelper versionHelper)
HtmlEncoder encoder)
{
_projectAppService = projectAppService;
_documentAppService = documentAppService;
_encoder = encoder;
_versionHelper = versionHelper;
}
public List<DocumentSearchOutput> SearchOutputs { get; set; } = new List<DocumentSearchOutput>();
@ -71,7 +68,7 @@ namespace Volo.Docs.Pages.Documents
}
else
{
Version = (versions.FirstOrDefault(v => !_versionHelper.IsPreRelease(v.Name)) ?? versions.First()).Name;
Version = (versions.FirstOrDefault(v => !SemanticVersionHelper.IsPreRelease(v.Name)) ?? versions.First()).Name;
}
}

@ -20,7 +20,6 @@
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Packages\Volo.Abp.AspNetCore.Mvc.UI.Packages.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.csproj" />
<ProjectReference Include="..\Volo.Docs.Domain\Volo.Docs.Domain.csproj" />
<ProjectReference Include="..\Volo.Docs.HttpApi\Volo.Docs.HttpApi.csproj" />
<PackageReference Include="Markdig.Signed" Version="0.20.0" />
<PackageReference Include="Scriban" Version="3.0.5" />

Loading…
Cancel
Save