marked 12.0.1 → 12.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/marked.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * marked v12.0.1 - a markdown parser
2
+ * marked v12.0.2 - a markdown parser
3
3
  * Copyright (c) 2011-2024, Christopher Jeffrey. (MIT Licensed)
4
4
  * https://github.com/markedjs/marked
5
5
  */
@@ -324,7 +324,9 @@ class _Tokenizer {
324
324
  blockquote(src) {
325
325
  const cap = this.rules.block.blockquote.exec(src);
326
326
  if (cap) {
327
- const text = rtrim(cap[0].replace(/^ *>[ \t]?/gm, ''), '\n');
327
+ // precede setext continuation with 4 spaces so it isn't a setext
328
+ let text = cap[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g, '\n $1');
329
+ text = rtrim(text.replace(/^ *>[ \t]?/gm, ''), '\n');
328
330
  const top = this.lexer.state.top;
329
331
  this.lexer.state.top = true;
330
332
  const tokens = this.lexer.blockTokens(text);
@@ -960,7 +962,7 @@ const html = edit('^ {0,3}(?:' // optional indentation
960
962
  const paragraph = edit(_paragraph)
961
963
  .replace('hr', hr)
962
964
  .replace('heading', ' {0,3}#{1,6}(?:\\s|$)')
963
- .replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs
965
+ .replace('|lheading', '') // setext headings don't interrupt commonmark paragraphs
964
966
  .replace('|table', '')
965
967
  .replace('blockquote', ' {0,3}>')
966
968
  .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')
@@ -1010,7 +1012,7 @@ const blockGfm = {
1010
1012
  paragraph: edit(_paragraph)
1011
1013
  .replace('hr', hr)
1012
1014
  .replace('heading', ' {0,3}#{1,6}(?:\\s|$)')
1013
- .replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs
1015
+ .replace('|lheading', '') // setext headings don't interrupt commonmark paragraphs
1014
1016
  .replace('table', gfmTable) // interrupt paragraphs with table
1015
1017
  .replace('blockquote', ' {0,3}>')
1016
1018
  .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')