From 990759da73597e4fc1cc4dd755898b1460ce7f85 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Tue, 18 Oct 2022 12:01:52 +0800 Subject: [PATCH] Save base64 encoded image site icon in page --- packages/readabilityjs/Readability.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/readabilityjs/Readability.js b/packages/readabilityjs/Readability.js index ffd4f34d6..07cfc11bf 100644 --- a/packages/readabilityjs/Readability.js +++ b/packages/readabilityjs/Readability.js @@ -1909,10 +1909,21 @@ Readability.prototype = { values["og:site_name"] || null; // get website icon - const iconLink = this._doc.querySelector( + const siteIcon = this._doc.querySelector( "link[rel='apple-touch-icon'], link[rel='shortcut icon'], link[rel='icon']" ); - metadata.siteIcon = iconLink?.href; + if (siteIcon) { + const iconHref = siteIcon.getAttribute("href"); + if (iconHref) { + if (this.REGEXPS.b64DataUrl.test(iconHref)) { + // base64 encoded image + metadata.siteIcon = iconHref; + } else { + // allow relative URLs + metadata.siteIcon = this.toAbsoluteURI(iconHref); + } + } + } // get published date metadata.publishedDate = jsonld.publishedDate ||