Skip to content

Separate Markdown Serializer and Deserializer in the Content Editor

What does this MR do and why?

This MR splits a module in the Content Editor that converts from Markdown to ProseMirror (deserialization) and viceversa (serialization) into two modules: One for serialization and another for deserialization.

Why is this valuable?

We are implementing a feature that allows pasting Markdown in the Content Editor. We need to deserialize the Markdown pasted by the user. Extracting the Markdown Deserializer into its own module allows us to include easily in the Paste Markdown Extension without having to fulfill the dependencies of the Markdown Serializer.

Do we have good test coverage for Markdown Deserialization?

Yes. We use the Markdown Processing Specs to test de serialization/deserialization of every supported element that the Content Editor supports. It is an integration test. We’ve added a new unit test on top of that.

Screenshots or screen recordings

This MR doesn’t introduce user-facing changes. It is a refactoring.

How to set up and validate locally

This MR doesn’t introduce user-facing changes. It is a refactoring.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Enrique Alcántara

Merge request reports

Loading