1import{d as u,f as m,h as d,v as f,o as h,n as _}from"./CWXzWxAq.js";const g=["innerHTML"],$=u({__name:"Prose",props:{markdown:{},class:{default:""}},setup(a){const i=a;function c(n){return n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function o(n){return c(n).replace(/\*\*([^*]+)\*\*/g,"<strong>$1</strong>").replace(/\[([^\]]+)\]\(([^)]+)\)/g,'<a href="$2" class="text-brand hover:underline">$1</a>')}const p=_(()=>{const n=i.markdown.split(` 2`),r=[];let e=null;const t=()=>{if(!e)return;const l=e.items.map(s=>`<li>${o(s)}</li>`).join("");r.push(e.ordered?`<ol>${l}</ol>`:`<ul>${l}</ul>`),e=null};for(const l of n){const s=l.trimEnd();if(!s.trim()){t();continue}s.startsWith("### ")?(t(),r.push(`<h3>${o(s.slice(4))}</h3>`)):s.startsWith("## ")?(t(),r.push(`<h2>${o(s.slice(3))}</h2>`)):/^\d+\.\s/.test(s)?((!e||!e.ordered)&&(t(),e={ordered:!0,items:[]}),e.items.push(s.replace(/^\d+\.\s/,""))):s.startsWith("- ")?((!e||e.ordered)&&(t(),e={ordered:!1,items:[]}),e.items.push(s.slice(2))):(t(),r.push(`<p>${o(s)}</p>`))}return t(),r.join("")});return(n,r)=>(h(),m("div",{class:f(["prose-content",i.class]),innerHTML:d(p)},null,10,g))}}),x=Object.assign($,{__name:"Prose"});export{x as _};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.