- 
        Couldn't load subscription status. 
- Fork 1.4k
Description
Describe the problem this feature would solve
We have a lot of overhead for the MarkdownTextBlock supporting Markdown via our own Markdown parser. It may make more sense to refactor on top of a .NET Standard library that's maintained by a larger community, like Markdig.
This however, would require updating our MarkdownRenderer code to do all the construction from the AST.
Describe the solution
Take a dependency on a markdown parser instead of maintaining our own.
Additional context
We were thinking as part of #3062 to separate out the MarkdownTextBlock anyway, as it has a lot of dependencies, so this could also contribute to that effort as well to remove the need for the dependency on Microsoft.Toolkit.Parsers.
If we do this swap, we should convert all of our existing Unit Tests on the Parser to instead test the Renderer and check the translation between the Markdown text scenario and the UI Element tree construction.
This may also just mean we can get rid of the Microsoft.Toolkit.Parsers package entirely if we find another open source C# based RSS parser as we don't use that elsewhere in the toolkit currently.
Requirements
- We should leverage/convert our existing unit tests for render tests to make sure we make the correct UI component abstracts (vs current AST checks)
- We should work with Markdig or expose a helper for the original Span/String of the Markdown text of a component see Issue MarkdownParser get original Markdown from MarkdownElement or MarkdownBlock #2729
- TODO Grab other Markdown labelled issues to list here.
- ? Generalize parsing vs. rendering to support more than just Markdown like HTML as well see HtmlLabelPlugin for Xamarin for instance.