1import{v as N,p as S,x as C,D as x,_ as c,z as i,a3 as r,m as D,X as P,a6 as F,a9 as b,a7 as H,j as u,C as a}from"./BmlNhaUW.js";const V=async()=>((await $fetch("https://winkel.forumvoordemocratie.nl/products.json?limit=50",{timeout:2500}).catch(()=>({products:[]}))).products??[]).filter(t=>t.images?.length).map(t=>({title:t.title,handle:t.handle,price:t.variants?.[0]?.price??null,product_type:t.product_type??"",image:t.images?.[0]?.src??null,url:`https://winkel.forumvoordemocratie.nl/products/${t.handle}`})),W={key:0,class:"bg-[#f7f5f1] py-10 md:py-14"},A={class:"container mx-auto max-w-6xl px-6"},E={class:"grid grid-cols-3 gap-3 sm:grid-cols-6"},$=["href"],L={class:"overflow-hidden bg-gray-50"},R=["src","alt"],X={class:"p-2"},z={class:"line-clamp-2 text-[11px] font-bold leading-snug text-cc-text group-hover:text-cc-fvd-red"},I=N({__name:"WebshopSection",props:{products:{default:()=>[]}},setup(h){const t=h,k=e=>{const o=e.trim().split(/\s+/),s=o[o.length-1];return s.length>=5&&(/^\d+$/.test(s)||s===s.toUpperCase())?o.slice(0,-1).join(" "):e},p=["niemand-in-de-cockpit","dissident-editie-5","fvd-pet","de-gideonsbende"],m=u([]),n=a(()=>Array.isArray(t.products)&&t.products.length?t.products:m.value),w=a(()=>new Map(n.value.map(e=>[e.handle,e]))),y=a(()=>p.map(e=>w.value.get(e)).filter(Boolean)),d=a(()=>n.value.filter(e=>!p.includes(e.handle))),v=e=>e.product_type==="Boeken",B=a(()=>d.value.filter(v)),j=a(()=>d.value.filter(e=>!v(e))),f=(e,o)=>[...e].sort(()=>Math.random()-.5).slice(0,o),M=()=>{const e=f(B.value,1),o=f(j.value,2-e.length);return[...e,...o]},l=u([]),g=u(!1),_=()=>{if(!n.value.length){l.value=[];return}const e=g.value?M():d.value.slice(0,2);l.value=[...y.value,...e]};return S(n,_,{immediate:!0}),C(async()=>{g.value=!0,n.value.length||(m.value=await V()),_()}),(e,o)=>x(l)?.length?(c(),i("section",W,[r("div",A,[o[0]||(o[0]=D('<div class="mb-6 flex items-end justify-between"><div><h2 class="text-2xl font-black leading-tight text-cc-text md:text-3xl"> Haal FVD in huis met boeken en merchandise </h2></div><a href="https://winkel.forumvoordemocratie.nl" target="_blank" rel="noopener" class="hidden items-center justify-between gap-8 border border-gray-200 bg-white px-4 py-2.5 text-sm font-semibold text-cc-fvd-red transition-colors hover:border-cc-fvd-red md:flex"> Naar de winkel <svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a></div>',1)),r("div",E,[(c(!0),i(P,null,F(x(l),s=>(c(),i("a",{key:s.handle,href:s.url,target:"_blank",rel:"noopener",class:"group overflow-hidden bg-white opacity-80 shadow-sm transition-all duration-200 hover:opacity-100 hover:shadow-md active:scale-[0.98]"},[r("div",L,[s.image?(c(),i("img",{key:0,src:s.image,alt:s.title,class:"aspect-[3/4] w-full object-contain transition-transform duration-300 group-hover:scale-105"},null,8,R)):b("",!0)]),r("div",X,[r("h3",z,H(k(s.title)),1)])],8,$))),128))])])])):b("",!0)}}),T=Object.assign(I,{__name:"HomeWebshopSection"});export{T 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.