diff --git a/src/Microsoft.PowerShell.MarkdownRender/Microsoft.PowerShell.MarkdownRender.csproj b/src/Microsoft.PowerShell.MarkdownRender/Microsoft.PowerShell.MarkdownRender.csproj
index c00c90b95..723dee057 100644
--- a/src/Microsoft.PowerShell.MarkdownRender/Microsoft.PowerShell.MarkdownRender.csproj
+++ b/src/Microsoft.PowerShell.MarkdownRender/Microsoft.PowerShell.MarkdownRender.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/src/Microsoft.PowerShell.MarkdownRender/VT100EscapeSequences.cs b/src/Microsoft.PowerShell.MarkdownRender/VT100EscapeSequences.cs
index 8d3a28356..0e18d4834 100644
--- a/src/Microsoft.PowerShell.MarkdownRender/VT100EscapeSequences.cs
+++ b/src/Microsoft.PowerShell.MarkdownRender/VT100EscapeSequences.cs
@@ -9,6 +9,67 @@ using Markdig.Syntax;
namespace Microsoft.PowerShell.MarkdownRender
{
+ ///
+ /// Enum to name all the properties of MarkdownOptionInfo.
+ ///
+ public enum MarkdownOptionInfoProperty
+ {
+ ///
+ /// Property name Header1.
+ ///
+ Header1,
+
+ ///
+ /// Property name Header2.
+ ///
+ Header2,
+
+ ///
+ /// Property name Header3.
+ ///
+ Header3,
+
+ ///
+ /// Property name Header4.
+ ///
+ Header4,
+
+ ///
+ /// Property name Header5.
+ ///
+ Header5,
+
+ ///
+ /// Property name Header6.
+ ///
+ Header6,
+
+ ///
+ /// Property name Code.
+ ///
+ Code,
+
+ ///
+ /// Property name Link.
+ ///
+ Link,
+
+ ///
+ /// Property name Image.
+ ///
+ Image,
+
+ ///
+ /// Property name EmphasisBold.
+ ///
+ EmphasisBold,
+
+ ///
+ /// Property name EmphasisItalics.
+ ///
+ EmphasisItalics
+ }
+
///
/// Class to represent color preference options for various Markdown elements.
///
@@ -78,43 +139,41 @@ namespace Microsoft.PowerShell.MarkdownRender
///
/// Name of the property to get as escape sequence.
/// Specified property name as escape sequence.
- public string AsEscapeSequence(string propertyName)
+ public string AsEscapeSequence(MarkdownOptionInfoProperty propertyName)
{
- var propName = propertyName?.ToLower();
-
- switch (propName)
+ switch (propertyName)
{
- case "header1":
+ case MarkdownOptionInfoProperty.Header1:
return string.Concat(Esc, Header1, Header1, Esc, EndSequence);
- case "header2":
+ case MarkdownOptionInfoProperty.Header2:
return string.Concat(Esc, Header2, Header2, Esc, EndSequence);
- case "header3":
+ case MarkdownOptionInfoProperty.Header3:
return string.Concat(Esc, Header3, Header3, Esc, EndSequence);
- case "header4":
+ case MarkdownOptionInfoProperty.Header4:
return string.Concat(Esc, Header4, Header4, Esc, EndSequence);
- case "header5":
+ case MarkdownOptionInfoProperty.Header5:
return string.Concat(Esc, Header5, Header5, Esc, EndSequence);
- case "header6":
+ case MarkdownOptionInfoProperty.Header6:
return string.Concat(Esc, Header6, Header6, Esc, EndSequence);
- case "code":
+ case MarkdownOptionInfoProperty.Code:
return string.Concat(Esc, Code, Code, Esc, EndSequence);
- case "link":
+ case MarkdownOptionInfoProperty.Link:
return string.Concat(Esc, Link, Link, Esc, EndSequence);
- case "image":
+ case MarkdownOptionInfoProperty.Image:
return string.Concat(Esc, Image, Image, Esc, EndSequence);
- case "emphasisbold":
+ case MarkdownOptionInfoProperty.EmphasisBold:
return string.Concat(Esc, EmphasisBold, EmphasisBold, Esc, EndSequence);
- case "emphasisitalics":
+ case MarkdownOptionInfoProperty.EmphasisItalics:
return string.Concat(Esc, EmphasisItalics, EmphasisItalics, Esc, EndSequence);
default: