Skip to content

Commit

Permalink
Merge pull request #30 from EAVFW/tst/docs-assembly-xml
Browse files Browse the repository at this point in the history
Tst/docs assembly xml
  • Loading branch information
thygesteffensen authored Nov 30, 2023
2 parents 65b263d + a8418ec commit 6e2034e
Showing 1 changed file with 15 additions and 10 deletions.
25 changes: 15 additions & 10 deletions src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -102,21 +102,21 @@ public async Task Write(FileInfo outputLocation, string component)
await writer.WriteLineAsync("## Table of contents");

var index = 2;
await writer.WriteLineAsync("1. [Class diagram](#class-diagram)");
await writer.WriteLineAsync("1. [Class diagram](#Class-diagram)");
foreach (var (key, value) in entitiesToWrite)
{
await writer.WriteLineAsync($"{index++}. [{key}](#{_schemaNameManager.ToSchemaName(key)})");
await writer.WriteLineAsync($"{index++}. [{key}](#{key.Replace(' ', '-')})");
}

await writer.WriteLineAsync("# Class diagram <a name=\"class-diagram\"></a>");
await writer.WriteLineAsync("# Class diagram");
await writer.WriteAsync(EntitiesToClassDiagram(_manifestObject, component));

var ignored = new List<string>
{ "Modified On", "Modified By", "Created By", "Created On", "Row Version", "Owner" };

foreach (var (key, value) in entitiesToWrite)
{
await writer.WriteLineAsync($"## {key} <a name=\"{_schemaNameManager.ToSchemaName(key)}\"></a>");
await writer.WriteLineAsync($"## {key}");

await writer.WriteLineAsync(value.Description);

Expand Down Expand Up @@ -276,15 +276,20 @@ private string EntitiesToClassDiagram(ManifestDefinition manifest, string compon
{
var diagramBuilder = new StringBuilder();

diagramBuilder.AppendLine("```mermaid");
diagramBuilder.AppendLine("::: mermaid");
diagramBuilder.AppendLine("classDiagram");
diagramBuilder.AppendLine($"\tnote \"Class diagram for {component}\"");

var t = new DefaultSchemaNameManager();

var entities = manifest.Entities.Where(entity =>
entity.Value.AdditionalFields.ContainsKey("moduleSource") &&
entity.Value.AdditionalFields["moduleSource"].ToString() == component);
var entities = manifest.Entities;
if (!string.IsNullOrWhiteSpace(component))
{
entities = manifest.Entities.Where(entity =>
entity.Value.AdditionalFields.ContainsKey("moduleSource") &&
entity.Value.AdditionalFields["moduleSource"].ToString() == component)
.ToDictionary(x => x.Key, x => x.Value);
}

var ignored = new List<string>
{ "Modified On", "Modified By", "Created By", "Created On", "Row Version", "Owner" };
Expand All @@ -293,7 +298,7 @@ private string EntitiesToClassDiagram(ManifestDefinition manifest, string compon
{
var attributes = value.Attributes.Where(x => !ignored.Contains(x.Key)).ToList();

diagramBuilder.AppendLine($"\tclass {t.ToSchemaName(key)}[\"{key}\"]{{");
diagramBuilder.AppendLine($"\tclass {t.ToSchemaName(key)}{{");
foreach (var (s, attributeDefinitionBase) in attributes)
{
if (attributeDefinitionBase is AttributeObjectDefinition o)
Expand Down Expand Up @@ -327,7 +332,7 @@ private string EntitiesToClassDiagram(ManifestDefinition manifest, string compon
}
}

diagramBuilder.AppendLine("```");
diagramBuilder.AppendLine(":::");
return diagramBuilder.ToString();
}
}
Expand Down

0 comments on commit 6e2034e

Please sign in to comment.