@ecency/render-helper 2.4.31 → 2.4.33
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/dist/browser/index.js +17 -17
- package/dist/browser/index.js.map +1 -1
- package/dist/node/index.cjs +18 -21
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.mjs +17 -20
- package/dist/node/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/node/index.cjs
CHANGED
|
@@ -6,10 +6,10 @@ var multihash = require('multihashes');
|
|
|
6
6
|
var querystring = require('querystring');
|
|
7
7
|
var remarkable = require('remarkable');
|
|
8
8
|
var linkify$1 = require('remarkable/linkify');
|
|
9
|
-
var he2 = require('he');
|
|
10
9
|
var htmlparser2 = require('htmlparser2');
|
|
11
10
|
var domSerializerModule = require('dom-serializer');
|
|
12
11
|
var lruCache = require('lru-cache');
|
|
12
|
+
var he = require('he');
|
|
13
13
|
|
|
14
14
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
15
|
|
|
@@ -34,9 +34,9 @@ function _interopNamespace(e) {
|
|
|
34
34
|
var xss__default = /*#__PURE__*/_interopDefault(xss);
|
|
35
35
|
var multihash__default = /*#__PURE__*/_interopDefault(multihash);
|
|
36
36
|
var querystring__default = /*#__PURE__*/_interopDefault(querystring);
|
|
37
|
-
var he2__default = /*#__PURE__*/_interopDefault(he2);
|
|
38
37
|
var htmlparser2__namespace = /*#__PURE__*/_interopNamespace(htmlparser2);
|
|
39
38
|
var domSerializerModule__namespace = /*#__PURE__*/_interopNamespace(domSerializerModule);
|
|
39
|
+
var he__default = /*#__PURE__*/_interopDefault(he);
|
|
40
40
|
|
|
41
41
|
// src/consts/white-list.const.ts
|
|
42
42
|
var WHITE_LIST = [
|
|
@@ -197,17 +197,13 @@ var ALLOWED_ATTRIBUTES = {
|
|
|
197
197
|
"del": [],
|
|
198
198
|
"ins": []
|
|
199
199
|
};
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
}
|
|
206
|
-
var DOMParser =
|
|
207
|
-
// Use onError instead of deprecated errorHandler
|
|
208
|
-
// By providing a non-throwing error handler, parsing continues despite malformed HTML
|
|
209
|
-
onError: lenientErrorHandler
|
|
210
|
-
});
|
|
200
|
+
function createParser() {
|
|
201
|
+
return new xmldom.DOMParser({
|
|
202
|
+
onError(level, msg) {
|
|
203
|
+
}
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
var DOMParser = createParser();
|
|
211
207
|
|
|
212
208
|
// src/helper.ts
|
|
213
209
|
function removeDuplicateAttributes(html) {
|
|
@@ -285,6 +281,8 @@ function isValidUsername(username) {
|
|
|
285
281
|
!label.includes("..");
|
|
286
282
|
});
|
|
287
283
|
}
|
|
284
|
+
|
|
285
|
+
// src/methods/get-inner-html.method.ts
|
|
288
286
|
function getSerializedInnerHTML(node) {
|
|
289
287
|
const serializer = new xmldom.XMLSerializer();
|
|
290
288
|
if (node.childNodes[0]) {
|
|
@@ -1621,8 +1619,7 @@ function markdownToHTML(input, forApp, parentDomain = "ecency.com", seoContext,
|
|
|
1621
1619
|
traverse(doc, forApp, 0, { firstImageFound: false }, parentDomain, seoContext, renderOptions);
|
|
1622
1620
|
output = serializer.serializeToString(doc);
|
|
1623
1621
|
} catch (fallbackError) {
|
|
1624
|
-
|
|
1625
|
-
output = `<p dir="auto">${escapedContent}</p>`;
|
|
1622
|
+
output = sanitizeHtml(output || md.render(input));
|
|
1626
1623
|
}
|
|
1627
1624
|
}
|
|
1628
1625
|
if (forApp && output && entityPlaceholders.length > 0) {
|
|
@@ -1631,7 +1628,7 @@ function markdownToHTML(input, forApp, parentDomain = "ecency.com", seoContext,
|
|
|
1631
1628
|
output = output.split(placeholder).join(entity);
|
|
1632
1629
|
});
|
|
1633
1630
|
}
|
|
1634
|
-
output = output.replace(/ xmlns="http:\/\/www.w3.org\/1999\/xhtml"/g, "").replace('<body id="root">', "").replace("</body>", "").trim();
|
|
1631
|
+
output = output.replace(/ xmlns="http:\/\/www.w3.org\/1999\/xhtml"/g, "").replace(/^<\?xml[^?]*\?>/, "").replace(/^<!DOCTYPE[^>]*>/i, "").replace(/<\/?html[^>]*>/g, "").replace(/<head[^>]*>[\s\S]*?<\/head>/g, "").replace('<body id="root">', "").replace("</body>", "").trim();
|
|
1635
1632
|
return sanitizeHtml(output);
|
|
1636
1633
|
}
|
|
1637
1634
|
var mdInstance = null;
|
|
@@ -1693,7 +1690,7 @@ function getImage(entry, width = 0, height = 0, format = "match") {
|
|
|
1693
1690
|
}
|
|
1694
1691
|
}
|
|
1695
1692
|
if (meta && typeof meta.image === "string" && meta.image.length > 0) {
|
|
1696
|
-
const decodedImage =
|
|
1693
|
+
const decodedImage = he__default.default.decode(meta.image);
|
|
1697
1694
|
if (isGifLink(decodedImage)) {
|
|
1698
1695
|
return proxifyImageSrc(decodedImage, 0, 0, format);
|
|
1699
1696
|
}
|
|
@@ -1701,7 +1698,7 @@ function getImage(entry, width = 0, height = 0, format = "match") {
|
|
|
1701
1698
|
}
|
|
1702
1699
|
if (meta && meta.image && !!meta.image.length && meta.image[0]) {
|
|
1703
1700
|
if (typeof meta.image[0] === "string") {
|
|
1704
|
-
const decodedImage =
|
|
1701
|
+
const decodedImage = he__default.default.decode(meta.image[0]);
|
|
1705
1702
|
if (isGifLink(decodedImage)) {
|
|
1706
1703
|
return proxifyImageSrc(decodedImage, 0, 0, format);
|
|
1707
1704
|
}
|
|
@@ -1723,7 +1720,7 @@ function getImage(entry, width = 0, height = 0, format = "match") {
|
|
|
1723
1720
|
if (!src) {
|
|
1724
1721
|
return null;
|
|
1725
1722
|
}
|
|
1726
|
-
const decodedSrc =
|
|
1723
|
+
const decodedSrc = he__default.default.decode(src);
|
|
1727
1724
|
if (isGifLink(decodedSrc)) {
|
|
1728
1725
|
return proxifyImageSrc(decodedSrc, 0, 0, format);
|
|
1729
1726
|
}
|
|
@@ -1744,7 +1741,7 @@ function catchPostImage(obj, width = 0, height = 0, format = "match") {
|
|
|
1744
1741
|
if (!src) {
|
|
1745
1742
|
return null;
|
|
1746
1743
|
}
|
|
1747
|
-
const decodedSrc =
|
|
1744
|
+
const decodedSrc = he__default.default.decode(src);
|
|
1748
1745
|
if (isGifLink(decodedSrc)) {
|
|
1749
1746
|
return proxifyImageSrc(decodedSrc, 0, 0, format);
|
|
1750
1747
|
}
|
|
@@ -1837,7 +1834,7 @@ function postBodySummary(entryBody, length = 200, platform = "web") {
|
|
|
1837
1834
|
text2 = joint(text2.split(" "), length);
|
|
1838
1835
|
}
|
|
1839
1836
|
if (text2) {
|
|
1840
|
-
text2 =
|
|
1837
|
+
text2 = he__default.default.decode(text2);
|
|
1841
1838
|
}
|
|
1842
1839
|
return text2;
|
|
1843
1840
|
}
|