const m={"&":"&","<":"<",">":">",'"':""","'":"'"};function h(o){return o.replace(/[&<>"']/g,t=>m[t])}function x(o){const t=o.trim().replace(/[\u0000-\u001f\u007f\s]+/g,"");return/^https?:\/\/[^/]/i.test(t)||/^mailto:[^\s]+$/i.test(t)||/^\/(?![/\\])/.test(t)||t.startsWith("#")?t:null}function f(o){const t=[],r=i=>i.replace(/\u0000(\d+)\u0000/g,(s,l)=>t[Number(l)]??""),e=i=>`\0${t.push(r(i))-1}\0`;let c=o.replace(/\u0000/g,"");return c=c.replace(/`([^`\n]+)`/g,(i,s)=>e(`${h(s)}`)),c=c.replace(/\[([^\]\n]+)\]\(([^()\s]*(?:\([^()\s]*\)[^()\s]*)*)\)/g,(i,s,l)=>{if(l.includes("\0"))return i;const u=x(l),a=d(h(s));if(!u)return e(a);const p=/^https?:/i.test(u)?' target="_blank" rel="noopener noreferrer nofollow"':"";return e(`${a}`)}),c=d(h(c)),r(c)}function d(o){return o.replace(/\*\*([^*\n]+)\*\*/g,"$1").replace(/(^|[\s(])\*([^*\n]+)\*(?=$|[\s).,;:!?])/g,"$1$2").replace(/(^|[\s(])_([^_\n]+)_(?=$|[\s).,;:!?])/g,"$1$2")}function w(o){if(!o)return"";const t=o.replace(/\r\n?/g,` `).split(` `),r=[];let e=0;const c=s=>s.trim()==="",i=s=>/^(#{1,6})\s/.test(s)||/^```/.test(s)||/^>\s?/.test(s)||/^\s*([-*+]|\d+[.)])\s+/.test(s)||/^(-{3,}|\*{3,}|_{3,})\s*$/.test(s);for(;e${h(n.join(` `))}`);continue}const l=/^(#{1,6})\s+(.*?)\s*#*\s*$/.exec(s);if(l){const n=Math.min(l[1].length+1,6);r.push(`${f(l[2])}`),e++;continue}if(/^(-{3,}|\*{3,}|_{3,})\s*$/.test(s)){r.push("
"),e++;continue}if(/^>\s?/.test(s)){const n=[];for(;e\s?/.test(t[e]);)n.push(t[e++].replace(/^>\s?/,""));r.push(`
${w(n.join(` `))}
`);continue}const u=/^\s*([-*+]|\d+[.)])\s+(.*)$/.exec(s);if(u){const n=/\d/.test(u[1]),p=[];for(;e${f(g)}`)}r.push(n?`
    ${p.join("")}
`:`
    ${p.join("")}
`);continue}const a=[s];for(e++;e${a.map(n=>f(n.trim())).join(" ")}

`)}return r.join(` `)}export{h as e,d as f,w as r,x as s};