1import{_ as p}from"./BfNQs6Go.js";import{d as x,b as _,e as h,s as f,f as c,g as w,i as e,t as a,h as n,C as b,D as g,E as v,F as y,r as k,p as C,o as i,j as L,k as F,n as R,_ as N}from"./CWXzWxAq.js";import{u as B,b as E}from"./V6PXsQGD.js";import{l as D,g as O,R as S}from"./BytFK68H.js";import"./kYHgEpaL.js";import"./DQSuM1Xs.js";const T={class:"mx-auto max-w-6xl px-4 py-8"},V={class:"mb-8 max-w-2xl"},$={class:"mt-3 text-muted"},j={class:"mb-6 block max-w-md"},H={class:"mb-4 text-xs text-muted"},M={class:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3"},U=["src","alt"],q={class:"p-4"},z={class:"flex items-start justify-between gap-3"},I={class:"text-lg font-bold group-hover:text-brand"},J={class:"shrink-0 rounded-full bg-surface-2 px-2 py-0.5 text-xs font-bold"},W={class:"mt-1 text-xs font-medium text-brand"},A={class:"mt-2 line-clamp-3 text-sm text-muted"},ee=x({__name:"index",setup(G){const r=C(""),d=D().map(o=>O(o.slug)),l=R(()=>{const o=r.value.trim().toLowerCase();return o?d.filter(t=>t.name.toLowerCase().includes(o)||t.slug.includes(o)||t.verdictLabel.toLowerCase().includes(o)):d});return _({title:"OnlyFans Creator Reviews â Editorial Takes, Not Directory Listings",description:"Standalone editorial reviews of well-known OnlyFans creators: verdict, pricing shape, who should subscribe, and who should skip. Cartoon portraits, no hosted content."}),h({link:[{rel:"canonical",href:`${f.url}/reviews`}]}),B(E([{name:"Home",url:"/"},{name:"Reviews",url:"/reviews"}])),(o,t)=>{const m=p,u=N;return i(),c("div",T,[w(m,{items:[{name:"Home",href:"/"},{name:"Reviews"}]}),e("header",V,[t[1]||(t[1]=e("p",{class:"text-xs font-semibold uppercase tracking-wide text-brand"},"Field notes",-1)),t[2]||(t[2]=e("h1",{class:"mt-2 text-3xl font-extrabold sm:text-4xl"},"Creator reviews",-1)),e("p",$,a(n(S))+" standalone editorial reviews â written takes on well-known OnlyFans names. This is not the creator directory. No hosted content, no profile clone: a verdict, a cartoon portrait, and a note on who the page is actually for. ",1)]),e("label",j,[t[3]||(t[3]=e("span",{class:"sr-only"},"Filter reviews",-1)),b(e("input",{"onUpdate:modelValue":t[0]||(t[0]=s=>v(r)?r.value=s:null),type:"search",placeholder:"Filter by nameâ¦",class:"w-full rounded-xl border bg-surface px-4 py-2.5 text-sm outline-none ring-brand/40 focus:ring-2"},null,512),[[g,n(r)]])]),e("p",H,a(n(l).length)+" review"+a(n(l).length===1?"":"s"),1),e("div",M,[(i(!0),c(y,null,k(n(l),s=>(i(),L(u,{key:s.slug,to:`/reviews/${s.slug}`,class:"group overflow-hidden rounded-2xl border bg-surface transition hover:border-brand/60"},{default:F(()=>[e("img",{src:s.portraitSrc,alt:`${s.name} cartoon portrait`,width:"400",height:"480",loading:"lazy",class:"aspect-[5/6] w-full object-cover"},null,8,U),e("div",q,[e("div",z,[e("h2",I,a(s.name),1),e("span",J,a(s.score.toFixed(1)),1)]),e("p",W,a(s.verdictLabel),1),e("p",A,a(s.excerpt),1)])]),_:2},1032,["to"]))),128))])])}}});export{ee as default};
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.