Add self-contained Marp HTML export
New export target: a single offline .html rendered from the deck's Marp
Markdown. Bundles (inlines) marked, highlight.js, MathJax (tex-svg, no font
files) and mermaid, so code highlighting, LaTeX math and mermaid diagrams all
render in any browser with no network access.
- MarpHtmlService splits the deck on `---`, strips front-matter, and inlines
the vendored libraries (assets/web_export/) with a </script> breakout guard.
The asset loader is injectable for testing.
- ExportFormat.html wired through ExportService (no rasterization needed),
the export dialog (new button, skips slide rendering) and app_shell
(passes the generated Markdown). Export dialog is now scrollable.
Note: rendered with marked, not Marp Core, so theme fidelity differs from the
in-app preview / PDF / PPTX; the win is a portable, dependency-free deck.
Tests: slide splitting, library inlining, breakout escaping, and an
end-to-end .html export.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 01:37:46 +02:00
/ * *
2026-06-11 22:16:29 +02:00
* marked v18 . 0.5 - a markdown parser
* Copyright ( c ) 2018 - 2026 , MarkedJS . ( MIT License )
* Copyright ( c ) 2011 - 2018 , Christopher Jeffrey . ( MIT License )
Add self-contained Marp HTML export
New export target: a single offline .html rendered from the deck's Marp
Markdown. Bundles (inlines) marked, highlight.js, MathJax (tex-svg, no font
files) and mermaid, so code highlighting, LaTeX math and mermaid diagrams all
render in any browser with no network access.
- MarpHtmlService splits the deck on `---`, strips front-matter, and inlines
the vendored libraries (assets/web_export/) with a </script> breakout guard.
The asset loader is injectable for testing.
- ExportFormat.html wired through ExportService (no rasterization needed),
the export dialog (new button, skips slide rendering) and app_shell
(passes the generated Markdown). Export dialog is now scrollable.
Note: rendered with marked, not Marp Core, so theme fidelity differs from the
in-app preview / PDF / PPTX; the win is a portable, dependency-free deck.
Tests: slide splitting, library inlining, breakout escaping, and an
end-to-end .html export.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 01:37:46 +02:00
* https : //github.com/markedjs/marked
* /
2026-06-11 22:16:29 +02:00
/ * *
* DO NOT EDIT THIS FILE
* The code in this file is generated from files in . / src /
* /
( function ( g , f ) { if ( typeof exports == "object" && typeof module < "u" ) { module . exports = f ( ) } else if ( "function" == typeof define && define . amd ) { define ( "marked" , f ) } else { g [ "marked" ] = f ( ) } } ( typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : this , function ( ) { var exports = { } ; var _ _exports = exports ; var module = { exports } ;
"use strict" ; var N = Object . defineProperty ; var Oe = Object . getOwnPropertyDescriptor ; var we = Object . getOwnPropertyNames ; var ye = Object . prototype . hasOwnProperty ; var Pe = ( l , e ) => { for ( var t in e ) N ( l , t , { get : e [ t ] , enumerable : ! 0 } ) } , Se = ( l , e , t , n ) => { if ( e && typeof e == "object" || typeof e == "function" ) for ( let s of we ( e ) ) ! ye . call ( l , s ) && s !== t && N ( l , s , { get : ( ) => e [ s ] , enumerable : ! ( n = Oe ( e , s ) ) || n . enumerable } ) ; return l } ; var $e = l => Se ( N ( { } , "__esModule" , { value : ! 0 } ) , l ) ; var Rt = { } ; Pe ( Rt , { Hooks : ( ) => P , Lexer : ( ) => x , Marked : ( ) => C , Parser : ( ) => b , Renderer : ( ) => y , TextRenderer : ( ) => S , Tokenizer : ( ) => w , defaults : ( ) => T , getDefaults : ( ) => _ , lexer : ( ) => bt , marked : ( ) => g , options : ( ) => ht , parse : ( ) => mt , parseInline : ( ) => ft , parser : ( ) => xt , setOptions : ( ) => kt , use : ( ) => dt , walkTokens : ( ) => gt } ) ; module . exports = $e ( Rt ) ; function _ ( ) { return { async : ! 1 , breaks : ! 1 , extensions : null , gfm : ! 0 , hooks : null , pedantic : ! 1 , renderer : null , silent : ! 1 , tokenizer : null , walkTokens : null } } var T = _ ( ) ; function Q ( l ) { T = l } var z = { exec : ( ) => null } ; function E ( l ) { let e = [ ] ; return t => { let n = Math . max ( 0 , Math . min ( 3 , t - 1 ) ) , s = e [ n ] ; return s || ( s = l ( n ) , e [ n ] = s ) , s } } function d ( l , e = "" ) { let t = typeof l == "string" ? l : l . source , n = { replace : ( s , r ) => { let i = typeof r == "string" ? r : r . source ; return i = i . replace ( m . caret , "$1" ) , t = t . replace ( s , i ) , n } , getRegex : ( ) => new RegExp ( t , e ) } ; return n } var Le = ( ( l = "" ) => { try { return ! ! new RegExp ( "(?<=1)(?<!1)" + l ) } catch { return ! 1 } } ) ( ) , m = { codeRemoveIndent : /^(?: {1,4}| {0,3}\t)/gm , outputLinkReplace : /\\([\[\]])/g , indentCodeCompensation : /^(\s+)(?:```)/ , beginningSpace : /^\s+/ , endingHash : /#$/ , startingSpaceChar : /^ / , endingSpaceChar : / $/ , nonSpaceChar : /[^ ]/ , newLineCharGlobal : /\n/g , tabCharGlobal : /\t/g , multipleSpaceGlobal : /\s+/g , blankLine : /^[ \t]*$/ , doubleBlankLine : /\n[ \t]*\n[ \t]*$/ , blockquoteStart : /^ {0,3}>/ , blockquoteSetextReplace : /\n {0,3}((?:=+|-+) *)(?=\n|$)/g , blockquoteSetextReplace2 : /^ {0,3}>[ \t]?/gm , listReplaceNesting : /^ {1,4}(?=( {4})*[^ ])/g , listIsTask : /^\[[ xX]\] +\S/ , listReplaceTask : /^\[[ xX]\] +/ , listTaskCheckbox : /\[[ xX]\]/ , anyLine : /\n.*\n/ , hrefBrackets : /^<(.*)>$/ , tableDelimiter : /[:|]/ , tableAlignChars : /^\||\| *$/g , tableRowBlankLine : /\n[ \t]*$/ , tableAlignRight : /^ *-+: *$/ , tableAlignCenter : /^ *:-+: *$/ , tableAlignLeft : /^ *:-+ *$/ , startATag : /^<a /i , endATag : /^<\/a>/i , startPreScriptTag : /^<(pre|code|kbd|script)(\s|>)/i , endPreScriptTag : /^<\/(pre|code|kbd|script)(\s|>)/i , startAngleBracket : /^</ , endAngleBracket : />$/ , pedanticHrefTitle : /^([^'"]*[^\s])\s+(['"])(.*)\2/ , unicodeAlphaNumeric : /[\p{L}\p{N}]/u , escapeTest : /[&<>"']/ , escapeReplace : /[&<>"']/g , escapeTestNoEncode : /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/ , escapeReplaceNoEncode : /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g , caret : /(^|[^\[])\^/g , percentDecode : /%25/g , findPipe : /\|/g , splitPipe : / \|/ , slashPipe : /\\\|/g , carriageReturn : /\r\n|\r/g , spaceLine : /^ +$/gm , notSpaceStart : /^\S*/ , endingNewline : /\n$/ , listItemRegex : l => new RegExp ( ` ^( {0,3} ${ l } )((?:[ ][^ \\ n]*)?(?: \\ n| $ )) ` ) , nextBulletRegex : E ( l => new RegExp ( ` ^ {0, ${ l } }(?:[*+-]| \\ d{1,9}[.)])((?:[ ][^ \\ n]*)?(?: \\ n| $ )) ` ) ) , hrRegex : E ( l => new RegExp ( ` ^ {0, ${ l } }((?:- *){3,}|(?:_ *){3,}|(?: \\ * *){3,})(?: \\ n+| $ ) ` ) ) , fencesBeginRegex : E ( l => new RegExp ( ` ^ {0, ${ l } }(?: \` \` \` |~~~) ` ) ) , headingBeginRegex : E ( l => new RegExp ( ` ^ {0, ${ l } }# ` ) ) , htmlBeginRegex : E ( l => new RegExp ( ` ^ {0, ${ l } }<(?:[a-z].*>|!--) ` , "i" ) ) , blockquoteBeginRegex : E ( l => new RegExp ( ` ^ {0, ${ l } }> ` ) ) } , _e = /^(?:[ \t]*(?:\n|$))+/ , ze = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/ , Me = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/ , D = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/ , Ee = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/ , F = / {0,3}(?:[*+-]|\d{1,9}[.)])/ , ae = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/ , le = d ( ae ) . replace ( /bull/g , F ) . replace ( /blockCode/g , /(?: {4}| {0,3}\t)/ ) . replace ( /fences/g , / {0,3}(?:`{3,}|~{3,})/ ) . replace ( /blockquote/g , / {0,3}>/ ) . replace ( /heading/g , / {0,3}#{1,6}/ ) . replace ( /html/g , / {0,3}<[^\n>]+>\n/ ) . replace ( /\|table/g , "" ) . getRegex ( ) , Ie = d ( ae ) . replace ( /bull/g , F ) . replace ( /blockCode/g , /(?: {4}| {0,3}\t)/ ) . replace (
] ` ).replace("lheading",le).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Ze=/^ \\ ([!"# $ %&'()*+, \- ./:;<=>?@ \[ \] \\ ^_ ` { | } ~ ] ) / , Ge = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/ , pe = /^( {2,}|\\)\n(?!\s*$)/ , Ne = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/ , I = /[\p{P}\p{S}]/u , Z = /[\s\p{P}\p{S}]/u , J = /[^\s\p{P}\p{S}]/u , Qe = d ( /^((?![*_])punctSpace)/ , "u" ) . replace ( /punctSpace/g , Z ) . getRegex ( ) , ce = /(?!~)[\p{P}\p{S}]/u , je = /(?!~)[\s\p{P}\p{S}]/u , Fe = /(?:[^\s\p{P}\p{S}]|~)/u , Ue = d ( /link|precode-code|html/ , "g" ) . replace ( "link" , /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/ ) . replace ( "precode-" , Le ? "(?<!`)()" : "(^^|[^`])" ) . replace ( "code" , /(?<b>`+)[^`]+\k<b>(?!`)/ ) . replace ( "html" , /<(?! )[^<>]*?>/ ) . getRegex ( ) , he = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/ , Ke = d ( he , "u" ) . replace ( /punct/g , I ) . getRegex ( ) , We = d ( he , "u" ) . replace ( /punct/g , ce ) . getRegex ( ) , ke = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)" , Xe = d ( ke , "gu" ) . replace ( /notPunctSpace/g , J ) . replace ( /punctSpace/g , Z ) . replace ( /punct/g , I ) . getRegex ( ) , Je = d ( ke , "gu" ) . replace ( /notPunctSpace/g , Fe ) . replace ( /punctSpace/g , je ) . replace ( /punct/g , ce ) . getRegex ( ) , Ve = d ( "^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)" , "gu" ) . replace ( /notPunctSpace/g , J ) . replace ( /punctSpace/g , Z ) . replace ( /punct/g , I ) . getRegex ( ) , Ye = d ( /^~~?(?:((?!~)punct)|[^\s~])/ , "u" ) . replace ( /punct/g , I ) . getRegex ( ) , et = "^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)" , tt = d ( et , "gu" ) . replace ( /notPunctSpace/g , J ) . replace ( /punctSpace/g , Z ) . replace ( /punct/g , I ) . getRegex ( ) , nt = d ( /\\(punct)/ , "gu" ) . replace ( /punct/g , I ) . getRegex ( ) , rt = d ( /^<(scheme:[^\s\x00-\x1f<>]*|email)>/ ) . replace ( "scheme" , /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/ ) . replace ( "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])?)+(?![-_])/ ) . getRegex ( ) , st = d ( W ) . replace ( "(?:-->|$)" , "-->" ) . getRegex ( ) , it = d ( "^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>" ) . replace ( "comment" , st ) . replace ( "attribute" , /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/ ) . getRegex ( ) , v = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/ , ot = d ( /^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/ ) . replace ( "label" , v ) . replace ( "href" , /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/ ) . replace ( "title" , /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/ ) . getRegex ( ) , de = d ( /^!?\[(label)\]\[(ref)\]/ ) . replace ( "label" , v ) . replace ( "ref" , K ) . getRegex ( ) , ge = d ( /^!?\[(ref)\](?:\[\])?/ ) . replace ( "ref" , K ) . getRegex ( ) , at = d ( "reflink|nolink(?!\\()" , "g" ) . replace ( "reflink" , de ) . replace ( "nolink" , ge ) . getRegex ( ) , oe = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/ , V = { _backpedal : z , anyPunctuation : nt , autolink : rt , blockSkip : Ue , br : pe , code : Ge , del : z , delLDelim : z , delRDelim : z , emStrongLDelim : Ke , emStrongRDelimAst : Xe , emStrongRDelimUnd : Ve , escape : Ze , link : ot , nolink : ge , punctuation : Qe , reflink : de , reflinkSearch : at , tag : it , text : Ne , url : z } , lt = { ... V , link : d ( /^!?\[(label)\]\((.*?)\)/ ) . replace ( "label" , v ) . getRegex ( ) , reflink : d ( /^!?\[(label)\]\s*\[([^\]]*)\]/ ) . replace ( "label" , v ) . getRegex ( ) } , j = { ... V , emStrongRDelimAst : Je , emStrongLDelim : We , delLDelim : Ye , delRDelim : tt , url : d ( /^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/ ) . replace ( "protocol" , oe ) . replace ( "email" , / [ A - Z a - z 0 - 9 . _ + - ] + ( @ ) [ a - z A - Z 0 - 9 - _ ] + ( ? : \ . [ a - z A - Z 0 - 9 - _ ] * [ a - z A - Z 0 - 9 ] ) + ( ? !
` ),t=e.length-1;for(;t>=0&&m.blankLine.test(e[t]);)t--;return e.length-t<=2?l:e.slice(0,t+1).join( `
` )}function me(l,e){if(l.indexOf(e[1])===-1)return-1;let t=0;for(let n=0;n<l.length;n++)if(l[n]===" \\ ")n++;else if(l[n]===e[0])t++;else if(l[n]===e[1]&&(t--,t<0))return n;return t>0?-2:-1}function xe(l,e=0){let t=e,n="";for(let s of l)if(s===" "){let r=4-t%4;n+=" ".repeat(r),t+=r}else n+=s,t++;return n}function be(l,e,t,n,s){let r=e.href,i=e.title||null,o=l[1].replace(s.other.outputLinkReplace," $ 1");n.state.inLink=!0;let u={type:l[0].charAt(0)==="!"?"image":"link",raw:t,href:r,title:i,text:o,tokens:n.inlineTokens(o)};return n.state.inLink=!1,u}function ct(l,e,t){let n=l.match(t.other.indentCodeCompensation);if(n===null)return e;let s=n[1];return e.split( `
` ).map(r=>{let i=r.match(t.other.beginningSpace);if(i===null)return r;let[o]=i;return o.length>=s.length?r.slice(s.length):r}).join( `
` )}var w=class{options;rules;lexer;constructor(e){this.options=e||T}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=this.options.pedantic?t[0]:te(t[0]),s=n.replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:n,codeBlockStyle:"indented",text:s}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let n=t[0],s=ct(n,t[3]||"",this.rules);return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation," $ 1"):t[2],text:s}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(this.rules.other.endingHash.test(n)){let s=L(n,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(n=s.trim())}return{type:"heading",raw:L(t[0], `
` ),depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:L(t[0], `
` )}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let n=L(t[0], `
` ).split( `
` ),s="",r="",i=[];for(;n.length>0;){let o=!1,u=[],a;for(a=0;a<n.length;a++)if(this.rules.other.blockquoteStart.test(n[a]))u.push(n[a]),o=!0;else if(!o)u.push(n[a]);else break;n=n.slice(a);let c=u.join( `
` ),p=c.replace(this.rules.other.blockquoteSetextReplace, `
$1 ` ).replace(this.rules.other.blockquoteSetextReplace2,"");s=s? ` $ { s }
$ { c } ` :c,r=r? ` $ { r }
$ { p } ` :p;let k=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(p,i,!0),this.lexer.state.top=k,n.length===0)break;let h=i.at(-1);if(h?.type==="code")break;if(h?.type==="blockquote"){let R=h,f=R.raw+ `
` +n.join( `
` ), $ =this.blockquote(f);i[i.length-1]= $ ,s=s.substring(0,s.length-R.raw.length)+ $ .raw,r=r.substring(0,r.length-R.text.length)+ $ .text;break}else if(h?.type==="list"){let R=h,f=R.raw+ `
` +n.join( `
` ), $ =this.list(f);i[i.length-1]= $ ,s=s.substring(0,s.length-h.raw.length)+ $ .raw,r=r.substring(0,r.length-R.raw.length)+ $ .raw,n=f.substring(i.at(-1).raw.length).split( `
` );continue}}return{type:"blockquote",raw:s,tokens:i,text:r}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),s=n.length>1,r={type:"list",raw:"",ordered:s,start:s?+n.slice(0,-1):"",loose:!1,items:[]};n=s? ` \ \ d { 1 , 9 } \ \ $ { n . slice ( - 1 ) } ` : ` \ \ $ { n } ` ,this.options.pedantic&&(n=s?n:"[*+-]");let i=this.rules.other.listItemRegex(n),o=!1;for(;e;){let a=!1,c="",p="";if(!(t=i.exec(e))||this.rules.block.hr.test(e))break;c=t[0],e=e.substring(c.length);let k=xe(t[2].split( `
` ,1)[0],t[1].length),h=e.split( `
` ,1)[0],R=!k.trim(),f=0;if(this.options.pedantic?(f=2,p=k.trimStart()):R?f=t[1].length+1:(f=k.search(this.rules.other.nonSpaceChar),f=f>4?1:f,p=k.slice(f),f+=t[1].length),R&&this.rules.other.blankLine.test(h)&&(c+=h+ `
` ,e=e.substring(h.length+1),a=!0),!a){let $ =this.rules.other.nextBulletRegex(f),ne=this.rules.other.hrRegex(f),re=this.rules.other.fencesBeginRegex(f),se=this.rules.other.headingBeginRegex(f),Re=this.rules.other.htmlBeginRegex(f),Te=this.rules.other.blockquoteBeginRegex(f);for(;e;){let G=e.split( `
` ,1)[0],B;if(h=G,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting," "),B=h):B=h.replace(this.rules.other.tabCharGlobal," "),re.test(h)||se.test(h)||Re.test(h)||Te.test(h)|| $ .test(h)||ne.test(h))break;if(B.search(this.rules.other.nonSpaceChar)>=f||!h.trim())p+= `
` +B.slice(f);else{if(R||k.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||re.test(k)||se.test(k)||ne.test(k))break;p+= `
` +h}R=!h.trim(),c+=G+ `
` ,e=e.substring(G.length+1),k=B.slice(f)}}r.loose||(o?r.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0)),r.items.push({type:"list_item",raw:c,task:!!this.options.gfm&&this.rules.other.listIsTask.test(p),loose:!1,text:p,tokens:[]}),r.raw+=c}let u=r.items.at(-1);if(u)u.raw=u.raw.trimEnd(),u.text=u.text.trimEnd();else return;r.raw=r.raw.trimEnd();for(let a of r.items){this.lexer.state.top=!1,a.tokens=this.lexer.blockTokens(a.text,[]);let c=a.tokens[0];if(a.task&&(c?.type==="text"||c?.type==="paragraph")){a.text=a.text.replace(this.rules.other.listReplaceTask,""),c.raw=c.raw.replace(this.rules.other.listReplaceTask,""),c.text=c.text.replace(this.rules.other.listReplaceTask,"");for(let k=this.lexer.inlineQueue.length-1;k>=0;k--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[k].src)){this.lexer.inlineQueue[k].src=this.lexer.inlineQueue[k].src.replace(this.rules.other.listReplaceTask,"");break}let p=this.rules.other.listTaskCheckbox.exec(a.raw);if(p){let k={type:"checkbox",raw:p[0]+" ",checked:p[0]!=="[ ]"};a.checked=k.checked,r.loose?a.tokens[0]&&["paragraph","text"].includes(a.tokens[0].type)&&"tokens"in a.tokens[0]&&a.tokens[0].tokens?(a.tokens[0].raw=k.raw+a.tokens[0].raw,a.tokens[0].text=k.raw+a.tokens[0].text,a.tokens[0].tokens.unshift(k)):a.tokens.unshift({type:"paragraph",raw:k.raw,text:k.raw,tokens:[k]}):a.tokens.unshift(k)}}else a.task&&(a.task=!1);if(!r.loose){let p=a.tokens.filter(h=>h.type==="space"),k=p.length>0&&p.some(h=>this.rules.other.anyLine.test(h.raw));r.loose=k}}if(r.loose)for(let a of r.items){a.loose=!0;for(let c of a.tokens)c.type==="text"&&(c.type="paragraph")}return r}}html(e){let t=this.rules.block.html.exec(e);if(t){let n=te(t[0]);return{type:"html",block:!0,raw:n,pre:t[1]==="pre"||t[1]==="script"||t[1]==="style",text:n}}}def(e){let t=this.rules.block.def.exec(e);if(t){let n=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),s=t[2]?t[2].replace(this.rules.other.hrefBrackets," $ 1").replace(this.rules.inline.anyPunctuation," $ 1"):"",r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation," $ 1"):t[3];return{type:"def",tag:n,raw:L(t[0], `
` ),href:s,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=ee(t[1]),s=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),r=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split( `
` ):[],i={type:"table",raw:L(t[0], `
` ),header:[],align:[],rows:[]};if(n.length===s.length){for(let o of s)this.rules.other.tableAlignRight.test(o)?i.align.push("right"):this.rules.other.tableAlignCenter.test(o)?i.align.push("center"):this.rules.other.tableAlignLeft.test(o)?i.align.push("left"):i.align.push(null);for(let o=0;o<n.length;o++)i.header.push({text:n[o],tokens:this.lexer.inline(n[o]),header:!0,align:i.align[o]});for(let o of r)i.rows.push(ee(o,i.header.length).map((u,a)=>({text:u,tokens:this.lexer.inline(u),header:!1,align:i.align[a]})));return i}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let n=t[1].trim();return{type:"heading",raw:L(t[0], `
` ),depth:t[2].charAt(0)==="="?1:2,text:n,tokens:this.lexer.inline(n)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let n=t[1].charAt(t[1].length-1)=== `
` ?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let n=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let i=L(n.slice(0,-1)," \\ ");if((n.length-i.length)%2===0)return}else{let i=me(t[2],"()");if(i===-2)return;if(i>-1){let u=(t[0].indexOf("!")===0?5:4)+t[1].length+i;t[2]=t[2].substring(0,i),t[0]=t[0].substring(0,u).trim(),t[3]=""}}let s=t[2],r="";if(this.options.pedantic){let i=this.rules.other.pedanticHrefTitle.exec(s);i&&(s=i[1],r=i[3])}else r=t[3]?t[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?s=s.slice(1):s=s.slice(1,-1)),be(t,{href:s&&s.replace(this.rules.inline.anyPunctuation," $ 1"),title:r&&r.replace(this.rules.inline.anyPunctuation," $ 1")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let s=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," "),r=t[s.toLowerCase()];if(!r){let i=n[0].charAt(0);return{type:"text",raw:i,text:i}}return be(n,r,n[0],this.lexer,this.rules)}}emStrong(e,t,n=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!s||!s[1]&&!s[2]&&!s[3]&&!s[4]||s[4]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(s[1]||s[3]||"")||!n||this.rules.inline.punctuation.exec(n)){let i=[...s[0]].length-1,o,u,a=i,c=0,p=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(p.lastIndex=0,t=t.slice(-1*e.length+i);(s=p.exec(t))!==null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(u=[...o].length,s[3]||s[4]){a+=u;continue}else if((s[5]||s[6])&&i%3&&!((i+u)%3)){c+=u;continue}if(a-=u,a>0)continue;u=Math.min(u,u+a+c);let k=[...s[0]][0].length,h=e.slice(0,i+s.index+k+u);if(Math.min(i,u)%2){let f=h.slice(1,-1);return{type:"em",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}let R=h.slice(2,-2);return{type:"strong",raw:h,text:R,tokens:this.lexer.inlineTokens(R)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(n),r=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return s&&r&&(n=n.substring(1,n.length-1)),{type:"codespan",raw:t[0],text:n}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,n=""){let s=this.rules.inline.delLDelim.exec(e);if(!s)return;if(!(s[1]||"")||!n||this.rules.inline.punctuation.exec(n)){let i=[...s[0]].length-1,o,u,a=i,c=this.rules.inline.delRDelim;for(c.lastIndex=0,t=t.slice(-1*e.length+i);(s=c.exec(t))!==null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o||(u=[...o].length,u!==i))continue;if(s[3]||s[4]){a+=u;continue}if(a-=u,a>0)continue;u=Math.min(u,u+a);let p=[...s[0]][0].length,k=e.slice(0,i+s.index+p+u),h=k.slice(i,-i);return{type:"del",raw:k,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let n,s;return t[2]==="@"?(n=t[1],s="mailto:"+n):(n=t[1],s=n),{type:"link",raw:t[0],text:n,href:s,tokens:[{type:"text",raw:n,text:n}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let n,s;if(t[2]==="@")n=t[0],
` ),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let n=this.inlineQueue[t];this.inlineTokens(n.src,n.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){this.tokenizer.lexer=this,this.options.pedantic&&(e=e.replace(m.tabCharGlobal," ").replace(m.spaceLine,""));let s=1/0;for(;e;){if(e.length<s)s=e.length;else{this.infiniteLoopError(e.charCodeAt(0));break}let r;if(this.options.extensions?.block?.some(o=>(r=o.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let o=t.at(-1);r.raw.length===1&&o!==void 0?o.raw+= `
` :t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith( `
` )?"": `
` )+r.raw,o.text+= `
` +r.text,this.inlineQueue.at(-1).src=o.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith( `
` )?"": `
` )+r.raw,o.text+= `
` +r.raw,this.inlineQueue.at(-1).src=o.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let o=1/0,u=e.slice(1),a;this.options.extensions.startBlock.forEach(c=>{a=c.call({lexer:this},u),typeof a=="number"&&a>=0&&(o=Math.min(o,a))}),o<1/0&&o>=0&&(i=e.substring(0,o+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let o=t.at(-1);n&&o?.type==="paragraph"?(o.raw+=(o.raw.endsWith( `
` )?"": `
` )+r.raw,o.text+= `
` +r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let o=t.at(-1);o?.type==="text"?(o.raw+=(o.raw.endsWith( `
` )?"": `
` )+r.raw,o.text+= `
` +r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(r);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n=e,s=null;if(this.tokens.links){let a=Object.keys(this.tokens.links);if(a.length>0)for(;(s=this.tokenizer.rules.inline.reflinkSearch.exec(n))!==null;)a.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(s=this.tokenizer.rules.inline.anyPunctuation.exec(n))!==null;)n=n.slice(0,s.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let r;for(;(s=this.tokenizer.rules.inline.blockSkip.exec(n))!==null;)r=s[2]?s[2].length:0,n=n.slice(0,s.index+r)+"["+"a".repeat(s[0].length-r-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let i=!1,o="",u=1/0;for(;e;){if(e.length<u)u=e.length;else{this.infiniteLoopError(e.charCodeAt(0));break}i||(o=""),i=!1;let a;if(this.options.extensions?.inline?.some(p=>(a=p.call({lexer:this},e,t))?(e=e.substring(a.raw.length),t.push(a),!0):!1))continue;if(a=this.tokenizer.escape(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.tag(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.link(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(a.raw.length);let p=t.at(-1);a.type==="text"&&p?.type==="text"?(p.raw+=a.raw,p.text+=a.text):t.push(a);continue}if(a=this.tokenizer.emStrong(e,n,o)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.codespan(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.br(e)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.del(e,n,o)){e=e.substring(a.raw.length),t.push(a);continue}if(a=this.tokenizer.autolink(e)){e=e.substring(a.raw.length),t.push(a);continue}if(!this.state.inLink&&(a=this.tokenizer.url(e))){e=e.substring(a.raw.length),t.push(a);continue}let c=e;if(this.options.extensions?.startInline){let p=1/0,k=e.slice(1),h;this.options.extensions.startInline.forEach(R=>{h=R.call({lexer:this},k),typeof h=="number"&&h>=0&&(p=Math.min(p,h))}),p<1/0&&p>=0&&(c=e.substring(0,p+1))}if(a=this.tokenizer.inlineText(c)){e=e.substring(a.raw.length),a.raw.slice(-1)!=="_"&&(o=a.raw.slice(-1)),i=!0;let p=t.at(-1);p?.type==="text"?(p.raw+=a.raw,p.text+=a.text):t.push(a);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return t}infiniteLoopError(e){let t="Infinite loop on byte: "+e;if(this.options.silent)console.error(t);else throw new Error(t)}};var y=class{options;parser;constructor(e){this.options=e||T}space(e){return""}code({text:e,lang:t,escaped:n}){let s=(t||"").match(m.notSpaceStart)?.[0],r=e.replace(m.endingNewline,"")+ `
` ;return s?'<pre><code class="language-'+O(s)+'">'+(n?r:O(r,!0))+ ` < / c o d e > < / p r e >
` :"<pre><code>"+(n?r:O(r,!0))+ ` < / c o d e > < / p r e >
` }blockquote({tokens:e}){return ` < blockquote >
$ { this . parser . parse ( e ) } < / b l o c k q u o t e >
` }html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return ` < h$ { t } > $ { this . parser . parseInline ( e ) } < / h $ { t } >
` }hr(e){return ` < hr >
` }list(e){let t=e.ordered,n=e.start,s="";for(let o=0;o<e.items.length;o++){let u=e.items[o];s+=this.listitem(u)}let r=t?"ol":"ul",i=t&&n!==1?' start="'+n+'"':"";return"<"+r+i+ ` >
` +s+"</"+r+ ` >
` }listitem(e){return ` < li > $ { this . parser . parse ( e . tokens ) } < / l i >
` }checkbox({checked:e}){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:e}){return ` < p > $ { this . parser . parseInline ( e ) } < / p >
` }table(e){let t="",n="";for(let r=0;r<e.header.length;r++)n+=this.tablecell(e.header[r]);t+=this.tablerow({text:n});let s="";for(let r=0;r<e.rows.length;r++){let i=e.rows[r];n="";for(let o=0;o<i.length;o++)n+=this.tablecell(i[o]);s+=this.tablerow({text:n})}return s&&(s= ` < tbody > $ { s } < / t b o d y > ` ) , ` < t a b l e >
< thead >
` +t+ ` < / t h e a d >
` +s+ ` < / t a b l e >
` }tablerow({text:e}){return ` < tr >
$ { e } < / t r >
` }tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align? ` < $ { n } align = "${e.align}" > ` : ` < $ { n } > ` )+t+ ` < / $ { n } >
` }strong({tokens:e}){return ` < strong > $ { this . parser . parseInline ( e ) } < / s t r o n g > ` } e m ( { t o k e n s : e } ) { r e t u r n ` < e m > $ { t h i s . p a r s e r . p a r s e I n l i n e ( e ) } < / e m > ` } c o d e s p a n ( { t e x t : e } ) { r e t u r n ` < c o d e > $ { O ( e , ! 0 ) } < / c o d e > ` } b r ( e ) { r e t u r n " < b r > " } d e l ( { t o k e n s : e } ) { r e t u r n ` < d e l > $ { t h i s . p a r s e r . p a r s e I n l i n e ( e ) } < / d e l > ` } l i n k ( { h r e f : e , t i t l e : t , t o k e n s : n } ) { l e t s = t h i s . p a r s e r . p a r s e I n l i n e ( n ) , r = Y ( e ) ; i f ( r = = = n u l l ) r e t u r n s ; e = r ; l e t i = ' < a h r e f = " ' + e + ' " ' ; r e t u r n t & & ( i + = ' t i t l e = " ' + O ( t ) + ' " ' ) , i + = " > " + s + " < / a > " , i } i m a g e ( { h r e f : e , t i t l e : t , t e x t : n , t o k e n s : s } ) { s & & ( n = t h i s . p a r s e r . p a r s e I n l i n e ( s , t h i s . p a r s e r . t e x t R e n d e r e r ) ) ; l e t r = Y ( e ) ; i f ( r = = = n u l l ) r e t u r n O ( n ) ; e = r ; l e t i = ` < i m g s r c = " $ { e } " a l t = " $ { O ( n ) } " ` ; r e t u r n t & & ( i + = ` t i t l e = " $ { O ( t ) } " ` ) , i + = " > " , i } t e x t ( e ) { r e t u r n " t o k e n s " i n e & & e . t o k e n s ? t h i s . p a r s e r . p a r s e I n l i n e ( e . t o k e n s ) : " e s c a p e d " i n e & & e . e s c a p e d ? e . t e x t : O ( e . t e x t ) } } ; v a r S = c l a s s { s t r o n g ( { t e x t : e } ) { r e t u r n e } e m ( { t e x t : e } ) { r e t u r n e } c o d e s p a n ( { t e x t : e } ) { r e t u r n e } d e l ( { t e x t : e } ) { r e t u r n e } h t m l ( { t e x t : e } ) { r e t u r n e } t e x t ( { t e x t : e } ) { r e t u r n e } l i n k ( { t e x t : e } ) { r e t u r n " " + e } i m a g e ( { t e x t : e } ) { r e t u r n " " + e } b r ( ) { r e t u r n " " } c h e c k b o x ( { r a w : e } ) { r e t u r n e } } ; v a r b = c l a s s l { o p t i o n s ; r e n d e r e r ; t e x t R e n d e r e r ; c o n s t r u c t o r ( e ) { t h i s . o p t i o n s = e | | T , t h i s . o p t i o n s . r e n d e r e r = t h i s . o p t i o n s . r e n d e r e r | | n e w y , t h i s . r e n d e r e r = t h i s . o p t i o n s . r e n d e r e r , t h i s . r e n d e r e r . o p t i o n s = t h i s . o p t i o n s , t h i s . r e n d e r e r . p a r s e r = t h i s , t h i s . t e x t R e n d e r e r = n e w S } s t a t i c p a r s e ( e , t ) { r e t u r n n e w l ( t ) . p a r s e ( e ) } s t a t i c p a r s e I n l i n e ( e , t ) { r e t u r n n e w l ( t ) . p a r s e I n l i n e ( e ) } p a r s e ( e ) { t h i s . r e n d e r e r . p a r s e r = t h i s ; l e t t = " " ; f o r ( l e t n = 0 ; n < e . l e n g t h ; n + + ) { l e t s = e [ n ] ; i f ( t h i s . o p t i o n s . e x t e n s i o n s ? . r e n d e r e r s ? . [ s . t y p e ] ) { l e t i = s , o = t h i s . o p t i o n s . e x t e n s i o n s . r e n d e r e r s [ i . t y p e ] . c a l l ( { p a r s e r : t h i s } , i ) ; i f ( o ! = = ! 1 | | ! [ " s p a c e " , " h r " , " h e a d i n g " , " c o d e " , " t a b l e " , " b l o c k q u o t e " , " l i s t " , " h t m l " , " d e f " , " p a r a g r a p h " , " t e x t " ] . i n c l u d e s ( i . t y p e ) ) { t + = o | | " " ; c o n t i n u e } } l e t r = s ; s w i t c h ( r . t y p e ) { c a s e " s p a c e " : { t + = t h i s . r e n d e r e r . s p a c e ( r ) ; b r e a k } c a s e " h r " : { t + = t h i s . r e n d e r e r . h r ( r ) ; b r e a k } c a s e " h e a d i n g " : { t + = t h i s . r e n d e r e r . h e a d i n g ( r ) ; b r e a k } c a s e " c o d e " : { t + = t h i s . r e n d e r e r . c o d e ( r ) ; b r e a k } c a s e " t a b l e " : { t + = t h i s . r e n d e r e r . t a b l e ( r ) ; b r e a k } c a s e " b l o c k q u o t e " : { t + = t h i s . r e n d e r e r . b l o c k q u o t e ( r ) ; b r e a k } c a s e " l i s t " : { t + = t h i s . r e n d e r e r . l i s t ( r ) ; b r e a k } c a s e " c h e c k b o x " : { t + = t h i s . r e n d e r e r . c h e c k b o x ( r ) ; b r e a k } c a s e " h t m l " : { t + = t h i s . r e n d e r e r . h t m l ( r ) ; b r e a k } c a s e " d e f " : { t + = t h i s . r e n d e r e r . d e f ( r ) ; b r e a k } c a s e " p a r a g r a p h " : { t + = t h i s . r e n d e r e r . p a r a g r a p h ( r ) ; b r e a k } c a s e " t e x t " : { t + = t h i s . r e n d e r e r . t e x t ( r ) ; b r e a k } d e f a u l t : { l e t i = ' T o k e n w i t h " ' + r . t y p e + ' " t y p e w a s n o t f o u n d . ' ; i f ( t h i s . o p t i o n s . s i l e n t ) r e t u r n c o n s o l e . e r r o r ( i ) , " " ; t h r o w n e w E r r o r ( i ) } } } r e t u r n t } p a r s e I n l i n e ( e , t = t h i s . r e n d e r e r ) { t h i s . r e n d e r e r . p a r s e r = t h i s ; l e t n = " " ; f o r ( l e t s = 0 ; s < e . l e n g t h ; s + + ) { l e t r = e [ s ] ; i f ( t h i s . o p t i o n s . e x t e n s i o n s ? . r e n d e r e r s ? . [ r . t y p e ] ) { l e t o = t h i s . o p t i o n s . e x t e n s i o n s . r e n d e r e r s [ r . t y p e ] . c a l l ( { p a r s e r : t h i s } , r ) ; i f ( o ! = = ! 1 | | ! [ " e s c a p e " , " h t m l " , " l i n k " , " i m a g e " , " s t r o n g " , " e m " , " c o d e s p a n " , " b r " , " d e l " , " t e x t " ] . i n c l u d e s ( r . t y p e ) ) { n + = o | | " " ; c o n t i n u e } } l e t i = r ; s w i t c h ( i . t y p e ) { c a s e " e s c a p e " : { n + = t . t e x t ( i ) ; b r e a k } c a s e " h t m l " : { n + = t . h t m l ( i ) ; b r e a k } c a s e " l i n k " : { n + = t . l i n k ( i ) ; b r e a k } c a s e " i m a g e " : { n + = t . i m a g e ( i ) ; b r e a k } c a s e " c h e c k b o x " : { n + = t . c h e c k b o x ( i ) ; b r e a k } c a s e " s t r o n g " : { n + = t . s t r o n g ( i ) ; b r e a k } c a s e " e m " : { n + = t . e m ( i ) ; b r e a k } c a s e " c o d e s p a n " : { n + = t . c o d e s p a n ( i ) ; b r e a k } c a s e " b r " : { n + = t . b r ( i ) ; b r e a k } c a s e " d e l " : { n + = t . d e l ( i ) ; b r e a k } c a s e " t e x t " : { n + = t . t e x t ( i ) ; b r e a k } d e f a u l t : { l e t o = ' T o k e n w i t h " ' + i . t y p e + ' " t y p e w a s n o t f o u n d . ' ; i f ( t h i s . o p t i o n s . s i l e n t ) r e t u r n c o n s o l e . e r r o r ( o ) , " " ; t h r o w n e w E r r o r ( o ) } } } r e t u r n n } } ; v a r P = c l a s s { o p t i o n s ; b l o c k ; c o n s t r u c t o r ( e ) { t h i s . o p t i o n s = e | | T } s t a t i c p a s s T h r o u g h H o o k s = n e w S e t ( [ " p r e p r o c e s s " , " p o s t p r o c e s s " , " p r o c e s s A l l T o k e n s " , " e m S t r o n g M a s k " ] ) ; s t a t i c p a s s T h r o u g h H o o k s R e s p e c t A s y n c = n e w S e t ( [ " p r e p r o c e s s " , " p o s t p r o c e s s " , " p r o c e s s A l l T o k e n s " ] ) ; p r e p r o c e s s ( e ) { r e t u r n e } p o s t p r o c e s s ( e ) { r e t u r n e } p r o c e s s A l l T o k e n s ( e ) { r e t u r n e } e m S t r o n g M a s k ( e ) { r e t u r n e } p r o v i d e L e x e r ( e = t h i s . b l o c k ) { r e t u r n e ? x . l e x : x . l e x I n l i n e } p r o v i d e P a r s e r ( e = t h i s . b l o c k ) { r e t u r n e ? b . p a r s e : b . p a r s e I n l i n e } } ; v a r C = c l a s s { d e f a u l t s = _ ( ) ; o p t i o n s = t h i s . s e t O p t i o n s ; p a r s e = t h i s . p a r s e M a r k d o w n ( ! 0 ) ; p a r s e I n l i n e = t h i s . p a r s e M a r k d o w n ( ! 1 ) ; P a r s e r = b ; R e n d e r e r = y ; T e x t R e n d e r e r = S ; L e x e r = x ; T o k e n i z e r = w ; H o o k s = P ; c o n s t r u c t o r ( . . . e ) { t h i s . u s e ( . . . e ) } w a l k T o k e n s ( e , t ) { l e t n = [ ] ; f o r ( l e t s o f e ) s w i t c h ( n = n . c o n c a t ( t . c a l l ( t h i s , s ) ) , s . t y p e ) { c a s e " t a b l e " : { l e t r = s ; f o r ( l
Please report this to https : //github.com/markedjs/marked.`,e){let s="<p>An error occurred:</p><pre>"+O(n.message+"",!0)+"</pre>";return t?Promise.resolve(s):s}if(t)return Promise.reject(n);throw n}}};var M=new C;function g(l,e){return M.parse(l,e)}g.options=g.setOptions=function(l){return M.setOptions(l),g.defaults=M.defaults,Q(g.defaults),g};g.getDefaults=_;g.defaults=T;g.use=function(...l){return M.use(...l),g.defaults=M.defaults,Q(g.defaults),g};g.walkTokens=function(l,e){return M.walkTokens(l,e)};g.parseInline=M.parseInline;g.Parser=b;g.parser=b.parse;g.Renderer=y;g.TextRenderer=S;g.Lexer=x;g.lexer=x.lex;g.Tokenizer=w;g.Hooks=P;g.parse=g;var ht=g.options,kt=g.setOptions,dt=g.use,gt=g.walkTokens,ft=g.parseInline,mt=g,xt=b.parse,bt=x.lex;
if ( _ _exports != exports ) module . exports = exports ; return module . exports } ) ) ;
//# sourceMappingURL=marked.umd.js.map