From 711c15d3e3f200a5f3f209427a12cef17f650af5 Mon Sep 17 00:00:00 2001 From: Gianluca Donato Date: Fri, 23 Nov 2018 15:43:12 +0100 Subject: [PATCH] feat: warning message when md links are broken (#1116) feat: show a warning message when md links are broken --- v1/lib/server/docs.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/v1/lib/server/docs.js b/v1/lib/server/docs.js index dae6b301c6..3371a79288 100644 --- a/v1/lib/server/docs.js +++ b/v1/lib/server/docs.js @@ -49,6 +49,7 @@ function mdToHtmlify(oldContent, mdToHtml, metadata) { let content = oldContent; const mdLinks = []; const mdReferences = []; + const mdBrokenLinks = []; // find any inline-style links to markdown files const linkRegex = /(?:\]\()(?:\.\/)?([^'")\]\s>]+\.md)/g; @@ -81,6 +82,8 @@ function mdToHtmlify(oldContent, mdToHtml, metadata) { new RegExp(`\\]\\((\\./)?${mdLink}`, 'g'), `](${htmlLink}`, ); + } else { + mdBrokenLinks.push(mdLink); } }); @@ -100,8 +103,17 @@ function mdToHtmlify(oldContent, mdToHtml, metadata) { new RegExp(`\\]:(?:\\s)?(\\./|\\.\\./)?${refLink}`, 'g'), `]: ${htmlLink}`, ); + } else { + mdBrokenLinks.push(refLink); } }); + + if (mdBrokenLinks.length) { + console.log( + `[WARN] unresolved links in file '${metadata.source}' >`, + mdBrokenLinks, + ); + } return content; }