forked from markedjs/marked
/
marked.min.js
6 lines (6 loc) · 28.8 KB
/
marked.min.js
1
2
3
4
5
6
/**
* marked - a markdown parser
* Copyright (c) 2011-2020, Christopher Jeffrey. (MIT Licensed)
* https://github.com/markedjs/marked
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).marked=t()}(this,function(){"use strict";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}function n(e){return h[e]}var e,t=(function(t){function e(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,xhtml:!1}}t.exports={defaults:e(),getDefaults:e,changeDefaults:function(e){t.exports.defaults=e}}}(e={exports:{}}),e.exports),s=(t.defaults,t.getDefaults,t.changeDefaults,/[&<>"']/),l=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,o=/[<>"']|&(?!#?\w+;)/g,h={"&":"&","<":"<",">":">",'"':""","'":"'"};var c=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function u(e){return e.replace(c,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)):""})}var p=/(^|[^\[])\^/g;var g=/[^\w:]/g,f=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var d={},k=/^[^:]+:\/*[^/]*$/,b=/^([^:]+:)[\s\S]*$/,m=/^([^:]+:\/*[^/]*)[\s\S]*$/;function x(e,t){d[" "+e]||(k.test(e)?d[" "+e]=e+"/":d[" "+e]=w(e,"/",!0));var n=-1===(e=d[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(b,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(m,"$1")+t:e+t}function w(e,t,n){var r=e.length;if(0===r)return"";for(var i=0;i<r;){var s=e.charAt(r-i-1);if(s!==t||n){if(s===t||!n)break;i++}else i++}return e.substr(0,r-i)}var v=function(e,t){if(t){if(s.test(e))return e.replace(l,n)}else if(a.test(e))return e.replace(o,n);return e},_=u,y=function(e,t,n){if(e){var r;try{r=decodeURIComponent(u(n)).replace(g,"").toLowerCase()}catch(e){return null}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return null}t&&!f.test(n)&&(n=x(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n},z=function(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(e,t){var n=e.replace(/\|/g,function(e,t,n){for(var r=!1,i=t;0<=--i&&"\\"===n[i];)r=!r;return r?"|":" |"}).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].trim().replace(/\\\|/g,"|");return n},S=w,A=function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,r=0,i=0;i<n;i++)if("\\"===e[i])i++;else if(e[i]===t[0])r++;else if(e[i]===t[1]&&--r<0)return i;return-1},R=function(e){e&&e.sanitize&&!e.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")},Z={exec:function(){}},q=function(n,e){n=n.source||n,e=e||"";var r={replace:function(e,t){return t=(t=t.source||t).replace(p,"$1"),n=n.replace(e,t),r},getRegex:function(){return new RegExp(n,e)}};return r},I=z,T={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(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*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:Z,table:Z,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};T.def=q(T.def).replace("label",T._label).replace("title",T._title).getRegex(),T.bullet=/(?:[*+-]|\d{1,9}\.)/,T.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,T.item=q(T.item,"gm").replace(/bull/g,T.bullet).getRegex(),T.list=q(T.list).replace(/bull/g,T.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+T.def.source+")").getRegex(),T._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",T._comment=/<!--(?!-?>)[\s\S]*?-->/,T.html=q(T.html,"i").replace("comment",T._comment).replace("tag",T._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),T.paragraph=q(T._paragraph).replace("hr",T.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",T._tag).getRegex(),T.blockquote=q(T.blockquote).replace("paragraph",T.paragraph).getRegex(),T.normal=I({},T),T.gfm=I({},T.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),T.gfm.nptable=q(T.gfm.nptable).replace("hr",T.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",T._tag).getRegex(),T.gfm.table=q(T.gfm.table).replace("hr",T.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",T._tag).getRegex(),T.pedantic=I({},T.normal,{html:q("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",T._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:Z,paragraph:q(T.normal._paragraph).replace("hr",T.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",T.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var L={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:Z,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*<\[])\*(?!\*)|^_([^\s<][\s\S]*?[^\s_])_(?!_|[^\spunctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\spunctuation])|^\*([^\s<"][\s\S]*?[^\s\*])\*(?!\*|[^\spunctuation])|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:Z,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/,_punctuation:"!\"#$%&'()*+,\\-./:;<=>?@\\[^_{|}~"};L.em=q(L.em).replace(/punctuation/g,L._punctuation).getRegex(),L._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,L._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,L._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,L.autolink=q(L.autolink).replace("scheme",L._scheme).replace("email",L._email).getRegex(),L._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,L.tag=q(L.tag).replace("comment",T._comment).replace("attribute",L._attribute).getRegex(),L._label=/(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,L._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,L._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,L.link=q(L.link).replace("label",L._label).replace("href",L._href).replace("title",L._title).getRegex(),L.reflink=q(L.reflink).replace("label",L._label).getRegex(),L.normal=I({},L),L.pedantic=I({},L.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:q(/^!?\[(label)\]\((.*?)\)/).replace("label",L._label).getRegex(),reflink:q(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",L._label).getRegex()}),L.gfm=I({},L.normal,{escape:q(L.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),L.gfm.url=q(L.gfm.url,"i").replace("email",L.gfm._extended_email).getRegex(),L.breaks=I({},L.gfm,{br:q(L.br).replace("{2,}","*").getRegex(),text:q(L.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var C={block:T,inline:L},O=t.defaults,D=S,E=$,j=v,P=A,B=C.block,U=C.inline;function F(e,t,n,r,i){var s=t.href,l=t.title?j(t.title):null;return"!"!==e[0].charAt(0)?{type:"link",raw:r,href:s,title:l,tokens:i.inlineTokens(e[1])}:{type:"image",raw:r,text:j(e[1]),href:s,title:l}}var N=function(){function e(e){this.options=e||O,this.initialize()}var t=e.prototype;return t.initialize=function(){this.inLink=!1,this.inRawBlock=!1,this.rules={block:B.normal,inline:U.normal},this.options.pedantic?(this.rules.block=B.pedantic,this.rules.inline=U.pedantic):this.options.gfm&&(this.rules.block=B.gfm,this.options.breaks?this.rules.inline=U.breaks:this.rules.inline=U.gfm)},t.space=function(e,t){var n=this.rules.block.newline.exec(t);if(n)return 1<n[0].length?{type:"space",raw:n[0]}:{raw:"\n"}},t.code=function(e,t,n){var r=this.rules.block.code.exec(t);if(r){var i=n[n.length-1];if(i&&"paragraph"===i.type)return n.pop(),i.text+="\n"+r[0].trimRight(),i.raw+="\n"+r[0],i;var s=r[0].replace(/^ {4}/gm,"");return{type:"code",raw:r[0],codeBlockStyle:"indented",text:this.options.pedantic?s:D(s,"\n")}}},t.fences=function(e,t){var n=this.rules.block.fences.exec(t);if(n)return{type:"code",raw:n[0],lang:n[2]?n[2].trim():n[2],text:n[3]||""}},t.heading=function(e,t){var n=this.rules.block.heading.exec(t);if(n)return{type:"heading",raw:n[0],depth:n[1].length,text:n[2]}},t.nptable=function(e,t){var n=this.rules.block.nptable.exec(t);if(n){var r={type:"table",header:E(n[1].replace(/^ *| *\| *$/g,"")),align:n[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:n[3]?n[3].replace(/\n$/,"").split("\n"):[],raw:n[0]};if(r.header.length===r.align.length){var i,s=r.align.length;for(i=0;i<s;i++)/^ *-+: *$/.test(r.align[i])?r.align[i]="right":/^ *:-+: *$/.test(r.align[i])?r.align[i]="center":/^ *:-+ *$/.test(r.align[i])?r.align[i]="left":r.align[i]=null;for(s=r.cells.length,i=0;i<s;i++)r.cells[i]=E(r.cells[i],r.header.length);return r}}},t.hr=function(e,t){var n=this.rules.block.hr.exec(t);if(n)return{type:"hr",raw:n[0]}},t.blockquote=function(e,t,n,r){var i=this.rules.block.blockquote.exec(t);if(i){var s=i[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:i[0],tokens:e.blockTokens(s,[],r)}}},t.list=function(e,t,n,r){var i=this.rules.block.list.exec(t);if(i){for(var s,l,a,o,h,c,u,p=i[0],g=i[2],f=1<g.length,d={type:"list",raw:p,ordered:f,start:f?+g:"",loose:!1,items:[]},k=i[0].match(this.rules.block.item),b=!1,m=k.length,x=0;x<m;x++)l=(p=s=k[x]).length,~(s=s.replace(/^ *([*+-]|\d+\.) */,"")).indexOf("\n ")&&(l-=s.length,s=this.options.pedantic?s.replace(/^ {1,4}/gm,""):s.replace(new RegExp("^ {1,"+l+"}","gm"),"")),x!==m-1&&(a=this.rules.block.bullet.exec(k[x+1])[0],(1<g.length?1===a.length:1<a.length||this.options.smartLists&&a!==g)&&(o=k.slice(x+1).join("\n"),d.raw=d.raw.substring(0,d.raw.length-o.length),x=m-1)),h=b||/\n\n(?!\s*$)/.test(s),x!==m-1&&(b="\n"===s.charAt(s.length-1),h=h||b),h&&(d.loose=!0),u=void 0,(c=/^\[[ xX]\] /.test(s))&&(u=" "!==s[1],s=s.replace(/^\[[ xX]\] +/,"")),d.items.push({raw:p,task:c,checked:u,loose:h,tokens:e.blockTokens(s,[],!1)});return d}},t.html=function(e,t){var n=this.rules.block.html.exec(t);if(n)return{type:this.options.sanitize?"paragraph":"html",raw:n[0],pre:!this.options.sanitizer&&("pre"===n[1]||"script"===n[1]||"style"===n[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(n[0]):j(n[0]):n[0]}},t.def=function(e,t){var n=this.rules.block.def.exec(t);if(n)return n[3]&&(n[3]=n[3].substring(1,n[3].length-1)),{tag:n[1].toLowerCase().replace(/\s+/g," "),raw:n[0],href:n[2],title:n[3]}},t.table=function(e,t){var n=this.rules.block.table.exec(t);if(n){var r={type:"table",header:E(n[1].replace(/^ *| *\| *$/g,"")),align:n[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:n[3]?n[3].replace(/\n$/,"").split("\n"):[]};if(r.header.length===r.align.length){r.raw=n[0];var i,s=r.align.length;for(i=0;i<s;i++)/^ *-+: *$/.test(r.align[i])?r.align[i]="right":/^ *:-+: *$/.test(r.align[i])?r.align[i]="center":/^ *:-+ *$/.test(r.align[i])?r.align[i]="left":r.align[i]=null;for(s=r.cells.length,i=0;i<s;i++)r.cells[i]=E(r.cells[i].replace(/^ *\| *| *\| *$/g,""),r.header.length);return r}}},t.lheading=function(e,t){var n=this.rules.block.lheading.exec(t);if(n)return{type:"heading",raw:n[0],depth:"="===n[2].charAt(0)?1:2,text:n[1]}},t.paragraph=function(e,t){var n=this.rules.block.paragraph.exec(t);if(n)return{type:"paragraph",raw:n[0],text:"\n"===n[1].charAt(n[1].length-1)?n[1].slice(0,-1):n[1]}},t.text=function(e,t){var n=this.rules.block.text.exec(t);if(n)return{type:"text",raw:n[0],text:n[0]}},t.escape=function(e,t){var n=this.rules.inline.escape.exec(t);if(n)return{type:"escape",raw:n[0],text:j(n[1])}},t.tag=function(e,t){var n=this.rules.inline.tag.exec(t);if(n)return!this.inLink&&/^<a /i.test(n[0])?this.inLink=!0:this.inLink&&/^<\/a>/i.test(n[0])&&(this.inLink=!1),!this.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(n[0])?this.inRawBlock=!0:this.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(n[0])&&(this.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:n[0],text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(n[0]):j(n[0]):n[0]}},t.link=function(e,t,n){var r=this.rules.inline.link.exec(t);if(r){var i=P(r[2],"()");if(-1<i){var s=(0===r[0].indexOf("!")?5:4)+r[1].length+i;r[2]=r[2].substring(0,i),r[0]=r[0].substring(0,s).trim(),r[3]=""}this.inLink=!0;var l=r[2],a="";if(this.options.pedantic){var o=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(l);a=o?(l=o[1],o[3]):""}else a=r[3]?r[3].slice(1,-1):"";var h=F(r,{href:(l=l.trim().replace(/^<([\s\S]*)>$/,"$1"))?l.replace(this.rules.inline._escapes,"$1"):l,title:a?a.replace(this.rules.inline._escapes,"$1"):a},0,r[0],e);return this.inLink=!1,h}},t.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var r=(n[2]||n[1]).replace(/\s+/g," ");if(!(r=e.tokens.links[r.toLowerCase()])||!r.href){var i=n[0].charAt(0);return{type:"text",raw:i,text:i}}this.inLink=!0;var s=F(n,r,0,n[0],e);return this.inLink=!1,s}},t.strong=function(e,t){var n=this.rules.inline.strong.exec(t);if(n)return{type:"strong",raw:n[0],tokens:e.inlineTokens(n[4]||n[3]||n[2]||n[1])}},t.em=function(e,t){var n=this.rules.inline.em.exec(t);if(n)return{type:"em",raw:n[0],tokens:e.inlineTokens(n[6]||n[5]||n[4]||n[3]||n[2]||n[1])}},t.codespan=function(e,t){var n=this.rules.inline.code.exec(t);if(n)return{type:"codespan",raw:n[0],text:j(n[2].trim(),!0)}},t.br=function(e,t){var n=this.rules.inline.br.exec(t);if(n)return{type:"br",raw:n[0]}},t.del=function(e,t){var n=this.rules.inline.del.exec(t);if(n)return{type:"del",raw:n[0],tokens:e.inlineTokens(n[1])}},t.autolink=function(e,t){var n,r,i=this.rules.inline.autolink.exec(t);if(i)return r="@"===i[2]?"mailto:"+(n=j(this.options.mangle?this.mangle(i[1]):i[1])):n=j(i[1]),{type:"link",raw:i[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}},t.url=function(e,t){var n;if(!this.inLink&&(n=this.rules.inline.url.exec(t))){var r,i;if("@"===n[2])i="mailto:"+(r=j(this.options.mangle?this.mangle(n[0]):n[0]));else{for(var s;s=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0],s!==n[0];);r=j(n[0]),i="www."===n[1]?"http://"+r:r}return{type:"link",raw:n[0],text:r,href:i,tokens:[{type:"text",raw:r,text:r}]}}},t.inlineText=function(e,t){var n,r=this.rules.inline.text.exec(t);if(r)return n=this.inRawBlock?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):j(r[0]):r[0]:j(this.options.smartypants?this.smartypants(r[0]):r[0]),{type:"text",raw:r[0],text:n}},t.smartypants=function(e){return e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")},t.mangle=function(e){var t,n,r="",i=e.length;for(t=0;t<i;t++)n=e.charCodeAt(t),.5<Math.random()&&(n="x"+n.toString(16)),r+="&#"+n+";";return r},i(e,null,[{key:"rules",get:function(){return{block:B,inline:U}}}]),e}(),X=t.defaults,G=function(){function n(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||X,this.options.tokenizer=this.options.tokenizer||new N,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.initialize()}n.lex=function(e,t){return new n(t).lex(e)};var e=n.prototype;return e.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens},e.blockTokens=function(e,t,n){var r;for(void 0===t&&(t=[]),void 0===n&&(n=!0),e=e.replace(/^ +$/gm,"");e;)if(r=this.tokenizer.space(this,e,t,n))e=e.substring(r.raw.length),r.type&&t.push(r);else if(r=this.tokenizer.code(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.fences(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.heading(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.nptable(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.hr(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.blockquote(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.list(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.html(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(n&&(r=this.tokenizer.def(this,e,t,n)))e=e.substring(r.raw.length),this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title});else if(r=this.tokenizer.table(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.lheading(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(n&&(r=this.tokenizer.paragraph(this,e,t,n)))e=e.substring(r.raw.length),t.push(r);else if(r=this.tokenizer.text(this,e,t,n))e=e.substring(r.raw.length),t.push(r);else if(e){var i="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(i);break}throw new Error(i)}return t},e.inline=function(e){var t,n,r,i,s,l,a=e.length;for(t=0;t<a;t++)switch((l=e[t]).type){case"paragraph":case"text":case"heading":l.tokens=[],this.inlineTokens(l.text,l.tokens);break;case"table":for(l.tokens={header:[],cells:[]},i=l.header.length,n=0;n<i;n++)l.tokens.header[n]=[],this.inlineTokens(l.header[n],l.tokens.header[n]);for(i=l.cells.length,n=0;n<i;n++)for(s=l.cells[n],l.tokens.cells[n]=[],r=0;r<s.length;r++)l.tokens.cells[n][r]=[],this.inlineTokens(s[r],l.tokens.cells[n][r]);break;case"blockquote":this.inline(l.tokens);break;case"list":for(i=l.items.length,n=0;n<i;n++)this.inline(l.items[n].tokens)}return e},e.inlineTokens=function(e,t){var n;for(void 0===t&&(t=[]);e;)if(n=this.tokenizer.escape(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.tag(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.link(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.reflink(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.strong(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.em(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.codespan(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.br(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.del(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.autolink(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.url(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.inlineText(this,e,t))e=e.substring(n.raw.length),t.push(n);else if(e){var r="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(r);break}throw new Error(r)}return t},i(n,null,[{key:"rules",get:function(){return N.rules}}]),n}(),M=t.defaults,V=y,H=v,J=function(){function e(e){this.options=e||M}var t=e.prototype;return t.code=function(e,t,n){var r=(t||"").match(/\S*/)[0];if(this.options.highlight){var i=this.options.highlight(e,r);null!=i&&i!==e&&(n=!0,e=i)}return r?'<pre><code class="'+this.options.langPrefix+H(r,!0)+'">'+(n?e:H(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:H(e,!0))+"</code></pre>"},t.blockquote=function(e){return"<blockquote>\n"+e+"</blockquote>\n"},t.html=function(e){return e},t.heading=function(e,t,n,r){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+r.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"},t.hr=function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"},t.list=function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+r+">\n"},t.listitem=function(e){return"<li>"+e+"</li>\n"},t.checkbox=function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "},t.paragraph=function(e){return"<p>"+e+"</p>\n"},t.table=function(e,t){return"<table>\n<thead>\n"+e+"</thead>\n"+(t=t&&"<tbody>"+t+"</tbody>")+"</table>\n"},t.tablerow=function(e){return"<tr>\n"+e+"</tr>\n"},t.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"},t.strong=function(e){return"<strong>"+e+"</strong>"},t.em=function(e){return"<em>"+e+"</em>"},t.codespan=function(e){return"<code>"+e+"</code>"},t.br=function(){return this.options.xhtml?"<br/>":"<br>"},t.del=function(e){return"<del>"+e+"</del>"},t.link=function(e,t,n){if(null===(e=V(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<a href="'+H(e)+'"';return t&&(r+=' title="'+t+'"'),r+=">"+n+"</a>"},t.image=function(e,t,n){if(null===(e=V(this.options.sanitize,this.options.baseUrl,e)))return n;var r='<img src="'+e+'" alt="'+n+'"';return t&&(r+=' title="'+t+'"'),r+=this.options.xhtml?"/>":">"},t.text=function(e){return e},e}(),K=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return""+n},t.image=function(e,t,n){return""+n},t.br=function(){return""},e}(),Q=function(){function e(){this.seen={}}return e.prototype.slug=function(e){var t=e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t))for(var n=t;this.seen[n]++,t=n+"-"+this.seen[n],this.seen.hasOwnProperty(t););return this.seen[t]=0,t},e}(),W=t.defaults,Y=_,ee=function(){function n(e){this.options=e||W,this.options.renderer=this.options.renderer||new J,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new K,this.slugger=new Q}n.parse=function(e,t){return new n(t).parse(e)};var e=n.prototype;return e.parse=function(e,t){void 0===t&&(t=!0);var n,r,i,s,l,a,o,h,c,u,p,g,f,d,k,b,m,x,w="",v=e.length;for(n=0;n<v;n++)switch((u=e[n]).type){case"space":continue;case"hr":w+=this.renderer.hr();continue;case"heading":w+=this.renderer.heading(this.parseInline(u.tokens),u.depth,Y(this.parseInline(u.tokens,this.textRenderer)),this.slugger);continue;case"code":w+=this.renderer.code(u.text,u.lang,u.escaped);continue;case"table":for(o=h="",s=u.header.length,r=0;r<s;r++)o+=this.renderer.tablecell(this.parseInline(u.tokens.header[r]),{header:!0,align:u.align[r]});for(h+=this.renderer.tablerow(o),c="",s=u.cells.length,r=0;r<s;r++){for(o="",l=(a=u.tokens.cells[r]).length,i=0;i<l;i++)o+=this.renderer.tablecell(this.parseInline(a[i]),{header:!1,align:u.align[i]});c+=this.renderer.tablerow(o)}w+=this.renderer.table(h,c);continue;case"blockquote":c=this.parse(u.tokens),w+=this.renderer.blockquote(c);continue;case"list":for(p=u.ordered,g=u.start,f=u.loose,s=u.items.length,c="",r=0;r<s;r++)b=(k=u.items[r]).checked,m=k.task,d="",k.task&&(x=this.renderer.checkbox(b),f?"text"===k.tokens[0].type?(k.tokens[0].text=x+" "+k.tokens[0].text,k.tokens[0].tokens&&0<k.tokens[0].tokens.length&&"text"===k.tokens[0].tokens[0].type&&(k.tokens[0].tokens[0].text=x+" "+k.tokens[0].tokens[0].text)):k.tokens.unshift({type:"text",text:x}):d+=x),d+=this.parse(k.tokens,f),c+=this.renderer.listitem(d,m,b);w+=this.renderer.list(c,p,g);continue;case"html":w+=this.renderer.html(u.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(u.tokens));continue;case"text":for(c=u.tokens?this.parseInline(u.tokens):u.text;n+1<v&&"text"===e[n+1].type;)c+="\n"+((u=e[++n]).tokens?this.parseInline(u.tokens):u.text);w+=t?this.renderer.paragraph(c):c;continue;default:var _='Token with "'+u.type+'" type was not found.';if(this.options.silent)return void console.error(_);throw new Error(_)}return w},e.parseInline=function(e,t){t=t||this.renderer;var n,r,i="",s=e.length;for(n=0;n<s;n++)switch((r=e[n]).type){case"escape":i+=r.text;break;case"html":i+=t.html(r.text);break;case"link":i+=t.link(r.href,r.title,this.parseInline(r.tokens,t));break;case"image":i+=t.image(r.href,r.title,r.text);break;case"strong":i+=t.strong(this.parseInline(r.tokens,t));break;case"em":i+=t.em(this.parseInline(r.tokens,t));break;case"codespan":i+=t.codespan(r.text);break;case"br":i+=t.br();break;case"del":i+=t.del(this.parseInline(r.tokens,t));break;case"text":i+=t.text(r.text);break;default:var l='Token with "'+r.type+'" type was not found.';if(this.options.silent)return void console.error(l);throw new Error(l)}return i},n}(),te=z,ne=R,re=v,ie=t.getDefaults,se=t.changeDefaults,le=t.defaults;function ae(t,l,a){if(null==t)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof t)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected");if(a||"function"==typeof l){var e=function(){a||(a=l,l=null),l=te({},ae.defaults,l||{}),ne(l);var n,r,i=l.highlight,e=0;try{n=G.lex(t,l)}catch(e){return{v:a(e)}}r=n.length;function s(t){if(t)return l.highlight=i,a(t);var e;try{e=ee.parse(n,l)}catch(e){t=e}return l.highlight=i,t?a(t):a(null,e)}if(!i||i.length<3)return{v:s()};if(delete l.highlight,!r)return{v:s()};for(;e<n.length;e++)!function(n){"code"!==n.type?--r||s():i(n.text,n.lang,function(e,t){return e?s(e):null==t||t===n.text?--r||s():(n.text=t,n.escaped=!0,void(--r||s()))})}(n[e]);return{v:void 0}}();if("object"==typeof e)return e.v}try{return l=te({},ae.defaults,l||{}),ne(l),ee.parse(G.lex(t,l),l)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",(l||ae.defaults).silent)return"<p>An error occurred:</p><pre>"+re(e.message+"",!0)+"</pre>";throw e}}return ae.options=ae.setOptions=function(e){return te(ae.defaults,e),se(ae.defaults),ae},ae.getDefaults=ie,ae.defaults=le,ae.Parser=ee,ae.parser=ee.parse,ae.Renderer=J,ae.TextRenderer=K,ae.Lexer=G,ae.lexer=G.lex,ae.Tokenizer=N,ae.Slugger=Q,ae.parse=ae});