import{s as se,y as I,j as y,d as j,q as P,h as k,u as t,p as l,a as s,t as i,c,n as K,i as h,Q as oe,r as C,F as w,b as v,o as ne,J as G,$ as ae,g as m,k as re,w as Q,l as q,m as W,B as le,a1 as ie}from"./index-5N4i3DXm.js";import{u as de}from"./useQuery-BGRzRMUd.js";import{E as ce,f as S,j as $,n as X,F as V,q as Y,y as ee,z as ue,A as pe,G as te,a as me,v as z,h as F,w as U}from"./navigation-FgudCDOx.js";import{a as fe,b as xe}from"./seo-BuHrFLDl.js";import{_ as L}from"./Skeleton.vue_vue_type_script_setup_true_lang-D40n98Bo.js";import{_ as N}from"./Chip.vue_vue_type_script_setup_true_lang-D1cBtIu4.js";import{_ as A,A as Z,t as B,w as T,L as ge,a as be}from"./utm-if8mwNBT.js";import{L as R}from"./leaflet-src-BSbcx_7H.js";import{_ as ve}from"./AuctionCard.vue_vue_type_script_setup_true_lang-BYR-2TqY.js";import{_ as he}from"./AuctionRowCard.vue_vue_type_script_setup_true_lang-BrZqRiQJ.js";import{A as ye}from"./arrow-right-_zzFeMLi.js";import{A as ke}from"./arrow-left-BN5Yp7E-.js";import"./utils-DclmTqRz.js";import"./ui-BK2ebVOe.js";import"./StatusBadge.vue_vue_type_script_setup_true_lang-B7iz28bZ.js";import"./RiskBadge.vue_vue_type_script_setup_true_lang-BKQbgkPk.js";/**
* @license @lucide/vue v1.33.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const $e=[["path",{d:"m22 11-1.296-1.296a2.4 2.4 0 0 0-3.408 0L11 16",key:"9kzy35"}],["path",{d:"M4 8a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2",key:"1t0f0t"}],["circle",{cx:"13",cy:"7",r:"1",fill:"currentColor",key:"1obus6"}],["rect",{x:"8",y:"2",width:"14",height:"14",rx:"2",key:"1gvhby"}]],_e=se("images",$e);function we(o){const p=y(()=>I(o));return de({queryKey:["sale",p],queryFn:()=>ce(I(o)),staleTime:6e4,retry:1})}const Pe={class:"grid gap-px overflow-hidden rounded-lg border border-border bg-border sm:grid-cols-3"},je={class:"bg-surface px-4 py-3.5"},Me={class:"num text-[20px] font-semibold text-fg"},ze={class:"bg-surface px-4 py-3.5"},Ce={class:"num text-[20px] font-semibold text-fg"},Ae={key:0,class:"mt-1 text-[12px] text-fg-subtle"},Le={class:"bg-surface px-4 py-3.5"},Se={class:"label-mono mb-1.5"},Ne={class:"num text-[20px] font-semibold text-fg"},Re={key:0,class:"mt-1 text-[12px] text-fg-subtle"},Ve={class:"font-semibold"},Be={class:"ml-1"},Te={key:0,class:"mt-3 h-2 w-full rounded-full bg-gradient-to-r from-success via-surface-3 to-danger"},Ze={class:"relative h-full"},De={key:1,class:"mt-1.5 flex justify-between font-mono text-[10px] opacity-80"},Ue={key:1,class:"mt-4 text-[13px] text-fg-muted"},Ke=j({__name:"SalePricePanel",props:{s:{}},setup(o){const p=o,u=y(()=>p.s.market),d=y(()=>{const r=u.value;return r?r.scope==="okres"?`okres ${p.s.district}`:r.scope==="kraj"?p.s.region:"celá ČR":""}),e=y(()=>{var r;return((r=u.value)==null?void 0:r.deltaPct)??null}),g=y(()=>{const r=e.value;return r==null?null:r<=-.15?{tone:"ok",text:`o ${Math.round(-r*100)} % levněji za m² než je medián`}:r<-.03?{tone:"ok",text:`o ${Math.round(-r*100)} % pod mediánem`}:r<=.03?{tone:"info",text:"na úrovni mediánu"}:r<.15?{tone:"warn",text:`o ${Math.round(r*100)} % nad mediánem`}:{tone:"bad",text:`o ${Math.round(r*100)} % dráž za m² než je medián`}}),a=y(()=>{const r=u.value,f=p.s.pricePerM2;if(!r||!f||r.p75M2<=r.p25M2)return null;const b=r.p25M2-(r.p75M2-r.p25M2),_=r.p75M2+(r.p75M2-r.p25M2);return Math.min(1,Math.max(0,(f-b)/(_-b)))});return(r,f)=>(l(),P(A,{id:"cena",title:"Cena a srovnání",note:u.value?`${t(S)(u.value.count)} nabídek · ${d.value}`:void 0},{default:k(()=>[s("div",Pe,[s("div",je,[f[0]||(f[0]=s("div",{class:"label-mono mb-1.5"},"Cena",-1)),s("div",Me,i(o.s.price!=null?t($)(o.s.price):o.s.priceNote||"cena v RK"),1),o.s.firstPrice!=null&&o.s.price!=null&&o.s.firstPrice!==o.s.price?(l(),c("div",{key:0,class:K(["mt-1 text-[12px]",o.s.firstPrice>o.s.price?"text-success-fg":"text-fg-subtle"])},i(o.s.firstPrice>o.s.price?"−":"+")+i(Math.round(Math.abs(o.s.firstPrice-o.s.price)/o.s.firstPrice*100))+" % od zveřejnění (bylo "+i(t($)(o.s.firstPrice))+") ",3)):h("",!0)]),s("div",ze,[f[1]||(f[1]=s("div",{class:"label-mono mb-1.5"},"Cena za m²",-1)),s("div",Ce,i(o.s.pricePerM2?`${t($)(o.s.pricePerM2)}`:"-"),1),o.s.pricePerM2?(l(),c("div",Ae,"z "+i(Math.round(o.s.floorAreaM2??o.s.landAreaM2??0))+" m²",1)):h("",!0)]),s("div",Le,[s("div",Se,"Medián · "+i(d.value||"bez dat"),1),s("div",Ne,i(u.value?`${t($)(u.value.medianM2)}/m²`:"-"),1),u.value?(l(),c("div",Re,i(t(X)(o.s.category))+": "+i(t(S)(u.value.p25M2))+" – "+i(t(S)(u.value.p75M2))+" Kč/m² (P25–P75)",1)):h("",!0)])]),g.value?(l(),c("div",{key:0,class:K(["mt-4 rounded-lg px-4 py-3 text-[13px]",g.value.tone==="ok"?"bg-success-soft text-success-fg":g.value.tone==="bad"?"bg-danger-soft text-danger-fg":g.value.tone==="warn"?"bg-warn-soft text-warn-fg":"bg-surface-3 text-fg-muted"])},[s("b",Ve,"Tato nabídka je "+i(g.value.text),1),s("span",Be,"("+i(d.value)+", "+i(t(S)(u.value.count))+" srovnatelných nabídek).",1),a.value!=null?(l(),c("div",Te,[s("div",Ze,[s("span",{class:"absolute top-1/2 h-4 w-4 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-white bg-fg shadow",style:oe({left:`${a.value*100}%`})},null,4)])])):h("",!0),a.value!=null?(l(),c("div",De,[...f[2]||(f[2]=[s("span",null,"levnější",-1),s("span",null,"medián",-1),s("span",null,"dražší",-1)])])):h("",!0)],2)):(l(),c("p",Ue,i(o.s.pricePerM2?"Pro srovnání zatím nemáme dost podobných nabídek v okolí.":"Bez plochy nebo ceny nejde spočítat cenu za m²."),1)),f[3]||(f[3]=s("p",{class:"mt-3 text-[11px] leading-relaxed text-fg-subtle"},"Medián počítáme z aktuálně nabízených nemovitostí stejné kategorie ve stejném okrese (při málo datech v kraji nebo v celé ČR). Je to orientace, ne odhad ceny.",-1))]),_:1},8,["note"]))}}),qe={class:"grid gap-px overflow-hidden rounded-lg border border-border bg-border sm:grid-cols-2 lg:grid-cols-3"},Ee={class:"label-mono mb-1.5"},Oe={class:"num text-[15px] font-semibold text-fg"},Ie=j({__name:"SaleParamsGrid",props:{s:{}},setup(o){const p=o,u=e=>e==null?"":e?"ano":"ne",d=y(()=>{const e=p.s,g=[],a=(f,b)=>{b!=null&&b!==""&&g.push({k:f,v:String(b)})};a("Typ",X(e.category)),a("Dispozice",e.disposition?Y(e.disposition):""),a("Užitná plocha",e.floorAreaM2?`${Math.round(e.floorAreaM2)} m²`:""),a("Plocha pozemku",e.landAreaM2?`${Math.round(e.landAreaM2)} m²`:""),a("Podlaží",e.floor!=null?`${e.floor}.${e.floorsTotal?` z ${e.floorsTotal}`:""}`:""),a("Vlastnictví",e.ownership?ee(e.ownership):""),a("Stav",e.condition?ue(e.condition):""),a("Konstrukce",e.buildingType?pe(e.buildingType):""),a("PENB",e.energyClass),a("Výtah",u(e.elevator)),a("Balkon / lodžie / terasa",u(e.balcony)),a("Parkování / garáž",u(e.parking)),a("Prodejce",[te(e.sellerType),e.sellerName].filter(Boolean).join(" · ")),a("Lokalita",[e.street,e.cityPart&&e.cityPart!==e.city?e.cityPart:"",e.city,e.zip?`PSČ ${e.zip.slice(0,3)} ${e.zip.slice(3)}`:""].filter(Boolean).join(", ")),a("Přidáno",V(e.publishedAt??e.firstSeenAt));const r=e.extras??{};for(const[f,b]of[["typ_pozemku","Typ pozemku"],["topeni","Topení"],["voda","Voda"],["elektrina","Elektřina"],["plyn","Plyn"],["odpad","Odpad"],["equipped","Vybavení"],["house_type","Typ domu"]]){const _=r[f];typeof _=="string"&&_&&a(b,_.toLowerCase())}return g});return(e,g)=>(l(),P(A,{id:"parametry",title:"Parametry",note:`podle zdroje · ověřeno ${t(V)(o.s.lastSeenAt)}`},{default:k(()=>[s("div",qe,[(l(!0),c(w,null,C(d.value,a=>(l(),c("div",{key:a.k,class:"bg-surface px-4 py-3.5"},[s("div",Ee,i(a.k),1),s("div",Oe,i(a.v),1)]))),128))])]),_:1},8,["note"]))}}),Qe={key:0,class:"space-y-2"},Fe={class:"text-fg-muted"},He={class:"num font-mono text-[11px] text-fg-subtle"},Je={class:"num font-semibold text-fg"},Ge={key:1,class:"mt-2 text-[12px] text-fg-subtle"},We=j({__name:"SalePriceHistory",props:{s:{}},setup(o){const p=o,u=y(()=>[...p.s.events].filter(d=>d.kind==="discovered"||d.kind==="price_changed"||d.kind==="reactivated").sort((d,e)=>new Date(d.createdAt).getTime()-new Date(e.createdAt).getTime()).map(d=>({date:V(d.createdAt),label:d.kind==="discovered"?"Zveřejněno":d.kind==="reactivated"?"Znovu v nabídce":d.newValue!=null&&d.oldValue!=null&&d.newValue<d.oldValue?"Zlevněno":"Zdraženo",value:d.newValue!=null?$(d.newValue):"-",diff:d.oldValue!=null&&d.newValue!=null?d.newValue-d.oldValue:null})));return(d,e)=>(l(),P(A,{id:"historie",title:"Historie ceny"},{default:k(()=>[u.value.length?(l(),c("ol",Qe,[(l(!0),c(w,null,C(u.value,(g,a)=>(l(),c("li",{key:a,class:"flex items-center justify-between gap-3 rounded-lg border border-border bg-surface px-3.5 py-2.5 text-[13px]"},[s("span",Fe,[s("span",He,i(g.date),1),v(" · "+i(g.label),1)]),s("span",Je,[v(i(g.value)+" ",1),g.diff!=null?(l(),c("span",{key:0,class:K(["ml-1.5 text-[12px]",g.diff<0?"text-success-fg":"text-danger-fg"])},i(g.diff<0?"−":"+")+i(t($)(Math.abs(g.diff))),3)):h("",!0)])]))),128))])):h("",!0),u.value.length<=1?(l(),c("p",Ge,"Cena se od doby, kdy inzerát sledujeme, nezměnila. Změny hlídáme každých pár hodin.")):h("",!0)]),_:1}))}}),Xe={class:"mb-3 text-[14px] text-fg"},Ye={key:1,class:"rounded-lg border border-border bg-surface-2 px-4 py-6 text-center text-[12px] text-fg-muted"},et=["href"],tt=j({__name:"SaleMap",props:{s:{}},setup(o){const p=o,u=re(null);let d=null;const e=y(()=>p.s.lat!=null&&p.s.lon!=null?{lat:p.s.lat,lon:p.s.lon}:null),g=y(()=>[p.s.street,p.s.cityPart&&p.s.cityPart!==p.s.city?p.s.cityPart:"",p.s.city,p.s.district?`okres ${p.s.district}`:"",p.s.region].filter(Boolean).join(", ")),a=y(()=>e.value?`https://mapy.cz/zakladni?x=${e.value.lon}&y=${e.value.lat}&z=16`:`https://mapy.cz/zakladni?q=${encodeURIComponent(g.value)}`),r=R.divIcon({className:"",html:'<span style="display:block;width:16px;height:16px;border-radius:99px;background:rgb(var(--primary));border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.35)"></span>',iconSize:[16,16],iconAnchor:[8,8]});function f(){!u.value||!e.value||(d&&d.remove(),d=R.map(u.value,{scrollWheelZoom:!1,attributionControl:!0}).setView([e.value.lat,e.value.lon],15),R.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:"© OpenStreetMap",maxZoom:19}).addTo(d),R.marker([e.value.lat,e.value.lon],{icon:r}).addTo(d))}return ne(f),G(e,f),ae(()=>d==null?void 0:d.remove()),(b,_)=>(l(),P(A,{id:"mapa",title:"Lokalita"},{default:k(()=>[s("p",Xe,i(g.value||"Lokalita neurčena"),1),e.value?(l(),c("div",{key:0,ref_key:"el",ref:u,class:"h-[280px] w-full overflow-hidden rounded-lg border border-border"},null,512)):(l(),c("p",Ye,"Zdroj neuvádí přesnou polohu.")),s("a",{href:a.value,target:"_blank",rel:"noopener",class:"mt-3 inline-flex items-center gap-1 text-[13px] font-semibold text-primary hover:underline"},[_[0]||(_[0]=v("Otevřít na Mapy.cz ",-1)),m(t(Z),{class:"h-3.5 w-3.5"})],8,et)]),_:1}))}}),st={class:"hidden gap-4 md:grid md:grid-cols-2"},ot={class:"flex flex-col gap-3 md:hidden"},nt={key:1,class:"text-[13px] text-fg-muted"},at=j({__name:"NearbyAuctions",props:{s:{}},setup(o){const p=o,u=W(),d=g=>void u.push(me(g)),e=()=>({okres:p.s.district,kategorie:p.s.category});return(g,a)=>{const r=q("RouterLink");return l(),P(A,{id:"drazby",title:"Dražby v okolí",note:o.s.district?`okres ${o.s.district}`:void 0},{default:k(()=>[o.s.nearbyAuctions.length?(l(),c(w,{key:0},[a[1]||(a[1]=s("p",{class:"mb-4 text-[13px] text-fg-muted"},"Stejný typ nemovitosti se právě draží ve stejném okrese. Nejnižší podání bývá pod tržní cenou, ale dražba má svá pravidla a rizika.",-1)),s("div",st,[(l(!0),c(w,null,C(o.s.nearbyAuctions,f=>(l(),P(ve,{key:f.id,auction:f,onClick:Q(b=>d(f),["prevent"])},null,8,["auction","onClick"]))),128))]),s("div",ot,[(l(!0),c(w,null,C(o.s.nearbyAuctions,f=>(l(),P(he,{key:f.id,auction:f,onClick:Q(b=>d(f),["prevent"])},null,8,["auction","onClick"]))),128))]),m(r,{to:{path:"/drazby",query:e()},class:"mt-4 inline-flex items-center gap-1 text-[13px] font-semibold text-primary hover:underline"},{default:k(()=>[a[0]||(a[0]=v(" Všechny dražby v okrese ",-1)),m(t(ye),{class:"h-3.5 w-3.5"})]),_:1},8,["to"])],64)):(l(),c("p",nt,[a[3]||(a[3]=v(" V tomto okrese se teď nic podobného nedraží. ",-1)),m(r,{to:"/drazby",class:"font-semibold text-primary hover:underline"},{default:k(()=>[...a[2]||(a[2]=[v("Prohlédnout všechny dražby →",-1)])]),_:1})]))]),_:1},8,["note"])}}}),rt={class:"flex flex-col gap-3"},lt={class:"panel p-5 shadow-card"},it={class:"num mb-2 text-[32px] font-semibold tracking-[-0.025em] text-fg sm:text-[34px]"},dt={class:"mb-4 flex flex-wrap items-center gap-2"},ct={key:0,class:"chip chip-ok font-semibold"},ut={key:1,class:"chip chip-ok font-semibold"},pt={key:2,class:"chip chip-warn font-semibold"},mt={key:3,class:"chip chip-info font-semibold"},ft={class:"mb-4 flex flex-col gap-px overflow-hidden rounded-lg border border-border bg-border"},xt={class:"text-[13px] text-fg-muted"},gt={class:"num text-right text-[13px] font-semibold text-fg"},bt=["href"],vt={key:0,class:"panel px-4 py-4"},ht={class:"label-mono mb-2.5 flex items-center gap-1.5"},yt=["href","onClick"],kt={key:0,class:"ml-1.5 font-mono text-[10px] text-fg-subtle"},$t={class:"num font-mono text-fg-muted"},_t={class:"panel px-4 py-4"},wt={class:"space-y-2 text-[12px] text-fg-muted"},Pt={class:"flex justify-between gap-3"},jt={class:"font-semibold text-fg"},Mt={class:"flex justify-between gap-3"},zt={class:"font-semibold text-fg"},Ct={class:"flex justify-between gap-3"},At={class:"font-semibold text-fg"},H=j({__name:"SaleRail",props:{s:{}},setup(o){const p=o,u=y(()=>{const a=p.s,r=[];return a.pricePerM2&&r.push({k:"Cena za m²",v:`${$(a.pricePerM2)}`}),a.market&&r.push({k:`Medián · ${a.market.scope==="okres"?"okres":a.market.scope==="kraj"?"kraj":"ČR"}`,v:`${$(a.market.medianM2)}/m²`}),a.firstPrice!=null&&a.price!=null&&a.firstPrice!==a.price&&r.push({k:"Cena při zveřejnění",v:$(a.firstPrice)}),r.push({k:"Prodejce",v:te(a.sellerType)}),r.push({k:"Přidáno",v:V(a.publishedAt??a.firstSeenAt)}),r}),d=y(()=>{var a;return((a=p.s.market)==null?void 0:a.deltaPct)??null}),e=y(()=>p.s.events.filter(a=>a.kind==="price_changed").length),g=y(()=>{const a=new Date(p.s.lastSeenAt),r=a.toDateString()===new Date().toDateString(),f=a.toLocaleTimeString("cs-CZ",{hour:"2-digit",minute:"2-digit"});return r?`dnes ${f}`:`${a.toLocaleDateString("cs-CZ")} ${f}`});return(a,r)=>{const f=q("RouterLink");return l(),c("div",rt,[s("div",lt,[r[1]||(r[1]=s("div",{class:"label-mono mb-1.5"},"Cena",-1)),s("div",it,i(o.s.price!=null?t($)(o.s.price):o.s.priceNote||"cena v RK"),1),s("div",dt,[o.s.discount&&o.s.discount>0?(l(),c("span",ct,"−"+i(Math.round(o.s.discount*100))+" % od zveřejnění",1)):h("",!0),d.value!=null&&d.value<=-.03?(l(),c("span",ut,i(Math.round(-d.value*100))+" % pod mediánem",1)):d.value!=null&&d.value>=.03?(l(),c("span",pt,i(Math.round(d.value*100))+" % nad mediánem",1)):d.value!=null?(l(),c("span",mt,"na úrovni mediánu")):h("",!0)]),s("div",ft,[(l(!0),c(w,null,C(u.value,b=>(l(),c("div",{key:b.k,class:"flex items-baseline justify-between gap-3 bg-surface px-3 py-2.5"},[s("span",xt,i(b.k),1),s("span",gt,i(b.v),1)]))),128))]),s("a",{href:t(T)(o.s.sourceUrl),target:"_blank",rel:"noopener nofollow",class:"mb-2 flex w-full items-center justify-center gap-2 rounded-lg bg-primary px-4 py-3.5 text-[15px] font-semibold text-primary-fg transition-colors hover:bg-primary-hover",onClick:r[0]||(r[0]=b=>t(B)(o.s.sourceUrl))},[v("Zobrazit na "+i(t(z)(o.s.source))+" ",1),m(t(Z),{class:"h-3.5 w-3.5"})],8,bt),r[2]||(r[2]=s("p",{class:"text-center text-[11px] leading-snug text-fg-subtle"},"Kontakt na prodejce a prohlídku řešíte na zdrojovém portálu.",-1))]),o.s.offers.length>1?(l(),c("div",vt,[s("div",ht,[m(t(ge),{class:"h-3.5 w-3.5"}),v(" Na "+i(o.s.offers.length)+" portálech",1)]),(l(!0),c(w,null,C(o.s.offers,b=>(l(),c("a",{key:b.id,href:t(T)(b.sourceUrl),target:"_blank",rel:"noopener nofollow",class:"flex items-center justify-between gap-2 py-1.5 text-[13px] text-fg hover:text-primary",onClick:_=>t(B)(b.sourceUrl)},[s("span",null,[v(i(t(z)(b.source)),1),b.id===o.s.id?(l(),c("span",kt,"TATO")):h("",!0)]),s("span",$t,i(b.price!=null?t($)(b.price):"-"),1)],8,yt))),128))])):h("",!0),s("div",_t,[r[6]||(r[6]=s("div",{class:"label-mono mb-2.5"},"Odkud jsou data",-1)),s("div",wt,[s("div",Pt,[r[3]||(r[3]=s("span",null,"Zdroj",-1)),s("span",jt,i(t(z)(o.s.source)),1)]),s("div",Mt,[r[4]||(r[4]=s("span",null,"Poslední kontrola",-1)),s("span",zt,i(g.value),1)]),s("div",Ct,[r[5]||(r[5]=s("span",null,"Změny ceny",-1)),s("span",At,i(e.value?`${e.value}×`:"žádné"),1)])]),r[7]||(r[7]=s("p",{class:"mt-3 border-t border-border pt-2.5 text-[11px] leading-relaxed text-fg-subtle"},"Nemovitost.eu inzeráty pouze agreguje. Nejsme realitní kancelář ani zprostředkovatel.",-1))]),m(f,{to:"/pruvodce",class:"block rounded-2xl border border-dashed border-border-strong bg-surface-2/60 px-4 py-4 transition-colors hover:border-fg"},{default:k(()=>[...r[8]||(r[8]=[s("div",{class:"mb-1 text-[13px] font-semibold text-fg"},"Kupujete poprvé?",-1),s("div",{class:"mb-2 text-[12px] leading-relaxed text-fg-muted"},"Na co si dát pozor u družstevního bytu, jak číst PENB a jak poznat předraženou nabídku.",-1),s("span",{class:"text-[13px] font-semibold text-primary"},"Průvodce koupí →",-1)])]),_:1})])}}}),Lt={class:"fixed inset-x-0 bottom-[calc(58px+env(safe-area-inset-bottom))] z-30 flex items-center gap-3 border-t border-border bg-[var(--navbar)] px-4 py-2.5 backdrop-blur md:hidden"},St={class:"shrink-0"},Nt={class:"font-mono text-[10px] text-fg-subtle"},Rt={class:"num text-[15px] font-semibold text-fg"},Vt=["href"],Bt=j({__name:"SaleMobileActionBar",props:{s:{}},setup(o){return(p,u)=>(l(),c("div",Lt,[s("div",St,[s("div",Nt,i(o.s.pricePerM2?`${t($)(o.s.pricePerM2)}/m²`:"cena"),1),s("div",Rt,i(o.s.price!=null?t($)(o.s.price):o.s.priceNote||"v RK"),1)]),s("a",{href:t(T)(o.s.sourceUrl),target:"_blank",rel:"noopener nofollow",class:"flex flex-1 items-center justify-center gap-2 rounded-lg bg-primary px-4 py-3 text-[15px] font-semibold text-primary-fg",onClick:u[0]||(u[0]=d=>t(B)(o.s.sourceUrl))},[v(i(t(z)(o.s.source))+" ",1),m(t(Z),{class:"h-3.5 w-3.5"})],8,Vt)]))}}),Tt=["href"],Zt=["src","alt"],Dt={class:"absolute bottom-3 left-3 rounded-md bg-black/70 px-2 py-1.5 font-mono text-[11px] text-white/85"},Ut={key:0,class:"absolute bottom-3 right-3 inline-flex items-center gap-1.5 rounded-lg bg-white/95 px-3 py-2 text-[13px] font-semibold text-fg shadow"},Kt={key:1,class:"grid aspect-[16/8] place-items-center rounded-xl border border-border text-center",style:{background:"repeating-linear-gradient(135deg, rgb(var(--surface-3)) 0 10px, rgb(var(--surface-2)) 10px 20px)"}},J=j({__name:"SaleCover",props:{s:{}},setup(o){return(p,u)=>(l(),c("div",null,[o.s.images.length?(l(),c("a",{key:0,href:t(T)(o.s.sourceUrl),target:"_blank",rel:"noopener nofollow",class:"group relative block aspect-[16/9] overflow-hidden rounded-xl bg-surface-2",onClick:u[0]||(u[0]=d=>t(B)(o.s.sourceUrl,"gallery_click"))},[s("img",{src:o.s.images[0],alt:o.s.title,class:"h-full w-full object-cover transition-transform duration-300 group-hover:scale-[1.02]"},null,8,Zt),s("span",Dt,"zdroj: "+i(t(z)(o.s.source)),1),o.s.images.length>1?(l(),c("span",Ut,[m(t(_e),{class:"h-4 w-4"}),v(" Dalších "+i(o.s.images.length-1)+" fotek na "+i(t(z)(o.s.source))+" ",1),m(t(Z),{class:"h-3.5 w-3.5"})])):h("",!0)],8,Tt)):(l(),c("div",Kt,[...u[1]||(u[1]=[s("p",{class:"label-mono"},"bez fotografie",-1)])]))]))}}),qt={class:"mx-auto max-w-[1440px] px-4 pb-28 pt-3 sm:px-6 lg:px-8 md:pb-10"},Et={key:0,class:"grid gap-6 lg:grid-cols-[minmax(0,1fr)_340px]"},Ot={class:"space-y-3"},It={key:1,class:"grid place-items-center rounded-2xl border border-border bg-surface py-20 text-center"},Qt={class:"mb-3 hidden flex-wrap items-center gap-1.5 text-[12px] text-fg-subtle md:flex","aria-label":"Drobečky"},Ft={class:"truncate text-fg-muted"},Ht={class:"relative -mx-4 mb-4 md:hidden"},Jt={class:"grid items-start gap-6 lg:grid-cols-[minmax(0,1fr)_340px] lg:gap-8"},Gt={class:"min-w-0 space-y-5"},Wt={class:"mb-2.5 flex flex-wrap items-center gap-2"},Xt={class:"chip chip-mono bg-fg text-bg"},Yt={class:"font-semibold"},es={class:"max-w-[720px] text-[20px] font-semibold leading-tight tracking-[-0.02em] text-fg sm:text-[26px] lg:text-[32px]"},ts={class:"mt-1.5 text-[13px] text-fg-muted sm:text-[14px]"},ss={class:"panel p-4 md:hidden"},os={class:"num mb-2 text-[28px] font-semibold tracking-[-0.02em] text-fg"},ns={class:"flex flex-wrap items-center gap-2 text-[12px] text-fg-subtle"},as={key:0,class:"num"},rs={key:0,class:"whitespace-pre-line text-[14px] leading-relaxed text-fg"},ls={key:1,class:"text-[13px] text-fg-muted"},ws=j({__name:"SaleDetailScreen",setup(o){const p=ie(),u=W(),d=y(()=>Number(p.params.id)),{data:e,isPending:g,isError:a}=we(d);G(e,n=>{if(!n)return;const x=[n.cityPart&&n.cityPart!==n.city?n.cityPart:"",n.city,n.region].filter(Boolean).join(", "),M=n.price!=null?`${Math.round(n.price).toLocaleString("cs-CZ")} Kč`:"cena v RK";fe({noindex:!0,title:`${n.title||"Nemovitost"}${n.city?`, ${n.city}`:""} - nemovitost.eu`,description:`${n.title}. ${x?x+". ":""}Cena ${M}${n.pricePerM2?`, ${Math.round(n.pricePerM2).toLocaleString("cs-CZ")} Kč/m²`:""}. Srovnání s mediánem v okrese, historie ceny, dražby v okolí.`,canonicalPath:U(n),jsonLd:[xe([{name:"Na prodej",path:"/prodej"},{name:n.title||"Nemovitost",path:U(n)}]),{"@context":"https://schema.org","@type":"RealEstateListing",name:n.title,url:"https://nemovitost.eu"+U(n),datePosted:n.publishedAt??n.firstSeenAt,image:n.images.slice(0,1),offers:n.price!=null?{"@type":"Offer",price:n.price,priceCurrency:"CZK",availability:"https://schema.org/InStock"}:void 0,address:{"@type":"PostalAddress",streetAddress:n.street||void 0,addressLocality:n.city||void 0,postalCode:n.zip||void 0,addressRegion:n.region||void 0,addressCountry:"CZ"}}]})});const r=y(()=>{var n;return[{id:"parametry",label:"Parametry"},{id:"cena",label:"Cena"},{id:"popis",label:"Popis"},{id:"historie",label:"Historie"},{id:"mapa",label:"Lokalita"},{id:"drazby",label:"Dražby v okolí",count:(n=e.value)==null?void 0:n.nearbyAuctions.length}]}),f=y(()=>{const n=e.value;return n?[n.street,n.cityPart&&n.cityPart!==n.city?n.cityPart:"",n.city,n.district&&n.district!==n.city?`okres ${n.district}`:"",n.region].filter(Boolean).join(" · "):""}),b=y(()=>{const n=e.value;if(!n)return[];const x=n.floorAreaM2??n.landAreaM2;return[n.disposition?Y(n.disposition):"",x?`${Math.round(x)} m²`:"",n.floor!=null?`${n.floor}. patro`:"",n.ownership?ee(n.ownership):"",n.energyClass?`PENB ${n.energyClass}`:""].filter(Boolean)});function _(n){const x={};return n.region&&(x.kraj=n.region),n.district&&(x.okres=n.district),n.category&&(x.kategorie=n.category),x}return(n,x)=>{var E,O;const M=q("RouterLink");return l(),c("div",qt,[t(g)?(l(),c("div",Et,[s("div",Ot,[m(L,{class:"h-4 w-2/3"}),m(L,{class:"h-8 w-4/5"}),m(L,{class:"aspect-[16/10] w-full rounded-xl"}),m(L,{class:"h-40 w-full rounded-2xl"})]),m(L,{class:"h-[420px] rounded-2xl"})])):t(a)||!t(e)?(l(),c("div",It,[m(t(le),{class:"h-8 w-8 text-fg-subtle"}),x[2]||(x[2]=s("p",{class:"mt-2 text-[15px] font-semibold text-fg"},"Inzerát není dostupný",-1)),x[3]||(x[3]=s("p",{class:"mt-1 text-[13.5px] text-fg-muted"},"Buď byl stažen, nebo se ještě zpracovává.",-1)),m(M,{to:"/prodej",class:"mt-4 text-[13.5px] font-semibold text-primary hover:underline"},{default:k(()=>[...x[1]||(x[1]=[v("Přejít na katalog",-1)])]),_:1})])):(l(),c(w,{key:2},[s("nav",Qt,[m(M,{to:"/prodej",class:"hover:text-fg"},{default:k(()=>[...x[4]||(x[4]=[v("Na prodej",-1)])]),_:1}),t(e).region?(l(),c(w,{key:0},[x[5]||(x[5]=s("span",null,"›",-1)),m(M,{to:{path:"/prodej",query:_({region:t(e).region})},class:"hover:text-fg"},{default:k(()=>[v(i(t(e).region),1)]),_:1},8,["to"])],64)):h("",!0),t(e).district?(l(),c(w,{key:1},[x[6]||(x[6]=s("span",null,"›",-1)),m(M,{to:{path:"/prodej",query:_({region:t(e).region,district:t(e).district})},class:"hover:text-fg"},{default:k(()=>[v(i(t(e).district),1)]),_:1},8,["to"])],64)):h("",!0),t(e).category?(l(),c(w,{key:2},[x[7]||(x[7]=s("span",null,"›",-1)),m(M,{to:{path:"/prodej",query:_({region:t(e).region,district:t(e).district,category:t(e).category})},class:"hover:text-fg"},{default:k(()=>[v(i(t(F)(t(e).category)),1)]),_:1},8,["to"])],64)):h("",!0),x[8]||(x[8]=s("span",null,"›",-1)),s("span",Ft,i(t(e).title),1)]),s("div",Ht,[m(J,{s:t(e),class:"[&_img]:rounded-none [&>a]:rounded-none"},null,8,["s"]),s("button",{class:"absolute left-3 top-3 grid h-9 w-9 place-items-center rounded-full bg-black/70 text-white","aria-label":"Zpět",onClick:x[0]||(x[0]=D=>t(u).back())},[m(t(ke),{class:"h-4 w-4"})])]),s("div",Jt,[s("div",Gt,[s("div",null,[s("div",Wt,[s("span",Xt,i(t(F)(t(e).category)),1),(l(!0),c(w,null,C(b.value,D=>(l(),P(N,{key:D,tone:"info"},{default:k(()=>[v(i(D),1)]),_:2},1024))),128)),t(e).discount&&t(e).discount>0?(l(),P(N,{key:0,tone:"ok"},{default:k(()=>[s("b",Yt,"−"+i(Math.round(t(e).discount*100))+" % od zveřejnění",1)]),_:1})):h("",!0)]),s("h1",es,i(t(e).title||"Bez názvu"),1),s("p",ts,i(f.value||"Lokalita neurčena"),1)]),s("div",ss,[x[9]||(x[9]=s("div",{class:"label-mono mb-1.5"},"Cena",-1)),s("div",os,i(t(e).price!=null?t($)(t(e).price):t(e).priceNote||"cena v RK"),1),s("div",ns,[t(e).pricePerM2?(l(),c("span",as,i(t($)(t(e).pricePerM2))+"/m²",1)):h("",!0),((E=t(e).market)==null?void 0:E.deltaPct)!=null&&t(e).market.deltaPct<=-.03?(l(),P(N,{key:1,tone:"ok"},{default:k(()=>[v(i(Math.round(-t(e).market.deltaPct*100))+" % pod mediánem",1)]),_:1})):((O=t(e).market)==null?void 0:O.deltaPct)!=null&&t(e).market.deltaPct>=.03?(l(),P(N,{key:2,tone:"warn"},{default:k(()=>[v(i(Math.round(t(e).market.deltaPct*100))+" % nad mediánem",1)]),_:1})):h("",!0)])]),m(J,{s:t(e),class:"hidden md:block"},null,8,["s"]),m(be,{tabs:r.value},null,8,["tabs"]),m(Ie,{s:t(e)},null,8,["s"]),m(Ke,{s:t(e)},null,8,["s"]),m(A,{id:"popis",title:"Popis prodejce",note:t(z)(t(e).source)},{default:k(()=>[t(e).description?(l(),c("p",rs,i(t(e).description),1)):(l(),c("p",ls,"Zdroj popis neuvádí."))]),_:1},8,["note"]),m(We,{s:t(e)},null,8,["s"]),m(tt,{s:t(e)},null,8,["s"]),m(at,{s:t(e)},null,8,["s"]),m(H,{s:t(e),class:"lg:hidden"},null,8,["s"])]),m(H,{s:t(e),class:"hidden lg:sticky lg:top-[76px] lg:flex"},null,8,["s"])]),m(Bt,{s:t(e)},null,8,["s"])],64))])}}});export{ws as default};