From c5fe8586007ac21968de743bd5ba2cb78d542df0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thyge=20Sk=C3=B8dt=20Steffensen?= <31892312+thygesteffensen@users.noreply.github.com> Date: Thu, 30 Nov 2023 15:26:55 +0100 Subject: [PATCH 1/3] fix: Change mermaid to ADO support --- .../ReadMeDocumentationGenerator.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs b/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs index bae36e2..2e9ae87 100644 --- a/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs +++ b/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs @@ -276,7 +276,7 @@ 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}\""); @@ -293,7 +293,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) @@ -327,7 +327,7 @@ private string EntitiesToClassDiagram(ManifestDefinition manifest, string compon } } - diagramBuilder.AppendLine("```"); + diagramBuilder.AppendLine(":::"); return diagramBuilder.ToString(); } } From 8b761d7e828a8102b1ddb5d924b643b64af5eacf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thyge=20Sk=C3=B8dt=20Steffensen?= <31892312+thygesteffensen@users.noreply.github.com> Date: Thu, 30 Nov 2023 15:34:31 +0100 Subject: [PATCH 2/3] fix: Ado hyperlinks support --- .../ReadMeDocumentationGenerator.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs b/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs index 2e9ae87..2993fc1 100644 --- a/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs +++ b/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs @@ -102,13 +102,13 @@ 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 "); + await writer.WriteLineAsync("# Class diagram"); await writer.WriteAsync(EntitiesToClassDiagram(_manifestObject, component)); var ignored = new List @@ -116,7 +116,7 @@ public async Task Write(FileInfo outputLocation, string component) foreach (var (key, value) in entitiesToWrite) { - await writer.WriteLineAsync($"## {key} "); + await writer.WriteLineAsync($"## {key}"); await writer.WriteLineAsync(value.Description); From a8418ecdc151e8977b6fc56cc94d26fc63a0806f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thyge=20Sk=C3=B8dt=20Steffensen?= <31892312+thygesteffensen@users.noreply.github.com> Date: Thu, 30 Nov 2023 15:46:04 +0100 Subject: [PATCH 3/3] fix: Add component support for class diagram --- .../ReadMeDocumentationGenerator.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs b/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs index 2993fc1..7f55d74 100644 --- a/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs +++ b/src/EAVFW.Extensions.Docs.Generator/ReadMeDocumentationGenerator.cs @@ -282,9 +282,14 @@ private string EntitiesToClassDiagram(ManifestDefinition manifest, string compon 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 { "Modified On", "Modified By", "Created By", "Created On", "Row Version", "Owner" };