summaryrefslogtreecommitdiffstats
path: root/packages/markdown/marked/lib/marked.esm.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/markdown/marked/lib/marked.esm.js')
-rw-r--r--packages/markdown/marked/lib/marked.esm.js18
1 files changed, 16 insertions, 2 deletions
diff --git a/packages/markdown/marked/lib/marked.esm.js b/packages/markdown/marked/lib/marked.esm.js
index 36672909..8a42d378 100644
--- a/packages/markdown/marked/lib/marked.esm.js
+++ b/packages/markdown/marked/lib/marked.esm.js
@@ -364,7 +364,7 @@ block.html = edit$1(block.html, 'i')
block.paragraph = edit$1(block._paragraph)
.replace('hr', block.hr)
- .replace('heading', ' {0,3}#{1,6} +')
+ .replace('heading', ' {0,3}#{1,6} ')
.replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs
.replace('blockquote', ' {0,3}>')
.replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')
@@ -389,9 +389,23 @@ block.normal = merge$1({}, block);
block.gfm = merge$1({}, block.normal, {
nptable: /^ *([^|\n ].*\|.*)\n *([-:]+ *\|[-| :]*)(?:\n((?:.*[^>\n ].*(?:\n|$))*)\n*|$)/,
- table: /^ *\|(.+)\n *\|?( *[-:]+[-| :]*)(?:\n((?: *[^>\n ].*(?:\n|$))*)\n*|$)/
+ table: '^ *\\|(.+)\\n' // Header
+ + ' *\\|?( *[-:]+[-| :]*)' // Align
+ + '(?:\\n((?:(?!^|>|\\n| |hr|heading|lheading|code|fences|list|html).*(?:\\n|$))*)\\n*|$)' // Cells
});
+block.gfm.table = edit$1(block.gfm.table)
+ .replace('hr', block.hr)
+ .replace('heading', ' {0,3}#{1,6} ')
+ .replace('lheading', '([^\\n]+)\\n {0,3}(=+|-+) *(?:\\n+|$)')
+ .replace('blockquote', ' {0,3}>')
+ .replace('code', ' {4}[^\\n]')
+ .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')
+ .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
+ .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)')
+ .replace('tag', block._tag) // pars can be interrupted by type (6) html blocks
+ .getRegex();
+
/**
* Pedantic grammar (original John Gruber's loose markdown specification)
*/