correct links

This commit is contained in:
patarapolw committed 2019-08-23 08:27:40 +07:00
1 parent 34a178a958
commit 39d6b337e6
10 files changed
+59 -25

No files matched your search

+1 -1
View File
@@ -10,7 +10,7 @@ async function gAnalytics(id: string) {
s.setAttribute('data-timestamp', new Date().toISOString());
(d.head || d.body).appendChild(s);
(window as any).dataLayer = dataLayer || [];
(window as any).dataLayer = (window as any).dataLayer || [];
function gtag(...x: any[]){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', id);
+3 -20
View File
@@ -1,30 +1,13 @@
import showdown from "showdown";
import h from "hyperscript";
import { slideExt, simpleTableExt } from "./showdown-ext";
export class Markdown {
constructor() {
this.converter = new showdown.Converter({
parseImgDimensions: true
parseImgDimensions: true,
extensions: [simpleTableExt, slideExt]
});
this.converter.setFlavor("github");
this.converter.addExtension({
type: "lang",
filter(text) {
const rowRegex = /(?:(?:^|\r?\n)(?:\| )?(?:(?:.* \| )+.+)*(?:.* \| )+.+(?: \|)?(?:$|\r?\n))+/m;
text = text.replace(rowRegex, (p0) => {
return h("table.table", p0.trim().split("\n").map((pi) => {
pi = pi.trim().replace(/^|/, "").replace(/|$/, "")
return h("tr", pi.split(" | ").map((x) => x.trim()).map((qi) => {
return h("td", qi);
}))
})).outerHTML;
});
return text;
}
})
}
md2html(md) {
+44
View File
@@ -0,0 +1,44 @@
import { createIndentedFilter } from "indented-filter";
import h from "hyperscript";
export const simpleTableExt = {
type: "lang",
filter(text) {
const rowRegex = /(?:(?:^|\r?\n)(?:\| )?(?:(?:.* \| )+.+)*(?:.* \| )+.+(?: \|)?(?:$|\r?\n))+/m;
text = text.replace(rowRegex, (p0) => {
return h("table.table", p0.trim().split("\n").map((pi) => {
pi = pi.trim().replace(/^|/, "").replace(/|$/, "")
return h("tr", pi.split(" | ").map((x) => x.trim()).map((qi) => {
return h("td", qi);
}))
})).outerHTML;
});
return text;
}
};
export const slideExt = {
type: "lang",
filter: createIndentedFilter("^^slide", (s, attrs) => {
const a = document.createElement("a");
const url = new URL("https://reveal-md.herokuapp.com/");
let q = "";
if (attrs.github) {
q = `https://raw.githubusercontent.com/${attrs.github}/master/${s}`;
a.innerText = `github::${attrs.github}::${s}`;
} else {
q = s;
a.innerText = s;
}
url.searchParams.append("q", q);
a.href = url.href;
a.alt = s;
a.target = "_blank";
return a.outerHTML;
})
}