marked 15.0.5 → 15.0.7

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.umd.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * marked v15.0.5 - a markdown parser
2
+ * marked v15.0.7 - a markdown parser
3
3
  * Copyright (c) 2011-2025, Christopher Jeffrey. (MIT Licensed)
4
4
  * https://github.com/markedjs/marked
5
5
  */
@@ -120,13 +120,24 @@
120
120
  const hr = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/;
121
121
  const heading = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/;
122
122
  const bullet = /(?:[*+-]|\d{1,9}[.)])/;
123
- const lheading = edit(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/)
123
+ const lheadingCore = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/;
124
+ const lheading = edit(lheadingCore)
124
125
  .replace(/bull/g, bullet) // lists can interrupt
125
126
  .replace(/blockCode/g, /(?: {4}| {0,3}\t)/) // indented code blocks can interrupt
126
127
  .replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/) // fenced code blocks can interrupt
127
128
  .replace(/blockquote/g, / {0,3}>/) // blockquote can interrupt
128
129
  .replace(/heading/g, / {0,3}#{1,6}/) // ATX heading can interrupt
129
130
  .replace(/html/g, / {0,3}<[^\n>]+>\n/) // block html can interrupt
131
+ .replace(/\|table/g, '') // table not in commonmark
132
+ .getRegex();
133
+ const lheadingGfm = edit(lheadingCore)
134
+ .replace(/bull/g, bullet) // lists can interrupt
135
+ .replace(/blockCode/g, /(?: {4}| {0,3}\t)/) // indented code blocks can interrupt
136
+ .replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/) // fenced code blocks can interrupt
137
+ .replace(/blockquote/g, / {0,3}>/) // blockquote can interrupt
138
+ .replace(/heading/g, / {0,3}#{1,6}/) // ATX heading can interrupt
139
+ .replace(/html/g, / {0,3}<[^\n>]+>\n/) // block html can interrupt
140
+ .replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/) // table can interrupt
130
141
  .getRegex();
131
142
  const _paragraph = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/;
132
143
  const blockText = /^[^\n]+/;
@@ -208,6 +219,7 @@
208
219
  .getRegex();
209
220
  const blockGfm = {
210
221
  ...blockNormal,
222
+ lheading: lheadingGfm,
211
223
  table: gfmTable,
212
224
  paragraph: edit(_paragraph)
213
225
  .replace('hr', hr)
@@ -270,9 +282,13 @@
270
282
  const _notPunctuationOrSpaceGfmStrongEm = /(?:[^\s\p{P}\p{S}]|~)/u;
271
283
  // sequences em should skip over [title](link), `code`, <html>
272
284
  const blockSkip = /\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g;
273
- const emStrongLDelim = edit(/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/, 'u')
285
+ const emStrongLDelimCore = /^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/;
286
+ const emStrongLDelim = edit(emStrongLDelimCore, 'u')
274
287
  .replace(/punct/g, _punctuation)
275
288
  .getRegex();
289
+ const emStrongLDelimGfm = edit(emStrongLDelimCore, 'u')
290
+ .replace(/punct/g, _punctuationGfmStrongEm)
291
+ .getRegex();
276
292
  const emStrongRDelimAstCore = '^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)' // Skip orphan inside strong
277
293
  + '|[^*]+(?=[^*])' // Consume to delim
278
294
  + '|(?!\\*)punct(\\*+)(?=[\\s]|$)' // (1) #*** can only be a Right Delimiter
@@ -379,6 +395,7 @@
379
395
  const inlineGfm = {
380
396
  ...inlineNormal,
381
397
  emStrongRDelimAst: emStrongRDelimAstGfm,
398
+ emStrongLDelim: emStrongLDelimGfm,
382
399
  url: edit(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/, 'i')
383
400
  .replace('email', /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/)
384
401
  .getRegex(),
@@ -504,7 +521,7 @@
504
521
  // Step left until we fail to match the invert condition.
505
522
  while (suffLen < l) {
506
523
  const currChar = str.charAt(l - suffLen - 1);
507
- if (currChar === c && !invert) {
524
+ if (currChar === c && true) {
508
525
  suffLen++;
509
526
  }
510
527
  else {