add markdown viewer
This commit is contained in:
@@ -1,25 +1,50 @@
|
||||
FROM alpine:3.11
|
||||
WORKDIR /z
|
||||
ENV ver_asmcrypto=2821dd1dedd1196c378f5854037dda5c869313f3 \
|
||||
ver_markdownit=10.0.0 \
|
||||
ver_showdown=1.9.1 \
|
||||
ver_marked=1.0.0 \
|
||||
ver_ogvjs=1.6.1
|
||||
|
||||
|
||||
# download
|
||||
RUN apk add make g++ git bash npm patch wget tar pigz brotli gzip unzip \
|
||||
&& wget https://github.com/brion/ogv.js/releases/download/$ver_ogvjs/ogvjs-$ver_ogvjs.zip \
|
||||
&& wget https://github.com/asmcrypto/asmcrypto.js/archive/$ver_asmcrypto.tar.gz \
|
||||
&& unzip ogvjs-$ver_ogvjs.zip \
|
||||
&& tar -xf $ver_asmcrypto.tar.gz \
|
||||
&& cd asmcrypto.js-$ver_asmcrypto \
|
||||
&& npm install \
|
||||
&& wget https://github.com/brion/ogv.js/releases/download/$ver_ogvjs/ogvjs-$ver_ogvjs.zip -O ogvjs.zip \
|
||||
&& wget https://github.com/asmcrypto/asmcrypto.js/archive/$ver_asmcrypto.tar.gz -O asmcrypto.tgz \
|
||||
&& wget https://github.com/markedjs/marked/archive/v$ver_marked.tar.gz -O marked.tgz \
|
||||
&& unzip ogvjs.zip \
|
||||
&& (tar -xf asmcrypto.tgz \
|
||||
&& cd asmcrypto.js-$ver_asmcrypto \
|
||||
&& npm install ) \
|
||||
&& (tar -xf marked.tgz \
|
||||
&& cd marked-$ver_marked \
|
||||
&& npm install \
|
||||
&& npm i grunt uglify-js -g ) \
|
||||
&& mkdir /z/dist
|
||||
|
||||
|
||||
# uncomment if you wanna test the abandoned markdown converters
|
||||
#ENV build_abandoned=1
|
||||
|
||||
|
||||
RUN [ $build_abandoned ] || exit 0; \
|
||||
git clone --depth 1 --branch $ver_showdown https://github.com/showdownjs/showdown/ \
|
||||
&& wget https://github.com/markdown-it/markdown-it/archive/$ver_markdownit.tar.gz -O markdownit.tgz \
|
||||
&& (cd showdown \
|
||||
&& npm install \
|
||||
&& npm i grunt -g ) \
|
||||
&& (tar -xf markdownit.tgz \
|
||||
&& cd markdown-it-$ver_markdownit \
|
||||
&& npm install )
|
||||
|
||||
|
||||
# build asmcrypto
|
||||
RUN cd asmcrypto.js-$ver_asmcrypto \
|
||||
&& echo "export { Sha512 } from './hash/sha512/sha512';" > src/entry-export_all.ts \
|
||||
&& node -r esm build.js \
|
||||
&& mv asmcrypto.all.es5.js /z/dist/sha512.js
|
||||
|
||||
|
||||
# build ogvjs
|
||||
RUN cd ogvjs-$ver_ogvjs \
|
||||
&& cp -pv \
|
||||
@@ -40,8 +65,90 @@ RUN cd ogvjs-$ver_ogvjs \
|
||||
dynamicaudio.swf \
|
||||
/z/dist
|
||||
|
||||
|
||||
# build marked
|
||||
COPY marked.patch /z/
|
||||
RUN cd marked-$ver_marked \
|
||||
&& patch -p1 < /z/marked.patch \
|
||||
&& npm run build \
|
||||
&& cp -pv marked.min.js /z/dist/marked.js \
|
||||
&& cp -pv lib/marked.js /z/dist/marked.full.js
|
||||
# && npm run test \
|
||||
|
||||
|
||||
# build showdown (abandoned; disabled by default)
|
||||
COPY showdown.patch /z/
|
||||
RUN [ $build_abandoned ] || exit 0; \
|
||||
cd showdown \
|
||||
&& rm -rf bin dist \
|
||||
# # remove ellipsis plugin \
|
||||
&& rm \
|
||||
src/subParsers/ellipsis.js \
|
||||
test/cases/ellipsis* \
|
||||
# # remove html-to-md converter \
|
||||
&& rm \
|
||||
test/node/testsuite.makemd.js \
|
||||
test/node/showdown.Converter.makeMarkdown.js \
|
||||
# # remove emojis \
|
||||
&& rm src/subParsers/emoji.js \
|
||||
&& awk '/^showdown.helper.emojis/ {o=1} !o; /^\}/ {o=0}' \
|
||||
>f <src/helpers.js \
|
||||
&& mv f src/helpers.js \
|
||||
&& rm -rf test/features/emojis \
|
||||
# # remove ghmentions \
|
||||
&& rm test/features/ghMentions.* \
|
||||
# # remove option descriptions \
|
||||
&& sed -ri '/descri(ption|be): /d' src/options.js \
|
||||
&& patch -p1 < /z/showdown.patch
|
||||
|
||||
RUN [ $build_abandoned ] || exit 0; \
|
||||
cd showdown \
|
||||
&& grunt build \
|
||||
&& sed -ri '/sourceMappingURL=showdown.min.js.map/d' dist/showdown.min.js \
|
||||
&& mv dist/showdown.min.js /z/dist/showdown.js \
|
||||
&& ls -al /z/dist/showdown.js
|
||||
|
||||
|
||||
# build markdownit (abandoned; disabled by default)
|
||||
COPY markdown-it.patch /z/
|
||||
RUN [ $build_abandoned ] || exit 0; \
|
||||
cd markdown-it-$ver_markdownit \
|
||||
&& patch -p1 < /z/markdown-it.patch \
|
||||
&& make browserify \
|
||||
&& cp -pv dist/markdown-it.min.js /z/dist/markdown-it.js \
|
||||
&& cp -pv dist/markdown-it.js /z/dist/markdown-it-full.js
|
||||
|
||||
|
||||
# compress
|
||||
COPY zopfli.makefile /z/dist/Makefile
|
||||
RUN cd /z/dist \
|
||||
&& make -j$(nproc) \
|
||||
&& rm Makefile
|
||||
|
||||
|
||||
# showdown: abandoned due to code-blocks in lists failing
|
||||
# 22770 orig
|
||||
# 12154 no-emojis
|
||||
# 12134 no-srcmap
|
||||
# 11189 no-descriptions
|
||||
# 11152 no-ellipsis
|
||||
# 10617 no-this.makeMd
|
||||
# 9569 no-extensions
|
||||
# 9537 no-extensions
|
||||
# 9410 no-mentions
|
||||
|
||||
|
||||
# markdown-it: abandoned because no header anchors (and too big)
|
||||
# 32322 107754 orig (wowee)
|
||||
# 19619 21392 71540 less entities
|
||||
|
||||
|
||||
# marked:
|
||||
# 9253 29773 orig
|
||||
# 9159 29633 no copyright (reverted)
|
||||
# 9040 29057 no sanitize
|
||||
# 8870 28631 no email-mangle
|
||||
# so really not worth it, just drop the patch when that stops working
|
||||
|
||||
|
||||
# f=../../copyparty/web/deps/marked.js.gz; (cd ~ed/src/ && diff -NarU1 marked-1.0.0-orig/ marked-1.0.0-edit/) >marked.patch; make && printf '%d ' $(wc -c <$f) $(gzip -d <$f | wc -c); echo
|
||||
|
||||
10
scripts/deps-docker/markdown-it.patch
Normal file
10
scripts/deps-docker/markdown-it.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
diff -NarU1 markdown-it-10.0.0-orig/lib/common/entities.js markdown-it-10.0.0-edit/lib/common/entities.js
|
||||
--- markdown-it-10.0.0-orig/lib/common/entities.js 2019-09-10 21:39:58.000000000 +0000
|
||||
+++ markdown-it-10.0.0-edit/lib/common/entities.js 2020-04-26 10:24:33.043023331 +0000
|
||||
@@ -5,2 +5,5 @@
|
||||
/*eslint quotes:0*/
|
||||
-module.exports = require('entities/lib/maps/entities.json');
|
||||
+//module.exports = require('entities/lib/maps/entities.json');
|
||||
+module.exports = {
|
||||
+ "amp": "&", "quot": "\"", "gt": ">", "lt": "<"
|
||||
+}
|
||||
269
scripts/deps-docker/marked.patch
Normal file
269
scripts/deps-docker/marked.patch
Normal file
@@ -0,0 +1,269 @@
|
||||
diff -NarU1 marked-1.0.0-orig/src/defaults.js marked-1.0.0-edit/src/defaults.js
|
||||
--- marked-1.0.0-orig/src/defaults.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/src/defaults.js 2020-04-25 19:16:56.124621393 +0000
|
||||
@@ -9,10 +9,6 @@
|
||||
langPrefix: 'language-',
|
||||
- mangle: true,
|
||||
pedantic: false,
|
||||
renderer: null,
|
||||
- sanitize: false,
|
||||
- sanitizer: null,
|
||||
silent: false,
|
||||
smartLists: false,
|
||||
- smartypants: false,
|
||||
tokenizer: null,
|
||||
diff -NarU1 marked-1.0.0-orig/src/helpers.js marked-1.0.0-edit/src/helpers.js
|
||||
--- marked-1.0.0-orig/src/helpers.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/src/helpers.js 2020-04-25 18:58:43.001320210 +0000
|
||||
@@ -65,16 +65,3 @@
|
||||
const originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;
|
||||
-function cleanUrl(sanitize, base, href) {
|
||||
- if (sanitize) {
|
||||
- let prot;
|
||||
- try {
|
||||
- prot = decodeURIComponent(unescape(href))
|
||||
- .replace(nonWordAndColonTest, '')
|
||||
- .toLowerCase();
|
||||
- } catch (e) {
|
||||
- return null;
|
||||
- }
|
||||
- if (prot.indexOf('javascript:') === 0 || prot.indexOf('vbscript:') === 0 || prot.indexOf('data:') === 0) {
|
||||
- return null;
|
||||
- }
|
||||
- }
|
||||
+function cleanUrl(base, href) {
|
||||
if (base && !originIndependentUrl.test(href)) {
|
||||
@@ -224,8 +211,2 @@
|
||||
|
||||
-function checkSanitizeDeprecation(opt) {
|
||||
- if (opt && opt.sanitize && !opt.silent) {
|
||||
- console.warn('marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options');
|
||||
- }
|
||||
-}
|
||||
-
|
||||
module.exports = {
|
||||
@@ -240,4 +221,3 @@
|
||||
rtrim,
|
||||
- findClosingBracket,
|
||||
- checkSanitizeDeprecation
|
||||
+ findClosingBracket
|
||||
};
|
||||
diff -NarU1 marked-1.0.0-orig/src/Lexer.js marked-1.0.0-edit/src/Lexer.js
|
||||
--- marked-1.0.0-orig/src/Lexer.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/src/Lexer.js 2020-04-25 22:46:54.107584066 +0000
|
||||
@@ -6,3 +6,3 @@
|
||||
* smartypants text replacement
|
||||
- */
|
||||
+ *
|
||||
function smartypants(text) {
|
||||
@@ -27,3 +27,3 @@
|
||||
* mangle email addresses
|
||||
- */
|
||||
+ *
|
||||
function mangle(text) {
|
||||
@@ -388,3 +388,3 @@
|
||||
// autolink
|
||||
- if (token = this.tokenizer.autolink(src, mangle)) {
|
||||
+ if (token = this.tokenizer.autolink(src)) {
|
||||
src = src.substring(token.raw.length);
|
||||
@@ -395,3 +395,3 @@
|
||||
// url (gfm)
|
||||
- if (!inLink && (token = this.tokenizer.url(src, mangle))) {
|
||||
+ if (!inLink && (token = this.tokenizer.url(src))) {
|
||||
src = src.substring(token.raw.length);
|
||||
@@ -402,3 +402,3 @@
|
||||
// text
|
||||
- if (token = this.tokenizer.inlineText(src, inRawBlock, smartypants)) {
|
||||
+ if (token = this.tokenizer.inlineText(src, inRawBlock)) {
|
||||
src = src.substring(token.raw.length);
|
||||
diff -NarU1 marked-1.0.0-orig/src/marked.js marked-1.0.0-edit/src/marked.js
|
||||
--- marked-1.0.0-orig/src/marked.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/src/marked.js 2020-04-25 22:42:55.140924439 +0000
|
||||
@@ -8,3 +8,2 @@
|
||||
merge,
|
||||
- checkSanitizeDeprecation,
|
||||
escape
|
||||
@@ -37,3 +36,2 @@
|
||||
opt = merge({}, marked.defaults, opt || {});
|
||||
- checkSanitizeDeprecation(opt);
|
||||
const highlight = opt.highlight;
|
||||
@@ -101,6 +99,5 @@
|
||||
opt = merge({}, marked.defaults, opt || {});
|
||||
- checkSanitizeDeprecation(opt);
|
||||
return Parser.parse(Lexer.lex(src, opt), opt);
|
||||
} catch (e) {
|
||||
- e.message += '\nPlease report this to https://github.com/markedjs/marked.';
|
||||
+ e.message += '\nmake issue @ https://github.com/9001/copyparty';
|
||||
if ((opt || marked.defaults).silent) {
|
||||
diff -NarU1 marked-1.0.0-orig/src/Renderer.js marked-1.0.0-edit/src/Renderer.js
|
||||
--- marked-1.0.0-orig/src/Renderer.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/src/Renderer.js 2020-04-25 18:59:15.091319265 +0000
|
||||
@@ -134,3 +134,3 @@
|
||||
link(href, title, text) {
|
||||
- href = cleanUrl(this.options.sanitize, this.options.baseUrl, href);
|
||||
+ href = cleanUrl(this.options.baseUrl, href);
|
||||
if (href === null) {
|
||||
@@ -147,3 +147,3 @@
|
||||
image(href, title, text) {
|
||||
- href = cleanUrl(this.options.sanitize, this.options.baseUrl, href);
|
||||
+ href = cleanUrl(this.options.baseUrl, href);
|
||||
if (href === null) {
|
||||
diff -NarU1 marked-1.0.0-orig/src/Tokenizer.js marked-1.0.0-edit/src/Tokenizer.js
|
||||
--- marked-1.0.0-orig/src/Tokenizer.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/src/Tokenizer.js 2020-04-25 22:47:07.610917004 +0000
|
||||
@@ -256,9 +256,6 @@
|
||||
return {
|
||||
- type: this.options.sanitize
|
||||
- ? 'paragraph'
|
||||
- : 'html',
|
||||
- raw: cap[0],
|
||||
- pre: !this.options.sanitizer
|
||||
- && (cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style'),
|
||||
- text: this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape(cap[0])) : cap[0]
|
||||
+ type: 'html',
|
||||
+ raw: cap[0],
|
||||
+ pre: cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style',
|
||||
+ text: cap[0]
|
||||
};
|
||||
@@ -382,5 +379,3 @@
|
||||
return {
|
||||
- type: this.options.sanitize
|
||||
- ? 'text'
|
||||
- : 'html',
|
||||
+ type: 'html',
|
||||
raw: cap[0],
|
||||
@@ -388,7 +383,3 @@
|
||||
inRawBlock,
|
||||
- text: this.options.sanitize
|
||||
- ? (this.options.sanitizer
|
||||
- ? this.options.sanitizer(cap[0])
|
||||
- : escape(cap[0]))
|
||||
- : cap[0]
|
||||
+ text: cap[0]
|
||||
};
|
||||
@@ -504,3 +495,3 @@
|
||||
|
||||
- autolink(src, mangle) {
|
||||
+ autolink(src) {
|
||||
const cap = this.rules.inline.autolink.exec(src);
|
||||
@@ -509,3 +500,3 @@
|
||||
if (cap[2] === '@') {
|
||||
- text = escape(this.options.mangle ? mangle(cap[1]) : cap[1]);
|
||||
+ text = escape(cap[1]);
|
||||
href = 'mailto:' + text;
|
||||
@@ -532,3 +523,3 @@
|
||||
|
||||
- url(src, mangle) {
|
||||
+ url(src) {
|
||||
let cap;
|
||||
@@ -537,3 +528,3 @@
|
||||
if (cap[2] === '@') {
|
||||
- text = escape(this.options.mangle ? mangle(cap[0]) : cap[0]);
|
||||
+ text = escape(cap[0]);
|
||||
href = 'mailto:' + text;
|
||||
@@ -569,3 +560,3 @@
|
||||
|
||||
- inlineText(src, inRawBlock, smartypants) {
|
||||
+ inlineText(src, inRawBlock) {
|
||||
const cap = this.rules.inline.text.exec(src);
|
||||
@@ -574,5 +565,5 @@
|
||||
if (inRawBlock) {
|
||||
- text = this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape(cap[0])) : cap[0];
|
||||
+ text = cap[0];
|
||||
} else {
|
||||
- text = escape(this.options.smartypants ? smartypants(cap[0]) : cap[0]);
|
||||
+ text = escape(cap[0]);
|
||||
}
|
||||
diff -NarU1 marked-1.0.0-orig/test/bench.js marked-1.0.0-edit/test/bench.js
|
||||
--- marked-1.0.0-orig/test/bench.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/test/bench.js 2020-04-25 19:02:27.227980287 +0000
|
||||
@@ -34,3 +34,2 @@
|
||||
pedantic: false,
|
||||
- sanitize: false,
|
||||
smartLists: false
|
||||
@@ -46,3 +45,2 @@
|
||||
pedantic: false,
|
||||
- sanitize: false,
|
||||
smartLists: false
|
||||
@@ -59,3 +57,2 @@
|
||||
pedantic: false,
|
||||
- sanitize: false,
|
||||
smartLists: false
|
||||
@@ -71,3 +68,2 @@
|
||||
pedantic: false,
|
||||
- sanitize: false,
|
||||
smartLists: false
|
||||
@@ -84,3 +80,2 @@
|
||||
pedantic: true,
|
||||
- sanitize: false,
|
||||
smartLists: false
|
||||
@@ -96,3 +91,2 @@
|
||||
pedantic: true,
|
||||
- sanitize: false,
|
||||
smartLists: false
|
||||
diff -NarU1 marked-1.0.0-orig/test/specs/run-spec.js marked-1.0.0-edit/test/specs/run-spec.js
|
||||
--- marked-1.0.0-orig/test/specs/run-spec.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/test/specs/run-spec.js 2020-04-25 19:05:24.321308408 +0000
|
||||
@@ -21,6 +21,2 @@
|
||||
}
|
||||
- if (spec.options.sanitizer) {
|
||||
- // eslint-disable-next-line no-eval
|
||||
- spec.options.sanitizer = eval(spec.options.sanitizer);
|
||||
- }
|
||||
(spec.only ? fit : (spec.skip ? xit : it))('should ' + passFail + example, async() => {
|
||||
@@ -49,2 +45 @@
|
||||
runSpecs('ReDOS', './redos');
|
||||
-runSpecs('Security', './security', false, { silent: true }); // silent - do not show deprecation warning
|
||||
diff -NarU1 marked-1.0.0-orig/test/unit/Lexer-spec.js marked-1.0.0-edit/test/unit/Lexer-spec.js
|
||||
--- marked-1.0.0-orig/test/unit/Lexer-spec.js 2020-04-21 01:03:48.000000000 +0000
|
||||
+++ marked-1.0.0-edit/test/unit/Lexer-spec.js 2020-04-25 22:47:27.170916427 +0000
|
||||
@@ -464,3 +464,3 @@
|
||||
|
||||
- it('sanitize', () => {
|
||||
+ /*it('sanitize', () => {
|
||||
expectTokens({
|
||||
@@ -482,3 +482,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
});
|
||||
@@ -586,3 +586,3 @@
|
||||
|
||||
- it('html sanitize', () => {
|
||||
+ /*it('html sanitize', () => {
|
||||
expectInlineTokens({
|
||||
@@ -596,3 +596,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
|
||||
@@ -825,3 +825,3 @@
|
||||
|
||||
- it('autolink mangle email', () => {
|
||||
+ /*it('autolink mangle email', () => {
|
||||
expectInlineTokens({
|
||||
@@ -845,3 +845,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
|
||||
@@ -882,3 +882,3 @@
|
||||
|
||||
- it('url mangle email', () => {
|
||||
+ /*it('url mangle email', () => {
|
||||
expectInlineTokens({
|
||||
@@ -902,3 +902,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
});
|
||||
@@ -918,3 +918,3 @@
|
||||
|
||||
- describe('smartypants', () => {
|
||||
+ /*describe('smartypants', () => {
|
||||
it('single quotes', () => {
|
||||
@@ -988,3 +988,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
});
|
||||
214
scripts/deps-docker/showdown.patch
Normal file
214
scripts/deps-docker/showdown.patch
Normal file
@@ -0,0 +1,214 @@
|
||||
diff -NarU1 showdown-orig/Gruntfile.js showdown-mod/Gruntfile.js
|
||||
--- showdown-orig/Gruntfile.js 2020-04-23 06:22:01.486676149 +0000
|
||||
+++ showdown-mod/Gruntfile.js 2020-04-23 08:03:56.700219788 +0000
|
||||
@@ -27,3 +27,2 @@
|
||||
'src/subParsers/*.js',
|
||||
- 'src/subParsers/makeMarkdown/*.js',
|
||||
'src/loader.js'
|
||||
diff -NarU1 showdown-orig/src/converter.js showdown-mod/src/converter.js
|
||||
--- showdown-orig/src/converter.js 2020-04-23 06:22:01.496676150 +0000
|
||||
+++ showdown-mod/src/converter.js 2020-04-23 08:20:11.056920123 +0000
|
||||
@@ -84,5 +84,5 @@
|
||||
|
||||
- if (options.extensions) {
|
||||
+ /*if (options.extensions) {
|
||||
showdown.helper.forEach(options.extensions, _parseExtension);
|
||||
- }
|
||||
+ }*/
|
||||
}
|
||||
@@ -95,3 +95,3 @@
|
||||
*/
|
||||
- function _parseExtension (ext, name) {
|
||||
+ /*function _parseExtension (ext, name) {
|
||||
|
||||
@@ -159,3 +159,3 @@
|
||||
*/
|
||||
- function legacyExtensionLoading (ext, name) {
|
||||
+ /*function legacyExtensionLoading (ext, name) {
|
||||
if (typeof ext === 'function') {
|
||||
@@ -351,3 +351,3 @@
|
||||
*/
|
||||
- this.makeMarkdown = this.makeMd = function (src, HTMLParser) {
|
||||
+ /*this.makeMarkdown = this.makeMd = function (src, HTMLParser) {
|
||||
|
||||
@@ -482,3 +482,3 @@
|
||||
*/
|
||||
- this.addExtension = function (extension, name) {
|
||||
+ /*this.addExtension = function (extension, name) {
|
||||
name = name || null;
|
||||
@@ -491,3 +491,3 @@
|
||||
*/
|
||||
- this.useExtension = function (extensionName) {
|
||||
+ /*this.useExtension = function (extensionName) {
|
||||
_parseExtension(extensionName);
|
||||
@@ -526,3 +526,3 @@
|
||||
*/
|
||||
- this.removeExtension = function (extension) {
|
||||
+ /*this.removeExtension = function (extension) {
|
||||
if (!showdown.helper.isArray(extension)) {
|
||||
@@ -549,3 +549,3 @@
|
||||
*/
|
||||
- this.getAllExtensions = function () {
|
||||
+ /*this.getAllExtensions = function () {
|
||||
return {
|
||||
diff -NarU1 showdown-orig/src/options.js showdown-mod/src/options.js
|
||||
--- showdown-orig/src/options.js 2020-04-23 06:22:01.496676150 +0000
|
||||
+++ showdown-mod/src/options.js 2020-04-23 08:24:29.176929018 +0000
|
||||
@@ -118,3 +118,3 @@
|
||||
},
|
||||
- ghMentions: {
|
||||
+ /*ghMentions: {
|
||||
defaultValue: false,
|
||||
@@ -127,3 +127,3 @@
|
||||
type: 'string'
|
||||
- },
|
||||
+ },*/
|
||||
encodeEmails: {
|
||||
diff -NarU1 showdown-orig/src/showdown.js showdown-mod/src/showdown.js
|
||||
--- showdown-orig/src/showdown.js 2020-04-23 06:22:01.496676150 +0000
|
||||
+++ showdown-mod/src/showdown.js 2020-04-23 08:25:01.976930148 +0000
|
||||
@@ -7,3 +7,2 @@
|
||||
parsers = {},
|
||||
- extensions = {},
|
||||
globalOptions = getDefaultOpts(true),
|
||||
@@ -25,5 +24,4 @@
|
||||
ghCompatibleHeaderId: true,
|
||||
- ghMentions: true,
|
||||
+ //ghMentions: true,
|
||||
backslashEscapesHTMLTags: true,
|
||||
- emoji: true,
|
||||
splitAdjacentBlockquotes: true
|
||||
@@ -48,3 +46,3 @@
|
||||
requireSpaceBeforeHeadingText: true,
|
||||
- ghMentions: false,
|
||||
+ //ghMentions: false,
|
||||
encodeEmails: true
|
||||
@@ -65,3 +63,2 @@
|
||||
*/
|
||||
-showdown.extensions = {};
|
||||
|
||||
@@ -193,3 +190,3 @@
|
||||
*/
|
||||
-showdown.extension = function (name, ext) {
|
||||
+/*showdown.extension = function (name, ext) {
|
||||
'use strict';
|
||||
@@ -235,3 +232,3 @@
|
||||
*/
|
||||
-showdown.getAllExtensions = function () {
|
||||
+/*showdown.getAllExtensions = function () {
|
||||
'use strict';
|
||||
@@ -244,3 +241,3 @@
|
||||
*/
|
||||
-showdown.removeExtension = function (name) {
|
||||
+/*showdown.removeExtension = function (name) {
|
||||
'use strict';
|
||||
@@ -252,3 +249,3 @@
|
||||
*/
|
||||
-showdown.resetExtensions = function () {
|
||||
+/*showdown.resetExtensions = function () {
|
||||
'use strict';
|
||||
@@ -263,3 +260,3 @@
|
||||
*/
|
||||
-function validate (extension, name) {
|
||||
+/*function validate (extension, name) {
|
||||
'use strict';
|
||||
@@ -370,3 +367,3 @@
|
||||
*/
|
||||
-showdown.validateExtension = function (ext) {
|
||||
+/*showdown.validateExtension = function (ext) {
|
||||
'use strict';
|
||||
@@ -380 +377,2 @@
|
||||
};
|
||||
+*/
|
||||
diff -NarU1 showdown-orig/src/subParsers/anchors.js showdown-mod/src/subParsers/anchors.js
|
||||
--- showdown-orig/src/subParsers/anchors.js 2020-04-23 06:22:01.496676150 +0000
|
||||
+++ showdown-mod/src/subParsers/anchors.js 2020-04-23 08:25:26.880264347 +0000
|
||||
@@ -76,3 +76,3 @@
|
||||
// Lastly handle GithubMentions if option is enabled
|
||||
- if (options.ghMentions) {
|
||||
+ /*if (options.ghMentions) {
|
||||
text = text.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gmi, function (wm, st, escape, mentions, username) {
|
||||
@@ -93,3 +93,3 @@
|
||||
});
|
||||
- }
|
||||
+ }*/
|
||||
|
||||
diff -NarU1 showdown-orig/src/subParsers/spanGamut.js showdown-mod/src/subParsers/spanGamut.js
|
||||
--- showdown-orig/src/subParsers/spanGamut.js 2020-04-23 06:22:01.496676150 +0000
|
||||
+++ showdown-mod/src/subParsers/spanGamut.js 2020-04-23 08:07:50.460227880 +0000
|
||||
@@ -22,3 +22,2 @@
|
||||
text = showdown.subParser('simplifiedAutoLinks')(text, options, globals);
|
||||
- text = showdown.subParser('emoji')(text, options, globals);
|
||||
text = showdown.subParser('underline')(text, options, globals);
|
||||
@@ -26,3 +25,2 @@
|
||||
text = showdown.subParser('strikethrough')(text, options, globals);
|
||||
- text = showdown.subParser('ellipsis')(text, options, globals);
|
||||
|
||||
diff -NarU1 showdown-orig/test/node/showdown.Converter.js showdown-mod/test/node/showdown.Converter.js
|
||||
--- showdown-orig/test/node/showdown.Converter.js 2020-04-23 06:22:01.520009484 +0000
|
||||
+++ showdown-mod/test/node/showdown.Converter.js 2020-04-23 08:14:58.086909318 +0000
|
||||
@@ -29,3 +29,3 @@
|
||||
|
||||
- describe('Converter.options extensions', function () {
|
||||
+ /*describe('Converter.options extensions', function () {
|
||||
var runCount;
|
||||
@@ -48,3 +48,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
|
||||
@@ -115,3 +115,3 @@
|
||||
|
||||
- describe('extension methods', function () {
|
||||
+ /*describe('extension methods', function () {
|
||||
var extObjMock = {
|
||||
@@ -145,3 +145,3 @@
|
||||
});
|
||||
- });
|
||||
+ });*/
|
||||
|
||||
diff -NarU1 showdown-orig/test/node/showdown.js showdown-mod/test/node/showdown.js
|
||||
--- showdown-orig/test/node/showdown.js 2020-04-23 06:22:01.523342816 +0000
|
||||
+++ showdown-mod/test/node/showdown.js 2020-04-23 08:14:31.733575073 +0000
|
||||
@@ -25,3 +25,3 @@
|
||||
|
||||
-describe('showdown.extension()', function () {
|
||||
+/*describe('showdown.extension()', function () {
|
||||
'use strict';
|
||||
@@ -110,3 +110,3 @@
|
||||
});
|
||||
-});
|
||||
+});*/
|
||||
|
||||
diff -NarU1 showdown-orig/test/node/testsuite.features.js showdown-mod/test/node/testsuite.features.js
|
||||
--- showdown-orig/test/node/testsuite.features.js 2020-04-23 06:22:01.523342816 +0000
|
||||
+++ showdown-mod/test/node/testsuite.features.js 2020-04-23 08:25:48.880265106 +0000
|
||||
@@ -13,3 +13,2 @@
|
||||
rawPrefixHeaderIdSuite = bootstrap.getTestSuite('test/features/rawPrefixHeaderId/'),
|
||||
- emojisSuite = bootstrap.getTestSuite('test/features/emojis/'),
|
||||
underlineSuite = bootstrap.getTestSuite('test/features/underline/'),
|
||||
@@ -69,4 +68,4 @@
|
||||
converter = new showdown.Converter({ghCompatibleHeaderId: true});
|
||||
- } else if (testsuite[i].name === 'ghMentions') {
|
||||
- converter = new showdown.Converter({ghMentions: true});
|
||||
+ //} else if (testsuite[i].name === 'ghMentions') {
|
||||
+ // converter = new showdown.Converter({ghMentions: true});
|
||||
} else if (testsuite[i].name === 'disable-email-encoding') {
|
||||
@@ -185,17 +184,2 @@
|
||||
it(suite[i].name.replace(/-/g, ' '), assertion(suite[i], converter));
|
||||
- }
|
||||
- });
|
||||
-
|
||||
- /** test emojis support **/
|
||||
- describe('emojis support', function () {
|
||||
- var converter,
|
||||
- suite = emojisSuite;
|
||||
- for (var i = 0; i < suite.length; ++i) {
|
||||
- if (suite[i].name === 'simplifiedautolinks') {
|
||||
- converter = new showdown.Converter({emoji: true, simplifiedAutoLink: true});
|
||||
- } else {
|
||||
- converter = new showdown.Converter({emoji: true});
|
||||
- }
|
||||
-
|
||||
- it(suite[i].name.replace(/-/g, ' '), assertion(suite[i], converter));
|
||||
}
|
||||
Reference in New Issue
Block a user