-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Description
Problem
Expensify.cash uses the Expensimark library in the expensify-common repo to convert markdown to HTML. That way, a user can compose a message using markdown, and it can be displayed + stored using HTML. However, when a user later goes to edit the message, we currently have no way to take the HTML and display it to them as markdown. We also don't want to store the original markdown in our database.
Why this is important
Editing comments is an important usability feature in Expensify.cash. However, we need to make sure that the edit-comment experience is as similar as possible to the original message composition experience.
Solution
Implement bi-directional HTML <---> Markdown conversion in Expensimark for all of the elements we currently support for Markdown ---> HTML conversion:
- Code fence - Implement Code Fence HTML to markdown conversion [Hold for payment on August 13th] #4184
- Inline code blocks - [Hold for payment 2020-08-09] Implement Inline Code Block HTML to markdown conversion #4185
- Email links - [Hold for Payment 13 August] Implement Hyperlink and Email link HTML to markdown conversion #4187
- Hyperlinks - [Hold for Payment 13 August] Implement Hyperlink and Email link HTML to markdown conversion #4187
- Bold
- Italics
- Strikethrough
- BlockQuotes - Implement Block quote HTML to markdown conversion #4188
- Newline /
<br />- [HOLD for payment July 22] Update line break regex for HTML->Markdown to support break tags with styles #4052 - Special characters (
¤tly looks like&when you go to edit a previously sent message with&in it) - [HOLD for payment August 4) Fix message Editing and pasting issues. #4169