diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerConsole/NetPackageAnalyzerConsole.csproj b/src/NetPackageAnalyzer/NetPackageAnalyzerConsole/NetPackageAnalyzerConsole.csproj
index e99bdc3..80dd459 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerConsole/NetPackageAnalyzerConsole.csproj
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerConsole/NetPackageAnalyzerConsole.csproj
@@ -10,6 +10,7 @@
+
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerObjects/ProjectsDict.cs b/src/NetPackageAnalyzer/NetPackageAnalyzerObjects/ProjectsDict.cs
index 4aa4b37..74fdbf8 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerObjects/ProjectsDict.cs
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerObjects/ProjectsDict.cs
@@ -14,6 +14,16 @@ public long MaxPackages
return this.Values.Select(it => it.Packages.Count).Max();
}
}
+ public long MaxUpStreamReferences
+ {
+ get
+ {
+ return this.
+ Values
+ .Select(it => it.UpStreamProjectReferences.Count)
+ .Max();
+ }
+ }
public long MaxReferences
{
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/NetPackageAnalyzerDocusaurus.csproj b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/NetPackageAnalyzerDocusaurus.csproj
index 39ab291..0065fea 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/NetPackageAnalyzerDocusaurus.csproj
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/NetPackageAnalyzerDocusaurus.csproj
@@ -39,6 +39,7 @@
+
all
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/DisplayAllVersionsForMarkdown.cshtml b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/DisplayAllVersionsForMarkdown.cshtml
index ade95a1..46407d8 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/DisplayAllVersionsForMarkdown.cshtml
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/DisplayAllVersionsForMarkdown.cshtml
@@ -1,10 +1,23 @@
-@inherits RazorBlade.HtmlTemplate;
+@inherits RazorBlade.PlainTextTemplate;
@{
var keysPackageMultiple = Model.KeysPackageMultiple();
}
---
sidebar_position: 30
---
+
+export const Highlight = ({children, color}) => (
+
+ {children}
+
+);
+
+
# Packages
## Number of packages : @Model.NrPackages()
@@ -25,16 +38,16 @@ sidebar_position: 30
var vals = pack.VersionsPerProject;
var majorDiff = pack.MajorVersionDiffer();
string textReferences = vals.Count > 1 ? $" *(References: {vals.Count})* " : "";
- string diffMajor = majorDiff ? $" **Major differs** " : "";
+ string diffMajor = majorDiff ? $" **Major differs** " : "";
string refs = "";
@foreach (var vers in vals)
{
refs += " *"+vers.Key + "* " + string.Join(",", vers.Value.Select(it => it.NameCSproj()).ToArray());
- @* @Html.Raw(vers.Key) @Html.Raw(" ") @Html.Raw(string.Join(",",vers.Value.Select(it=>it.NameCSproj()))) *@
+ @* @(vers.Key) @(" ") @(string.Join(",",vers.Value.Select(it=>it.NameCSproj()))) *@
}
-| @Html.Raw(i) | @Html.Raw(item.Key) @Html.Raw(textReferences) | @Html.Raw(diffMajor) @refs|
+| @(i) | @(item.Key) @(textReferences) | @(diffMajor) @refs|
}
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/MermaidVisualizerMajorDiffer.cshtml b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/MermaidVisualizerMajorDiffer.cshtml
index 1373478..17cdcbf 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/MermaidVisualizerMajorDiffer.cshtml
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/MermaidVisualizerMajorDiffer.cshtml
@@ -7,7 +7,7 @@
sidebar_position: 70
---
-# Different major version packages
+# Packages with major version different
## Packages major version differ : @keysPackageMultiple.Length
diff --git a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/SolutionRelations.cshtml b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/SolutionRelations.cshtml
index dae0161..7a75f15 100644
--- a/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/SolutionRelations.cshtml
+++ b/src/NetPackageAnalyzer/NetPackageAnalyzerWork/Templates/SolutionRelations.cshtml
@@ -3,6 +3,7 @@
var rootProjects = Model.RootProjects;
var nrPackages = Model.MaxPackages+1;
var nrRelations = Model.MaxReferences+1;
+ var nrUpstream = Model.MaxUpStreamReferences+1;
var prefix = GlobalsForGenerating.globalPrefix();
}
@@ -11,9 +12,41 @@ sidebar_position: 10
---
-# Solution relations (without tests)
+# Solution relations
-## Quadrant Packages / Relations
+## Number projects (without tests): @Model.MaxReferences
+
+## Quadrant relations in / out
+
+```mermaid
+
+quadrantChart
+ title Number of Relations of each project
+ x-axis Low number Upstream --> High number Upstream
+ y-axis Small number Relations --> High number Relations
+@* quadrant-1 Difficult
+ quadrant-2 Business experience
+ quadrant-3 Easy
+ quadrant-4 Nuget experience
+ *@
+@foreach (var proj in Model.AlphabeticOrderedProjectsNoTests)
+{
+ if (proj.IsTestProject()) continue;
+ var nameCsproj = proj.NameCSproj();
+ var relativePath = proj.RelativePath();
+ var nrUpstreamProj = Decimal.Divide(proj.UpStreamProjectReferences.Count, nrUpstream);
+ var nrRelationsProj = Decimal.Divide(proj.ProjectsReferences.Count, nrRelations);
+ if (((int)nrUpstreamProj) == nrUpstreamProj) nrUpstreamProj = nrUpstreamProj + 0.01M;
+ if (((int)nrRelationsProj) == nrRelationsProj) nrRelationsProj = nrRelationsProj + 0.01M;
+ string data = $"{nameCsproj}: [{nrUpstreamProj.ToString("F2")},{nrRelationsProj.ToString("F2")}]";
+
+ @data
+
+}
+
+```
+
+## Quadrant packages / relations
```mermaid