import{d as J,q as se,o as p,c as k,a as c,s as me,n as U,x as $e,r as P,h as C,F as N,f as K,e as $,m as j,b as O,t as z,u as e,g as q,y as Ne,z as A,A as Ie,l as R,B as we,p as Me,R as qe,C as Ke,D as ve,E as Le,i as Ae,G as Ue}from"./index-D6fBX2R3.js";import{I as Ee}from"./PhMagnifyingGlass.vue-CrdUEWRb.js";import{d as ie,I as Be,G as Je,a as Ge,F as He,b as We,c as Qe,f as ue,s as ae,r as _e,u as Ce,_ as De,e as Z,H as Ye,g as Te,h as Xe,i as Ze,j as ze,k as te,l as le,m as et,n as B,o as W,p as Se,q as tt,t as nt,v as ot,w as at,x as lt,y as fe,z as be,A as st,B as it,R as rt,C as ut}from"./useMapSearch-FNdimiEi.js";import{_ as ye}from"./PropertyCard.vue_vue_type_script_setup_true_lang-DFlK5b0s.js";import{S as ge}from"./Spinner-CeWFdoCr.js";import{G as dt}from"./PhBuildings.vue-C5vZfTdO.js";import{I as ct}from"./PhCalendarBlank.vue-Dkme84em.js";import{_ as ee}from"./ChoiceChip.vue_vue_type_script_setup_true_lang-DSvE3COB.js";import{_ as pt}from"./SegmentToggle.vue_vue_type_script_setup_true_lang-CW3TswMm.js";import{H as mt,G as vt}from"./PhMapPin.vue-CB7Gf0NF.js";import{c as xe,u as ft,a as bt}from"./cards-CBzAMejU.js";import{f as ne}from"./format-C4dVnwMh.js";import{a as yt,b as gt}from"./seo-BuHrFLDl.js";import"./maplibre-gl-worker-BOdO3xHw.js";import"./PhClock.vue-COxf8wPs.js";const xt=["aria-label","aria-valuemin","aria-valuemax","aria-valuenow"],Ve=J({__name:"SingleRangeSlider",props:$e({min:{},max:{},step:{default:1},tone:{default:"primary"},label:{default:"Hodnota"}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(m){const d=m,r=se(m,"modelValue"),t=P(null),w=P(!1),x=C(()=>(r.value-d.min)/(d.max-d.min)*100);function y(D){r.value=Math.min(d.max,Math.max(d.min,Math.round(D/d.step)*d.step))}function M(D){const u=t.value.getBoundingClientRect();y(d.min+Math.min(1,Math.max(0,(D-u.left-10)/(u.width-20)))*(d.max-d.min))}function S(D){const u={ArrowLeft:-d.step,ArrowDown:-d.step,ArrowRight:d.step,ArrowUp:d.step};if(D.key in u)y(r.value+u[D.key]);else if(D.key==="Home")y(d.min);else if(D.key==="End")y(d.max);else return;D.preventDefault()}return(D,u)=>(p(),k("div",{ref_key:"track",ref:t,class:"relative flex h-10 touch-none select-none items-center px-2.5",onPointerdown:u[0]||(u[0]=V=>{w.value=!0,M(V.clientX),V.currentTarget.setPointerCapture(V.pointerId)}),onPointermove:u[1]||(u[1]=V=>w.value&&M(V.clientX)),onPointerup:u[2]||(u[2]=V=>w.value=!1),onPointercancel:u[3]||(u[3]=V=>w.value=!1)},[u[4]||(u[4]=c("div",{class:"absolute inset-x-2.5 h-1.5 rounded-[3px] bg-surface-3"},null,-1)),c("div",{class:U(["absolute left-2.5 h-1.5 rounded-[3px]",m.tone==="amber"?"bg-amber":"bg-primary"]),style:me({width:`calc((100% - 20px) * ${x.value/100})`})},null,6),c("span",{role:"slider",tabindex:"0","aria-label":m.label,"aria-valuemin":m.min,"aria-valuemax":m.max,"aria-valuenow":r.value,class:U(["absolute h-6 w-6 -translate-x-1/2 rounded-full border-2 bg-white shadow-map-control",m.tone==="amber"?"border-amber":"border-primary"]),style:me({left:`calc(10px + (100% - 20px) * ${x.value/100})`}),onKeydown:S},null,46,xt)],544))}}),kt={class:"flex flex-col gap-3.5"},ht={class:"flex flex-wrap gap-1.5"},$t={class:"flex flex-col gap-2.5 rounded-2xl border border-border-soft px-3.5 pb-2.5 pt-3.5"},wt={class:"flex items-center justify-between"},Mt={class:"text-[14.5px] font-extrabold capitalize"},_t={class:"grid grid-cols-7 gap-0.5 text-center text-[11px] font-extrabold tracking-[.04em] text-fg-subtle"},Ct={class:"grid grid-cols-7 gap-y-0.5"},Dt={key:0},Tt=["aria-label","aria-pressed","onClick"],zt={class:"flex items-center justify-between border-t border-border-soft pt-2 text-[12.5px] text-fg-muted"},St={key:0,class:"inline-flex items-center gap-1.5"},Vt={key:1},Rt={class:"font-bold text-fg"},Re=J({__name:"DatePicker",props:{from:{},to:{},withinDays:{},dayCounts:{}},emits:["range","within"],setup(m,{emit:d}){const r=m,t=d,w=ie(new Date),x=P(r.from?new Date(r.from):new Date);x.value=new Date(x.value.getFullYear(),x.value.getMonth(),1);let y="";const M=["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec"],S=C(()=>`${M[x.value.getMonth()]} ${x.value.getFullYear()}`),D=C(()=>{const g=x.value.getFullYear(),T=x.value.getMonth(),i=(new Date(g,T,1).getDay()+6)%7,o=new Date(g,T+1,0).getDate(),_=Array.from({length:i},()=>null);for(let L=1;L<=o;L++)_.push({key:ie(new Date(g,T,L)),n:L});return _}),u=[{label:"Dnes",days:0},{label:"Do 7 dnů",days:7},{label:"Do 14 dnů",days:14},{label:"Do 30 dnů",days:30}],V=g=>g===0?r.from===w&&r.to===w:r.withinDays===g&&!r.from;function h(g){y="",g===0?t("range",w,w):t("within",g)}function b(g){if(g<w)return;if(!y){y=g,t("range",g,g);return}const[T,v]=y<=g?[y,g]:[g,y];y="",t("range",T,v)}function n(g){x.value=new Date(x.value.getFullYear(),x.value.getMonth()+g,1)}const l=C(()=>{const g=T=>{const[,v,i]=T.split("-").map(Number);return`${i}. ${v}.`};return r.from&&r.to&&r.from!==r.to?`${g(r.from)} – ${g(r.to)}`:r.from?g(r.from):r.withinDays?`do ${r.withinDays} dnů`:"Kdykoli"});function I(g){const T=r.from&&r.to&&g>=r.from&&g<=r.to;return g===r.from||g===r.to?"bg-primary text-white rounded-xl":T?"bg-primary-soft text-fg rounded-none":g<w?"text-[#C5CCC8] cursor-default rounded-xl":"text-fg hover:bg-surface-2 rounded-xl"}return(g,T)=>(p(),k("div",kt,[c("div",ht,[(p(),k(N,null,K(u,v=>$(ee,{key:v.label,tone:"amber",active:V(v.days),onClick:i=>h(v.days)},{default:j(()=>[O(z(v.label),1)]),_:2},1032,["active","onClick"])),64))]),c("div",$t,[c("div",wt,[c("button",{type:"button","aria-label":"Předchozí měsíc",class:"grid h-8 w-8 place-items-center rounded-full bg-bg",onClick:T[0]||(T[0]=v=>n(-1))},[$(e(mt),{size:14,weight:"bold"})]),c("span",Mt,z(S.value),1),c("button",{type:"button","aria-label":"Další měsíc",class:"grid h-8 w-8 place-items-center rounded-full bg-bg",onClick:T[1]||(T[1]=v=>n(1))},[$(e(vt),{size:14,weight:"bold"})])]),c("div",_t,[(p(),k(N,null,K(["PO","ÚT","ST","ČT","PÁ","SO","NE"],v=>c("span",{key:v},z(v),1)),64))]),c("div",Ct,[(p(!0),k(N,null,K(D.value,(v,i)=>(p(),k(N,{key:(v==null?void 0:v.key)??`e${i}`},[v?(p(),k("button",{key:1,type:"button",class:U(["relative flex h-10 flex-col items-center justify-center gap-0.5 text-[13.5px]",[I(v.key),v.key===e(w)?"font-extrabold":"font-medium"]]),"aria-label":`${v.n}. ${m.dayCounts.get(v.key)?`${m.dayCounts.get(v.key)} dražeb`:""}`,"aria-pressed":v.key===m.from||v.key===m.to,onClick:o=>b(v.key)},[O(z(v.n)+" ",1),m.dayCounts.get(v.key)?(p(),k("span",{key:0,class:U(["h-[5px] w-[5px] rounded-full",v.key===m.from||v.key===m.to?"bg-white":"bg-amber"])},null,2)):q("",!0)],10,Tt)):(p(),k("span",Dt))],64))),128))]),c("div",zt,[m.dayCounts.size?(p(),k("span",St,[...T[2]||(T[2]=[c("span",{class:"h-1.5 w-1.5 rounded-full bg-amber"},null,-1),O("den s dražbami",-1)])])):(p(),k("span",Vt,"Termín dražby")),c("span",Rt,z(l.value),1)])])]))}}),re=()=>({region:"",district:"",category:"",kind:"",status:"",priceMin:null,priceMax:null,discountMin:"",onlyRepeated:!1,noShare:!1,noEncumbrance:!1,onlyVacant:!1,onlyComplete:!1,riskMax:"",withinDays:0,dateFrom:"",dateTo:"",q:""}),jt=["termin","sleva","cena","odhad","nove"],X=Ne("filters",()=>{const m=Ie(re()),d=P("termin"),r=P(1),t=P(""),w=C(()=>{const n=m;let l=0;return n.region&&l++,n.district&&l++,n.category&&l++,n.kind&&l++,n.status&&l++,(n.priceMin!=null||n.priceMax!=null)&&l++,n.discountMin&&l++,n.onlyRepeated&&l++,n.noShare&&l++,n.noEncumbrance&&l++,n.onlyVacant&&l++,n.onlyComplete&&l++,n.riskMax&&l++,n.withinDays&&l++,(n.dateFrom||n.dateTo)&&l++,n.q.trim()&&l++,l}),x=C(()=>{const n=m;let l=0;return n.kind&&l++,n.status&&l++,n.discountMin&&l++,n.onlyRepeated&&l++,n.onlyComplete&&l++,n.riskMax&&l++,l});function y(){Object.assign(m,re()),d.value="termin",r.value=1,t.value=""}function M(n){const l={};return n.region&&(l.kraj=n.region),n.district&&(l.okres=n.district),n.category&&(l.kategorie=n.category),n.kind&&(l.typ=n.kind),n.status&&(l.stav=n.status),n.priceMin!=null&&(l.cena_od=String(n.priceMin)),n.priceMax!=null&&(l.cena_do=String(n.priceMax)),n.discountMin&&(l.sleva_min=n.discountMin),n.onlyRepeated&&(l.opakovane="1"),n.noShare&&(l.bez_podilu="1"),n.noEncumbrance&&(l.bez_bremen="1"),n.onlyVacant&&(l.jen_volne="1"),n.onlyComplete&&(l.jen_kompletni="1"),n.riskMax&&(l.riziko=n.riskMax),n.withinDays&&(l.termin_do=String(n.withinDays)),n.dateFrom&&(l.od=n.dateFrom),n.dateTo&&(l.do=n.dateTo),n.q.trim()&&(l.q=n.q.trim()),t.value&&(l.bbox=t.value),d.value!=="termin"&&(l.razeni=d.value),l}const S=()=>M(m);function D(){const n=S();return delete n.bbox,r.value>1&&(n.strana=String(r.value)),n}function u(n){const l=i=>typeof n[i]=="string"?n[i]:"",I=i=>{const o=Number.parseInt(l(i),10);return Number.isFinite(o)?o:null};m.region=l("kraj"),m.district=l("okres"),m.category=l("kategorie"),m.kind=l("typ"),m.status=l("stav"),m.priceMin=I("cena_od"),m.priceMax=I("cena_do"),m.discountMin=l("sleva_min"),m.onlyRepeated=l("opakovane")==="1",m.noShare=l("bez_podilu")==="1",m.noEncumbrance=l("bez_bremen")==="1",m.onlyVacant=l("jen_volne")==="1",m.onlyComplete=l("jen_kompletni")==="1";const g=l("riziko");m.riskMax=g==="nizke"||g==="stredni"?g:"",m.withinDays=I("termin_do")??0;const T=i=>/^\d{4}-\d{2}-\d{2}$/.test(l(i))?l(i):"";m.dateFrom=T("od"),m.dateTo=T("do"),m.q=l("q");const v=l("razeni");jt.includes(v)&&(d.value=v),r.value=I("strana")??1}const V=C(()=>{const n=m,l=[];return n.category&&l.push(n.category),n.district?l.push(n.district):n.region&&l.push(n.region),n.priceMax!=null&&l.push(`do ${n.priceMax.toLocaleString("cs-CZ")} Kč`),n.q.trim()&&l.push(`„${n.q.trim()}"`),l}),h=P("");let b;return A(()=>JSON.stringify([m,d.value,t.value]),n=>{clearTimeout(b),b=setTimeout(()=>{h.value!==n&&(r.value=1),h.value=n},250)},{immediate:!0}),{filters:m,sort:d,page:r,bbox:t,paramsFor:M,activeCount:w,advancedCount:x,summary:V,reset:y,toParams:S,toQuery:D,applyFromQuery:u,debouncedKey:h}}),H=[{value:"byt",label:"Byty",icon:Be,plural:"Dražby bytů"},{value:"rodinny-dum",label:"Domy",icon:Je,plural:"Dražby domů"},{value:"pozemek",label:"Pozemky",icon:Ge,plural:"Dražby pozemků"},{value:"garaz",label:"Garáže",icon:He,plural:"Dražby garáží"},{value:"komercni",label:"Komerční",icon:We,plural:"Dražby komerčních nemovitostí"},{value:"rekreacni",label:"Chaty",icon:Qe,plural:"Dražby chat"}],ke=[{value:"termin",label:"Nejbližší termín"},{value:"sleva",label:"Největší rozdíl vs. odhad"},{value:"cena",label:"Nejnižší podání"},{value:"nove",label:"Nově zveřejněné"}],je=[{value:"execution",label:"Exekuční"},{value:"voluntary",label:"Dobrovolná"},{value:"insolvency",label:"Insolvenční"}],de=[{value:"0.33",label:"Jen pod 2/3 odhadu",sub:"Běžný strop prvního kola"},{value:"0.5",label:"Jen pod polovinou odhadu",sub:"Opakovaná kola"}],Y=[{key:"noShare",label:"Bez spoluvlastnických podílů",sub:"Jen celé nemovitosti 1/1"},{key:"noEncumbrance",label:"Bez věcných břemen",sub:"Podle dražební vyhlášky"},{key:"onlyVacant",label:"Jen ověřeně neobsazené",sub:"Bez nájemníků a uživatelů"},{key:"onlyComplete",label:"Jen s přečteným posudkem",sub:"Známe stav i plochu"}],Q=20;function oe(m,d){const r=X(),t=d??r.filters,w=C({get:()=>t.priceMax==null?Q:Math.min(Q,t.priceMax/1e6),set:o=>t.priceMax=o>=Q?null:Math.round(o*1e6)}),x=C(()=>{var o;return t.priceMax!=null?`do ${ue(t.priceMax)}`:t.discountMin?((o=de.find(_=>_.value===t.discountMin))==null?void 0:o.label.replace("Jen ",""))??"Podání":"Podání"}),y=C(()=>(t.priceMax!=null?1:0)+(t.discountMin?1:0)),M=C(()=>{const o=ie(new Date);return t.dateFrom&&t.dateFrom===t.dateTo?t.dateFrom===o?"Dnes":ae(t.dateFrom):t.dateFrom||t.dateTo?`${t.dateFrom?ae(t.dateFrom):"…"} – ${t.dateTo?ae(t.dateTo):"…"}`:t.withinDays?`Do ${t.withinDays} dnů`:"Termín"}),S=C(()=>!!(t.dateFrom||t.dateTo||t.withinDays));function D(o,_){t.withinDays=0,t.dateFrom=o,t.dateTo=_}function u(o){t.dateFrom="",t.dateTo="",t.withinDays=o}const V=C(()=>H.map(o=>{var _,L;return{...o,count:(L=(_=m.value)==null?void 0:_.category.find(E=>E.value===o.value))==null?void 0:L.count}})),h=C(()=>{var o;return t.category?((o=H.find(_=>_.value===t.category))==null?void 0:o.label)??xe(t.category):"Typ"}),b=o=>t.category=t.category===o?"":o,n=C(()=>(t.kind?1:0)+(t.onlyRepeated?1:0)+Y.filter(o=>t[o.key]).length),l=C(()=>{const o=[];return t.region&&o.push({key:"r",label:t.region,clear:()=>(t.region="",t.district="")}),t.district&&o.push({key:"d",label:t.district,clear:()=>t.district=""}),t.q.trim()&&o.push({key:"q",label:`„${t.q.trim()}"`,clear:()=>t.q=""}),o}),I=C(()=>{var o;return(((o=m.value)==null?void 0:o.region)??[]).filter(_=>_.value!==t.region).map(_=>({kind:"KRAJ",label:_.label||_.value,sub:"kraj",count:_.count,apply:()=>(t.region=_.value,t.district="")}))}),g=o=>t.q=o,T=o=>({kind:"OBEC",label:o.name,sub:o.district?`okres ${o.district}`:"obec",apply:()=>(t.region="",t.district="",t.q=o.name)}),v=C(()=>{const o=H.find(E=>E.value===t.category),_=o?o.plural:t.category?`Dražby – ${xe(t.category)}`:"Dražby nemovitostí",L=t.district?`v okrese ${t.district}`:t.region?_e[t.region]??`– ${t.region}`:"";return[_,L].filter(Boolean).join(" ")}),i=C(()=>{var o;return{place:t.district||t.region||t.q.trim()||"Celá ČR",rest:((o=H.find(_=>_.value===t.category))==null?void 0:o.label.toLowerCase())??""}});return{fs:r,f:t,priceHi:w,podaniLabel:x,podaniCount:y,termLabel:M,termActive:S,setRange:D,setWithin:u,typeOptions:V,typeLabel:h,toggleType:b,moreCount:n,locChips:l,locOptions:I,wordSearch:g,placeOption:T,heading:v,searchSummary:i}}const Ot={class:"flex flex-wrap items-center gap-2 px-4 pt-3"},Ft={key:2,class:"flex flex-col gap-3"},Pt={class:"flex items-baseline justify-between"},Nt={class:"tnum text-[20px] font-extrabold"},It={key:0,class:"tnum text-[12.5px] text-fg-muted"},qt={key:3,class:"grid grid-cols-2 gap-x-7 gap-y-[18px]"},Kt={class:"flex flex-col gap-2"},Lt={class:"flex flex-wrap gap-1.5"},At={key:0,class:"tnum font-semibold opacity-60"},Ut={class:"flex flex-col gap-2"},Et={class:"flex flex-wrap gap-1.5"},Bt={class:"col-span-2 flex flex-col gap-1.5"},Jt=J({__name:"AuctionFilterBar",props:$e({facets:{},total:{}},{panel:{required:!0},panelModifiers:{},view:{required:!0},viewModifiers:{}}),emits:["update:panel","update:view"],setup(m){const d=m,r=se(m,"panel"),t=se(m,"view"),w=X(),x=we(d,"facets"),y=oe(x),M=w,S=Ce("auctions",w.filters,w.paramsFor,()=>d.total),D=oe(x,S.draft),u=D.f,V=new Map;A(r,(v,i)=>{i&&S.commit(),v&&S.begin()});function h(){S.revert(),r.value=null}const b=P(null);function n(v,i){b.value=i,r.value=r.value===v?null:v}const l={termin:"Termín dražby",typ:"Typ nemovitosti",podani:"Nejnižší podání",vice:"Další filtry"},I={termin:380,typ:360,podani:380,vice:640},g=[{value:"split",label:"Seznam + mapa"},{value:"grid",label:"Jen seznam"},{value:"table",label:"Tabulka"}],T=C(()=>{var v;return new Map((((v=d.facets)==null?void 0:v.kind)??[]).map(i=>[i.value,i.count]))});return(v,i)=>(p(),k(N,null,[c("div",Ot,[$(De,{chips:e(y).locChips.value,options:e(y).locOptions.value,"word-search":e(y).wordSearch,"place-option":e(y).placeOption,placeholder:"Obec, kraj nebo slovo…",class:"!min-w-[240px]"},null,8,["chips","options","word-search","place-option"]),$(Z,{label:e(y).termLabel.value,icon:e(ct),tone:"amber",open:r.value==="termin",count:e(y).termActive.value?1:0,onToggle:i[0]||(i[0]=o=>n("termin",o))},null,8,["label","icon","open","count"]),$(Z,{label:e(y).typeLabel.value,icon:e(dt),tone:"amber",open:r.value==="typ",count:e(M).filters.category?1:0,onToggle:i[1]||(i[1]=o=>n("typ",o))},null,8,["label","icon","open","count"]),$(Z,{label:e(y).podaniLabel.value,icon:e(Ye),tone:"amber",open:r.value==="podani",count:e(y).podaniCount.value,onToggle:i[2]||(i[2]=o=>n("podani",o))},null,8,["label","icon","open","count"]),$(Z,{label:"Více",icon:e(Te),tone:"amber",open:r.value==="vice",count:e(y).moreCount.value,onToggle:i[3]||(i[3]=o=>n("vice",o))},null,8,["icon","open","count"]),e(M).activeCount?(p(),k("button",{key:0,type:"button",class:"h-[42px] px-2 text-[13px] font-bold text-fg-muted hover:text-fg",onClick:i[4]||(i[4]=o=>e(M).reset())},"Zrušit filtry")):q("",!0),$(pt,{modelValue:t.value,"onUpdate:modelValue":i[5]||(i[5]=o=>t.value=o),class:"ml-auto",options:g},null,8,["modelValue"])]),r.value?(p(),R(Xe,{key:0,title:l[r.value],anchor:b.value,width:I[r.value],total:e(S).count.value,"result-noun":"dražeb",onClose:i[15]||(i[15]=o=>r.value=null),onReset:h},{default:j(()=>[r.value==="termin"?(p(),R(Re,{key:0,from:e(u).dateFrom,to:e(u).dateTo,"within-days":e(u).withinDays,"day-counts":e(V),onRange:e(D).setRange,onWithin:e(D).setWithin},null,8,["from","to","within-days","day-counts","onRange","onWithin"])):r.value==="typ"?(p(),R(Ze,{key:1,tone:"amber",options:e(D).typeOptions.value,active:e(u).category?[e(u).category]:[],onToggle:e(D).toggleType},null,8,["options","active","onToggle"])):r.value==="podani"?(p(),k("div",Ft,[c("div",Pt,[c("span",Nt,z(e(u).priceMax==null?"Bez omezení":`do ${e(ue)(e(u).priceMax)}`),1),e(S).count.value!=null?(p(),k("span",It,z(e(ne)(e(S).count.value))+" dražeb",1)):q("",!0)]),c("div",{onPointerdownCapture:i[7]||(i[7]=o=>e(S).hold()),onPointerup:i[8]||(i[8]=o=>e(S).release()),onPointercancel:i[9]||(i[9]=o=>e(S).release()),onKeydown:i[10]||(i[10]=o=>e(S).hold()),onKeyup:i[11]||(i[11]=o=>e(S).release())},[$(Ve,{modelValue:e(D).priceHi.value,"onUpdate:modelValue":i[6]||(i[6]=o=>e(D).priceHi.value=o),tone:"amber",min:0,max:e(Q),step:.5,label:"Podání do"},null,8,["modelValue","max"])],32),i[16]||(i[16]=c("div",{class:"flex justify-between text-[12px] text-fg-subtle"},[c("span",null,"0 Kč"),c("span",null,"5 mil."),c("span",null,"10 mil."),c("span",null,"15 mil."),c("span",null,"20 mil.+")],-1)),$(ze,{modelValue:e(u).priceMax,"onUpdate:modelValue":i[12]||(i[12]=o=>e(u).priceMax=o),placeholder:"Podání do",label:"Nejnižší podání do v Kč"},null,8,["modelValue"]),(p(!0),k(N,null,K(e(de),o=>(p(),R(te,{key:o.value,boxed:"","model-value":e(u).discountMin===o.value,label:o.label,hint:o.sub,"onUpdate:modelValue":_=>e(u).discountMin=_?o.value:""},null,8,["model-value","label","hint","onUpdate:modelValue"]))),128))])):(p(),k("div",qt,[c("div",Kt,[$(le,null,{default:j(()=>[...i[17]||(i[17]=[O("Typ dražby",-1)])]),_:1}),c("div",Lt,[(p(!0),k(N,null,K(e(je),o=>(p(),R(ee,{key:o.value,tone:"amber",active:e(u).kind===o.value,onClick:_=>e(u).kind=e(u).kind===o.value?"":o.value},{default:j(()=>[O(z(o.label),1),T.value.get(o.value)?(p(),k("span",At,z(e(ne)(T.value.get(o.value))),1)):q("",!0)]),_:2},1032,["active","onClick"]))),128))])]),c("div",Ut,[$(le,null,{default:j(()=>[...i[18]||(i[18]=[O("Kolo",-1)])]),_:1}),c("div",Et,[$(ee,{tone:"amber",active:!e(u).onlyRepeated,onClick:i[13]||(i[13]=o=>e(u).onlyRepeated=!1)},{default:j(()=>[...i[19]||(i[19]=[O("Všechna kola",-1)])]),_:1},8,["active"]),$(ee,{tone:"amber",active:e(u).onlyRepeated,onClick:i[14]||(i[14]=o=>e(u).onlyRepeated=!0)},{default:j(()=>[...i[20]||(i[20]=[O("Opakovaná",-1)])]),_:1},8,["active"])])]),c("div",Bt,[$(le,null,{default:j(()=>[...i[21]||(i[21]=[O("Rizika",-1)])]),_:1}),(p(!0),k(N,null,K(e(Y),o=>(p(),R(te,{key:o.key,modelValue:e(u)[o.key],"onUpdate:modelValue":_=>e(u)[o.key]=_,boxed:"",label:o.label,hint:o.sub},null,8,["modelValue","onUpdate:modelValue","label","hint"]))),128))])]))]),_:1},8,["title","anchor","width","total"])):q("",!0)],64))}}),Gt={class:"flex flex-wrap gap-1.5"},Ht={class:"flex flex-wrap gap-1.5"},Wt=J({__name:"AuctionMobileFilters",props:{facets:{},total:{}},emits:["close"],setup(m,{emit:d}){const r=m,t=d,w=X(),x=Ce("auctions",w.filters,w.paramsFor,()=>r.total);Me(x.begin);const y=oe(we(r,"facets"),x.draft),M=y.f,S=new Map;function D(){x.commit(),t("close")}const u=()=>Object.assign(x.draft,re());return(V,h)=>(p(),R(et,{total:e(x).count.value,noun:"dražeb",onClose:D,onReset:u},{default:j(()=>[$(B,{title:"Lokace"},{default:j(()=>[$(De,{chips:e(y).locChips.value,options:e(y).locOptions.value,"word-search":e(y).wordSearch,"place-option":e(y).placeOption,placeholder:"+ Přidat obec, kraj nebo slovo",class:"!min-w-0"},null,8,["chips","options","word-search","place-option"])]),_:1}),$(B,{title:"Termín",value:e(y).termActive.value?e(y).termLabel.value:""},{default:j(()=>[$(Re,{from:e(M).dateFrom,to:e(M).dateTo,"within-days":e(M).withinDays,"day-counts":e(S),onRange:e(y).setRange,onWithin:e(y).setWithin},null,8,["from","to","within-days","day-counts","onRange","onWithin"])]),_:1},8,["value"]),$(B,{title:"Typ nemovitosti"},{default:j(()=>[c("div",Gt,[(p(!0),k(N,null,K(e(y).typeOptions.value,b=>(p(),R(W,{key:b.value,tone:"amber",active:e(M).category===b.value,onClick:n=>e(y).toggleType(b.value)},{default:j(()=>[O(z(b.label),1)]),_:2},1032,["active","onClick"]))),128))])]),_:1}),$(B,{title:"Nejnižší podání",value:e(M).priceMax==null?"":`do ${e(ue)(e(M).priceMax)}`},{default:j(()=>[c("div",{onPointerdownCapture:h[1]||(h[1]=b=>e(x).hold()),onPointerup:h[2]||(h[2]=b=>e(x).release()),onPointercancel:h[3]||(h[3]=b=>e(x).release()),onKeydown:h[4]||(h[4]=b=>e(x).hold()),onKeyup:h[5]||(h[5]=b=>e(x).release())},[$(Ve,{modelValue:e(y).priceHi.value,"onUpdate:modelValue":h[0]||(h[0]=b=>e(y).priceHi.value=b),tone:"amber",min:0,max:e(Q),step:.5,label:"Podání do"},null,8,["modelValue","max"])],32),$(ze,{modelValue:e(M).priceMax,"onUpdate:modelValue":h[6]||(h[6]=b=>e(M).priceMax=b),size:"lg",placeholder:"Podání do",label:"Nejnižší podání do v Kč"},null,8,["modelValue"]),(p(!0),k(N,null,K(e(de),b=>(p(),R(te,{key:b.value,boxed:"","model-value":e(M).discountMin===b.value,label:b.label,hint:b.sub,"onUpdate:modelValue":n=>e(M).discountMin=n?b.value:""},null,8,["model-value","label","hint","onUpdate:modelValue"]))),128))]),_:1},8,["value"]),$(B,{title:"Typ dražby"},{default:j(()=>[c("div",Ht,[(p(!0),k(N,null,K(e(je),b=>(p(),R(W,{key:b.value,tone:"amber",active:e(M).kind===b.value,onClick:n=>e(M).kind=e(M).kind===b.value?"":b.value},{default:j(()=>[O(z(b.label),1)]),_:2},1032,["active","onClick"]))),128)),$(W,{tone:"amber",active:e(M).onlyRepeated,onClick:h[7]||(h[7]=b=>e(M).onlyRepeated=!e(M).onlyRepeated)},{default:j(()=>[...h[8]||(h[8]=[O("Opakovaná kola",-1)])]),_:1},8,["active"])])]),_:1}),$(B,{title:"Rizika"},{default:j(()=>[(p(!0),k(N,null,K(e(Y),b=>(p(),R(te,{key:b.key,modelValue:e(M)[b.key],"onUpdate:modelValue":n=>e(M)[b.key]=n,boxed:"",label:b.label,hint:b.sub},null,8,["modelValue","onUpdate:modelValue","label","hint"]))),128))]),_:1})]),_:1},8,["total"]))}}),Qt={class:"overflow-hidden rounded-[18px] border border-border-soft bg-surface"},Yt={class:"flex min-w-0 items-center gap-3"},Xt=["src"],Zt={class:"flex min-w-0 flex-col gap-0.5"},en={class:"truncate font-bold"},tn={class:"truncate text-[12px] text-fg-muted"},nn={class:"flex flex-col items-end gap-0.5 text-right"},on={class:"tnum font-extrabold"},an={key:0,class:"text-[11.5px] font-bold text-primary"},ln={class:"tnum text-right text-fg-muted"},sn={class:"font-semibold text-amber-fg"},rn={class:"text-fg-muted"},he="grid-cols-[minmax(0,2.2fr)_1fr_1fr_1.1fr_.8fr]",un=J({__name:"AuctionTable",props:{items:{},selectedId:{}},emits:["hover"],setup(m){return(d,r)=>(p(),k("div",Qt,[c("div",{class:U(["grid gap-3 border-b border-border-soft px-4 py-2.5 text-[11px] font-extrabold uppercase tracking-[.04em] text-fg-muted",he])},[...r[1]||(r[1]=[c("span",null,"Nemovitost",-1),c("span",{class:"text-right"},"Nejnižší podání",-1),c("span",{class:"text-right"},"Odhad",-1),c("span",null,"Termín",-1),c("span",null,"Kolo",-1)])]),(p(!0),k(N,null,K(m.items,t=>(p(),R(e(qe),{key:t.id,to:t.href,class:U(["grid items-center gap-3 border-b border-border-soft px-4 py-2.5 text-[13px] text-fg last:border-b-0 hover:bg-bg hover:text-fg",[he,t.id===m.selectedId?"bg-bg":""]]),onMouseenter:w=>d.$emit("hover",t.id),onMouseleave:r[0]||(r[0]=w=>d.$emit("hover",null))},{default:j(()=>{var w,x;return[c("span",Yt,[c("img",{src:t.image,alt:"",loading:"lazy",class:"h-12 w-16 flex-none rounded-lg bg-[#DCE3DF] object-cover"},null,8,Xt),c("span",Zt,[c("span",en,z(t.title),1),c("span",tn,z(t.location),1)])]),c("span",nn,[c("span",on,z(t.price),1),t.discount?(p(),k("span",an,z(t.discount.replace(" vs. odhad","")),1)):q("",!0)]),c("span",ln,z(((w=t.priceNote)==null?void 0:w.replace(/^odhad /,""))??"—"),1),c("span",sn,z((x=t.auctionDate)==null?void 0:x.split(" · za")[0].split(" · zítra")[0]),1),c("span",rn,z(t.second??"1. kolo"),1)]}),_:2},1032,["to","class","onMouseenter"]))),128))]))}});function dn(){const m=X(),d=C(()=>(m.debouncedKey,m.toParams()));return ft({queryKey:["facets",d],queryFn:({signal:r})=>Se("/auctions/facets",d.value,r),placeholderData:Ke,staleTime:6e4})}const cn={key:0,class:"flex h-[calc(100vh-76px)] flex-col overflow-hidden"},pn={class:"flex flex-none items-center justify-between gap-3 px-1 pt-1"},mn={class:"m-0 text-[17px] font-extrabold tracking-[-.005em]"},vn={key:0,class:"tnum font-semibold text-fg-muted"},fn={key:0,class:"grid place-items-center py-20"},bn={key:1,class:"min-h-screen bg-bg pb-[100px]"},yn={class:"flex flex-col gap-2.5 border-b border-border bg-surface px-4 pb-2.5 pt-[max(16px,env(safe-area-inset-top))]"},gn={class:"truncate text-[15px] font-medium"},xn={class:"font-normal text-fg-muted"},kn={class:"no-scrollbar -mx-4 flex gap-1.5 overflow-auto px-4"},hn={class:"flex flex-col gap-3.5 px-4 pt-3.5"},$n={class:"flex items-center justify-between gap-2"},wn={class:"text-[14px] text-fg-muted"},Mn={class:"tnum font-semibold text-fg"},_n={class:"flex gap-1.5"},Cn={class:"sr-only"},Dn={key:1,class:"grid place-items-center py-16"},Un=J({__name:"SearchScreen",setup(m){const d=X(),r=Le(),t=Ae(),w=tt(),x=C(()=>{const a=r.params.kategorie,s=r.params.kraj,f=a?ut[a]:void 0,F=s?rt[s]:void 0;return a&&!f||s&&!F?null:{cat:a,kraj:s,c:f,r:F}}),y=C(()=>{const a=x.value,s={};return a!=null&&a.c&&(s.kategorie=a.c.filter),a!=null&&a.r&&(s.kraj=a.r),s});function M(a){const s={...a};for(const[f,F]of Object.entries(y.value))s[f]===F&&delete s[f];return s}const S=C(()=>{const a=x.value;return a!=null&&a.cat&&(a!=null&&a.kraj)?`/drazby/${a.cat}/${a.kraj}`:a!=null&&a.cat?`/drazby/${a.cat}`:"/drazby"});Me(()=>{const a=x.value;d.reset(),a!=null&&a.c&&(d.filters.category=a.c.filter),a!=null&&a.r&&(d.filters.region=a.r);const s={...y.value,...r.query};delete s.view,Object.keys(s).length&&d.applyFromQuery(s)}),A(()=>d.debouncedKey,()=>{const a=M(d.toParams());delete a.bbox,r.query.view==="map"&&(a.view="map");const s={};for(const[F,pe]of Object.entries(r.query))typeof pe=="string"&&F!=="strana"&&(s[F]=pe);Object.keys(a).length===Object.keys(s).length&&Object.keys(a).every(F=>a[F]===s[F])||t.replace({query:a})});const D=P({});A(()=>d.debouncedKey,()=>D.value=d.toParams(),{immediate:!0});const u=nt(D,(a,s)=>Se("/auctions",a,s),24),V=C(()=>u.items.value.map(bt)),h=C(()=>u.total.value),{data:b}=dn(),n=oe(b),l=P((()=>{try{const a=localStorage.getItem("nemovitost:auction-view");return a==="grid"||a==="table"?a:"split"}catch{return"split"}})());A(l,a=>{try{localStorage.setItem("nemovitost:auction-view",a)}catch{}});const I=C(()=>w.value&&l.value==="split"),g=P(null);A(w,a=>!a&&(d.bbox=""),{immediate:!0});const T=P(null),v=ot("auctions",d,()=>JSON.stringify([d.filters.region,d.filters.district,d.filters.q]),I,T),i=P(null),o=P(!1);A(i,a=>a&&(o.value=!1)),A(o,a=>a&&(i.value=null));const _=P(!1),L=P(null),E=P(null),Oe=C(()=>w.value?L.value:null),Fe=at(E,Oe,()=>u.loadMore());A(()=>u.loading.value,a=>!a&&Ue(Fe.refresh)),A(D,()=>{var a;return(a=L.value)==null?void 0:a.scrollTo({top:0})});const G=C(()=>{const a=x.value;return a!=null&&a.c?a.r?`${a.c.name} ${_e[a.r]??a.r}`:a.c.name:n.heading.value}),Pe=C(()=>{const a=h.value;return a===1?"dražba":a>=2&&a<=4?"dražby":"dražeb"}),ce=C(()=>{const a=d.filters,s=[];return(a.dateFrom||a.dateTo||a.withinDays)&&s.push({label:"Kdykoli",apply:()=>n.setWithin(0)}),(a.region||a.district)&&s.push({label:"Celá ČR",apply:()=>(a.region="",a.district="")}),(a.priceMax!=null||a.discountMin)&&s.push({label:"Bez omezení podání",apply:()=>(a.priceMax=null,a.discountMin="")}),a.category&&s.push({label:"Všechny typy",apply:()=>a.category=""}),Y.some(f=>a[f.key])&&s.push({label:"Bez rizikových filtrů",apply:()=>Y.forEach(f=>a[f.key]=!1)}),s.slice(0,3)});return A([G,h,()=>r.fullPath],()=>{var s;const a={};for(const[f,F]of Object.entries(r.query))typeof F=="string"&&f!=="view"&&(a[f]=F);yt({title:`${G.value} - nemovitost.eu`,description:`${G.value}: aktuální exekuční i dobrovolné dražby s odhadní cenou, nejnižším podáním, rozborem vyhlášky a posudku a upozorněním na rizika. Denně aktualizováno.`,canonicalPath:S.value,noindex:Object.keys(M(a)).length>0,jsonLd:[gt([{name:"Dražby",path:"/drazby"},...(s=x.value)!=null&&s.c?[{name:x.value.c.name,path:S.value}]:[]])]})},{immediate:!0}),(a,s)=>(p(),k(N,null,[e(w)?(p(),k("div",cn,[$(Jt,{panel:i.value,"onUpdate:panel":s[0]||(s[0]=f=>i.value=f),view:l.value,"onUpdate:view":s[1]||(s[1]=f=>l.value=f),facets:e(b),total:h.value},null,8,["panel","view","facets","total"]),c("div",{class:U(["grid min-h-0 flex-1 gap-4 px-4 pb-4 pt-3.5",l.value==="split"?"grid-cols-[minmax(0,2fr)_minmax(360px,3fr)]":"grid-cols-1"])},[c("section",{ref_key:"scroller",ref:L,"aria-label":"Výsledky",class:"no-scrollbar flex min-w-0 flex-col gap-3.5 overflow-auto pr-0.5"},[c("div",pn,[c("h1",mn,[O(z(G.value)+" ",1),e(u).loaded.value?(p(),k("span",vn,"("+z(e(ne)(h.value))+")",1)):q("",!0)]),e(w)&&e(d).bbox&&!I.value?(p(),k("button",{key:0,type:"button",class:"inline-flex h-[30px] flex-none items-center gap-1.5 rounded-full bg-primary-soft pl-3 pr-2 text-[12.5px] font-bold text-primary",onClick:s[2]||(s[2]=f=>e(v).clearBbox())},[s[18]||(s[18]=O("Jen výřez mapy ",-1)),$(e(ve),{size:12,weight:"bold"})])):q("",!0),$(lt,{modelValue:e(d).sort,"onUpdate:modelValue":s[3]||(s[3]=f=>e(d).sort=f),open:o.value,"onUpdate:open":s[4]||(s[4]=f=>o.value=f),options:e(ke)},null,8,["modelValue","open","options"])]),!e(u).loaded.value&&e(u).loading.value?(p(),k("div",fn,[$(ge)])):e(u).loaded.value&&!V.value.length?(p(),R(fe,{key:1,noun:"dražba",suggestions:ce.value,onReset:s[5]||(s[5]=f=>e(d).reset())},null,8,["suggestions"])):l.value==="table"?(p(),R(un,{key:2,items:V.value,"selected-id":g.value},null,8,["items","selected-id"])):(p(),k("div",{key:3,class:U(["grid gap-3.5",l.value==="split"?"grid-cols-2":"grid-cols-[repeat(auto-fill,minmax(300px,1fr))]"])},[(p(!0),k(N,null,K(V.value,f=>(p(),R(ye,{key:f.id,item:f,compact:l.value==="split",selected:f.id===g.value,onHover:s[6]||(s[6]=F=>F!=null&&(g.value=F))},null,8,["item","compact","selected"]))),128))],2)),c("div",{ref_key:"sentinel",ref:E,class:"h-px flex-none"},null,512),V.value.length||e(u).error.value?(p(),R(be,{key:4,loading:e(u).loading.value&&e(u).items.value.length>0,done:e(u).done.value,error:e(u).error.value,shown:V.value.length,total:h.value,noun:"dražeb","loading-text":"Načítám další dražby…",onRetry:s[7]||(s[7]=f=>e(u).loadMore())},null,8,["loading","done","error","shown","total"])):q("",!0)],512),l.value==="split"?(p(),R(st,{key:0,ref_key:"mapRef",ref:T,"search-on-move":e(v).searchOnMove.value,"onUpdate:searchOnMove":s[8]||(s[8]=f=>e(v).searchOnMove.value=f),kind:"auctions",tone:"amber",noun:"dražeb",geo:e(v).geo.data.value,loading:e(v).geo.isFetching.value,"highlight-id":g.value,onView:e(v).onView,onOpen:s[9]||(s[9]=f=>g.value=(f==null?void 0:f.id)??null)},null,8,["search-on-move","geo","loading","highlight-id","onView"])):q("",!0)],2)])):(p(),k("div",bn,[c("div",yn,[c("button",{type:"button",class:"flex h-[46px] items-center gap-2.5 rounded-xl bg-surface-2 px-3.5 text-left",onClick:s[10]||(s[10]=f=>_.value=!0)},[$(e(Ee),{size:18,class:"flex-none text-fg-muted"}),c("span",gn,[O(z(e(n).searchSummary.value.place),1),c("span",xn," · dražby"+z(e(n).searchSummary.value.rest?` · ${e(n).searchSummary.value.rest}`:""),1)])]),c("div",kn,[$(W,{tone:"amber",active:e(d).filters.withinDays===7&&!e(d).filters.dateFrom,onClick:s[11]||(s[11]=f=>e(n).setWithin(e(d).filters.withinDays===7?0:7))},{default:j(()=>[...s[19]||(s[19]=[O("Do 7 dnů",-1)])]),_:1},8,["active"]),(p(!0),k(N,null,K(e(H),f=>(p(),R(W,{key:f.value,tone:"amber",active:e(d).filters.category===f.value,onClick:F=>e(n).toggleType(f.value)},{default:j(()=>[O(z(f.label),1)]),_:2},1032,["active","onClick"]))),128))])]),c("div",hn,[c("div",$n,[c("span",wn,[c("strong",Mn,z(e(ne)(h.value)),1),O(" "+z(Pe.value),1)]),c("div",_n,[$(it,{modelValue:e(d).sort,"onUpdate:modelValue":s[12]||(s[12]=f=>e(d).sort=f),options:e(ke)},null,8,["modelValue","options"]),c("button",{type:"button",class:"inline-flex h-[38px] items-center gap-1.5 rounded-full bg-fg px-3 text-[13px] font-semibold text-white",onClick:s[13]||(s[13]=f=>_.value=!0)},[$(e(Te),{size:15}),O("Filtry"+z(e(d).activeCount?` · ${e(d).activeCount}`:""),1)])])]),c("h1",Cn,z(G.value),1),e(w)&&e(d).bbox&&!I.value?(p(),k("button",{key:0,type:"button",class:"inline-flex h-[30px] self-start items-center gap-1.5 rounded-full bg-primary-soft pl-3 pr-2 text-[12.5px] font-bold text-primary",onClick:s[14]||(s[14]=f=>e(v).clearBbox())},[s[20]||(s[20]=O("Jen výřez mapy ",-1)),$(e(ve),{size:12,weight:"bold"})])):q("",!0),!e(u).loaded.value&&e(u).loading.value?(p(),k("div",Dn,[$(ge)])):e(u).loaded.value&&!V.value.length?(p(),R(fe,{key:2,noun:"dražba",suggestions:ce.value,onReset:s[15]||(s[15]=f=>e(d).reset())},null,8,["suggestions"])):q("",!0),(p(!0),k(N,null,K(V.value,f=>(p(),R(ye,{key:f.id,item:f,compact:""},null,8,["item"]))),128)),c("div",{ref_key:"sentinel",ref:E,class:"h-px flex-none"},null,512),V.value.length||e(u).error.value?(p(),R(be,{key:3,loading:e(u).loading.value&&e(u).items.value.length>0,done:e(u).done.value,error:e(u).error.value,shown:V.value.length,total:h.value,noun:"dražeb","loading-text":"Načítám další dražby…",onRetry:s[16]||(s[16]=f=>e(u).loadMore())},null,8,["loading","done","error","shown","total"])):q("",!0)])])),_.value&&!e(w)?(p(),R(Wt,{key:2,facets:e(b),total:h.value,onClose:s[17]||(s[17]=f=>_.value=!1)},null,8,["facets","total"])):q("",!0)],64))}});export{Un as default};