I am trying to implement rich text to the messages presented on my app's frontend (bold, italic, strikethrough, increase/decrease indent, bulleted/numbered list) by converting message body text received through RingCentral into html strings.
I am receiving message text in a tweaked type of Markdown in my get requests, which I see is called Mini Markdown made by RingCentral.
These message strings are very tricky to convert into HTML using typical libraries for that, such as markdown-it, marked, showdown etc. because of the specific deviations from Markdown conventions in these message body strings I'm receiving through RingCentral API. I get a lot of bugs and have to customise logic in most rich text scenarios.
For example, a bulleted list whose indentation is increased by the 'Increase indent' button in RingCentral app looks like this:
It is presented like this in message body when fetching messages:
Markdown-to-HTML libraries can't convert this to a bulleted list, because the 4 spaces that represent the 'Increase indent', that come before the '*' symbol, mean that these items can't be converted to bulleted list items, as the syntax doesn't align with Markdown specifications that all markdown-to-HTML libraries use. The '*' symbol has to come first for a substring after '\n\ to be converted to a bulleted list item.
There are numerous issues of this type.
So, my question is, is there perhaps an approach/library that does this work more simply, that RingCentral maybe itself uses?