All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- Markdown: Make custom liquid tags parsing more robust, which might break in some advanced usage.
- Upgrade dependencies
- Markdown: Fix missing newline characters after serialized HTML table leading to invalid markdown
- Gracefully handle front matter parsing in markdown. When front matter cannot be correctly parsed, it is now treated as normal text and deserialized as markdown instead of throwing an error
- Fix problem with Edge because of
indent-string
using spread syntax
- Fix build to be compatible with most browsers modern versions (including Edge that doesn't support object spread syntax)
- Fix deserialization of hash signs
#
at the end of titles in markdown
- Fix a bug where inlining React Elements in props of another one in markdown made the deserialization crash
- Revert publishing minified code
- Compile as ES module
- Drop support for Node 6 and lower
- API changes since
markup-it
is now compiled as a single file (see README.md)
- Fix a bug where deserializing from markdown a heading containing rich content, like a link, would crash
- Improve markdown serialization/deserialization by correctly parsing blockquotes and lists in custom blocks
- Fix deserialization of absolute URLs from markdown
- Fix deserializing other marks around inline code in markdown
- Fix parsing of HTML tags in markdown
- Escape HTML entities when serializing text to HTML
- Fix yarn warning for immutable peer dependency
- Markup-it is now tested with
[email protected]
- Use
<a id="custom"></a>
as the default syntax for serializing custom anchors in Markdown headings - Correctly escape HTML attributes when serializing to HTML
- Set package version to have only 1 in it ;)
- Correctly parse inline HTML as well in Markdown.
- Support using
<a id="custom"></a>
before or inside headings to add a custom ID to them.
[BREAKING] Now using @gitbook/slate as peer dependency
- [BREAKING] Now using ES6 import/export syntax
- [BREAKING] The Markdown parser now parses HTML chunks, and will no longer yield HTML blocks.
- The serialized HTML is now prettified
- Rename table aligns data from
align
toaligns
- Remove warnings when using Slate 0.34.x
- Rename math block to
math_block
- Fix spacing around math blocks in markdown
- Rename
tex
data toformula
on math blocks/inlines
- Parse Math blocks as true block, instead of inline maths.
- Fix serialization and deserialization for JSON strings containing escaped characters
- Fix serialization of bold or italic to not wrap spaces (
**bold** text
instead of**bold **text
)
- Fix parsing of
[def]
for code blocks in list
- Remove Asciidoc support
- Limit size of the package by publishing only the
dist
folder
- Fix parsing of HTML entities like emojis (ex:
🔌
)
Import fixes from 6.0.6:
- Fix empty custom block serialization
- Fix invalid custom block parsing
Import fixes from 6.0.2, 6.0.3, 6.0.4 and 6.0.5:
- Fix empty custom block parsing
- Fix newlines and whitespace collapsing in paragraph. #99
- Fix link reference parsing when mixed with HTML
- Fix bold parsed as list inside a text
- Paragraph now correctly stop at {% custom-blocks %} found in the text.
- Upgrade Slate to 0.33
- Fix empty custom block serialization
- Fix invalid custom block parsing
- Fix empty custom block tag parsing
- Fix newlines and whitespace collapsing in paragraph. #99
- Fix link reference parsing when mixed with HTML
- Fix bold parsed as list inside a text
- Paragraph now correctly stop at {% custom-blocks %} found in the text.
- Parse HTML blocks as
html_block
- Support parenthesis in links title
- Prevent paragraphs from swallowing tables
- Escape whitespaces when writing Markdown links
- Add support for unending custom tags
- Move react and immutable as peer dependencies
- Fix parsing of HTML when the inner HTML of a tag is empty
- Inline HTML nodes have a new format. #87
- Fix parsing of HTML when the inner HTML of a tag existed in an attribute
- Fix parsing of Markdown empty headings
- Parse Markdown horizontal rules before parsing lists, to avoid misdetection.
- Breaking Change: Templating is now parsed as
variable
,comment
andx-<tag>
.comment
andx-<tag>
are blocks, whilevariable
is inline. - Parse YAML frontmatter as
document
's data
- Upgrade slate^0.22.0
- Fix HTML deserialization of non-breaking spaces
- Fix HTML deserialization of code blocks containing spans (usually from syntax highlighting)
- Improve HTML deserialization by reusing nodes wrappers instead of wrapping invalid nodes individually,
- Fix parsing of ill-encoded URIs
- Fix parsing of empty fences block
- Improve Asciidoc and HTML deserialization by applying basic normalization (with Slate's core schema).
- Now supporting deserialization of URI encoded links.
- Serialization of links now URI encodes parenthesis, instead of escaping them.
- Fix parsing of links not separated by whitespaces.
- Whitespaces non-escaped are supported again during deserialization
- Whitespaces in urls are not escaped during serialization
- Fix parsing of images and links with parenthesis
- Fix parsing of escaped code block syntax
- Important: whitespace non-escaped are no longer supported in images and links.
- Fix crash during serialization of HTML nodes to markdown
- Prevent conflict between first HR and frontmatter
- Fix parsing of code blocks starting with an indent, now being preserved
- New syntax: Asciidoc (basic support)
- Improvements for HTML parser
- Serialize and deserialize GitHub GFM task lists
- Fix error for node < v6
- Fix parsing of nested lists in markdown
- Fix markdown serialization for lists followed by a block
- Changed the structure for code blocks: code blocks are now made of code lines
- Fix parsing of math when at beginning and end of a paragraph
- Fix parsing of inline code
- Fix whitespace normalization in HTML parsing
- Fix invalid structure when parsing HTML
- Rewrite of the internal engine
- Use
slate
for data modeling of the document - Deserialized document can't be empty anymore
- Markdown
- Follow GFM (GitHub) for slashes escaping
- Add
SlateUtils
to decode/encode for Slate - Markdown lists are indented to the bullet size
- Add support for named images (#17)
- Fix empty tables
- Don't add
style
attribute to table cells when alignment is not defined