`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${z(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){var n=this.parser.parseInline(n),r=Z(e);if(null===r)return n;let s='<a href="'+(e=r)+'"';return t&&(s+=' title="'+z(t)+'"'),s+=">"+n+"</a>"}image({href:e,title:t,text:n}){var r=Z(e);if(null===r)return z(n);let s=`<img src="${e=r}" alt="${n}"`;return t&&(s+=` title="${z(t)}"`),s+=">"}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:z(e.text)}}class I{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}}class L{options;renderer;textRenderer;constructor(e){this.options=e||n.defaults,this.options.renderer=this.options.renderer||new P,this.renderer=this.options.renderer,this.renderer.options=this.options,(this.renderer.parser=this).textRenderer=new I}static parse(e,t){const n=new L(t);return n.parse(e)}static parseInline(e,t){const n=new L(t);return n.parseInline(e)}parse(n,r=!0){let s="";for(let t=0;t<n.length;t++){var e=n[t];if(this.options.extensions?.renderers?.[e.type]){var i=e,l=this.options.extensions.renderers[i.type].call({parser:this},i);if(!1!==l||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(i.type)){s+=l||"";continue}}var a=e;switch(a.type){case"space":s+=this.renderer.space(a);continue;case"hr":s+=this.renderer.hr(a);continue;case"heading":s+=this.renderer.heading(a);continue;case"code":s+=this.renderer.code(a);continue;case"table":s+=this.renderer.table(a);continue;case"blockquote":s+=this.renderer.blockquote(a);continue;case"list":s+=this.renderer.list(a);continue;case"html":s+=this.renderer.html(a);continue;case"paragraph":s+=this.renderer.paragraph(a);continue;case"text":{var o;let e=this.renderer.text(a);for(;t+1<n.length&&"text"===n[t+1].type;)o=n[++t],e+="\n"+this.renderer.text(o);s+=r?this.renderer.paragraph({type:"paragraph",raw:e,text:e,tokens:[{type:"text",raw:e,text:e,escaped:!0}]}):e;continue}default:var c='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}return s}parseInline(t,n=this.renderer){let r="";for(let e=0;e<t.length;e++){var s=t[e];if(this.options.extensions?.renderers?.[s.type]){var i=this.options.extensions.renderers[s.type].call({parser:this},s);if(!1!==i||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){r+=i||"";continue}}var l=s;switch(l.type){case"escape":r+=n.text(l);break;case"html":r+=n.html(l);break;case"link":r+=n.link(l);break;case"image":r+=n.image(l);break;case"strong":r+=n.strong(l);break;case"em":r+=n.em(l);break;case"codespan":r+=n.codespan(l);break;case"br":r+=n.br(l);break;case"del":r+=n.del(l);break;case"text":r+=n.text(l);break;default:var a='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(a),"";throw new Error(a)}}return r}}class B{options;block;constructor(e){this.options=e||n.defaults}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}provideLexer(){return this.block?_.lex:_.lexInline}provideParser(){return this.block?L.parse:L.parseInline}}class O{defaults=e();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=L;Renderer=P;TextRenderer=I;Lexer=_;Tokenizer=A;Hooks=B;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(const s of e)switch(n=n.concat(t.call(this,s)),s.type){case"table":var r=s;for(const i of r.header)n=n.concat(this.walkTokens(i.tokens,t));for(const l of r.rows)for(const a of l)n=n.concat(this.walkTokens(a.tokens,t));break;case"list":r=s;n=n.concat(this.walkTokens(r.items,t));break;default:{const o=s;this.defaults.extensions?.childTokens?.[o.type]?this.defaults.extensions.childTokens[o.type].forEach(e=>{e=o[e].flat(1/0);n=n.concat(this.walkTokens(e,t))}):o.tokens&&(n=n.concat(this.walkTokens(o.tokens,t)))}}returnn}use(...e){constw=this.defaults.extensions||{renderers:{},childTokens:{}};returne.forEach(e=>{constt={...e};if(t.async=this.defaults.async||t.async||!1,e.extensions&&(e.extensions.forEach(n=>{if(!n.name)thrownewError("extension name required");if("renderer"inn){constr=w.renderers[n.name];r?w.renderers[n.name]=function(...e){lett=n.renderer.apply(this,e);returnt=!1===t?r.apply(this,e):t}:w.renderers[n.name]=n.renderer}if("tokenizer"inn){if(!n.level||"block"!==n.level&&"inline"!==n.level)thrownewError("extension level must be 'block' or 'inline'");conste=w[n.level];e?e.unshift(n.tokenizer):w[n.level]=[n.tokenizer],n.start&&("block"===n.level?w.startBlock?w.startBlock.push(n.start):w.startBlock=[n.start]:"inline"===n.level&&(w.startInline?w.startInline.push(n.start):w.startInline=[n.start]))}"childTokens"inn&&n.childTokens&&(w.childTokens[n.name]=n.childTokens)}),t.extensions=w),e.renderer){consti=this.defaults.renderer||newP(this.defaults);for(constline.renderer){if(!(lini))thrownewError(`renderer '${l}' does not exist`);if(!["options","parser"].includes(l)){varn=l;consta=e.renderer[n],o=i[n];i[n]=(...e)=>{lett=a.apply(i,e);return(t=!1===t?o.apply(i,e):t)||""}}}t.renderer=i}if(e.tokenizer){constc=this.defaults.tokenizer||newA(this.defaults);for(consthine.tokenizer){if(!(hinc))thrownewError(`tokenizer '${h}' does not exist`);if(!["options","rules","lexer"].includes(h)){varr=h;constp=e.tokenizer[r],u=c[r];c[r]=(...e)=>{lett=p.apply(c,e);returnt=!1===t?u.apply(c,e):t}}}t.tokenizer=c}if(e.hooks){constg=this.defaults.hooks||newB;for(constkine.hooks){if(!(king))thrownewError(`hook '${k}' does not exist`);if(!["options","block"].includes(k)){vars=k;constd=e.hooks[s],f=g[s];B.passThroughHooks.has(k)?g[s]=e=>{if(this.defaults.async)returnPromise.resolve(d.call(g,e)).then(e=>f.call(g,e));e=d.call(g,e);returnf.call(g,e)}:g[s]=(...e)=>{lett=d.apply(g,e);returnt=!1===t?f.apply(g,e):t}}}t.hooks=g}if(e.walkTokens){constx=this.defaults.walkTokens,b=e.walkTokens;t.walkTokens=function(e){lett=[];returnt.push(b.call(this,e)),t=x?t.concat(x.call(this,e)):t}}this.defaults={...this.defaults,...t}}),this}setOptions(e){returnthis.defaults={...this.defaults,...e},this}lexer(e,t){return_.lex(e,t??this.defaults)}parser(e,t){returnL.parse(e,t??this.defaults)}parseMarkdown(l){return(n,e)=>{e={...e};constr={...this.defaults,...e},t=this.onError(!!r.silent,!!r.async);if(!0===this.defaults.async&&!1===e.async)returnt(newError("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(null==n)returnt(newError("marked(): input parameter is undefined or null"));if("string"!=typeofn)returnt(newError("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));r.hooks&&((r.hooks.options=r).hooks.block=l);consts=r.hooks?r.hooks.provideLexer():l?_.lex:_.lexInline,i=r.hooks?r.hooks.provideParser():l?L.parse:L.parseInline;if(r.async)returnPromise.resolve(r.hooks?r.hooks.preprocess(n):n).then(e=>s(e,r)).then(e=>r.hooks?r.hooks.processAllTokens(e):e).then(e=>r.walkTokens?Promise.all(this.walkTokens(e,r.walkTokens)).then(()=>e):e).then(e=>i(e,r)).then(e=>r.hooks?r.hooks.postprocess(e):e).catch(t);try{r.hooks&&(n=r.hooks.preprocess(n));lete=s(n,r),t=(r.hooks&&(e=r.hooks.processAllTokens(e)),r.walkTokens&&this.walkTokens(e,r.walkTokens),i(e,r));returnt=r.hooks?r.hooks.postprocess(t):t}catch(e){returnt(e)}}}onError(n,r){returne=>{vart;if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",n)returnt="<p>An error occurred:</p><pre>"+z(e.message+"",!0)+"</pre>",r?Promise.resolve(t):t;if(r)returnPromise.reject(e);throwe}}}constC=newO;functionE(e,t){returnC.parse(e,t)}E.options=E.setOptions=function(e){returnC.setOptions(e),t(E.defaults=C.defaults),E},E.getDefaults=e,E.defaults=n.defaults,E.use=function(...e){returnC.use(...e),t(E.defaults=C.defaults),E},E.walkTokens=function(e,t){returnC.walkTokens(e,t)},E.parseInline=C.parseInline,E.Parser=L,E.parser=L.parse,E.Renderer=P,E.TextRenderer=I,E.Lexer=_,E.lexer=_.lex,E.Tokenizer=A,E.Hooks=B;f=(E.parse=E).options,y=E.setOptions,a=E.use,$=E.walkTokens,c=E.parseInline,g=E,r=L.parse,u=_.lex;n.Hooks=B,n.Lexer=_,n.Marked=O,n.Parser=L,n.Renderer=P,n.TextRenderer=I,n.Tokenizer=A,n.getDefaults=e,n.lexer=u,n.marked=E,n.options=f,n.parse=g,n.parseInline=c,n.parser=r,n.setOptions=y,n.use=a,n.walkTokens=$});