Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: markedjs/marked
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.1.0
Choose a base ref
...
head repository: markedjs/marked
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v2.1.1
Choose a head ref
  • 3 commits
  • 10 files changed
  • 3 contributors

Commits on Jun 16, 2021

  1. fix: fix node v12 (#2109)

    UziTech authored Jun 16, 2021
    1

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    af14068 View commit details
  2. 🗜️ build [skip ci]

    MarkedJS bot committed Jun 16, 2021
    Copy the full SHA
    cbd60d0 View commit details
  3. chore(release): 2.1.1 [skip ci]

    ## [2.1.1](v2.1.0...v2.1.1) (2021-06-16)
    
    ### Bug Fixes
    
    * fix node v12 ([#2109](#2109)) ([af14068](af14068))
    semantic-release-bot committed Jun 16, 2021
    1
    Copy the full SHA
    a2af658 View commit details
Showing with 56 additions and 60 deletions.
  1. +1 −1 .github/workflows/tests.yml
  2. +12 −11 lib/marked.esm.js
  3. +10 −26 lib/marked.js
  4. +1 −1 marked.min.js
  5. +1 −1 package-lock.json
  6. +2 −2 package.json
  7. +6 −4 src/Lexer.js
  8. +2 −2 src/Parser.js
  9. +4 −5 src/marked.js
  10. +17 −7 test/unit/marked-spec.js
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -10,7 +10,7 @@ jobs:
if: "!contains(github.event.head_commit.message, '[skip ci]')"
strategy:
matrix:
node_version: ['lts/*', 'node']
node_version: [12, 'lts/*', 'node']
runs-on: ubuntu-latest
steps:
- name: Checkout Code
23 changes: 12 additions & 11 deletions lib/marked.esm.js
Original file line number Diff line number Diff line change
@@ -1478,7 +1478,8 @@ var Lexer_1 = class Lexer {
let token, i, l, lastToken, cutSrc, lastParagraphClipped;

while (src) {
if (this.options?.extensions?.block
if (this.options.extensions
&& this.options.extensions.block
&& this.options.extensions.block.some((extTokenizer) => {
if (token = extTokenizer.call(this, src, tokens)) {
src = src.substring(token.raw.length);
@@ -1596,7 +1597,7 @@ var Lexer_1 = class Lexer {
// top-level paragraph
// prevent paragraph consuming extensions by clipping 'src' to extension start
cutSrc = src;
if (this.options.extensions?.startBlock) {
if (this.options.extensions && this.options.extensions.startBlock) {
let startIndex = Infinity;
const tempSrc = src.slice(1);
let tempStart;
@@ -1749,7 +1750,8 @@ var Lexer_1 = class Lexer {
keepPrevChar = false;

// extensions
if (this.options?.extensions?.inline
if (this.options.extensions
&& this.options.extensions.inline
&& this.options.extensions.inline.some((extTokenizer) => {
if (token = extTokenizer.call(this, src, tokens)) {
src = src.substring(token.raw.length);
@@ -1856,7 +1858,7 @@ var Lexer_1 = class Lexer {
// text
// prevent inlineText consuming extensions by clipping 'src' to extension start
cutSrc = src;
if (this.options.extensions?.startInline) {
if (this.options.extensions && this.options.extensions.startInline) {
let startIndex = Infinity;
const tempSrc = src.slice(1);
let tempStart;
@@ -2228,7 +2230,7 @@ var Parser_1 = class Parser {
token = tokens[i];

// Run any renderer extensions
if (this.options.extensions?.renderers?.[token.type]) {
if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {
ret = this.options.extensions.renderers[token.type].call(this, token);
if (ret !== false || !['space', 'hr', 'heading', 'code', 'table', 'blockquote', 'list', 'html', 'paragraph', 'text'].includes(token.type)) {
out += ret || '';
@@ -2384,7 +2386,7 @@ var Parser_1 = class Parser {
token = tokens[i];

// Run any renderer extensions
if (this.options.extensions?.renderers?.[token.type]) {
if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {
ret = this.options.extensions.renderers[token.type].call(this, token);
if (ret !== false || !['escape', 'html', 'link', 'image', 'strong', 'em', 'codespan', 'br', 'del', 'text'].includes(token.type)) {
out += ret || '';
@@ -2605,7 +2607,7 @@ marked.use = function(...args) {
throw new Error('extension name required');
}
if (ext.renderer) { // Renderer extensions
const prevRenderer = extensions.renderers?.[ext.name];
const prevRenderer = extensions.renderers ? extensions.renderers[ext.name] : null;
if (prevRenderer) {
// Replace extension with func to run new extension but fall back if false
extensions.renderers[ext.name] = function(...args) {
@@ -2725,12 +2727,11 @@ marked.walkTokens = function(tokens, callback) {
break;
}
default: {
if (marked.defaults?.extensions?.childTokens?.[token.type]) { // Walk any extensions
marked.defaults?.extensions.childTokens[token.type].forEach(function(childTokens) {
if (marked.defaults.extensions && marked.defaults.extensions.childTokens && marked.defaults.extensions.childTokens[token.type]) { // Walk any extensions
marked.defaults.extensions.childTokens[token.type].forEach(function(childTokens) {
marked.walkTokens(token[childTokens], callback);
});
}
if (token.tokens && !marked.defaults?.extensions?.childTokens[token.type]) {
} else if (token.tokens) {
marked.walkTokens(token.tokens, callback);
}
}
36 changes: 10 additions & 26 deletions lib/marked.js
Original file line number Diff line number Diff line change
@@ -1476,9 +1476,7 @@
var token, i, l, lastToken, cutSrc, lastParagraphClipped;

while (src) {
var _this$options, _this$options$extensi, _this$options$extensi2;

if ((_this$options = this.options) != null && (_this$options$extensi = _this$options.extensions) != null && _this$options$extensi.block && this.options.extensions.block.some(function (extTokenizer) {
if (this.options.extensions && this.options.extensions.block && this.options.extensions.block.some(function (extTokenizer) {
if (token = extTokenizer.call(_this, src, tokens)) {
src = src.substring(token.raw.length);
tokens.push(token);
@@ -1604,7 +1602,7 @@

cutSrc = src;

if ((_this$options$extensi2 = this.options.extensions) != null && _this$options$extensi2.startBlock) {
if (this.options.extensions && this.options.extensions.startBlock) {
(function () {
var startIndex = Infinity;
var tempSrc = src.slice(1);
@@ -1786,15 +1784,13 @@
}

while (src) {
var _this$options2, _this$options2$extens, _this$options$extensi3;

if (!keepPrevChar) {
prevChar = '';
}

keepPrevChar = false; // extensions

if ((_this$options2 = this.options) != null && (_this$options2$extens = _this$options2.extensions) != null && _this$options2$extens.inline && this.options.extensions.inline.some(function (extTokenizer) {
if (this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some(function (extTokenizer) {
if (token = extTokenizer.call(_this2, src, tokens)) {
src = src.substring(token.raw.length);
tokens.push(token);
@@ -1908,7 +1904,7 @@

cutSrc = src;

if ((_this$options$extensi3 = this.options.extensions) != null && _this$options$extensi3.startInline) {
if (this.options.extensions && this.options.extensions.startInline) {
(function () {
var startIndex = Infinity;
var tempSrc = src.slice(1);
@@ -2309,11 +2305,9 @@
var l = tokens.length;

for (i = 0; i < l; i++) {
var _this$options$extensi, _this$options$extensi2;

token = tokens[i]; // Run any renderer extensions

if ((_this$options$extensi = this.options.extensions) != null && (_this$options$extensi2 = _this$options$extensi.renderers) != null && _this$options$extensi2[token.type]) {
if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {
ret = this.options.extensions.renderers[token.type].call(this, token);

if (ret !== false || !['space', 'hr', 'heading', 'code', 'table', 'blockquote', 'list', 'html', 'paragraph', 'text'].includes(token.type)) {
@@ -2489,11 +2483,9 @@
var l = tokens.length;

for (i = 0; i < l; i++) {
var _this$options$extensi3, _this$options$extensi4;

token = tokens[i]; // Run any renderer extensions

if ((_this$options$extensi3 = this.options.extensions) != null && (_this$options$extensi4 = _this$options$extensi3.renderers) != null && _this$options$extensi4[token.type]) {
if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {
ret = this.options.extensions.renderers[token.type].call(this, token);

if (ret !== false || !['escape', 'html', 'link', 'image', 'strong', 'em', 'codespan', 'br', 'del', 'text'].includes(token.type)) {
@@ -2742,10 +2734,8 @@
}

if (ext.renderer) {
var _extensions$renderers;

// Renderer extensions
var prevRenderer = (_extensions$renderers = extensions.renderers) == null ? void 0 : _extensions$renderers[ext.name];
var prevRenderer = extensions.renderers ? extensions.renderers[ext.name] : null;

if (prevRenderer) {
// Replace extension with func to run new extension but fall back if false
@@ -2923,18 +2913,12 @@

default:
{
var _marked$defaults, _marked$defaults$exte, _marked$defaults$exte2, _marked$defaults3, _marked$defaults3$ext;

if ((_marked$defaults = marked.defaults) != null && (_marked$defaults$exte = _marked$defaults.extensions) != null && (_marked$defaults$exte2 = _marked$defaults$exte.childTokens) != null && _marked$defaults$exte2[token.type]) {
var _marked$defaults2;

if (marked.defaults.extensions && marked.defaults.extensions.childTokens && marked.defaults.extensions.childTokens[token.type]) {
// Walk any extensions
(_marked$defaults2 = marked.defaults) == null ? void 0 : _marked$defaults2.extensions.childTokens[token.type].forEach(function (childTokens) {
marked.defaults.extensions.childTokens[token.type].forEach(function (childTokens) {
marked.walkTokens(token[childTokens], callback);
});
}

if (token.tokens && !((_marked$defaults3 = marked.defaults) != null && (_marked$defaults3$ext = _marked$defaults3.extensions) != null && _marked$defaults3$ext.childTokens[token.type])) {
} else if (token.tokens) {
marked.walkTokens(token.tokens, callback);
}
}
Loading