Browse Source

Merge pull request #13581 from abpframework/auto-merge/rel-6-0/1252

Merge branch dev with rel-6.0
pull/13583/head
liangshiwei 4 years ago
committed by GitHub
parent
commit
e09e30f6bc
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 30
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/ChangeThemeStep.cs

30
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/ChangeThemeStep.cs

@ -141,6 +141,13 @@ public class ChangeThemeStep : ProjectBuildPipelineStep
"AbpAspNetCoreComponentsWebAssemblyLeptonThemeModule" "AbpAspNetCoreComponentsWebAssemblyLeptonThemeModule"
); );
ChangeNamespace(
context,
"/MyCompanyName.MyProjectName.Blazor/MyProjectNameBlazorModule.cs",
"Volo.Abp.AspNetCore.Components.WebAssembly.LeptonXTheme",
"Volo.Abp.AspNetCore.Components.WebAssembly.LeptonTheme"
);
#endregion #endregion
#region MyCompanyName.MyProjectName.Blazor.Server && MyCompanyName.MyProjectName.Blazor.Server.Tiered #region MyCompanyName.MyProjectName.Blazor.Server && MyCompanyName.MyProjectName.Blazor.Server.Tiered
@ -210,7 +217,7 @@ public class ChangeThemeStep : ProjectBuildPipelineStep
} }
AddProjectReference(file, $@"..\..\..\..\lepton-theme\src\Volo.Abp.LeptonTheme.Management.{projectName}\Volo.Abp.LeptonTheme.Management.{projectName}.csproj"); AddProjectReference(file, $@"..\..\..\..\lepton-theme\src\Volo.Abp.LeptonTheme.Management.{projectName}\Volo.Abp.LeptonTheme.Management.{projectName}.csproj");
AddModuleDependency(moduleFile, $"LeptonThemeManagement{ConvertProjectNameToModuleName($"{projectName}")}Module"); AddModuleDependency(moduleFile, projectName, $"LeptonThemeManagement{ConvertProjectNameToModuleName($"{projectName}")}Module");
} }
} }
@ -325,21 +332,22 @@ public class ChangeThemeStep : ProjectBuildPipelineStep
AddProjectReference(projectFile, reference); AddProjectReference(projectFile, reference);
AddModuleDependency(moduleFile, $"LeptonThemeManagement{ConvertProjectNameToModuleName(projectInfo.Key)}Module", AddModuleDependency(moduleFile, projectInfo.Key, $"LeptonThemeManagement{ConvertProjectNameToModuleName(projectInfo.Key)}Module",
underManagementFolder: projectInfo.Key != "HttpApi"); underManagementFolder: projectInfo.Key != "HttpApi");
} }
private void AddModuleDependency(FileEntry moduleFile, string dependency, bool underManagementFolder = true) private void AddModuleDependency(FileEntry moduleFile, string projectName, string dependency, bool underManagementFolder = true)
{ {
var lines = moduleFile.GetLines(); var projectNames = new[] { "Blazor", "Blazor.Server", "Blazor.WebAssembly" };
var lines = moduleFile.GetLines();
for (var i = 0; i < lines.Length; i++) for (var i = 0; i < lines.Length; i++)
{ {
if (lines[i].Contains("namespace MyCompanyName.MyProjectName")) if (lines[i].Contains("namespace MyCompanyName.MyProjectName"))
{ {
lines[i - 1] = lines[i - 1] + "using Volo.Abp.LeptonTheme" + (underManagementFolder ? ".Management" : "").EnsureEndsWith(';') + Environment.NewLine; lines[i - 1] = lines[i - 1] + ("using Volo.Abp.LeptonTheme" + (underManagementFolder ? ".Management." : ".") + (projectNames.Any(p => p == projectName) ? projectName : "")).TrimEnd('.').EnsureEndsWith(';') + Environment.NewLine;
} }
if (lines[i].Contains("public class MyProjectName") && lines[i-1].Contains(")]")) if (lines[i].Contains("public class MyProjectName") && lines[i-1].Contains(")]"))
{ {
lines[i - 2] = lines[i - 2] + "," + Environment.NewLine + $"\ttypeof({dependency})"; lines[i - 2] = lines[i - 2] + "," + Environment.NewLine + $"\ttypeof({dependency})";
@ -584,9 +592,7 @@ public class ChangeThemeStep : ProjectBuildPipelineStep
.Replace(".csproj", "Module") .Replace(".csproj", "Module")
.Replace(".", ""); .Replace(".", "");
fileName = ConvertProjectNameToModuleName(fileName); return context.Files.FirstOrDefault(f => f.Name.Contains(splittedProjectFileName.Last() + "/" + fileName) && f.Name.EndsWith("Module.cs"));
return context.Files.FirstOrDefault(f => f.Name.Contains(splittedProjectFileName.Last() + "/" + fileName));
} }
private static string ConvertProjectNameToModuleName(string moduleName) private static string ConvertProjectNameToModuleName(string moduleName)
@ -796,6 +802,12 @@ public class ChangeThemeStep : ProjectBuildPipelineStep
"BlazorLeptonXThemeBundles.Scripts.Global", "BlazorLeptonXThemeBundles.Scripts.Global",
"BlazorLeptonThemeBundles.Scripts.Global" "BlazorLeptonThemeBundles.Scripts.Global"
); );
RemoveLinesByStatement(
context,
$"/MyCompanyName.MyProjectName.{projectName}/MyProjectNameBlazorModule.cs",
"Volo.Abp.LeptonX.Shared;"
);
} }
} }

Loading…
Cancel
Save