PageSourceSearch

https://www.lindnerhof.info/_nuxt/DxwdUqA12.js

js lindnerhof.info collected 2026-09-25 02:37:51 UTC 26,865 bytes, 1 lines download raw bytes

1import{n as e,y as t}from"./DSHKT-ff.js";import{A as a,D as l,h as s,k as r,r as i}from"./C-22kGpz.js";import{D as n,E as o,Ht as c,Kt as d,On as u,Ut as g,Yt as m,_ as v,b,bt as p,ct as x,g as f,k as h,mt as y,o as w,qt as k,tr as D,un as j,v as P,vn as S,y as O}from"./DhwZPgxP.js";import{t as T}from"./CM6jjudo.js";import{n as N}from"./DLjSuK7d.js";import{i as C}from"./Cgd3h9fK.js";import{t as $}from"./LTqPSYpM.js";import{t as _}from"./BLbCeiSS.js";import{n as I}from"./DD2sQn0c.js";import{t as A}from"./D7BF7DqM.js";import{t as E}from"./Cu-kAIqy2.js";import{t as U}from"./BUe38aAx2.js";import{t as z}from"./DHBXLvX52.js";var R={key:0,class:"relative bg-emerald-50 border border-emerald-200 rounded-lg p-4"},M={key:0,class:"flex items-center gap-2 mb-3"},q={class:"text-sm font-medium text-emerald-800"},B={key:1,class:"flex items-center gap-2 mb-3"},L={class:"text-sm font-medium text-emerald-800"},H={key:2,class:"flex items-center gap-2 mb-3"},V={class:"text-sm font-medium text-emerald-800"},W={class:"grid grid-cols-1 gap-2"},G={class:"text-xs text-gray-500 mb-1 block"},F=["min","max"],K={class:"text-xs text-gray-500 mb-1 block"},Q=["min","max"],Y={class:"grid grid-cols-2 gap-2"},J=h({__name:"ExtendStayPicker",props:{extendOptions:{},originalStartDate:{},originalEndDate:{},originalPricePerNight:{},transferStartDate:{},transferEndDate:{},transferPricing:{},advertisedSavingsPercent:{}},emits:["update-transfer-dates"],setup(a,{emit:l}){const s=a,r=l,{t:i}=e(),o=S(s.transferStartDate),d=S(s.transferEndDate),g=f(()=>{const e=new Date(o.value),t=new Date(d.value);return Math.round((t.getTime()-e.getTime())/864e5)}),p=f(()=>!!s.extendOptions?.nextTier&&g.value>=s.extendOptions.nextTier.minNights),x=f(()=>{if(!s.extendOptions?.nextTier)return 0;const e=s.extendOptions.nextTier.minNights-g.value;return Math.max(0,e)}),h=f(()=>{if(!s.extendOptions?.currentPricing||!p.value)return s.extendOptions?.nextTier?.savingsPercent||0;const e=s.extendOptions.currentPricing.pricePerNight,t=s.transferPricing?.pricePerNight||s.extendOptions.nextTier?.pricePerNight||e;return e<=0?0:Math.round(100*(1-t/e))}),w=f(()=>!(!s.extendOptions?.nextTier||!p.value)&&h.value>s.advertisedSavingsPercent);return c(()=>s.transferStartDate,e=>{o.value=e}),c(()=>s.transferEndDate,e=>{d.value=e}),c(o,e=>{r("update-transfer-dates",e,d.value)}),c(d,e=>{r("update-transfer-dates",o.value,e)}),(e,l)=>{const s=C;return a.extendOptions?.canReachNextTier&&a.extendOptions.nextTier?(y(),b("div",R,[u(p)?u(w)?(y(),b("div",H,[l[6]||(l[6]=v("i",{class:"fas fa-stars text-amber-500 text-base"},null,-1)),v("span",V,D(u(i)("booking.extendStay.superSaved",{percent:u(h)})),1)])):(y(),b("div",B,[l[5]||(l[5]=v("i",{class:"fas fa-party-horn text-primary text-base"},null,-1)),v("span",L,D(u(i)("booking.extendStay.saved",{percent:u(h)})),1)])):(y(),b("div",M,[l[4]||(l[4]=v("i",{class:"fas fa-badge-percent text-primary text-base"},null,-1)),v("span",q,D(u(i)("booking.extendStay.savingsHint",{nights:u(x),percent:a.advertisedSavingsPercent},u(x))),1)])),n(s,null,{fallback:k(()=>[v("div",Y,[m(v("input",{"onUpdate:modelValue":l[2]||(l[2]=e=>j(o)?o.value=e:null),type:"date",class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm"},null,512),[[t,u(o)]]),m(v("input",{"onUpdate:modelValue":l[3]||(l[3]=e=>j(d)?d.value=e:null),type:"date",class:"w-full px-3 py-2 border border-gray-300 rounded-lg text-sm"},null,512),[[t,u(d)]])])]),default:k(()=>[v("div",W,[v("div",null,[v("label",G,D(u(i)("booking.checkIn")),1),m(v("input",{"onUpdate:modelValue":l[0]||(l[0]=e=>j(o)?o.value=e:null),type:"date",min:a.extendOptions.earliestStartDate,max:a.originalStartDate,class:"w-full px-2 py-1.5 border border-gray-300 rounded-lg bg-white text-gray-900 text-sm"},null,8,F),[[t,u(o)]])]),v("div",null,[v("label",K,D(u(i)("booking.checkOut")),1),m(v("input",{"onUpdate:modelValue":l[1]||(l[1]=e=>j(d)?d.value=e:null),type:"date",min:a.originalEndDate,max:a.extendOptions.latestEndDate,class:"w-full px-2 py-1.5 border border-gray-300 rounded-lg bg-white text-gray-900 text-sm"},null,8,Q),[[t,u(d)]])])])]),_:1})])):O("",!0)}}}),X=Object.assign(J,{__name:"BookingExtendStayPicker"}),Z={class:"aspect-4/3 relative bg-gray-100"},ee=["src","srcset","sizes","alt"],te={key:1,class:"w-full h-full flex items-center justify-center text-gray-400"},ae={key:2,class:"absolute top-3 left-3 bg-primary text-white text-xs px-2 py-1 rounded-full flex items-center gap-1"},le={class:"p-4 flex flex-col flex-1"},se={class:"flex items-center justify-between mb-1"},re={class:"font-heading font-bold text-lg text-gray-900"},ie={key:0,class:"text-gray-600 text-sm mb-3 line-clamp-2"},ne={class:"flex flex-wrap gap-2 mb-4"},oe={class:"inline-flex items-center text-xs text-gray-500"},ce={key:0,class:"inline-flex items-center text-xs text-gray-500"},de={key:1,class:"inline-flex items-center text-xs text-gray-500"},ue={key:2,class:"inline-flex items-center text-xs text-gray-500"},ge={key:0,class:"fas fa-house-chimney w-4 h-4 mr-1"},me={key:1,class:"fas fa-stairs w-4 h-4 mr-1"},ve={class:"border-t pt-4 mt-auto"},be={class:"flex items-end justify-between"},pe={class:"text-2xl font-bold text-primary"},xe={class:"text-sm text-gray-500"},fe={class:"text-right"},he={class:"text-sm text-gray-600"},ye={type:"button",class:"mt-4 w-full bg-primary text-white py-2.5 rounded-lg font-semibold hover:bg-primary-700 transition-colors"},we=h({__name:"SearchResultCard",props:{object:{},searchedDogs:{default:0},featured:{type:Boolean,default:!1},overridePricing:{default:null}},emits:["select"],setup(t){const a=t,{locale:l}=e(),{getResponsiveImage:s,getImageVariant:r,getImageSrcset:i}=U(),n=f(()=>a.object.images.find(e=>
1e.isPrimary)||a.object.images[0]||null),c=f(()=>a.overridePricing?a.overridePricing:a.object.pricing),d=f(()=>n.value?.url?a.featured?{src:r(n.value.url,"-lg"),srcset:i(n.value.url,[{variant:"-md",width:800},{variant:"-lg",width:1200},{variant:"",width:1920}]),sizes:"(max-width: 768px) 100vw, 600px"}:s(n.value.url,"card"):{src:"",srcset:"",sizes:""});function g(e){return new Intl.NumberFormat({de:"de-DE",nl:"nl-NL",en:"en-GB"}[l.value]||"de-DE",{style:"currency",currency:"EUR"}).format(e)}return(e,a)=>(y(),b("div",{class:"bg-white rounded-xl shadow-sm overflow-hidden hover:shadow-md transition-shadow cursor-pointer flex flex-col h-full",onClick:a[0]||(a[0]=a=>e.$emit("select",t.object.slug))},[v("div",Z,[u(d).src?(y(),b("img",{key:0,src:u(d).src,srcset:u(d).srcset,sizes:u(d).sizes,alt:u(n)?.caption||t.object.name,width:"800",height:"600",class:"w-full h-full object-cover",loading:"lazy"},null,8,ee)):(y(),b("div",te,[...a[1]||(a[1]=[v("i",{class:"fas fa-image text-4xl"},null,-1)])])),t.object.availability.dogsAllowed&&t.searchedDogs>0?(y(),b("div",ae,[a[2]||(a[2]=v("i",{class:"fas fa-dog w-3 h-3"},null,-1)),o(" "+D(e.$t("booking.dogsWelcome")),1)])):O("",!0)]),v("div",le,[v("div",se,[v("h3",re,D(t.object.title||t.object.name),1),t.object.treeRating?(y(),P(z,{key:0,rating:t.object.treeRating,size:"sm"},null,8,["rating"])):O("",!0)]),t.object.shortDescription?(y(),b("p",ie,D(t.object.shortDescription),1)):O("",!0),v("div",ne,[v("span",oe,[a[3]||(a[3]=v("i",{class:"fas fa-users w-4 h-4 mr-1"},null,-1)),o(" "+D(e.$t("apartments.maxPersons",{n:t.object.maxPersons})),1)]),t.object.bedrooms?(y(),b("span",ce,[a[4]||(a[4]=v("i",{class:"fas fa-bed w-4 h-4 mr-1"},null,-1)),o(" "+D(t.object.bedrooms)+" "+D(e.$t("apartments.bedrooms")),1)])):O("",!0),t.object.sizeM2?(y(),b("span",de,[a[5]||(a[5]=v("i",{class:"fas fa-expand-arrows-alt w-4 h-4 mr-1"},null,-1)),o(" "+D(t.object.sizeM2)+" m² ",1)])):O("",!0),void 0!==t.object.floorLevel&&null!==t.object.floorLevel?(y(),b("span",ue,[0===t.object.floorLevel?(y(),b("i",ge)):(y(),b("i",me)),o(" "+D(e.$t(`apartments.floor.${t.object.floorLevel}`)),1)])):O("",!0)]),v("div",ve,[v("div",be,[v("div",null,[v("div",pe,D(g(u(c).total)),1),v("div",xe,D(e.$t("booking.forNights",{n:u(c).nights})),1)]),v("div",fe,[v("div",he,D(g(u(c).pricePerNight))+" / "+D(e.$t("common.night")),1)])])]),v("button",ye,D(e.$t("booking.select")),1)])]))}}),ke=Object.assign(we,{__name:"BookingSearchResultCard"}),De={class:"py-8 md:py-12"},je={class:"container mx-auto px-4"},Pe={key:2,class:"text-center py-12"},Se={class:"mt-4 text-gray-500"},Oe={key:3,class:"text-center py-12"},Te={class:"text-gray-600 mb-4"},Ne={class:"relative bg-white rounded-xl shadow-lg border-2 border-primary/30 mb-8"},Ce={key:0,class:"absolute -top-5 -right-6 text-primary z-10"},$e={class:"fa-stack fa-3x"},_e={class:"fa-stack-1x text-white text-2xl font-bold"},Ie={class:"bg-primary/5 px-4 py-2 border-b border-primary/20"},Ae={class:"text-sm font-semibold text-primary flex items-center gap-2"},Ee={class:"p-6"},Ue={class:"flex flex-col md:flex-row gap-6"},ze={class:"md:w-1/3 relative"},Re=["src","srcset","alt"],Me={key:1,class:"absolute top-3 left-3 bg-primary text-white text-xs px-2 py-1 rounded-full flex items-center gap-1"},qe={class:"md:w-2/3"},Be={class:"text-2xl font-heading font-bold text-gray-900 mb-2"},Le={class:"flex flex-wrap gap-4 text-sm text-gray-600 mb-4"},He={class:"flex items-center gap-1"},Ve={class:"flex items-center gap-1"},We={class:"flex items-center gap-1"},Ge={key:0,class:"flex items-center gap-1"},Fe={class:"flex flex-wrap gap-2 mb-4"},Ke={key:0,class:"bg-gray-100 text-gray-700 px-2 py-1 rounded text-sm"},Qe={class:"bg-gray-100 text-gray-700 px-2 py-1 rounded text-sm"},Ye={key:1,class:"bg-gray-100 text-gray-700 px-2 py-1 rounded text-sm"},Je={class:"flex items-end justify-between"},Xe={class:"text-3xl font-bold text-primary"},Ze={class:"text-sm text-gray-500"},et={key:0,class:"mb-8"},tt={class:"text-lg font-heading font-semibold text-gray-700 mb-4 flex items-center gap-2"},at={class:"text-sm text-gray-500 mb-4"},lt={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6"},st={key:0,class:"bg-white rounded-xl shadow-sm p-6 mb-8"},rt={class:"font-heading font-semibold text-gray-900 mb-4 flex items-center gap-2"},it={class:"text-sm text-gray-600 mb-4"},nt={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},ot=["onClick"],ct={class:"font-medium text-gray-900"},dt={class:"text-sm text-gray-500"},ut={key:1,class:"mb-8"},gt={class:"text-lg font-heading font-semibold text-gray-900 mb-2 flex items-center gap-2"},mt={class:"text-sm text-gray-600 mb-4"},vt={key:0,class:"bg-white rounded-xl shadow-lg border-2 border-primary-200 overflow-hidden mb-6"},bt={class:"bg-green-50 px-4 py-2 border-b border-green-200"},pt={class:"text-sm font-semibold text-green-700 flex items-center gap-2"},xt={class:"p-4"},ft={key:1,class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6"},ht={key:2,class:"text-center py-12 bg-white rounded-xl shadow-sm"},yt={class:"text-xl font-heading font-bold text-gray-900 mb-2"},wt={class:"text-gray-600 mb-6 max-w-md mx-auto"},kt={class:"text-3xl font-heading font-bold text-gray-900 mb-8"},Dt={class:"bg-white rounded-xl shadow-sm p-4 mb-8"},jt={class:"flex flex-wrap gap-4 text-sm"},Pt={class:"flex items-center gap-2"},St={class:"flex items-center gap-2"},Ot={key:0,class:"flex items-center gap-2"},Tt={key:0,class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6"},Nt={key:1,class:"text-center py-12 bg-white rounded-xl shadow-sm"},Ct={class:"text-xl font-heading font-bold text-gray-900 mb-2"},$t={class:"text-gray-600 mb-6 max-w-md mx-auto"},_t={key:5,class:"text-center py-12 bg-white rounded-xl shadow-sm"},It={class:"text-gray-600 mb-4"},At={key:0,class:"fixed bottom-0 left-0 right-0 bg-white border-t border-gray-200 p-4 md:hidden z-50 shadow-lg"},Et={class:"flex items-center justify-between gap-4"},Ut={class:"font-semibold text-gray-900 truncate"},zt={class:"text-primary font-bold"},Rt={key:1,class:"h-24 md:hidden"},Mt=h({__name:"ergebnisse",async setup(t){let c,m;const h=r(),j=a(),C=N(),z=_(),{settings:R}=([c,m]=d(()=>I()),c=await c,m(),c),{t:M,locale:q}=e(),{getResponsiveImage:B}=U(),{criteria:L,searchResults:H,loading:V,error:W,preferredObjectId:G,preferredObject:F,isPreferredObjectAvailable:K,otherAvailableObjects:Q,initFromQuery:Y,searchAvailability:J,selectObject:Z,formatDate:ee,formatPrice:te}=E(),ae=S(""),le=S([]),se=S(null),re=S(!1),ie=S(""),ne=S(""),oe=S({}),ce=S(!1);async function de(){if(!H.value||!ie.value||!ne.value)return;if(ie.value===L.value.startDate&&ne.value===L.value.endDate)return void(oe.value={});ce.value=!0;const e=H.value.availableObjects.filter(e=>e.id!==G.value);try{const t=e.map(async e=>{try{const t=await s(`${z}/public/calculate-price`,{method:"POST",body:{objectId:e.id,startDate:ie.value,endD
1ate:ne.value,adults:L.value.adults,children:L.value.children.map(e=>({age:e.age})),dogs:L.value.dogs}});return{objectId:e.id,pricing:{total:t.totalPrice,nights:t.nights,pricePerNight:t.pricePerNight}}}catch{return null}}),a=await Promise.all(t),l={};for(const e of a)e&&(l[e.objectId]=e.pricing);oe.value=l}catch(t){}finally{ce.value=!1}}const ue=S(!1);async function ge(e,t,a){try{return(await s(`${z}/public/check-availability`,{method:"POST",body:{objectId:e,startDate:t,endDate:a,adults:L.value.adults,childAges:L.value.children.map(e=>e.age)}})).available}catch{return!1}}async function me(){if(!L.value.startDate||!L.value.endDate||!G.value)return;const e=A(L.value.startDate),t=A(L.value.endDate),a=Math.round((t.getTime()-e.getTime())/864e5),l=e=>e.toISOString().split("T")[0],s=A(),r=new Date(e);r.setUTCDate(r.getUTCDate()-7);const i=new Date(r);i.setUTCDate(i.getUTCDate()+a);const n=new Date(e);n.setUTCDate(n.getUTCDate()+7);const o=new Date(n);o.setUTCDate(o.getUTCDate()+a);const c=[];r>=s&&c.push({startDate:l(r),endDate:l(i),label:M("booking.oneWeekEarlier")}),c.push({startDate:l(n),endDate:l(o),label:M("booking.oneWeekLater")});const d=await Promise.all(c.map(async e=>({...e,available:await ge(G.value,e.startDate,e.endDate)})));le.value=d.filter(e=>e.available).map(({startDate:e,endDate:t,label:a})=>({startDate:e,endDate:t,label:a}))}x(async()=>{const e=h.query;if(e.startDate&&e.endDate){if(Y(e),(e.preferredObject||e.object)&&await async function(e){if(!e)return;try{const t=await s(`${z}/public/objects/${e}`,{query:{lang:q.value}});ae.value=t.object.name}catch{ae.value=""}}(e.preferredObject||e.object),await J(),!G.value&&1===H.value?.availableObjects.length){const e=H.value.availableObjects[0];return l(C(`/ferienwohnungen/${e.slug}`),{replace:!0})}G.value&&!K.value&&await me(),ie.value=L.value.startDate,ne.value=L.value.endDate,F.value&&pe()}});const ve=S(null),be=$();async function pe(){if(F.value&&H.value){re.value=!0;try{const e=await s(`${z}/public/extend-stay-options`,{method:"POST",body:{objectId:F.value.id,startDate:L.value.startDate,endDate:L.value.endDate,adults:L.value.adults,children:L.value.children.map(e=>({age:e.age})),dogs:L.value.dogs}});se.value=e,e.canReachNextTier&&F.value&&be.trackExtendStayOpened(F.value.id),e.nextTier&&e.canReachNextTier&&await async function(e){if(!F.value)return;const t=new Date(L.value.startDate),a=new Date(t);a.setDate(a.getDate()+e);const l=a.toISOString().split("T")[0];try{const e=await s(`${z}/public/calculate-price`,{method:"POST",body:{objectId:F.value.id,startDate:L.value.startDate,endDate:l,adults:L.value.adults,children:L.value.children.map(e=>({age:e.age})),dogs:L.value.dogs}});ve.value=e}catch(r){ve.value=null}}(e.nextTier.minNights)}catch(e){se.value=null}finally{re.value=!1}}}const xe=S(null);async function fe(e,t){if(ie.value=e,ne.value=t,F.value){const a=H.value?.searchCriteria.nights||0,l=new Date(e),s=new Date(t),r=Math.round((s.getTime()-l.getTime())/864e5);be.trackExtendStayChanged(F.value.id,a,r,qt.value)}await Promise.all([F.value?he():Promise.resolve(),de()])}async function he(){if(F.value&&ie.value&&ne.value)try{const e=await s(`${z}/public/calculate-price`,{method:"POST",body:{objectId:F.value.id,startDate:ie.value,endD
1ate:ne.value,adults:L.value.adults,children:L.value.children.map(e=>({age:e.age})),dogs:L.value.dogs}});xe.value=e}catch(e){}}const ye=f(()=>{if(xe.value)return xe.value.nights;if(!ie.value||!ne.value)return 0;const e=new Date(ie.value),t=new Date(ne.value);return Math.round((t.getTime()-e.getTime())/864e5)}),we=f(()=>!!se.value?.nextTier&&ye.value>=se.value.nextTier.minNights),Mt=f(()=>{if(!se.value?.currentPricing||!ve.value)return se.value?.nextTier?.savingsPercent||0;const e=se.value.currentPricing.pricePerNight,t=ve.value.pricePerNight;return e<=0?0:Math.round(100*(1-t/e))}),qt=f(()=>{if(!we.value||!se.value?.currentPricing)return Mt.value;const e=se.value.currentPricing.pricePerNight,t=xe.value?.pricePerNight||ve.value?.pricePerNight||e;return e<=0?0:Math.round(100*(1-t/e))}),Bt=f(()=>xe.value?xe.value.pricePerNight:se.value?.currentPricing?se.value.currentPricing.pricePerNight:F.value?F.value.pricing.pricePerNight:0),Lt=f(()=>xe.value?xe.value.totalPrice:se.value?.currentPricing?se.value.currentPricing.totalPrice:F.value?F.value.pricing.total:0);function Ht(e){const t=e.id===G.value,a=t?ie.value:L.value.startDate,l=t?ne.value:L.value.endDate,s={objectId:e.id,startDate:a,endDate:l,adults:String(L.value.adults)};return L.value.children.length>0&&(s.children=String(L.value.children.length),s.childrenAges=L.value.children.map(e=>e.age??"").join(",")),L.value.dogs>0&&(s.dogs=String(L.value.dogs)),s}const Vt=S(!1);function Wt(e){if(Vt.value)return;if(e.id!==G.value)return;if(!se.value?.canReachNextTier)return;const t=H.value?.searchCriteria.nights||0;t<=0||ye.value<=t||(Vt.value=!0,be.trackExtendStayAccepted(e.id,t,ye.value))}return g(()=>{R.value&&i({title:`${M("booking.resultsTitle")} - ${R.value.companyName}`,description:M("booking.resultsSubtitle",{count:H.value?.availableObjects.length||0,nights:H.value?.searchCriteria.nights||0}),robots:"noindex, follow"})}),(e,t)=>{const a=T,l=X,r=ke;return y(),b("div",null,[v("div",De,[v("div",je,[u(G)&&u(F)?(y(),P(a,{key:0,to:u(C)(`/ferienwohnungen/${u(F).slug}`),class:"inline-flex items-center text-primary hover:text-primary-700 mb-6"},{default:k(()=>[t[2]||(t[2]=v("i",{class:"fas fa-chevron-left w-5 h-5 mr-1"},null,-1)),o(" "+D(u(M)("booking.backToObject",{name:u(F).name})),1)]),_:1},8,["to"])):(y(),P(a,{key:1,to:u(C)("/buchen"),class:"inline-flex items-center text-primary hover:text-primary-700 mb-6"},{default:k(()=>[t[3]||(t[3]=v("i",{class:"fas fa-chevron-left w-5 h-5 mr-1"},null,-1)),o(" "+D(u(M)("booking.modifySearch")),1)]),_:1},8,["to"])),u(V)?(y(),b("div",Pe,[t[4]||(t[4]=v("div",{class:"animate-spin rounded-full h-12 w-12 border-b-2 border-primary mx-auto"},null,-1)),v("p",Se,D(u(M)("booking.searchingAvailability")),1)])):u(W)?(y(),b("div",Oe,[t[5]||(t[5]=v("div",{class:"text-red-500 mb-4"},[v("i",{class:"fas fa-exclamation-circle w-12 h-12 mx-auto text-4xl"})],-1)),v("p",Te,D(u(W)),1),n(a,{to:u(C)("/buchen"),class:"inline-block bg-primary text-white px-6 py-2 rounded-lg hover:bg-primary-700"},{default:k(()=>[o(D(u(M)("booking.tryAgain")),1)]),_:1},8,["to"])])):u(H)?(y(),b(w,{key:4},[u(G)&&u(K)?(y(),b(w,{key:0},[v("div",Ne,[u(we)?(y(),b("div",Ce,[v("span",$e,[t[6]||(t[6]=v("i",{class:"fas fa-seal fa-stack-2x"},null,-1)),v("span",_e,"-"+D(u(qt))+"%",1)])])):O("",!0),v("div",Ie,[v("span",Ae,[t[7]||(t[7]=v("i",{class:"fas fa-star"},null,-1)),o(" "+D(u(M)("booking.yourSelection")),1)])]),v("div",Ee,[v("div",Ue,[v("div",ze,[u(F).images[0]?(y(),b("img",{key:0,src:u(B)(u(F).images[0].url,"hero").src,srcset:u(B)(u(F).images[0].url,"hero").srcset,sizes:"(max-width: 768px) 100vw, 400px",alt:u(F).images[0].caption||u(F).name,width:"800",height:"600",class:"w-full h-48 md:h-full object-cover rounded-lg"},null,8,Re)):O("",!0),u(F).availability.dogsAllowed&&u(L).dogs>0?(y(),b("div",Me,[t[8]||(t[8]=v("i",{class:"fas fa-dog w-3 h-3"},null,-1)),o(" "+D(u(M)("booking.dogsWelcome")),1)])):O("",!0)]),v("div",qe,[v("h2",Be,D(u(F).name),1),v("div",Le,[v("span",He,[t[9]||(t[9]=v("i",{class:"fas fa-calendar-alt"},null,-1)),o(" "+D(u(ee)(u(ie)))+" - "+D(u(ee)(u(ne))),1)]),v("span",Ve,[t[10]||(t[10]=v("i",{class:"fas fa-moon"},null,-1)),o(" "+D(u(ye))+" "+D(u(M)("common.nights")),1)]),v("span",We,[t[11]||(t[11]=v("i",{class:"fas fa-users"},null,-1)),o(" "+D(u(H).searchCriteria.totalGuests)+" "+D(u(M)("common.guests")),1)]),u(H).searchCriteria.dogs>0?(y(),b("span",Ge,[t[12]||(t[12]=v("i",{class:"fas fa-dog"},null,-1)),o(" "+D(u(M)("booking.dogsCount",{n:u(H).searchCriteria.dogs})),1)])):O("",!0)]),v("div",Fe,[u(F).sizeM2?(y(),b("span",Ke,D(u(F).sizeM2)+" m² ",1)):O("",!0),v("span",Qe,D(u(F).bedrooms)+" "+D(u(M)("object.bedrooms")),1),u(F).features.includes("Balkon")?(y(),b("span",Ye,D(u(M)("object.balcony")),1
1)):O("",!0)]),v("div",Je,[v("div",null,[v("p",Xe,D(u(te)(u(Lt))),1),v("p",Ze,D(u(te)(u(Bt)))+" / "+D(u(M)("common.night"))+" · "+D(u(M)("booking.includingCleaning")),1)]),n(a,{to:{path:u(C)("/buchen/checkout"),query:Ht(u(F))},class:"bg-primary text-white px-8 py-3 rounded-lg font-semibold hover:bg-primary-700 transition-colors hidden md:inline-block",onClick:t[0]||(t[0]=e=>Wt(u(F)))},{default:k(()=>[o(D(u(M)("booking.bookNow")),1)]),_:1},8,["to"])]),n(l,{"extend-options":u(se),"original-start-date":u(L).startDate,"original-end-date":u(L).endDate,"original-price-per-night":u(F).pricing.pricePerNight,"transfer-start-date":u(ie),"transfer-end-date":u(ne),"transfer-pricing":u(xe),"advertised-savings-percent":u(Mt),class:"mt-4",onUpdateTransferDates:fe},null,8,["extend-options","original-start-date","original-end-date","original-price-per-night","transfer-start-date","transfer-end-date","transfer-pricing","advertised-savings-percent","onUpdateTransferDates"])])])])]),u(Q).length>0?(y(),b("div",et,[v("h3",tt,[t[13]||(t[13]=v("i",{class:"fas fa-home text-gray-400"},null,-1)),o(" "+D(u(M)("booking.otherAvailableObjects")),1)]),v("p",at,D(u(M)("booking.otherAvailableHint",u
1(Q).length)),1),v("div",lt,[(y(!0),b(w,null,p(u(Q),e=>{return y(),P(r,{key:e.id,object:e,"searched-dogs":u(L).dogs,"override-pricing":(t=e.id,ie.value===L.value.startDate&&ne.value===L.value.endDate?null:oe.value[t]||null),onSelect:t=>async function(e){if(!H.value?.availableObjects.find(t=>t.id===e))return;ue.value=!0;let t=null;if(ie.value!==L.value.startDate||ne.value!==L.value.endDate)try{t=await s(`${z}/public/calculate-price`,{method:"POST",body:{objectId:e,startDate:ie.value,endDate:ne.value,adults:L.value.adults,children:L.value.children.map(e=>({age:e.age})),dogs:L.value.dogs}})}catch(a){}G.value=e,xe.value=t,se.value=null,ve.value=null,await Promise.all([pe(),de()]),ue.value=!1}(e.id)},null,8,["object","searched-dogs","override-pricing","onSelect"]);var t}),128))])])):O("",!0)],64)):u(G)&&!u(K)?(y(),b(w,{key:1},[u(le).length>0?(y(),b("div",st,[v("h3",rt,[t[14]||(t[14]=v("i",{class:"fas fa-calendar-alt text-primary"},null,-1)),o(" "+D(u(M)("booking.alternativeDatesTitle",{name:u(ae)})),1)]),v("p",it,D(u(M)("booking.alternativeDatesHint")),1),v("div",nt,[(y(!0),b(w,null,p(u(le),e=>(y(),b("button",{key:`${e.startDate}-${e.endDate}`,class:"border border-gray-200 rounded-lg p-4 hover:border-primary hover:bg-primary/5 transition-colors text-left",onClick:t=>async function(e,t){L.value.startDate=e,L.value.endDate=t;const a={startDate:e,endDate:t,adults:String(L.value.adults)};L.value.children.length>0&&(a.children=L.value.children.map(e=>e.age??"").join(",")),L.value.dogs>0&&(a.dogs=String(L.value.dogs)),G.value&&(a.preferredObject=G.value),await j.push({query:a}),await J(),G.value&&!K.value&&await me()}(e.startDate,e.endDate)},[v("div",ct,D(u(ee)(e.startDate))+" - "+D(u(ee)(e.endDate)),1),v("div",dt,D(e.label),1)],8,ot))),128))])])):O("",!0),u(H).availableObjects.length>0?(y(),b("div",ut,[v("h3",gt,[t[15]||(t[15]=v("i",{class:"fas fa-home text-primary"},null,-1)),o(" "+D(u(M)("booking.similarObjectsTitle")),1)]),v("p",mt,D(u(M)("booking.similarObjectsHint")),1),u(H).availableObjects[0]?(y(),b("div",vt,[v("div",bt,[v("span",pt,[t[16]||(t[16]=v("i",{class:"fas fa-star"},null,-1)),o(" "+D(u(M)("booking.recommendation")),1)])]),v("div",xt,[n(r,{object:u(H).availableObjects[0],"searched-dogs":u(L).dogs,featured:"",onSelect:u(Z)},null,8,["object","searched-dogs","onSelect"])])])):O("",!0),u(H).availableObjects.length>1?(y(),b("div",ft,[(y(!0),b(w,null,p(u(H).availableObjects.slice(1),e=>(y(),P(r,{key:e.id,object:e,"searched-dogs":u(L).dogs,onSelect:u(Z)},null,8,["object","searched-dogs","onSelect"]))),128))])):O("",!0)])):(y(),b("div",ht,[t[17]||(t[17]=v("div",{class:"text-gray-400 mb-4"},[v("i",{class:"far fa-frown w-16 h-16 mx-auto text-5xl"})],-1)),v("h2",yt,D(u(M)("booking.noAlternatives")),1),v("p",wt,D(u(M)("booking.noAlternativesText")),1),n(a,{to:u(C)("/buchen"),class:"inline-block bg-primary text-white px-6 py-3 rounded-lg font-semibold hover:bg-primary-700"},{default:k(()=>[o(D(u(M)("booking.adjustSearch")),1)]),_:1},8,["to"])]))],64)):(y(),b(w,{key:2},[v("h1",kt,D(u(M)("booking.resultsTitle")),1),v("div",Dt,[v("div",jt,[v("div",Pt,[t[18]||(t[18]=v("i",{class:"fas fa-calendar-alt w-5 h-5 text-gray-400"},null,-1)),v("span",null,D(u(ee)(u(L).startDate))+" - "+D(u(ee)(u(L).endDate)),1)]),v("div",St,[t[19]||(t[19]=v("i",{class:"fas fa-users w-5 h-5 text-gray-400"},null,-1)),v("span",null,D(u(H).searchCriteria.totalGuests)+" "+D(u(M)("common.guests")),1)]),u(H).searchCriteria.dogs>0?(y(),b("div",Ot,[t[20]||(t[20]=v("i",{class:"fas fa-dog w-5 h-5 text-gray-400"},null,-1)),v("span",null,D(u(H).searchCriteria.dogs)+" "+D(u(M)("booking.dogs")),1)])):O("",!0),n(a,{to:u(C)("/buchen"),class:"ml-auto text-primary hover:text-primary-700 font-medium"},{default:k(()=>[o(D(u(M)("booking.changeSearch")),1)]),_:1},8,["to"])])]),u(H).availableObjects.length>0?(y(),b("div",Tt,[(y(!0),b(w,null,p(u(H).availableObjects,e=>(y(),P(r,{key:e.id,object:e,"searched-dogs":u(L).dogs,onSelect:u(Z)},null,8,["object","searched-dogs","onSelect"]))),128))])):(y(),b("div",Nt,[t[21]||(t[21]=v("div",{class:"text-gray-400 mb-4"},[v("i",{class:"far fa-frown w-16 h-16 mx-auto text-5xl"})],-1)),v("h2",Ct,D(u(M)("booking.noResultsTitle")),1),v("p",$t,D(u(M)("booking.noResultsText")),1),n(a,{to:u(C)("/buchen"),class:"inline-block bg-primary text-white px-6 py-3 rounded-lg font-semibold hover:bg-primary-700"},{default:k(()=>[o(D(u(M)("booking.adjustSearch")),1)]),_:1},8,["to"])]))],64))],64)):(y(),b("div",_t,[v("p",It,D(u(M)("booking.enterSearchCriteria")),1),n(a,{to:u(C)("/buchen"),class:"inline-block bg-primary text-white px-6 py-3 rounded-lg font-semibold hover:bg-primary-700"},{default:k(()=>[o(D(u(M)("booking.startSearch")),1)]),_:1}
1,8,["to"])]))])]),u(G)&&u(K)&&u(F)?(y(),b("div",At,[v("div",Et,[v("div",null,[v("p",Ut,D(u(F).name),1),v("p",zt,D(u(te)(u(Lt))),1)]),n(a,{to:{path:u(C)("/buchen/checkout"),query:Ht(u(F))},class:"bg-primary text-white px-6 py-3 rounded-lg font-semibold hover:bg-primary-700 transition-colors whitespace-nowrap",onClick:t[1]||(t[1]=e=>Wt(u(F)))},{default:k(()=>[o(D(u(M)("booking.bookNow")),1)]),_:1},8,["to"])])])):O("",!0),u(G)&&u(K)&&u(F)?(y(),b("div",Rt)):O("",!0)])}}});export{Mt 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.