1import{D as e,E as t,On as n,Qn as r,_ as i,b as a,bt as o,g as s,k as c,mt as l,nr as u,o as d,qt as f,v as p,vn as m,xt as h,y as g}from"./Ib1jYPSS.js";import{h as _,t as v}from"./C8wwFvML.js";import{t as y}from"./BvjwuZ3D.js";import{n as b,t as x}from"./DThlDayO.js";import{t as S}from"./CWibC7jz.js";import{t as C}from"./C6Hqxrry.js";import{t as w}from"./ImV8kdVT.js";import{t as T}from"./DP4Mn6R4.js";import{n as E}from"./BMUlmVaF.js";import{t as D}from"./BV6Kcg3c.js";var O={class:`flex gap-0.5 pb-2`},k={class:`flex items-center gap-3 pt-2`},A={class:`font-medium text-sm`},j={class:`text-xs text-muted`},M=Object.assign(c({__name:`Card`,props:{testimonial:{}},setup(r){let c=r,m=s(()=>typeof c.testimonial.author==`string`?{name:c.testimonial.author,thumbnail:void 0}:c.testimonial.author),h=s(()=>{let e=m.value?.thumbnail;if(e)return e.includes(`=s`)?e.replace(/=s\d+/,`=s56`):e});return(s,c)=>{let g=T,_=C,v=D;return l(),p(v,{variant:`subtle`,ui:{root:`rounded-none`,description:`before:content-[open-quote] after:content-[close-quote]`}},{header:f(()=>[i(`div`,O,[(l(),a(d,null,o(5,t=>e(g,{key:t,name:t<=r.testimonial.rating?`i-carbon-star-filled`:`i-carbon-star`,class:`text-yellow-400`,size:18},null,8,[`name`])),64))])]),description:f(()=>[t(u(r.testimonial.content),1)]),footer:f(()=>[i(`div`,k,[i(`div`,null,[n(m).thumbnail?(l(),p(_,{key:0,src:n(h)||n(m).thumbnail,alt:n(m).name,size:`sm`},null,8,[`src`,`alt`])):(l(),p(_,{key:1,alt:n(m).name,size:`sm`},null,8,[`alt`]))]),i(`div`,null,[i(`div`,A,u(n(m).name),1),i(`div`,j,u(Intl.DateTimeFormat(`de-DE`,{day:`2-digit`,month:`2-digit`,year:`numeric`}).format(new Date(r.testimonial.date))),1)])])]),_:1})}}}),{__name:`TestimonialCard`}),N={base:`relative column-1 md:columns-2 lg:columns-3 gap-8 space-y-8 *:break-inside-avoid-column *:will-change-transform`},P={__name:`UPageColumns`,props:{as:{type:null,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},setup(e){let t=b(`pageColumns`,e),i=y(),a=s(()=>x({extend:N,...i.ui?.pageColumns||{}}));return(e,i)=>(l(),p(n(S),{as:n(t).as,class:r(a.value({class:[n(t).ui?.base,n(t).class]}))},{default:f(()=>[h(e.$slots,`default`)]),_:3},8,[`as`,`class`]))}},F={key:0,class:`flex justify-center mt-8`},I=10,L=Object.assign(c({__name:`Testimonials`,setup(t){let{preferredLocation:r,getLocationBySlug:i}=v(),c=m(I),u=s(()=>i(r).value?.id||null),{data:h,status:y}=_(()=>E({locationId:u.value,limit:c.value})),b=s(()=>h.value?.items||[]),x=s(()=>h.value?.total||0),S=s(()=>b.value.length<x.value),C=s(()=>y.value===`pending`),T=()=>{c.value+=I};return(t,r)=>{let i=M,s=P,c=w;return l(),a(`div`,null,[e(s,{class:`xl:columns-4 lg:columns-3 md:columns-2 columns-1`},{default:f(()=>[(l(!0),a(d,null,o(n(b),e=>(l(),p(i,{key:e.id,testimonial:e,class:`break-inside-avoid mb-4`},null,8,[`testimonial`]))),128))]),_:1}),n(S)?(l(),a(`div`,F,[e(c,{label:`Mehr laden`,loading:n(C),block:``,size:`xl`,onClick:T},null,8,[`loading`])])):g(``,!0)])}}}),{__name:`SectionTestimonials`});export{L as t};
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.