= /^ /.test(e) && / $/.test(e); return ( n && r && (e = e.substring(1, e.length - 1)), (e = Ws(e, !0)), { type: 'codespan', raw: t[0], text: e } ); } } br(e) { const t = this.rules.inline.br.exec(e); if (t) return { type: 'br', raw: t[0] }; } del(e) { const t = this.rules.inline.del.exec(e); if (t) return { type: 'del', raw: t[0], text: t[2], tokens: this.lexer.inlineTokens(t[2], []) }; } autolink(e, t) { const n = this.rules.inline.autolink.exec(e); if (n) { let e, r; return ( '@' === n[2] ? ((e = Ws(this.options.mangle ? t(n[1]) : n[1])), (r = 'mailto:' + e)) : ((e = Ws(n[1])), (r = e)), { type: 'link', raw: n[0], text: e, href: r, tokens: [{ type: 'text', raw: e, text: e }] } ); } } url(e, t) { let n; if ((n = this.rules.inline.url.exec(e))) { let e, r; if ('@' === n[2]) (e = Ws(this.options.mangle ? t(n[0]) : n[0])), (r = 'mailto:' + e); else { let t; do { (t = n[0]), (n[0] = this.rules.inline._backpedal.exec(n[0])[0]); } while (t !== n[0]); (e = Ws(n[0])), (r = 'www.' === n[1] ? 'http://' + e : e); } return { type: 'link', raw: n[0], text: e, href: r, tokens: [{ type: 'text', raw: e, text: e }] }; } } inlineText(e, t) { const n = this.rules.inline.text.exec(e); if (n) { let e; return ( (e = this.lexer.state.inRawBlock ? this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(n[0]) : Ws(n[0]) : n[0] : Ws(this.options.smartypants ? t(n[0]) : n[0])), { type: 'text', raw: n[0], text: e } ); } } } const pl = { newline: /^(?: *(?:\\n|$))+/, code: /^( {4}[^\\n]+(?:\\n(?: *(?:\\n|$))*)?)+/, fences: /^ {0,3}(\`{3,}(?=[^\`\\n]*\\n)|~{3,})([^\\n]*)\\n(?:|([\\s\\S]*?)\\n)(?: {0,3}\\1[~\`]* *(?=\\n|$)|$)/, hr: /^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/, heading: /^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/, blockquote: /^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/, list: /^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/, html: '^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|\\\\n*|$)|\\\\n*|$)|)[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)|(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$))', def: /^ {0,3}\\[(label)\\]: *(?:\\n *)?]+)>?(?:(?: +(?:\\n *)?| *\\n *)(title))? *(?:\\n+|$)/, table: rl, lheading: /^([^\\n]+)\\n {0,3}(=+|-+) *(?:\\n+|$)/, _paragraph: /^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/, text: /^[^\\n]+/, _label: /(?!\\s*\\])(?:\\\\.|[^\\[\\]\\\\])+/, _title: /(?:"(?:\\\\"?|[^"\\\\])*"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/ }; (pl.def = Gs(pl.def) .replace('label', pl._label) .replace('title', pl._title) .getRegex()), (pl.bullet = /(?:[*+-]|\\d{1,9}[.)])/), (pl.listItemStart = Gs(/^( *)(bull) */) .replace('bull', pl.bullet) .getRegex()), (pl.list = Gs(pl.list) .replace(/bull/g, pl.bullet) .replace( 'hr', '\\\\n+(?=\\\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$))' ) .replace('def', '\\\\n+(?=' + pl.def.source + ')') .getRegex()), (pl._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'), (pl._comment = /|$)/), (pl.html = Gs(pl.html, 'i') .replace('comment', pl._comment) .replace('tag', pl._tag) .replace( 'attribute', / +[a-zA-Z:_][\\w.:-]*(?: *= *"[^"\\n]*"| *= *'[^'\\n]*'| *= *[^\\s"'=<>\`]+)?/ ) .getRegex()), (pl.paragraph = Gs(pl._paragraph) .replace('hr', pl.hr) .replace('heading', ' {0,3}#{1,6} ') .replace('|lheading', '') .replace('|table', '') .replace('blockquote', ' {0,3}>') .replace('fences', ' {0,3}(?:\`{3,}(?=[^\`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n') .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') .replace( 'html', ')|<(?:script|pre|style|textarea|!--)' ) .replace('tag', pl._tag) .getRegex()), (pl.blockquote = Gs(pl.blockquote) .replace('paragraph', pl.paragraph) .getRegex()), (pl.normal = ol({}, pl)), (pl.gfm = ol({}, pl.normal, { table: '^ *([^\\\\n ].*\\\\|.*)\\\\n {0,3}(?:\\\\| *)?(:?-+:? *(?:\\\\| *:?-+:? *)*)(?:\\\\| *)?(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)' })), (pl.gfm.table = Gs(pl.gfm.table) .replace('hr', pl.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', ')|<(?:script|pre|style|textarea|!--)' ) .replace('tag', pl._tag) .getRegex()), (pl.gfm.paragraph = Gs(pl._paragraph) .replace('hr', pl.hr) .replace('heading', ' {0,3}#{1,6} ') .replace('|lheading', '') .replace('table', pl.gfm.table) .replace('blockquote', ' {0,3}>') .replace('fences', ' {0,3}(?:\`{3,}(?=[^\`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n') .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') .replace( 'html', ')|<(?:script|pre|style|textarea|!--)' ) .replace('tag', pl._tag) .getRegex()), (pl.pedantic = ol({}, pl.normal, { html: Gs( '^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+? *(?:\\\\n{2,}|\\\\s*$)|\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))' ) .replace('comment', pl._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: /^ *\\[([^\\]]+)\\]: *]+)>?(?: +(["(][^\\n]+[")]))? *(?:\\n+|$)/, heading: /^(#{1,6})(.*)(?:\\n+|$)/, fences: rl, paragraph: Gs(pl.normal._paragraph) .replace('hr', pl.hr) .replace('heading', ' *#{1,6} *[^\\n]') .replace('lheading', pl.lheading) .replace('blockquote', ' {0,3}>') .replace('|fences', '') .replace('|list', '') .replace('|html', '') .getRegex() })); const dl = { escape: /^\\\\([!"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_\`{|}~])/, autolink: /^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/, url: rl, tag: '^comment|^|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^|^', link: /^!?\\[(label)\\]\\(\\s*(href)(?:\\s+(title))?\\s*\\)/, reflink: /^!?\\[(label)\\]\\[(ref)\\]/, nolink: /^!?\\[(ref)\\](?:\\[\\])?/, reflinkSearch: 'reflink|nolink(?!\\\\()', emStrong: { lDelim: /^(?:\\*+(?:([punct_])|[^\\s*]))|^_+(?:([punct*])|([^\\s_]))/, rDelimAst: /^[^_*]*?\\_\\_[^_*]*?\\*[^_*]*?(?=\\_\\_)|[^*]+(?=[^*])|[punct_](\\*+)(?=[\\s]|$)|[^punct*_\\s](\\*+)(?=[punct_\\s]|$)|[punct_\\s](\\*+)(?=[^punct*_\\s])|[\\s](\\*+)(?=[punct_])|[punct_](\\*+)(?=[punct_])|[^punct*_\\s](\\*+)(?=[^punct*_\\s])/, rDelimUnd: /^[^_*]*?\\*\\*[^_*]*?\\_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|[punct*](\\_+)(?=[\\s]|$)|[^punct*_\\s](\\_+)(?=[punct*\\s]|$)|[punct*\\s](\\_+)(?=[^punct*_\\s])|[\\s](\\_+)(?=[punct*])|[punct*](\\_+)(?=[punct*])/ }, code: /^(\`+)([^\`]|[^\`][\\s\\S]*?[^\`])\\1(?!\`)/, br: /^( {2,}|\\\\)\\n(?!\\s*$)/, del: rl, text: /^(\`+|[^\`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\ 0.5 && (n = 'x' + n.toString(16)), (r += '&#' + n + ';'); return r; } (dl._punctuation = '!"#$%&\\'()+\\\\-.,/:;<=>?@\\\\[\\\\]\`^{|}~'), (dl.punctuation = Gs(dl.punctuation) .replace(/punctuation/g, dl._punctuation) .getRegex()), (dl.blockSkip = /\\[[^\\]]*?\\]\\([^\\)]*?\\)|\`[^\`]*?\`|<[^>]*?>/g), (dl.escapedEmSt = /\\\\\\*|\\\\_/g), (dl._comment = Gs(pl._comment) .replace('(?:--\\x3e|$)', '--\\x3e') .getRegex()), (dl.emStrong.lDelim = Gs(dl.emStrong.lDelim) .replace(/punct/g, dl._punctuation) .getRegex()), (dl.emStrong.rDelimAst = Gs(dl.emStrong.rDelimAst, 'g') .replace(/punct/g, dl._punctuation) .getRegex()), (dl.emStrong.rDelimUnd = Gs(dl.emStrong.rDelimUnd, 'g') .replace(/punct/g, dl._punctuation) .getRegex()), (dl._escapes = /\\\\([!"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_\`{|}~])/g), (dl._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/), (dl._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])?)+(?![-_])/), (dl.autolink = Gs(dl.autolink) .replace('scheme', dl._scheme) .replace('email', dl._email) .getRegex()), (dl._attribute = /\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*"[^"]*"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s"'=<>\`]+)?/), (dl.tag = Gs(dl.tag) .replace('comment', dl._comment) .replace('attribute', dl._attribute) .getRegex()), (dl._label = /(?:\\[(?:\\\\.|[^\\[\\]\\\\])*\\]|\\\\.|\`[^\`]*\`|[^\\[\\]\\\\\`])*?/), (dl._href = /<(?:\\\\.|[^\\n<>\\\\])+>|[^\\s\\x00-\\x1f]*/), (dl._title = /"(?:\\\\"?|[^"\\\\])*"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/), (dl.link = Gs(dl.link) .replace('label', dl._label) .replace('href', dl._href) .replace('title', dl._title) .getRegex()), (dl.reflink = Gs(dl.reflink) .replace('label', dl._label) .replace('ref', pl._label) .getRegex()), (dl.nolink = Gs(dl.nolink).replace('ref', pl._label).getRegex()), (dl.reflinkSearch = Gs(dl.reflinkSearch, 'g') .replace('reflink', dl.reflink) .replace('nolink', dl.nolink) .getRegex()), (dl.normal = ol({}, dl)), (dl.pedantic = ol({}, dl.normal, { strong: { start: /^__|\\*\\*/, middle: /^__(?=\\S)([\\s\\S]*?\\S)__(?!_)|^\\*\\*(?=\\S)([\\s\\S]*?\\S)\\*\\*(?!\\*)/, endAst: /\\*\\*(?!\\*)/g, endUnd: /__(?!_)/g }, em: { start: /^_|\\*/, middle: /^()\\*(?=\\S)([\\s\\S]*?\\S)\\*(?!\\*)|^_(?=\\S)([\\s\\S]*?\\S)_(?!_)/, endAst: /\\*(?!\\*)/g, endUnd: /_(?!_)/g }, link: Gs(/^!?\\[(label)\\]\\((.*?)\\)/) .replace('label', dl._label) .getRegex(), reflink: Gs(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/) .replace('label', dl._label) .getRegex() })), (dl.gfm = ol({}, dl.normal, { escape: Gs(dl.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~])\\1(?=[^~]|$)/, text: /^([\`~]+|[^\`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_\`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\ t + ' '.repeat(n.length) ); e; ) if ( !( this.options.extensions && this.options.extensions.block && this.options.extensions.block.some( r => !!(n = r.call({ lexer: this }, e, t)) && ((e = e.substring(n.raw.length)), t.push(n), !0) ) ) ) if ((n = this.tokenizer.space(e))) (e = e.substring(n.raw.length)), 1 === n.raw.length && t.length > 0 ? (t[t.length - 1].raw += '\\n') : t.push(n); else if ((n = this.tokenizer.code(e))) (e = e.substring(n.raw.length)), (r = t[t.length - 1]), !r || ('paragraph' !== r.type && 'text' !== r.type) ? t.push(n) : ((r.raw += '\\n' + n.raw), (r.text += '\\n' + n.text), (this.inlineQueue[this.inlineQueue.length - 1].src = r.text)); else if ((n = this.tokenizer.fences(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.heading(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.hr(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.blockquote(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.list(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.html(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.def(e))) (e = e.substring(n.raw.length)), (r = t[t.length - 1]), !r || ('paragraph' !== r.type && 'text' !== r.type) ? this.tokens.links[n.tag] || (this.tokens.links[n.tag] = { href: n.href, title: n.title }) : ((r.raw += '\\n' + n.raw), (r.text += '\\n' + n.raw), (this.inlineQueue[this.inlineQueue.length - 1].src = r.text)); else if ((n = this.tokenizer.table(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.lheading(e))) (e = e.substring(n.raw.length)), t.push(n); else { if ( ((o = e), this.options.extensions && this.options.extensions.startBlock) ) { let t = 1 / 0; const n = e.slice(1); let r; this.options.extensions.startBlock.forEach(function (e) { (r = e.call({ lexer: this }, n)), 'number' == typeof r && r >= 0 && (t = Math.min(t, r)); }), t < 1 / 0 && t >= 0 && (o = e.substring(0, t + 1)); } if (this.state.top && (n = this.tokenizer.paragraph(o))) (r = t[t.length - 1]), i && 'paragraph' === r.type ? ((r.raw += '\\n' + n.raw), (r.text += '\\n' + n.text), this.inlineQueue.pop(), (this.inlineQueue[this.inlineQueue.length - 1].src = r.text)) : t.push(n), (i = o.length !== e.length), (e = e.substring(n.raw.length)); else if ((n = this.tokenizer.text(e))) (e = e.substring(n.raw.length)), (r = t[t.length - 1]), r && 'text' === r.type ? ((r.raw += '\\n' + n.raw), (r.text += '\\n' + n.text), this.inlineQueue.pop(), (this.inlineQueue[this.inlineQueue.length - 1].src = r.text)) : t.push(n); else if (e) { const t = 'Infinite loop on byte: ' + e.charCodeAt(0); if (this.options.silent) { console.error(t); break; } throw new Error(t); } } return (this.state.top = !0), t; } inline(e, t) { this.inlineQueue.push({ src: e, tokens: t }); } inlineTokens(e, t = []) { let n, r, o, i, a, s, l = e; if (this.tokens.links) { const e = Object.keys(this.tokens.links); if (e.length > 0) for ( ; null != (i = this.tokenizer.rules.inline.reflinkSearch.exec(l)); ) e.includes(i[0].slice(i[0].lastIndexOf('[') + 1, -1)) && (l = l.slice(0, i.index) + '[' + ll('a', i[0].length - 2) + ']' + l.slice( this.tokenizer.rules.inline.reflinkSearch.lastIndex )); } for ( ; null != (i = this.tokenizer.rules.inline.blockSkip.exec(l)); ) l = l.slice(0, i.index) + '[' + ll('a', i[0].length - 2) + ']' + l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex); for ( ; null != (i = this.tokenizer.rules.inline.escapedEmSt.exec(l)); ) l = l.slice(0, i.index) + '++' + l.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex); for (; e; ) if ( (a || (s = ''), (a = !1), !( this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some( r => !!(n = r.call({ lexer: this }, e, t)) && ((e = e.substring(n.raw.length)), t.push(n), !0) ) )) ) if ((n = this.tokenizer.escape(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.tag(e))) (e = e.substring(n.raw.length)), (r = t[t.length - 1]), r && 'text' === n.type && 'text' === r.type ? ((r.raw += n.raw), (r.text += n.text)) : t.push(n); else if ((n = this.tokenizer.link(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.reflink(e, this.tokens.links))) (e = e.substring(n.raw.length)), (r = t[t.length - 1]), r && 'text' === n.type && 'text' === r.type ? ((r.raw += n.raw), (r.text += n.text)) : t.push(n); else if ((n = this.tokenizer.emStrong(e, l, s))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.codespan(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.br(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.del(e))) (e = e.substring(n.raw.length)), t.push(n); else if ((n = this.tokenizer.autolink(e, hl))) (e = e.substring(n.raw.length)), t.push(n); else if ( this.state.inLink || !(n = this.tokenizer.url(e, hl)) ) { if ( ((o = e), this.options.extensions && this.options.extensions.startInline) ) { let t = 1 / 0; const n = e.slice(1); let r; this.options.extensions.startInline.forEach(function (e) { (r = e.call({ lexer: this }, n)), 'number' == typeof r && r >= 0 && (t = Math.min(t, r)); }), t < 1 / 0 && t >= 0 && (o = e.substring(0, t + 1)); } if ((n = this.tokenizer.inlineText(o, fl))) (e = e.substring(n.raw.length)), '_' !== n.raw.slice(-1) && (s = n.raw.slice(-1)), (a = !0), (r = t[t.length - 1]), r && 'text' === r.type ? ((r.raw += n.raw), (r.text += n.text)) : t.push(n); else if (e) { const t = 'Infinite loop on byte: ' + e.charCodeAt(0); if (this.options.silent) { console.error(t); break; } throw new Error(t); } } else (e = e.substring(n.raw.length)), t.push(n); return t; } } class gl { constructor(e) { this.options = e || Ms; } code(e, t, n) { const r = (t || '').match(/\\S*/)[0]; if (this.options.highlight) { const t = this.options.highlight(e, r); null != t && t !== e && ((n = !0), (e = t)); } return ( (e = e.replace(/\\n$/, '') + '\\n'), r ? '
' +
                  (n ? e : Ws(e, !0)) +
                  '
\\n' : '
' + (n ? e : Ws(e, !0)) + '
\\n' ); } blockquote(e) { return \`
\\n\${e}
\\n\`; } html(e) { return e; } heading(e, t, n, r) { return this.options.headerIds ? \`\${e}\\n\` : \`\${e}\\n\`; } hr() { return this.options.xhtml ? '
\\n' : '
\\n'; } list(e, t, n) { const r = t ? 'ol' : 'ul'; return ( '<' + r + (t && 1 !== n ? ' start="' + n + '"' : '') + '>\\n' + e + '\\n' ); } listitem(e) { return \`
  • \${e}
  • \\n\`; } checkbox(e) { return ( ' ' ); } paragraph(e) { return \`

    \${e}

    \\n\`; } table(e, t) { return ( t && (t = \`\${t}\`), '\\n\\n' + e + '\\n' + t + '
    \\n' ); } tablerow(e) { return \`\\n\${e}\\n\`; } tablecell(e, t) { const n = t.header ? 'th' : 'td'; return ( (t.align ? \`<\${n} align="\${t.align}">\` : \`<\${n}>\`) + e + \`\\n\` ); } strong(e) { return \`\${e}\`; } em(e) { return \`\${e}\`; } codespan(e) { return \`\${e}\`; } br() { return this.options.xhtml ? '
    ' : '
    '; } del(e) { return \`\${e}\`; } link(e, t, n) { if ( null === (e = Js(this.options.sanitize, this.options.baseUrl, e)) ) return n; let r = ''), r; } image(e, t, n) { if ( null === (e = Js(this.options.sanitize, this.options.baseUrl, e)) ) return n; let r = \`\${n}' : '>'), r ); } text(e) { return e; } } class yl { strong(e) { return e; } em(e) { return e; } codespan(e) { return e; } del(e) { return e; } html(e) { return e; } text(e) { return e; } link(e, t, n) { return '' + n; } image(e, t, n) { return '' + n; } br() { return ''; } } class vl { constructor() { this.seen = {}; } serialize(e) { return e .toLowerCase() .trim() .replace(/<[!\\/a-z].*?>/gi, '') .replace( /[\\u2000-\\u206F\\u2E00-\\u2E7F\\\\'!"#$%&()*+,./:;<=>?@[\\]^\`{|}~]/g, '' ) .replace(/\\s/g, '-'); } getNextSafeSlug(e, t) { let n = e, r = 0; if (this.seen.hasOwnProperty(n)) { r = this.seen[e]; do { r++, (n = e + '-' + r); } while (this.seen.hasOwnProperty(n)); } return t || ((this.seen[e] = r), (this.seen[n] = 0)), n; } slug(e, t = {}) { const n = this.serialize(e); return this.getNextSafeSlug(n, t.dryrun); } } class bl { constructor(e) { (this.options = e || Ms), (this.options.renderer = this.options.renderer || new gl()), (this.renderer = this.options.renderer), (this.renderer.options = this.options), (this.textRenderer = new yl()), (this.slugger = new vl()); } static parse(e, t) { return new bl(t).parse(e); } static parseInline(e, t) { return new bl(t).parseInline(e); } parse(e, t = !0) { let n, r, o, i, a, s, l, c, u, p, d, f, h, m, g, y, v, b, w, x = ''; const k = e.length; for (n = 0; n < k; n++) if ( ((p = e[n]), this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[p.type] && ((w = this.options.extensions.renderers[p.type].call( { parser: this }, p )), !1 !== w || ![ 'space', 'hr', 'heading', 'code', 'table', 'blockquote', 'list', 'html', 'paragraph', 'text' ].includes(p.type))) ) x += w || ''; else switch (p.type) { case 'space': continue; case 'hr': x += this.renderer.hr(); continue; case 'heading': x += this.renderer.heading( this.parseInline(p.tokens), p.depth, Ys(this.parseInline(p.tokens, this.textRenderer)), this.slugger ); continue; case 'code': x += this.renderer.code(p.text, p.lang, p.escaped); continue; case 'table': for (c = '', l = '', i = p.header.length, r = 0; r < i; r++) l += this.renderer.tablecell( this.parseInline(p.header[r].tokens), { header: !0, align: p.align[r] } ); for ( c += this.renderer.tablerow(l), u = '', i = p.rows.length, r = 0; r < i; r++ ) { for ( s = p.rows[r], l = '', a = s.length, o = 0; o < a; o++ ) l += this.renderer.tablecell( this.parseInline(s[o].tokens), { header: !1, align: p.align[o] } ); u += this.renderer.tablerow(l); } x += this.renderer.table(c, u); continue; case 'blockquote': (u = this.parse(p.tokens)), (x += this.renderer.blockquote(u)); continue; case 'list': for ( d = p.ordered, f = p.start, h = p.loose, i = p.items.length, u = '', r = 0; r < i; r++ ) (g = p.items[r]), (y = g.checked), (v = g.task), (m = ''), g.task && ((b = this.renderer.checkbox(y)), h ? g.tokens.length > 0 && 'paragraph' === g.tokens[0].type ? ((g.tokens[0].text = b + ' ' + g.tokens[0].text), g.tokens[0].tokens && g.tokens[0].tokens.length > 0 && 'text' === g.tokens[0].tokens[0].type && (g.tokens[0].tokens[0].text = b + ' ' + g.tokens[0].tokens[0].text)) : g.tokens.unshift({ type: 'text', text: b }) : (m += b)), (m += this.parse(g.tokens, h)), (u += this.renderer.listitem(m, v, y)); x += this.renderer.list(u, d, f); continue; case 'html': x += this.renderer.html(p.text); continue; case 'paragraph': x += this.renderer.paragraph(this.parseInline(p.tokens)); continue; case 'text': for ( u = p.tokens ? this.parseInline(p.tokens) : p.text; n + 1 < k && 'text' === e[n + 1].type; ) (p = e[++n]), (u += '\\n' + (p.tokens ? this.parseInline(p.tokens) : p.text)); x += t ? this.renderer.paragraph(u) : u; continue; default: { const e = 'Token with "' + p.type + '" type was not found.'; if (this.options.silent) return void console.error(e); throw new Error(e); } } return x; } parseInline(e, t) { t = t || this.renderer; let n, r, o, i = ''; const a = e.length; for (n = 0; n < a; n++) if ( ((r = e[n]), this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[r.type] && ((o = this.options.extensions.renderers[r.type].call( { parser: this }, r )), !1 !== o || ![ 'escape', 'html', 'link', 'image', 'strong', 'em', 'codespan', 'br', 'del', 'text' ].includes(r.type))) ) i += o || ''; else switch (r.type) { case 'escape': case 'text': i += t.text(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; default: { const e = 'Token with "' + r.type + '" type was not found.'; if (this.options.silent) return void console.error(e); throw new Error(e); } } return i; } } function wl(e, t, n) { if (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 ( ('function' == typeof t && ((n = t), (t = null)), sl((t = ol({}, wl.defaults, t || {}))), n) ) { const r = t.highlight; let o; try { o = ml.lex(e, t); } catch (e) { return n(e); } const i = function (e) { let i; if (!e) try { t.walkTokens && wl.walkTokens(o, t.walkTokens), (i = bl.parse(o, t)); } catch (t) { e = t; } return (t.highlight = r), e ? n(e) : n(null, i); }; if (!r || r.length < 3) return i(); if ((delete t.highlight, !o.length)) return i(); let a = 0; return ( wl.walkTokens(o, function (e) { 'code' === e.type && (a++, setTimeout(() => { r(e.text, e.lang, function (t, n) { if (t) return i(t); null != n && n !== e.text && ((e.text = n), (e.escaped = !0)), a--, 0 === a && i(); }); }, 0)); }), void (0 === a && i()) ); } try { const n = ml.lex(e, t); return ( t.walkTokens && wl.walkTokens(n, t.walkTokens), bl.parse(n, t) ); } catch (e) { if ( ((e.message += '\\nPlease report this to https://github.com/markedjs/marked.'), t.silent) ) return ( '

    An error occurred:

    ' +
                    Ws(e.message + '', !0) +
                    '
    ' ); throw e; } } (wl.options = wl.setOptions = function (e) { var t; return ol(wl.defaults, e), (t = wl.defaults), (Ms = t), wl; }), (wl.getDefaults = function () { return { baseUrl: null, breaks: !1, extensions: null, 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, walkTokens: null, xhtml: !1 }; }), (wl.defaults = Ms), (wl.use = function (...e) { const t = ol({}, ...e), n = wl.defaults.extensions || { renderers: {}, childTokens: {} }; let r; e.forEach(e => { if ( (e.extensions && ((r = !0), e.extensions.forEach(e => { if (!e.name) throw new Error('extension name required'); if (e.renderer) { const t = n.renderers ? n.renderers[e.name] : null; n.renderers[e.name] = t ? function (...n) { let r = e.renderer.apply(this, n); return !1 === r && (r = t.apply(this, n)), r; } : e.renderer; } if (e.tokenizer) { if ( !e.level || ('block' !== e.level && 'inline' !== e.level) ) throw new Error( "extension level must be 'block' or 'inline'" ); n[e.level] ? n[e.level].unshift(e.tokenizer) : (n[e.level] = [e.tokenizer]), e.start && ('block' === e.level ? n.startBlock ? n.startBlock.push(e.start) : (n.startBlock = [e.start]) : 'inline' === e.level && (n.startInline ? n.startInline.push(e.start) : (n.startInline = [e.start]))); } e.childTokens && (n.childTokens[e.name] = e.childTokens); })), e.renderer) ) { const n = wl.defaults.renderer || new gl(); for (const t in e.renderer) { const r = n[t]; n[t] = (...o) => { let i = e.renderer[t].apply(n, o); return !1 === i && (i = r.apply(n, o)), i; }; } t.renderer = n; } if (e.tokenizer) { const n = wl.defaults.tokenizer || new ul(); for (const t in e.tokenizer) { const r = n[t]; n[t] = (...o) => { let i = e.tokenizer[t].apply(n, o); return !1 === i && (i = r.apply(n, o)), i; }; } t.tokenizer = n; } if (e.walkTokens) { const n = wl.defaults.walkTokens; t.walkTokens = function (t) { e.walkTokens.call(this, t), n && n.call(this, t); }; } r && (t.extensions = n), wl.setOptions(t); }); }), (wl.walkTokens = function (e, t) { for (const n of e) switch ((t.call(wl, n), n.type)) { case 'table': for (const e of n.header) wl.walkTokens(e.tokens, t); for (const e of n.rows) for (const n of e) wl.walkTokens(n.tokens, t); break; case 'list': wl.walkTokens(n.items, t); break; default: wl.defaults.extensions && wl.defaults.extensions.childTokens && wl.defaults.extensions.childTokens[n.type] ? wl.defaults.extensions.childTokens[n.type].forEach( function (e) { wl.walkTokens(n[e], t); } ) : n.tokens && wl.walkTokens(n.tokens, t); } }), (wl.parseInline = function (e, t) { if (null == e) throw new Error( 'marked.parseInline(): input parameter is undefined or null' ); if ('string' != typeof e) throw new Error( 'marked.parseInline(): input parameter is of type ' + Object.prototype.toString.call(e) + ', string expected' ); sl((t = ol({}, wl.defaults, t || {}))); try { const n = ml.lexInline(e, t); return ( t.walkTokens && wl.walkTokens(n, t.walkTokens), bl.parseInline(n, t) ); } catch (e) { if ( ((e.message += '\\nPlease report this to https://github.com/markedjs/marked.'), t.silent) ) return ( '

    An error occurred:

    ' +
                      Ws(e.message + '', !0) +
                      '
    ' ); throw e; } }), (wl.Parser = bl), (wl.parser = bl.parse), (wl.Renderer = gl), (wl.TextRenderer = yl), (wl.Lexer = ml), (wl.lexer = ml.lex), (wl.Tokenizer = ul), (wl.Slugger = vl), (wl.parse = wl), wl.options, wl.setOptions, wl.use, wl.walkTokens, wl.parseInline, bl.parse, ml.lex; var xl = Object.defineProperty, kl = Object.defineProperties, _l = Object.getOwnPropertyDescriptors, Ol = Object.getOwnPropertySymbols, Sl = Object.prototype.hasOwnProperty, El = Object.prototype.propertyIsEnumerable, Pl = (e, t, n) => t in e ? xl(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : (e[t] = n), Al = (e, t) => { for (var n in t || (t = {})) Sl.call(t, n) && Pl(e, n, t[n]); if (Ol) for (var n of Ol(t)) El.call(t, n) && Pl(e, n, t[n]); return e; }, $l = (e, t) => kl(e, _l(t)); const Cl = new wl.Renderer(); wl.setOptions({ renderer: Cl, highlight: (e, t) => vs(e, t) }); const Rl = '(?:^ {0,3}\\x3c!-- ReDoc-Inject:\\\\s+?<({component}).*?/?>\\\\s+?--\\x3e\\\\s*$|(?:^ {0,3}<({component})([\\\\s\\\\S]*?)>([\\\\s\\\\S]*?)|^ {0,3}<({component})([\\\\s\\\\S]*?)(?:/>|\\\\n{2,})))'; class jl { constructor(e, t) { (this.options = e), (this.parentId = t), (this.headings = []), (this.headingRule = (e, t, n, r) => ( 1 === t ? (this.currentTopHeading = this.saveHeading(e, t)) : 2 === t && this.saveHeading( e, t, this.currentTopHeading && this.currentTopHeading.items, this.currentTopHeading && this.currentTopHeading.id ), this.originalHeadingRule(e, t, n, r) )), (this.parentId = t), (this.parser = new wl.Parser()), (this.headingEnhanceRenderer = new wl.Renderer()), (this.originalHeadingRule = this.headingEnhanceRenderer.heading.bind( this.headingEnhanceRenderer )), (this.headingEnhanceRenderer.heading = this.headingRule); } static containsComponent(e, t) { return new RegExp(Rl.replace(/{component}/g, t), 'gmi').test(e); } static getTextBeforeHading(e, t) { const n = e.search(new RegExp(\`^##?\\\\s+\${t}\`, 'm')); return n > -1 ? e.substring(0, n) : e; } saveHeading(e, t, n = this.headings, r) { e = e .replace(/&#(\\d+);/g, (e, t) => String.fromCharCode(parseInt(t, 10)) ) .replace(/&/g, '&') .replace(/"/g, '"'); const o = { id: r ? \`\${r}/\${no(e)}\` : \`\${this.parentId || 'section'}/\${no(e)}\`, name: e, level: t, items: [] }; return n.push(o), o; } flattenHeadings(e) { if (void 0 === e) return []; const t = []; for (const n of e) t.push(n), t.push(...this.flattenHeadings(n.items)); return t; } attachHeadingsDescriptions(e) { const t = e => new RegExp( \`##?\\\\s+\${e.name.replace( /[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&' )}s*(\\n|\\r\\n|$|s*)\` ), n = this.flattenHeadings(this.headings); if (n.length < 1) return; let r = n[0], o = t(r), i = e.search(o); for (let a = 1; a < n.length; a++) { const s = n[a], l = t(s), c = e.substr(i + 1).search(l) + i + 1; (r.description = e.substring(i, c).replace(o, '').trim()), (r = s), (o = l), (i = c); } r.description = e.substring(i).replace(o, '').trim(); } renderMd(e, t = !1) { const n = t ? { renderer: this.headingEnhanceRenderer } : void 0; return wl(e.toString(), n); } extractHeadings(e) { this.renderMd(e, !0), this.attachHeadingsDescriptions(e); const t = this.headings; return (this.headings = []), t; } renderMdWithComponents(e) { const t = this.options && this.options.allowedMdComponents; if (!t || 0 === Object.keys(t).length) return [this.renderMd(e)]; const n = Object.keys(t).join('|'), r = new RegExp(Rl.replace(/{component}/g, n), 'mig'), o = [], i = []; let a = r.exec(e), s = 0; for (; a; ) { o.push(e.substring(s, a.index)), (s = r.lastIndex); const n = t[a[1] || a[2] || a[5]], l = a[3] || a[6], c = a[4]; n && i.push({ component: n.component, propsSelector: n.propsSelector, props: $l(Al(Al({}, Tl(l)), n.props), { children: c }) }), (a = r.exec(e)); } o.push(e.substring(s)); const l = []; for (let e = 0; e < o.length; e++) { const t = o[e]; t && l.push(this.renderMd(t)), i[e] && l.push(i[e]); } return l; } } function Tl(e) { if (!e) return {}; const t = /([\\w-]+)\\s*=\\s*(?:{([^}]+?)}|"([^"]+?)")/gim, n = {}; let r; for (; null !== (r = t.exec(e)); ) if (r[3]) n[r[1]] = r[3]; else if (r[2]) { let e; try { e = JSON.parse(r[2]); } catch (e) {} n[r[1]] = e; } return n; } class Il { constructor(e, t = new xo({})) { (this.parser = e), (this.options = t), Object.assign(this, e.spec.info), (this.description = e.spec.info.description || ''), (this.summary = e.spec.info.summary || ''); const n = this.description.search(/^\\s*##?\\s+/m); n > -1 && (this.description = this.description.substring(0, n)), (this.downloadLink = this.getDownloadLink()), (this.downloadFileName = this.getDownloadFileName()); } getDownloadLink() { if (this.options.downloadDefinitionUrl) return this.options.downloadDefinitionUrl; if (this.parser.specUrl) return this.parser.specUrl; if (qr && window.Blob && window.URL && window.URL.createObjectURL) { const e = new Blob([JSON.stringify(this.parser.spec, null, 2)], { type: 'application/json' }); return window.URL.createObjectURL(e); } } getDownloadFileName() { return this.parser.specUrl || this.options.downloadDefinitionUrl ? this.options.downloadFileName : this.options.downloadFileName || 'openapi.json'; } } var Nl = Object.defineProperty, Dl = Object.defineProperties, Ll = Object.getOwnPropertyDescriptors, Ml = Object.getOwnPropertySymbols, Fl = Object.prototype.hasOwnProperty, zl = Object.prototype.propertyIsEnumerable, Ul = (e, t, n) => t in e ? Nl(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : (e[t] = n); class Vl { constructor(e, t) { const n = (t.spec.components && t.spec.components.securitySchemes) || {}; this.schemes = Object.keys(e || {}) .map(r => { const { resolved: o } = t.deref(n[r]), i = e[r] || []; if (!o) return void console.warn( \`Non existing security scheme referenced: \${r}. Skipping\` ); const a = o['x-displayName'] || r; return ((e, t) => Dl(e, Ll(t)))( ((e, t) => { for (var n in t || (t = {})) Fl.call(t, n) && Ul(e, n, t[n]); if (Ml) for (var n of Ml(t)) zl.call(t, n) && Ul(e, n, t[n]); return e; })({}, o), { id: r, sectionId: r, displayName: a, scopes: i } ); }) .filter(e => void 0 !== e); } } var Bl = Object.defineProperty, ql = Object.defineProperties, Wl = Object.getOwnPropertyDescriptor, Hl = Object.getOwnPropertyDescriptors, Yl = Object.getOwnPropertySymbols, Kl = Object.prototype.hasOwnProperty, Gl = Object.prototype.propertyIsEnumerable, Ql = (e, t, n) => t in e ? Bl(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : (e[t] = n), Xl = (e, t) => { for (var n in t || (t = {})) Kl.call(t, n) && Ql(e, n, t[n]); if (Yl) for (var n of Yl(t)) Gl.call(t, n) && Ql(e, n, t[n]); return e; }, Jl = (e, t) => ql(e, Hl(t)), Zl = (e, t, n, r) => { for ( var o, i = r > 1 ? void 0 : r ? Wl(t, n) : t, a = e.length - 1; a >= 0; a-- ) (o = e[a]) && (i = (r ? o(t, n, i) : o(i)) || i); return r && i && Bl(t, n, i), i; }; class ec { constructor(e, t, n, r, o) { (this.expanded = !1), (this.operations = []), tn(this), (this.name = t); const { resolved: i } = e.deref(n); for (const n of Object.keys(i)) { const a = i[n], s = Object.keys(a).filter(Xa); for (const i of s) { const s = a[i], l = new _u( e, Jl(Xl({}, s), { pathName: n, pointer: Da.compile([r, t, n, i]), httpVerb: i, pathParameters: a.parameters || [], pathServers: a.servers }), void 0, o, !0 ); this.operations.push(l); } } } toggle() { this.expanded = !this.expanded; } } Zl([Ae], ec.prototype, 'expanded', 2), Zl([Pt], ec.prototype, 'toggle', 1); var tc = Object.defineProperty, nc = Object.defineProperties, rc = Object.getOwnPropertyDescriptors, oc = Object.getOwnPropertySymbols, ic = Object.prototype.hasOwnProperty, ac = Object.prototype.propertyIsEnumerable, sc = (e, t, n) => t in e ? tc(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : (e[t] = n), lc = (e, t) => { for (var n in t || (t = {})) ic.call(t, n) && sc(e, n, t[n]); if (oc) for (var n of oc(t)) ac.call(t, n) && sc(e, n, t[n]); return e; }, cc = (e, t) => nc(e, rc(t)), uc = (e, t