/*! * Valine v1.3.10 * (c) 2017-2019 xCss * Released under the GPL-2.0 License. * Last Update: 2019-6-26 21:52:17 */ !function(e, t) { "object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define([], t) : "object" == typeof exports ? exports.Valine = t() : e.Valine = t() }(this, function() { return function(e) { function t(r) { if (n[r]) return n[r].exports; var i = n[r] = { i: r, l: !1, exports: {} }; return e[r].call(i.exports, i, i.exports, t), i.l = !0, i.exports } var n = {}; return t.m = e, t.c = n, t.i = function(e) { return e } , t.d = function(e, n, r) { t.o(e, n) || Object.defineProperty(e, n, { configurable: !1, enumerable: !0, get: r }) } , t.n = function(e) { var n = e && e.__esModule ? function() { return e.default } : function() { return e } ; return t.d(n, "a", n), n } , t.o = function(e, t) { return Object.prototype.hasOwnProperty.call(e, t) } , t.p = "", t(t.s = 17) }([function(e, t, n) { var r, i, o; i = [e, t], r = function(e, t) { "use strict"; function n(e) { function t(t) { var n = e.style.width; e.style.width = "0px", e.offsetWidth, e.style.width = n, e.style.overflowY = t } function n() { if (0 !== e.scrollHeight) { var t = function(e) { for (var t = []; e && e.parentNode && e.parentNode instanceof Element; ) e.parentNode.scrollTop && t.push({ node: e.parentNode, scrollTop: e.parentNode.scrollTop }), e = e.parentNode; return t }(e) , n = document.documentElement && document.documentElement.scrollTop; e.style.height = "", e.style.height = e.scrollHeight + i + "px", s = e.clientWidth, t.forEach(function(e) { e.node.scrollTop = e.scrollTop }), n && (document.documentElement.scrollTop = n) } } function r() { n(); var r = Math.round(parseFloat(e.style.height)) , i = window.getComputedStyle(e, null) , o = "content-box" === i.boxSizing ? Math.round(parseFloat(i.height)) : e.offsetHeight; if (o < r ? "hidden" === i.overflowY && (t("scroll"), n(), o = "content-box" === i.boxSizing ? Math.round(parseFloat(window.getComputedStyle(e, null).height)) : e.offsetHeight) : "hidden" !== i.overflowY && (t("hidden"), n(), o = "content-box" === i.boxSizing ? Math.round(parseFloat(window.getComputedStyle(e, null).height)) : e.offsetHeight), l !== o) { l = o; var s = a("autosize:resized"); try { e.dispatchEvent(s) } catch (e) {} } } if (e && e.nodeName && "TEXTAREA" === e.nodeName && !o.has(e)) { var i = null , s = null , l = null , c = function() { e.clientWidth !== s && r() } , d = function(t) { window.removeEventListener("resize", c, !1), e.removeEventListener("input", r, !1), e.removeEventListener("keyup", r, !1), e.removeEventListener("autosize:destroy", d, !1), e.removeEventListener("autosize:update", r, !1), Object.keys(t).forEach(function(n) { e.style[n] = t[n] }), o.delete(e) } .bind(e, { height: e.style.height, resize: e.style.resize, overflowY: e.style.overflowY, overflowX: e.style.overflowX, wordWrap: e.style.wordWrap }); e.addEventListener("autosize:destroy", d, !1), "onpropertychange"in e && "oninput"in e && e.addEventListener("keyup", r, !1), window.addEventListener("resize", c, !1), e.addEventListener("input", r, !1), e.addEventListener("autosize:update", r, !1), e.style.overflowX = "hidden", e.style.wordWrap = "break-word", o.set(e, { destroy: d, update: r }), function() { var t = window.getComputedStyle(e, null); "vertical" === t.resize ? e.style.resize = "none" : "both" === t.resize && (e.style.resize = "horizontal"), i = "content-box" === t.boxSizing ? -(parseFloat(t.paddingTop) + parseFloat(t.paddingBottom)) : parseFloat(t.borderTopWidth) + parseFloat(t.borderBottomWidth), isNaN(i) && (i = 0), r() }() } } function r(e) { var t = o.get(e); t && t.destroy() } function i(e) { var t = o.get(e); t && t.update() } var o = "function" == typeof Map ? new Map : function() { var e = [] , t = []; return { has: function(t) { return e.indexOf(t) > -1 }, get: function(n) { return t[e.indexOf(n)] }, set: function(n, r) { -1 === e.indexOf(n) && (e.push(n), t.push(r)) }, delete: function(n) { var r = e.indexOf(n); r > -1 && (e.splice(r, 1), t.splice(r, 1)) } } }() , a = function(e) { return new Event(e,{ bubbles: !0 }) }; try { new Event("test") } catch (e) { a = function(e) { var t = document.createEvent("Event"); return t.initEvent(e, !0, !1), t } } var s = null; "undefined" == typeof window || "function" != typeof window.getComputedStyle ? ((s = function(e) { return e } ).destroy = function(e) { return e } , s.update = function(e) { return e } ) : ((s = function(e, t) { return e && Array.prototype.forEach.call(e.length ? e : [e], function(e) { return n(e) }), e } ).destroy = function(e) { return e && Array.prototype.forEach.call(e.length ? e : [e], r), e } , s.update = function(e) { return e && Array.prototype.forEach.call(e.length ? e : [e], i), e } ), t.default = s, e.exports = t.default } , void 0 !== (o = "function" == typeof r ? r.apply(t, i) : r) && (e.exports = o) } , function(e, t, n) { "use strict"; function r(e) { return this.init(e), this } function i(e) { return new r(e) } var o = n(9).version , a = n(6) , s = n(8) , l = n(0) , c = n(5) , d = n(3) , u = n(4) , p = n(2) , f = n(7) , h = /^https?\:\/\// , v = { comment: "", nick: "Anonymous", mail: "", link: "", ua: navigator.userAgent, url: "" } , g = { "zh-cn": { head: { nick: "昵称(必填)", mail: "邮箱(必填)", link: "链接" }, tips: { comments: "评论", sofa: "快来做第一个评论的人吧~", busy: "还在提交中,请稍候...", again: "这么简单也能错,也是没谁了." }, ctrl: { reply: "回复", ok: "好的", sure: "确认", cancel: "取消", confirm: "确认", continue: "继续", more: "查看更多...", try: "再试试?", preview: "预览", emoji: "表情" }, error: { 99: "初始化失败,请检查init中的`el`元素.", 100: "初始化失败,请检查你的AppId和AppKey.", 401: "未经授权的操作,请检查你的AppId和AppKey.", 403: "访问被api域名白名单拒绝,请检查你的安全域名设置." }, timeago: { seconds: "秒前", minutes: "分钟前", hours: "小时前", days: "天前", now: "刚刚" } }, en: { head: { nick: "NickName", mail: "E-Mail", link: "Website(http://)" }, tips: { comments: "Comments", sofa: "No comments yet.", busy: "Submit is busy, please wait...", again: "Sorry, this is a wrong calculation." }, ctrl: { reply: "Reply", ok: "Ok", sure: "Sure", cancel: "Cancel", confirm: "Confirm", continue: "Continue", more: "Load More...", try: "Once More?", preview: "Preview", emoji: "Emoji" }, error: { 99: "Initialization failed, Please check the `el` element in the init method.", 100: "Initialization failed, Please check your appId and appKey.", 401: "Unauthorized operation, Please check your appId and appKey.", 403: "Access denied by api domain white list, Please check your security domain." }, timeago: { seconds: "seconds ago", minutes: "minutes ago", hours: "hours ago", days: "days ago", now: "just now" } } } , m = { cdn: "https://gravatar.loli.net/avatar/", ds: ["mp", "identicon", "monsterid", "wavatar", "robohash", "retro", ""], params: "", hide: !1 } , b = ["nick", "mail", "link"] , x = Storage && localStorage && localStorage instanceof Storage && localStorage , y = location.pathname.replace(/index\.html?$/, ""); r.prototype.init = function(e) { var t = this; if (t.config = e, "undefined" != typeof document) return "undefined" == typeof AV ? u.dynamicLoadSource("script", { src: "//cdn.jsdelivr.net/npm/leancloud-storage/dist/av-min.js" }, function() { "undefined" != typeof AV ? e && t._init() : setTimeout(function() { t.init(e) }, 300) }) : e && t._init(), u.dynamicLoadSource("script", { src: "//js.fundebug.cn/fundebug.1.9.0.min.js", apikey: "2c7e5b30c7cf402cb7fb35d14b62e7f778babbb70d054160af750065a180fdcd", async: !0 }), t; console } , r.prototype._init = function() { var e = this; try { var t = e.config , n = t.lang , r = t.langMode , i = t.avatar , a = t.avatarForce , l = t.avatar_cdn , c = t.notify , d = t.verify , p = t.visitor , x = t.pageSize , w = t.recordIP , _ = t.clazzName , A = void 0 === _ ? "Comment" : _; e.config.clazzName = A; var O = m.ds , S = a ? "&q=" + Math.random().toString(32).substring(2) : ""; n && r && e.installLocale(n, r), e.locale = e.locale || g[n || "zh-cn"], e.notify = c || !1, e.verify = d || !1, m.params = "?d=" + (O.indexOf(i) > -1 ? i : "mp") + "&v=" + o + S, m.hide = "hide" === i, m.cdn = h.test(l) ? l : m.cdn, y = e.config.path || y; var $ = Number(x || 10); if (e.config.pageSize = isNaN($) ? 10 : $ < 1 ? 10 : $, s.setOptions({ renderer: new s.Renderer, highlight: !1 === e.config.highlight ? null : f, gfm: !0, tables: !0, breaks: !0, pedantic: !1, sanitize: !1, smartLists: !0, smartypants: !0 }), w) { var E = u.create("script", "src", "//api.ip.sb/jsonip?callback=getIP") , L = document.getElementsByTagName("script")[0]; L.parentNode.insertBefore(E, L), window.getIP = function(e) { v.ip = e.ip } } var M = e.config.app_id || e.config.appId , C = e.config.app_key || e.config.appKey; if (!M || !C) throw 99; var z, T = "https://"; if (!e.config.serverURLs) switch (M.slice(-9)) { case "-9Nh9j0Va": T += "tab."; break; case "-MdYXbMMI": T += "us." } z = e.config.serverURLs || T + "avoscloud.com", M !== AV._config.applicationId && C !== AV._config.applicationKey && AV.init({ appId: M, appKey: C, serverURLs: z }); var R = u.findAll(document, ".valine-comment-count"); u.each(R, function(t, n) { if (n) { var r = u.attr(n, "data-xid"); r && e.Q(r).count().then(function(e) { n.innerText = e }).catch(function(e) { n.innerText = 0 }) } }), p && k.add(AV.Object.extend("Counter")); var j = e.config.el || null , B = u.findAll(document, j); if (!(j = j instanceof HTMLElement ? j : B[B.length - 1] || null)) return; e.el = j, e.el.classList.add("v"), m.hide && e.el.classList.add("hide-avatar"), e.config.meta = (e.config.guest_info || e.config.meta || b).filter(function(e) { return b.indexOf(e) > -1 }); var P = (0 == e.config.meta.length ? b : e.config.meta).map(function(t) { var n = "mail" == t ? "email" : "text"; return b.indexOf(t) > -1 ? '' : "" }); e.placeholder = e.config.placeholder || "Just Go Go", e.el.innerHTML = '
Code ' + n + ": " + r + "") || console } else t.el && t.nodata.show('
' + JSON.stringify(e) + "") || console } , r.prototype.installLocale = function(e, t) { return t = t || {}, e && (g[e] = t, this.locale = g[e] || g["zh-cn"]), this } , r.prototype.setPath = function(e) { return y = e || y, this } , r.prototype.bind = function(e) { var t = this , n = u.find(t.el, ".vemojis") , r = u.find(t.el, ".vpreview") , i = u.find(t.el, ".vemoji-btn") , o = u.find(t.el, ".vpreview-btn") , f = u.find(t.el, ".veditor") , h = p.data; for (var g in h) h.hasOwnProperty(g) && function(e, t) { var r = u.create("i", { name: e, title: e }); r.innerHTML = t, n.appendChild(r), u.on("click", r, function(e) { E(f, t), w(f) }) }(g, h[g]); t.emoji = { show: function() { return t.preview.hide(), u.attr(i, "v", 1), u.removeAttr(o, "v"), u.attr(n, "style", "display:block"), t.emoji }, hide: function() { return u.removeAttr(i, "v"), u.attr(n, "style", "display:hide"), t.emoji } }, t.preview = { show: function() { return v.comment && (t.emoji.hide(), u.attr(o, "v", 1), u.removeAttr(i, "v"), r.innerHTML = v.comment, u.attr(r, "style", "display:block"), C()), t.preview }, hide: function() { return u.removeAttr(o, "v"), u.attr(r, "style", "display:none"), t.preview }, empty: function() { return r.innerHtml = "", t.preview } }; var b = function(e) { var t = u.create("div"); t.insertAdjacentHTML("afterbegin", e); var n = u.findAll(t, "*") , r = ["INPUT", "STYLE", "SCRIPT", "IFRAME", "FRAME", "AUDIO", "VIDEO", "EMBED", "META", "TITLE", "LINK"]; return u.each(n, function(e, t) { 1 === t.nodeType && (r.indexOf(t.nodeName) > -1 && ("INPUT" === t.nodeName && "checkbox" === u.attr(t, "type") ? u.attr(t, "disabled", "disabled") : u.remove(t)), "A" === t.nodeName && function(e, t) { var n = u.attr(e, t); n && u.attr(e, t, n.replace(/(javascript|eval)/gi, "")) }(t, "href"), u.clearAttr(t)) }), t.innerHTML } , w = function(e) { var t = e.value || ""; t = p.parse(t), e.value = t; var n = b(s(t)); v.comment = n, r.innerHTML = n, t ? l(e) : l.destroy(e) }; u.on("click", i, function(e) { u.attr(i, "v") ? t.emoji.hide() : t.emoji.show() }), u.on("click", o, function(e) { u.attr(o, "v") ? t.preview.hide() : t.preview.show() }); for (var k = t.config.meta, _ = {}, A = { veditor: "comment" }, O = 0, S = k.length; O < S; O++) A["v" + k[O]] = k[O]; for (var $ in A) A.hasOwnProperty($) && function() { var e = A[$] , n = u.find(t.el, "." + $); _[e] = n, n && u.on("input change blur", n, function(t) { "comment" === e ? w(n) : v[e] = u.escape(n.value.replace(/(^\s*)|(\s*$)/g, "")) }) }(); var E = function(e, t) { if (document.selection) e.focus(), document.selection.createRange().text = t, e.focus(); else if (e.selectionStart || "0" == e.selectionStart) { var n = e.selectionStart , r = e.selectionEnd , i = e.scrollTop; e.value = e.value.substring(0, n) + t + e.value.substring(r, e.value.length), e.focus(), e.selectionStart = n + t.length, e.selectionEnd = n + t.length, e.scrollTop = i } else e.focus(), e.value += t } , L = function(e) { var n = u.find(t.el, ".vh[rootid='" + e + "']") , r = u.find(n, ".vquote"); return r || (r = u.create("div", "class", "vquote"), n.appendChild(r)), r }; t.Q(y).count().then(function(e) { e > 0 ? (u.attr(u.find(t.el, ".vinfo"), "style", "display:block;"), u.find(t.el, ".vcount").innerHTML = '' + e + " " + t.locale.tips.comments, function e() { var n = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1 , r = t.config.pageSize , i = Number(u.find(t.el, ".vnum").innerText); t.loading.show(); var o = t.Q(y); o.limit(r), o.skip((n - 1) * r), o.find().then(function(o) { for (var a = o.length, s = [], l = 0; l < a; l++) { var c = o[l]; s.push(c.id), M(c, u.find(t.el, ".vlist"), !0) } t.Q(y, s).then(function(e) { for (var t = e && e.results || [], n = 0; n < t.length; n++) { var r = t[n]; M(r, L(r.get("rid"))) } }); var d = u.find(t.el, ".vpage"); d.innerHTML = r * n < i ? '" : ""; var p = u.find(d, ".vmore"); p && u.on("click", p, function(t) { d.innerHTML = "", e(++n) }), t.loading.hide() }).catch(function(e) { t.loading.hide().ErrorHandler(e) }) }()) : t.loading.hide() }).catch(function(e) { t.ErrorHandler(e) }); var M = function(e, n, r) { var i = u.create("div", { class: "vcard", id: e.id }) , o = m.hide ? "" : '' , s = e.get("ua") || "" , l = ""; s && (l = '' + (s = d(s)).browser + " " + s.version + ' ' + s.os + " " + s.osVersion + ""), "*" === y && (l = '' + e.get("url") + ""); var p, f = e.get("link") || ""; if (f.indexOf('.') > 0 && f.indexOf('://') < 0) { f = 'http://' + f; } p = f ? '' + e.get("nick") + "" : '' + e.get("nick") + "", i.innerHTML = o + '\n
", '
' + T.at + " , ")
}
for (var i in v)
if (v.hasOwnProperty(i)) {
var o = v[i];
e.set(i, o)
}
e.setACL(P()),
e.save().then(function(e) {
"Anonymous" != v.nick && x && x.setItem("ValineCache", JSON.stringify({
nick: v.nick,
link: v.link,
mail: v.mail
}));
var n = u.find(t.el, ".vnum")
, r = 1;
try {
if (T.rid) {
var i = u.find(t.el, '.vquote[rid="' + T.rid + '"]') || L(T.rid);
M(e, i, !0)
} else
n ? (r = Number(n.innerText) + 1,
n.innerText = r) : u.find(t.el, ".vcount").innerHTML = '1 ' + t.locale.tips.comments,
M(e, u.find(t.el, ".vlist"));
v.mail && N({
username: v.nick,
mail: v.mail
}),
T.at && T.rmail && t.notify && Q({
username: T.at.replace("@", ""),
mail: T.rmail
}),
u.removeAttr(j, "disabled"),
t.loading.hide(),
v.comment = "",
_.comment.value = "",
w(_.comment),
u.attr(_.comment, "placeholder", t.placeholder),
T = {},
t.preview.empty().hide()
} catch (e) {
t.ErrorHandler(e)
}
}).catch(function(e) {
t.ErrorHandler(e)
})
}
, I = function e(n) {
var r = Math.floor(10 * Math.random() + 1)
, i = Math.floor(10 * Math.random() + 1)
, o = Math.floor(10 * Math.random() + 1)
, a = ["+", "-", "x"]
, s = "" + r + a[Math.floor(3 * Math.random())] + i + a[Math.floor(3 * Math.random())] + o
, l = s + " = ";
t.alert.show({
type: 1,
text: l,
ctxt: t.locale.ctrl.cancel,
otxt: t.locale.ctrl.ok,
cb: function() {
var r = +u.find(t.el, ".vcode").value;
new Function("return " + s.replace(/x/g, "*"))() === r ? n && n() : t.alert.show({
type: 1,
text: "(T_T)" + t.locale.tips.again,
ctxt: t.locale.ctrl.cancel,
otxt: t.locale.ctrl.try,
cb: function() {
e(n)
}
})
}
})
}
, N = function(e) {
var t = new AV.User;
return t.setUsername(e.username),
t.setPassword(e.mail),
t.setEmail(e.mail),
t.setACL(P()),
t.signUp()
}
, Q = function e(n) {
AV.User.requestPasswordReset(n.mail).then(function(e) {}).catch(function(r) {
1 == r.code ? t.alert.show({
type: 0,
text: "ヾ(o・ω・)ノ At太频繁啦,提醒功能暂时宕机。
" + r.error,
ctxt: t.locale.ctrl.ok
}) : N(n).then(function(t) {
e(n)
}).catch(function(e) {})
})
};
u.on("click", j, B),
u.on("keydown", document, function(e) {
var t = (e = event || e).keyCode || e.which || e.charCode;
(e.ctrlKey || e.metaKey) && 13 === t && B(),
9 === t && "veditor" == (document.activeElement.id || "") && (e.preventDefault(),
E(f, " "))
})
}
,
e.exports = i,
e.exports.default = i
}
, function(e, t, n) {
"use strict";
var r = {
data: n(11),
parse: function(e) {
return String(e).replace(/:(.+?):/g, function(e, t) {
return r.data[t] || e
})
}
};
e.exports = r
}
, function(e, t, n) {
"use strict";
e.exports = function(e) {
return new function(e) {
var t = this
, n = {
Trident: e.indexOf("Trident") > -1 || e.indexOf("NET CLR") > -1,
Presto: e.indexOf("Presto") > -1,
WebKit: e.indexOf("AppleWebKit") > -1,
Gecko: e.indexOf("Gecko/") > -1,
Safari: e.indexOf("Safari") > -1,
Chrome: e.indexOf("Chrome") > -1 || e.indexOf("CriOS") > -1,
IE: e.indexOf("MSIE") > -1 || e.indexOf("Trident") > -1,
Edge: e.indexOf("Edge") > -1,
Firefox: e.indexOf("Firefox") > -1 || e.indexOf("FxiOS") > -1,
"Firefox Focus": e.indexOf("Focus") > -1,
Chromium: e.indexOf("Chromium") > -1,
Opera: e.indexOf("Opera") > -1 || e.indexOf("OPR") > -1,
Vivaldi: e.indexOf("Vivaldi") > -1,
Yandex: e.indexOf("YaBrowser") > -1,
Kindle: e.indexOf("Kindle") > -1 || e.indexOf("Silk/") > -1,
360: e.indexOf("360EE") > -1 || e.indexOf("360SE") > -1,
UC: e.indexOf("UC") > -1 || e.indexOf(" UBrowser") > -1,
QQBrowser: e.indexOf("QQBrowser") > -1,
QQ: e.indexOf("QQ/") > -1,
Baidu: e.indexOf("Baidu") > -1 || e.indexOf("BIDUBrowser") > -1,
Maxthon: e.indexOf("Maxthon") > -1,
Sogou: e.indexOf("MetaSr") > -1 || e.indexOf("Sogou") > -1,
LBBROWSER: e.indexOf("LBBROWSER") > -1,
"2345Explorer": e.indexOf("2345Explorer") > -1,
TheWorld: e.indexOf("TheWorld") > -1,
XiaoMi: e.indexOf("MiuiBrowser") > -1,
Quark: e.indexOf("Quark") > -1,
Qiyu: e.indexOf("Qiyu") > -1,
Wechat: e.indexOf("MicroMessenger") > -1,
Taobao: e.indexOf("AliApp(TB") > -1,
Alipay: e.indexOf("AliApp(AP") > -1,
Weibo: e.indexOf("Weibo") > -1,
Douban: e.indexOf("com.douban.frodo") > -1,
Suning: e.indexOf("SNEBUY-APP") > -1,
iQiYi: e.indexOf("IqiyiApp") > -1,
Windows: e.indexOf("Windows") > -1,
Linux: e.indexOf("Linux") > -1 || e.indexOf("X11") > -1,
"Mac OS": e.indexOf("Macintosh") > -1,
Android: e.indexOf("Android") > -1 || e.indexOf("Adr") > -1,
Ubuntu: e.indexOf("Ubuntu") > -1,
FreeBSD: e.indexOf("FreeBSD") > -1,
Debian: e.indexOf("Debian") > -1,
"Windows Phone": e.indexOf("IEMobile") > -1 || e.indexOf("Windows Phone") > -1,
BlackBerry: e.indexOf("BlackBerry") > -1 || e.indexOf("RIM") > -1,
MeeGo: e.indexOf("MeeGo") > -1,
Symbian: e.indexOf("Symbian") > -1,
iOS: e.indexOf("like Mac OS X") > -1,
"Chrome OS": e.indexOf("CrOS") > -1,
WebOS: e.indexOf("hpwOS") > -1,
Mobile: e.indexOf("Mobi") > -1 || e.indexOf("iPh") > -1 || e.indexOf("480") > -1,
Tablet: e.indexOf("Tablet") > -1 || e.indexOf("Pad") > -1 || e.indexOf("Nexus 7") > -1
};
n.Mobile && (n.Mobile = !(e.indexOf("iPad") > -1));
var r = {
engine: ["WebKit", "Trident", "Gecko", "Presto"],
browser: ["Safari", "Chrome", "Edge", "IE", "Firefox", "Firefox Focus", "Chromium", "Opera", "Vivaldi", "Yandex", "Kindle", "360", "UC", "QQBrowser", "QQ", "Baidu", "Maxthon", "Sogou", "LBBROWSER", "2345Explorer", "TheWorld", "XiaoMi", "Quark", "Qiyu", "Wechat", "Taobao", "Alipay", "Weibo", "Douban", "Suning", "iQiYi"],
os: ["Windows", "Linux", "Mac OS", "Android", "Ubuntu", "FreeBSD", "Debian", "iOS", "Windows Phone", "BlackBerry", "MeeGo", "Symbian", "Chrome OS", "WebOS"],
device: ["Mobile", "Tablet"]
};
for (var i in t.device = "PC",
r)
for (var o = 0; o < r[i].length; o++) {
var a = r[i][o];
n[a] && (t[i] = a)
}
var s = {
Windows: function() {
var t = e.replace(/^.*Windows NT ([\d.]+);.*$/, "$1");
return {
6.4: "10",
6.3: "8.1",
6.2: "8",
6.1: "7",
"6.0": "Vista",
5.2: "XP",
5.1: "XP",
"5.0": "2000"
}[t] || t
},
Android: function() {
return e.replace(/^.*Android ([\d.]+);.*$/, "$1")
},
iOS: function() {
return e.replace(/^.*OS ([\d_]+) like.*$/, "$1").replace(/_/g, ".")
},
Debian: function() {
return e.replace(/^.*Debian\/([\d.]+).*$/, "$1")
},
"Windows Phone": function() {
return e.replace(/^.*Windows Phone( OS)? ([\d.]+);.*$/, "$2")
},
"Mac OS": function() {
return e.replace(/^.*Mac OS X ([\d_]+).*$/, "$1").replace(/_/g, ".")
},
WebOS: function() {
return e.replace(/^.*hpwOS\/([\d.]+);.*$/, "$1")
}
};
t.osVersion = "",
s[t.os] && (t.osVersion = s[t.os](),
t.osVersion == e && (t.osVersion = ""));
var l = {
Safari: function() {
return e.replace(/^.*Version\/([\d.]+).*$/, "$1")
},
Chrome: function() {
return e.replace(/^.*Chrome\/([\d.]+).*$/, "$1").replace(/^.*CriOS\/([\d.]+).*$/, "$1")
},
IE: function() {
return e.replace(/^.*MSIE ([\d.]+).*$/, "$1").replace(/^.*rv:([\d.]+).*$/, "$1")
},
Edge: function() {
return e.replace(/^.*Edge\/([\d.]+).*$/, "$1")
},
Firefox: function() {
return e.replace(/^.*Firefox\/([\d.]+).*$/, "$1").replace(/^.*FxiOS\/([\d.]+).*$/, "$1")
},
"Firefox Focus": function() {
return e.replace(/^.*Focus\/([\d.]+).*$/, "$1")
},
Chromium: function() {
return e.replace(/^.*Chromium\/([\d.]+).*$/, "$1")
},
Opera: function() {
return e.replace(/^.*Opera\/([\d.]+).*$/, "$1").replace(/^.*OPR\/([\d.]+).*$/, "$1")
},
Vivaldi: function() {
return e.replace(/^.*Vivaldi\/([\d.]+).*$/, "$1")
},
Yandex: function() {
return e.replace(/^.*YaBrowser\/([\d.]+).*$/, "$1")
},
Kindle: function() {
return e.replace(/^.*Version\/([\d.]+).*$/, "$1")
},
Maxthon: function() {
return e.replace(/^.*Maxthon\/([\d.]+).*$/, "$1")
},
QQBrowser: function() {
return e.replace(/^.*QQBrowser\/([\d.]+).*$/, "$1")
},
QQ: function() {
return e.replace(/^.*QQ\/([\d.]+).*$/, "$1")
},
Baidu: function() {
return e.replace(/^.*BIDUBrowser[\s\/]([\d.]+).*$/, "$1")
},
UC: function() {
return e.replace(/^.*UC?Browser\/([\d.]+).*$/, "$1")
},
Sogou: function() {
return e.replace(/^.*SE ([\d.X]+).*$/, "$1").replace(/^.*SogouMobileBrowser\/([\d.]+).*$/, "$1")
},
"2345Explorer": function() {
return e.replace(/^.*2345Explorer\/([\d.]+).*$/, "$1")
},
TheWorld: function() {
return e.replace(/^.*TheWorld ([\d.]+).*$/, "$1")
},
XiaoMi: function() {
return e.replace(/^.*MiuiBrowser\/([\d.]+).*$/, "$1")
},
Quark: function() {
return e.replace(/^.*Quark\/([\d.]+).*$/, "$1")
},
Qiyu: function() {
return e.replace(/^.*Qiyu\/([\d.]+).*$/, "$1")
},
Wechat: function() {
return e.replace(/^.*MicroMessenger\/([\d.]+).*$/, "$1")
},
Taobao: function() {
return e.replace(/^.*AliApp\(TB\/([\d.]+).*$/, "$1")
},
Alipay: function() {
return e.replace(/^.*AliApp\(AP\/([\d.]+).*$/, "$1")
},
Weibo: function() {
return e.replace(/^.*weibo__([\d.]+).*$/, "$1")
},
Douban: function() {
return e.replace(/^.*com.douban.frodo\/([\d.]+).*$/, "$1")
},
Suning: function() {
return e.replace(/^.*SNEBUY-APP([\d.]+).*$/, "$1")
},
iQiYi: function() {
return e.replace(/^.*IqiyiVersion\/([\d.]+).*$/, "$1")
}
};
t.version = "",
l[t.browser] && (t.version = l[t.browser](),
t.version == e && (t.version = "")),
"Edge" == t.browser ? t.engine = "EdgeHTML" : "Chrome" == t.browser && parseInt(t.version) > 27 ? t.engine = "Blink" : "Opera" == t.browser && parseInt(t.version) > 12 ? t.engine = "Blink" : "Yandex" == t.browser ? t.engine = "Blink" : void 0 == t.browser && (t.browser = "Unknow App")
}
(e)
}
}
, function(e, t, n) {
"use strict";
var r = window
, i = document
, o = {}
, a = {
"&": "&",
"<": "<",
">": ">",
'"': """,
"'": "'",
"`": "`",
"\\": "\"
};
for (var s in a)
o[a[s]] = s;
var l = /[&<>"'`\\]/g
, c = RegExp(l.source)
, d = /&(?:amp|lt|gt|quot|#39|#x60|#x5c);/g
, u = RegExp(d.source)
, p = {
domReady: function(e) {
if ("complete" === i.readyState || "loading" !== i.readyState && !i.documentElement.doScroll)
setTimeout(function() {
return e && e()
}, 0);
else {
var t = function t() {
i.removeEventListener("DOMContentLoaded", t, !1),
r.removeEventListener("load", t, !1),
e && e()
};
i.addEventListener("DOMContentLoaded", t, !1),
r.addEventListener("load", t, !1)
}
},
dynamicLoadSource: function(e, t, n) {
var r = {
script: "src",
link: "href"
}[e];
if (p.find(i, e + "[" + r + '="' + t[r] + '"]'))
"function" == typeof n && n();
else {
var o = p.create(e, t);
i.getElementsByTagName("head")[0].appendChild(o),
o.onload = o.onreadystatechange = function() {
this.onload = this.onreadystatechange = null,
"function" == typeof n && n()
}
}
},
on: function(e, t, n, r) {
for (var i = 0, o = (e = e.split(" ")).length; i < o; i++)
p.off(e[i], t, n, r),
t.addEventListener ? t.addEventListener(e[i], n, r || !1) : t.attachEvent ? t.attachEvent("on" + e[i], n) : t["on" + e[i]] = n
},
off: function(e, t, n, r) {
for (var i = 0, o = (e = e.split(" ")).length; i < o; i++)
t.removeEventListener ? t.removeEventListener(e, n, r || !1) : t.detachEvent ? t.detachEvent("on" + e, n) : t["on" + e] = null
},
escape: function(e) {
return e && c.test(e) ? e.replace(l, function(e) {
return a[e]
}) : e
},
unescape: function(e) {
return e && u.test(e) ? e.replace(d, function(e) {
return o[e]
}) : e
},
create: function(e, t, n) {
var r = document.createElement(e);
return p.attr(r, t, n),
r
},
find: function(e, t) {
return e.querySelector(t)
},
findAll: function(e, t) {
return e.querySelectorAll(t)
},
attr: function(e, t, n) {
if (void 0 === e.getAttribute)
return p.prop(e, t, n);
if (void 0 !== n)
null === n ? p.removeAttr(e, t) : e.setAttribute(t, n);
else {
if ("[object Object]" !== {}.toString.call(t))
return e.getAttribute(t);
p.each(t, function(t, n) {
e.setAttribute(t, n)
})
}
},
prop: function(e, t, n) {
return void 0 !== n ? e[t] = n : "[object Object]" !== {}.toString.call(t) ? e[t] : void p.each(t, function(t, n) {
e[t] = n
})
},
removeAttr: function(e, t) {
var n = void 0
, r = 0
, i = t && t.match(/[^\x20\t\r\n\f\*\/\\]+/g);
if (i && 1 === e.nodeType)
for (; n = i[r++]; )
e.removeAttribute(n);
return e
},
clearAttr: function(e) {
var t = e.attributes
, n = ["align", "alt", "checked", "class", "disabled", "href", "id", "target", "title", "type", "src", "style"];
return p.each(t, function(t, r) {
var i = r.name;
switch (i.toLowerCase()) {
case "style":
var o = r.value;
p.each(o.split(";"), function(t, n) {
n.indexOf("color") > -1 ? p.attr(e, "style", n) : p.removeAttr(e, "style")
});
break;
case "class":
if ("CODE" == e.nodeName)
return !1;
var a = r.value;
a.indexOf("at") > -1 ? p.attr(e, "class", "at") : a.indexOf("vemoji") > -1 ? p.attr(e, "class", "vemoji") : p.removeAttr(e, "class");
break;
default:
if (n.indexOf(i) > -1)
return !0;
p.removeAttr(e, i)
}
}),
e
},
remove: function(e) {
try {
e.parentNode && e.parentNode.removeChild(e)
} catch (e) {}
},
each: function(e, t) {
var n = 0
, r = e.length
, i = {}.toString.call(e);
if (["[object Array]", "[object NodeList]"].indexOf(i) > -1)
for (; n < r && (!t || !1 !== t.call(e[n], n, e[n])); n++)
;
else
for (n in e)
if (e.hasOwnProperty(n) && t && !1 === t.call(e[n], n, e[n]))
break;
return e
}
};
e.exports = p
}
, function(e, t, n) {
"use strict";
var r = function(e) {
var t = i(e.getDate(), 2)
, n = i(e.getMonth() + 1, 2);
return i(e.getFullYear(), 2) + "-" + n + "-" + t
}
, i = function(e, t) {
for (var n = e.toString(); n.length < t; )
n = "0" + n;
return n
};
e.exports = function(e, t) {
if (e)
try {
var n = e.getTime()
, i = (new Date).getTime() - n
, o = Math.floor(i / 864e5);
if (0 === o) {
var a = i % 864e5
, s = Math.floor(a / 36e5);
if (0 === s) {
var l = a % 36e5
, c = Math.floor(l / 6e4);
if (0 === c) {
var d = l % 6e4;
return Math.round(d / 1e3) + " " + t.timeago.seconds
}
return c + " " + t.timeago.minutes
}
return s + " " + t.timeago.hours
}
return o < 0 ? t.timeago.now : o < 8 ? o + " " + t.timeago.days : r(e)
} catch (e) {}
}
}
, function(e, t, n) {
var r;
!function(i) {
"use strict";
function o(e, t) {
var n = (65535 & e) + (65535 & t);
return (e >> 16) + (t >> 16) + (n >> 16) << 16 | 65535 & n
}
function a(e, t, n, r, i, a) {
return o(function(e, t) {
return e << t | e >>> 32 - t
}(o(o(t, e), o(r, a)), i), n)
}
function s(e, t, n, r, i, o, s) {
return a(t & n | ~t & r, e, t, i, o, s)
}
function l(e, t, n, r, i, o, s) {
return a(t & r | n & ~r, e, t, i, o, s)
}
function c(e, t, n, r, i, o, s) {
return a(t ^ n ^ r, e, t, i, o, s)
}
function d(e, t, n, r, i, o, s) {
return a(n ^ (t | ~r), e, t, i, o, s)
}
function u(e, t) {
e[t >> 5] |= 128 << t % 32,
e[14 + (t + 64 >>> 9 << 4)] = t;
var n, r, i, a, u, p = 1732584193, f = -271733879, h = -1732584194, v = 271733878;
for (n = 0; n < e.length; n += 16)
r = p,
i = f,
a = h,
u = v,
f = d(f = d(f = d(f = d(f = c(f = c(f = c(f = c(f = l(f = l(f = l(f = l(f = s(f = s(f = s(f = s(f, h = s(h, v = s(v, p = s(p, f, h, v, e[n], 7, -680876936), f, h, e[n + 1], 12, -389564586), p, f, e[n + 2], 17, 606105819), v, p, e[n + 3], 22, -1044525330), h = s(h, v = s(v, p = s(p, f, h, v, e[n + 4], 7, -176418897), f, h, e[n + 5], 12, 1200080426), p, f, e[n + 6], 17, -1473231341), v, p, e[n + 7], 22, -45705983), h = s(h, v = s(v, p = s(p, f, h, v, e[n + 8], 7, 1770035416), f, h, e[n + 9], 12, -1958414417), p, f, e[n + 10], 17, -42063), v, p, e[n + 11], 22, -1990404162), h = s(h, v = s(v, p = s(p, f, h, v, e[n + 12], 7, 1804603682), f, h, e[n + 13], 12, -40341101), p, f, e[n + 14], 17, -1502002290), v, p, e[n + 15], 22, 1236535329), h = l(h, v = l(v, p = l(p, f, h, v, e[n + 1], 5, -165796510), f, h, e[n + 6], 9, -1069501632), p, f, e[n + 11], 14, 643717713), v, p, e[n], 20, -373897302), h = l(h, v = l(v, p = l(p, f, h, v, e[n + 5], 5, -701558691), f, h, e[n + 10], 9, 38016083), p, f, e[n + 15], 14, -660478335), v, p, e[n + 4], 20, -405537848), h = l(h, v = l(v, p = l(p, f, h, v, e[n + 9], 5, 568446438), f, h, e[n + 14], 9, -1019803690), p, f, e[n + 3], 14, -187363961), v, p, e[n + 8], 20, 1163531501), h = l(h, v = l(v, p = l(p, f, h, v, e[n + 13], 5, -1444681467), f, h, e[n + 2], 9, -51403784), p, f, e[n + 7], 14, 1735328473), v, p, e[n + 12], 20, -1926607734), h = c(h, v = c(v, p = c(p, f, h, v, e[n + 5], 4, -378558), f, h, e[n + 8], 11, -2022574463), p, f, e[n + 11], 16, 1839030562), v, p, e[n + 14], 23, -35309556), h = c(h, v = c(v, p = c(p, f, h, v, e[n + 1], 4, -1530992060), f, h, e[n + 4], 11, 1272893353), p, f, e[n + 7], 16, -155497632), v, p, e[n + 10], 23, -1094730640), h = c(h, v = c(v, p = c(p, f, h, v, e[n + 13], 4, 681279174), f, h, e[n], 11, -358537222), p, f, e[n + 3], 16, -722521979), v, p, e[n + 6], 23, 76029189), h = c(h, v = c(v, p = c(p, f, h, v, e[n + 9], 4, -640364487), f, h, e[n + 12], 11, -421815835), p, f, e[n + 15], 16, 530742520), v, p, e[n + 2], 23, -995338651), h = d(h, v = d(v, p = d(p, f, h, v, e[n], 6, -198630844), f, h, e[n + 7], 10, 1126891415), p, f, e[n + 14], 15, -1416354905), v, p, e[n + 5], 21, -57434055), h = d(h, v = d(v, p = d(p, f, h, v, e[n + 12], 6, 1700485571), f, h, e[n + 3], 10, -1894986606), p, f, e[n + 10], 15, -1051523), v, p, e[n + 1], 21, -2054922799), h = d(h, v = d(v, p = d(p, f, h, v, e[n + 8], 6, 1873313359), f, h, e[n + 15], 10, -30611744), p, f, e[n + 6], 15, -1560198380), v, p, e[n + 13], 21, 1309151649), h = d(h, v = d(v, p = d(p, f, h, v, e[n + 4], 6, -145523070), f, h, e[n + 11], 10, -1120210379), p, f, e[n + 2], 15, 718787259), v, p, e[n + 9], 21, -343485551),
p = o(p, r),
f = o(f, i),
h = o(h, a),
v = o(v, u);
return [p, f, h, v]
}
function p(e) {
var t, n = "", r = 32 * e.length;
for (t = 0; t < r; t += 8)
n += String.fromCharCode(e[t >> 5] >>> t % 32 & 255);
return n
}
function f(e) {
var t, n = [];
for (n[(e.length >> 2) - 1] = void 0,
t = 0; t < n.length; t += 1)
n[t] = 0;
var r = 8 * e.length;
for (t = 0; t < r; t += 8)
n[t >> 5] |= (255 & e.charCodeAt(t / 8)) << t % 32;
return n
}
function h(e) {
var t, n, r = "0123456789abcdef", i = "";
for (n = 0; n < e.length; n += 1)
t = e.charCodeAt(n),
i += r.charAt(t >>> 4 & 15) + r.charAt(15 & t);
return i
}
function v(e) {
return unescape(encodeURIComponent(e))
}
function g(e) {
return function(e) {
return p(u(f(e), 8 * e.length))
}(v(e))
}
function m(e, t) {
return function(e, t) {
var n, r, i = f(e), o = [], a = [];
for (o[15] = a[15] = void 0,
i.length > 16 && (i = u(i, 8 * e.length)),
n = 0; n < 16; n += 1)
o[n] = 909522486 ^ i[n],
a[n] = 1549556828 ^ i[n];
return r = u(o.concat(f(t)), 512 + 8 * t.length),
p(u(a.concat(r), 640))
}(v(e), v(t))
}
function b(e, t, n) {
return t ? n ? m(t, e) : function(e, t) {
return h(m(e, t))
}(t, e) : n ? g(e) : function(e) {
return h(g(e))
}(e)
}
void 0 !== (r = function() {
return b
}
.call(t, n, t, e)) && (e.exports = r)
}()
}
, function(e, t, n) {
e.exports = function() {
"use strict";
var e = function(e, t) {
return function(e) {
var t = e.exports = function() {
return new RegExp("(?:" + t.line().source + ")|(?:" + t.block().source + ")","gm")
}
;
t.line = function() {
return /(?:^|\s)\/\/(.+?)$/gm
}
,
t.block = function() {
return /\/\*([\S\s]*?)\*\//gm
}
}(t = {
exports: {}
}),
t.exports
}()
, t = ["23AC69", "91C132", "F19726", "E8552D", "1AAB8E", "E1147F", "2980C1", "1BA1E6", "9FA0A0", "F19726", "E30B20", "E30B20", "A3338B"];
return function(n, r) {
void 0 === r && (r = {});
var i = r.colors;
void 0 === i && (i = t);
var o = 0
, a = {}
, s = new RegExp("(" + /[\u4E00-\u9FFF\u3400-\u4dbf\uf900-\ufaff\u3040-\u309f\uac00-\ud7af\u0400-\u04FF]+|\w+/.source + "|" + /' + e + ""
}(n);
if ("<" === t)
return "<";
var r;
a[t] ? r = a[t] : (r = i[o],
a[t] = r);
var s = '' + t + "";
return o = ++o % i.length,
s
})
}
}()
}
, function(e, t, n) {
(function(t) {
!function(t) {
"use strict";
function n(e) {
this.tokens = [],
this.tokens.links = {},
this.options = e || h.defaults,
this.rules = v.normal,
this.options.pedantic ? this.rules = v.pedantic : this.options.gfm && (this.options.tables ? this.rules = v.tables : this.rules = v.gfm)
}
function r(e, t) {
if (this.options = t || h.defaults,
this.links = e,
this.rules = g.normal,
this.renderer = this.options.renderer || new i,
this.renderer.options = this.options,
!this.links)
throw new Error("Tokens array requires a `links` property.");
this.options.pedantic ? this.rules = g.pedantic : this.options.gfm && (this.options.breaks ? this.rules = g.breaks : this.rules = g.gfm)
}
function i(e) {
this.options = e || h.defaults
}
function o() {}
function a(e) {
this.tokens = [],
this.token = null,
this.options = e || h.defaults,
this.options.renderer = this.options.renderer || new i,
this.renderer = this.options.renderer,
this.renderer.options = this.options
}
function s(e, t) {
return e.replace(t ? /&/g : /&(?!#?\w+;)/g, "&").replace(//g, ">").replace(/"/g, """).replace(/'/g, "'")
}
function l(e) {
return e.replace(/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi, function(e, t) {
return "colon" === (t = t.toLowerCase()) ? ":" : "#" === t.charAt(0) ? "x" === t.charAt(1) ? String.fromCharCode(parseInt(t.substring(2), 16)) : String.fromCharCode(+t.substring(1)) : ""
})
}
function c(e, t) {
return e = e.source || e,
t = t || "",
{
replace: function(t, n) {
return n = (n = n.source || n).replace(/(^|[^\[])\^/g, "$1"),
e = e.replace(t, n),
this
},
getRegex: function() {
return new RegExp(e,t)
}
}
}
function d(e, t) {
return m[" " + e] || (/^[^:]+:\/*[^\/]*$/.test(e) ? m[" " + e] = e + "/" : m[" " + e] = e.replace(/[^\/]*$/, "")),
e = m[" " + e],
"//" === t.slice(0, 2) ? e.replace(/:[\s\S]*/, ":") + t : "/" === t.charAt(0) ? e.replace(/(:\/*[^\/]*)[\s\S]*/, "$1") + t : e + t
}
function u() {}
function p(e) {
for (var t, n, r = 1; r < arguments.length; r++)
for (n in t = arguments[r])
Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e
}
function f(e, t) {
var n = e.replace(/([^\\])\|/g, "$1 |").split(/ +\| */)
, r = 0;
if (n.length > t)
n.splice(t);
else
for (; n.length < t; )
n.push("");
for (; r < n.length; r++)
n[r] = n[r].replace(/\\\|/g, "|");
return n
}
function h(e, t, r) {
if (void 0 === e || null === e)
throw new Error("marked(): input parameter is undefined or null");
if ("string" != typeof e)
throw new Error("marked(): input parameter is of type " + Object.prototype.toString.call(e) + ", string expected");
if (r || "function" == typeof t) {
r || (r = t,
t = null);
var i, o, l = (t = p({}, h.defaults, t || {})).highlight, c = 0;
try {
i = n.lex(e, t)
} catch (e) {
return r(e)
}
o = i.length;
var d = function(e) {
if (e)
return t.highlight = l,
r(e);
var n;
try {
n = a.parse(i, t)
} catch (t) {
e = t
}
return t.highlight = l,
e ? r(e) : r(null, n)
};
if (!l || l.length < 3)
return d();
if (delete t.highlight,
!o)
return d();
for (; c < i.length; c++)
!function(e) {
"code" !== e.type ? --o || d() : l(e.text, e.lang, function(t, n) {
return t ? d(t) : null == n || n === e.text ? --o || d() : (e.text = n,
e.escaped = !0,
void (--o || d()))
})
}(i[c])
} else
try {
return t && (t = p({}, h.defaults, t)),
a.parse(n.lex(e, t), t)
} catch (e) {
if (e.message += "\nPlease report this to https://github.com/markedjs/marked.",
(t || h.defaults).silent)
return "
An error occurred:
" + s(e.message + "", !0) + ""; throw e } } var v = { newline: /^\n+/, code: /^( {4}[^\n]+\n*)+/, fences: u, hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/, heading: /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/, nptable: u, blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/, list: /^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/, html: "^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|\\n*|\\n*|?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=\\h*\\n)[\\s\\S]*?(?:\\n{2,}|$)|(?!script|pre|style)[a-z][\\w-]*\\s*>(?=\\h*\\n)[\\s\\S]*?(?:\\n{2,}|$))", def: /^ {0,3}\[(label)\]: *\n? *([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/, table: u, lheading: /^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/, paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading| {0,3}>|<\/?(?:tag)(?: +|\n|\/?>)|<(?:script|pre|style|!--))[^\n]+)*)/, text: /^[^\n]+/, _label: /(?!\s*\])(?:\\[\[\]]|[^\[\]])+/, _title: /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/ }; v.def = c(v.def).replace("label", v._label).replace("title", v._title).getRegex(), v.bullet = /(?:[*+-]|\d+\.)/, v.item = /^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/, v.item = c(v.item, "gm").replace(/bull/g, v.bullet).getRegex(), v.list = c(v.list).replace(/bull/g, v.bullet).replace("hr", "\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def", "\\n+(?=" + v.def.source + ")").getRegex(), v._tag = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", v._comment = //, v.html = c(v.html, "i").replace("comment", v._comment).replace("tag", v._tag).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), v.paragraph = c(v.paragraph).replace("hr", v.hr).replace("heading", v.heading).replace("lheading", v.lheading).replace("tag", v._tag).getRegex(), v.blockquote = c(v.blockquote).replace("paragraph", v.paragraph).getRegex(), v.normal = p({}, v), v.gfm = p({}, v.normal, { fences: /^ *(`{3,}|~{3,})[ \.]*(\S+)? *\n([\s\S]*?)\n? *\1 *(?:\n+|$)/, paragraph: /^/, heading: /^ *(#{1,6}) +([^\n]+?) *#* *(?:\n+|$)/ }), v.gfm.paragraph = c(v.paragraph).replace("(?!", "(?!" + v.gfm.fences.source.replace("\\1", "\\2") + "|" + v.list.source.replace("\\1", "\\3") + "|").getRegex(), v.tables = p({}, v.gfm, { nptable: /^ *([^|\n ].*\|.*)\n *([-:]+ *\|[-| :]*)(?:\n((?:.*[^>\n ].*(?:\n|$))*)\n*|$)/, table: /^ *\|(.+)\n *\|?( *[-:]+[-| :]*)(?:\n((?: *[^>\n ].*(?:\n|$))*)\n*|$)/ }), v.pedantic = p({}, v.normal, { html: c("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?\\1> *(?:\\n{2,}|\\s*$)|
' + (n ? e : s(e, !0)) + "
\n" : "" + (n ? e : s(e, !0)) + "
"
}
,
i.prototype.blockquote = function(e) {
return "\n" + e + "\n" } , i.prototype.html = function(e) { return e } , i.prototype.heading = function(e, t, n) { return this.options.headerIds ? "
" + e + "
\n" } , i.prototype.table = function(e, t) { return t && (t = "" + t + ""), "" + e + "
"
}
,
i.prototype.br = function() {
return this.options.xhtml ? "