/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/clue-parser@1.0.4/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
import{marked}from"https://npm.elemecdn.com/marked/lib/marked.esm.js";import mermaid from"https://npm.elemecdn.com/mermaid@10/dist/mermaid.esm.min.mjs";import hljs from"https://npm.elemecdn.com/@highlightjs/cdn-assets@11.6.0/es/highlight.min.js";import katex from"katex";import replaceAsync from"string-replace-async";export const clueParerAll=async(e,r="")=>{let a=e;return a=await clueParser(a),a=await latexParse2(a),a=await latexParse(a),a=markedParse(a),hljs.highlightAll(),a};export function latexParse2(e,r=!0){return e=e.replace(/\n/g,"<!br"),new Promise((a=>{let t=/\$\$.*?\$\$/g,n=/(?<=(\$\$))(.+?)(?=(\$\$))/g;a(e?e=(e=e.replace(t,(e=>{if(!e.match(n))return"";if(e=(e=e.match(n)[0]).replace(/\<\!br/g,"")){var a=katex.renderToString(e,{throwOnError:!1,strict:!1});return r&&(a=`<center>${a}</center>`),a}return""}))).replace(/\<\!br/g,"\n"):e)}))}function latexParse(e){return new Promise((r=>{let a=/\$.*?\$/g,t=/(?<=\$)(.+?)(?=\$)/g,n=new Array,s=e,c=e.match(a),m="";if(c)try{c.forEach(((e,r)=>{e=e.match(t),n[r]=e?katex.renderToString(e[0],{throwOnError:!1,strict:!1}):"<span style='color:#cc0000;'>ERR_NULL</span>"})),e=(e=e.replace(a,"<!temp?.!>")).split("<!temp?.!>"),n=[...n,""];for(let a=0;a<=e.length-1;a++)m+=e[a]+n[a],a==e.length-1&&r(m)}catch(e){return console.log(e),5}else r(s)}))}function clueParser(e){function r(e){return e.split("").reverse().join("")}return new Promise((async a=>{e=e.replace(/\n/g,">br");const t=/".*?"\..*?\s/g,n=/".*?"/g,s=/\..*?\s/g,c=/\s.*?\./g,m=/(?<=").*(?=")/g;if(e){e=await replaceAsync(e,t,(async function(e,a){var t,i,l="f";e.match(n)&&(t=e.match(m)[0]);e.match(s)&&(e=r(e),i=(i=r(i=e.match(c)[0])).replace(/(\s)|(\.)/g,""));if(t=t.replace(/\>br/g,"\n"),"mermaid"==i)try{l=`${await mermaidParse2(t,a)}`}catch(e){l=`<div class='RED P5'> MERMAID ERROR! </div>  <pre><code class="language-js hljs language-javascript"><span class="hljs-number">${e}</span></code></pre>`}else l=`<div class="${i}">${markedParse(t)}</div>`;return l}))}a(e=e.replace(/\>br/g,"\n"))}))}function markedParse(e){return marked.parse(e)}async function mermaidParse2(e,r){if(await mermaid.parse(e)){const{svg:a}=await mermaid.mermaidAPI.render("seq_"+r,e);return a}return"err"}
//# sourceMappingURL=/sm/31d44a88b2b030fe5493661e880bc630d604fcf3df3d0ee6f473a1b58bd97aad.map