@opengis/partsmap 0.1.35 → 0.1.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -84
- package/dist/index.js +2679 -2573
- package/dist/index.umd.cjs +2 -2
- package/dist/style.css +1 -1
- package/package.json +49 -49
package/dist/index.umd.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(e,xe){typeof exports=="object"&&typeof module<"u"?module.exports=xe(require("vue")):typeof define=="function"&&define.amd?define(["vue"],xe):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=xe(e.Vue))})(this,function(e){"use strict";const xe=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o};e.defineComponent({props:{modelValue:{type:Boolean,default:()=>!1},title:{type:String,default:()=>""},disabled:{type:Boolean,default:()=>!1}},data(){return{}},mounted(){this.modelValue||this.$emit("update:modelValue",!1)},computed:{modelState:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},labelCursorClasses(){return[{"cursor-not-allowed":this.disabled},{"cursor-pointer":!this.disabled}]}},methods:{handleEnterDown(t){const{keyCode:a}=t;a===13&&(this.modelState=!this.modelState)},addKeyHandler(){window.addEventListener("keydown",this.handleEnterDown)},removeKeyHandler(){window.removeEventListener("keydown",this.handleEnterDown)}}});const bt={},kt={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-green-600"};function wt(t,a){return e.openBlock(),e.createElementBlock("svg",kt,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)]))}const Ct=xe(bt,[["render",wt]]),Vt={},Bt={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"orange",class:"size-6 text-orange-600"};function Et(t,a){return e.openBlock(),e.createElementBlock("svg",Bt,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v3m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)]))}const Nt=xe(Vt,[["render",Et]]),St={},_t={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-blue-600"};function Mt(t,a){return e.openBlock(),e.createElementBlock("svg",_t,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"},null,-1)]))}const Dt=xe(St,[["render",Mt]]),zt={},Lt={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"red",class:"size-6 text-red-600"};function Pt(t,a){return e.openBlock(),e.createElementBlock("svg",Lt,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)]))}const $t=xe(zt,[["render",Pt]]),At={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},Ft={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},jt={class:"flex-1"},Rt={class:"font-medium text-gray-900"},Zt={class:"mt-0.5 text-sm text-gray-700"},Tt=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(t){const a={success:Ct,warning:Nt,error:$t,info:Dt};return(o,r)=>(e.openBlock(),e.createElementBlock("div",At,[e.createElementVNode("div",Ft,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a[o.type]))),e.createElementVNode("div",jt,[e.createElementVNode("strong",Rt,e.toDisplayString(o.title),1),e.createElementVNode("p",Zt,e.toDisplayString(o.message),1)]),r[0]||(r[0]=e.createElementVNode("button",{class:"m-3 rounded-full p-1.5 text-gray-500 transition-colors hover:bg-gray-50 hover:text-gray-700",type:"button","aria-label":"Dismiss notify"},[e.createElementVNode("span",{class:"sr-only"},"Dismiss popup"),e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-5"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})])],-1))])]))}});e.reactive({visible:!0});const Pe={top:"top-4 left-1/2 transform -translate-x-1/2","left-bottom":"bottom-4 left-4 transform","right-bottom":"bottom-4 right-4 transform",bottom:"bottom-4 left-1/2 transform -translate-x-1/2"},Ce=t=>{var p;const{type:a="info",title:o,message:r,position:l="right-bottom"}=t||{};let s=document.querySelector("#notify-root");s||(s=document.createElement("div"),s.id="notify-root",s.className=`fixed z-[2000] flex flex-col gap-3 ${Pe[l]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(s)),s.className.includes(Pe[l])||(Object.values(Pe).forEach(h=>{s.classList.remove(...h.split(" "))}),s.classList.add(...Pe[l].split(" ")));const x=document.createElement("div");s.appendChild(x);const n=e.createApp({render(){return e.h(Tt,{type:a,title:o,message:r,onClose:()=>{n.unmount(),x.remove()}})}});n.mount(x),(p=x.querySelector("button"))==null||p.addEventListener("click",()=>{x.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{n.unmount(),x.remove()},350)}),setTimeout(()=>{x.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{n.unmount(),x.remove()},350)},3500)},ue=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o},Ot={},vt={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-reload absolute inline mr-1 text-gray-800 transition-all cursor-pointer active:rotate-90 right-1 top-1 hover:text-blue-500"};function It(t,a){return e.openBlock(),e.createElementBlock("svg",vt,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M19.933 13.041a8 8 0 1 1 -9.925 -8.788c3.899 -1 7.935 1.007 9.425 4.747"},null,-1),e.createElementVNode("path",{d:"M20 4v5h-5"},null,-1)])])}const Ut=ue(Ot,[["render",It]]),Kt={},Ht={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"text-blue-600 w-[16px] h-[16px]"};function Wt(t,a){return e.openBlock(),e.createElementBlock("svg",Ht,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)])])}const be=ue(Kt,[["render",Wt]]),Gt={class:"flex items-center cursor-pointer w-full"},qt={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},Yt=["value"],Qt={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},Xt={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},Jt={key:1,class:"absolute right-2 flex size-3.5 items-center justify-center"},Oe=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(t,{expose:a,emit:o}){const r=t,l=o;function s(){l("itemClick",r.value)}const x=e.ref(null),n=e.computed(()=>r.layout==="inline"&&r.type==="radio"),p=e.computed(()=>r.layout==="vertical"?"text-[13px]":"text-sm");return a({el:x}),(h,f)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-sm group hover:bg-gray-100",ref_key:"el",ref:x},[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between w-full",p.value])},[e.createElementVNode("div",Gt,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(t.layout)?"text-gray-500 px-2 w-full py-2 cursor-pointer !flex flex-row items-center":"flex flex-row items-center w-full px-2 py-2 text-gray-500 cursor-pointer",{"bg-blue-100":t.highlighted,relative:n.value},p.value]),onClick:e.withModifiers(s,["stop","prevent"])},[n.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[t.type==="checkbox"?"rounded-[4px]":"rounded-full",t.color?`bg-[${t.color}] border-[#ffffff]`:t.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[t.isSelected?(e.openBlock(),e.createElementBlock("img",qt)):e.createCommentVNode("",!0)],2)),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:t.value},null,8,Yt),e.createElementVNode("div",{class:e.normalizeClass(["flex flex-1 flex-row items-center justify-between",n.value?"pl-1 pr-6":"w-[calc(100%-18px)] pl-[10px]"])},[e.createElementVNode("span",Qt,e.toDisplayString(t.label??"Відсутні дані"),1),t.count?(e.openBlock(),e.createElementBlock("div",Xt," ("+e.toDisplayString(t.count)+") ",1)):e.createCommentVNode("",!0)],2),n.value&&t.isSelected?(e.openBlock(),e.createElementBlock("span",Jt,[e.createVNode(be)])):e.createCommentVNode("",!0)],2)])],2)],512))}});function ve(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:x}=t,n=s??x??"data";function p(i){return Array.isArray(i)?i[0]:i}const h=e.ref(p(t.modelValue)),f=e.ref(""),u=e.ref(!1),y=e.ref([]),V=e.ref("id"),m=e.ref("text"),w=e.ref(!1),B=e.ref(t.layout!=="popover"&&r.length>l);function c(i){const C=i.find(Boolean)??{},g=["id","value","code","key"].find(A=>A in C)??"id",$=["text","label","name","title"].find(A=>A in C)??"text";return{autoValueKey:g,autoLabelKey:$}}function d(i){if(i.length>0){const g=c(i);V.value=g.autoValueKey,m.value=g.autoLabelKey}const C=[...i].sort((g,$)=>t.sort==="count"?$.count&&g.count?$.count-g.count:0:t.sort==="name"?String(g[m.value]??"").localeCompare(String($[m.value]??"")):0);y.value=C}r.length>0&&d(r);const M=e.computed(()=>{const i=y.value;return t.layout==="popover"||w.value?i:i.slice(0,l)});async function F(){if(o){u.value=!0;try{const i=new URL(o,window.location.origin);i.searchParams.set("json","1"),i.searchParams.set("limit",l.toString());const C=await fetch(i.toString());if(!C.ok){Ce({type:"error",title:"Error",message:"Failed to fetch remote options"}),y.value=[];return}const g=await C.json();if(!g[n]){Ce({type:"error",title:"Error",message:g}),y.value=[];return}d(g[n])}catch(i){console.error("Failed to fetch remote options:",i)}finally{u.value=!1}}}function P(){o&&y.value.length===0&&F()}e.watch(()=>t.modelValue,i=>{h.value=p(i)},{immediate:!0}),o||d(r);function b(i){return h.value===i[V.value]}function k(i){h.value=i[V.value],a("update:modelValue",h.value),a("change",{name:t.name,value:h.value})}function D(){h.value=void 0,a("update:modelValue",h.value),a("clear",t.name)}function S(){w.value=!w.value}return{innerValue:h,searchTerm:f,filteredOptions:M,isSelected:b,selectItem:k,clear:D,toggleShowAll:S,isReqProc:u,showAll:w,isEnableShowAll:B,labelKey:m,valueKey:V,allOptions:y,loadData:P}}function Qe(t={color:"blue"}){return e.computed(()=>{const a=`w-full px-3 py-2 border-solid border text-black border-gray-300 text-sm rounded focus:outline-none focus:ring-2 focus:ring-${t.color}-500 focus:border-transparent
|
|
2
|
-
text-gray-800 bg-white dark:text-neutral-300 dark:bg-neutral-800 dark:border-neutral-600`;return(t==null?void 0:t.size)==="sm"?`${a}h-[32px]`:`${a}h-[38px]`})}function ke(){return"rounded-md font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 px-4 py-2 w-full bg-transparent border text-black text-sm h-[38px]"}function el(){return"font-medium border border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 h-7 rounded-md text-xs px-2 py-1 text-gray-800 bg-white hover:bg-gray-100 dark:text-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600"}function Xe(t){return t==="ghost"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border text-gray-600 hover:bg-blue-100 hover:text-gray-800 focus:outline-hidden focus:bg-gray-100 focus:text-gray-800 disabled:opacity-50 disabled:pointer-events-none dark:text-gray-500 dark:hover:bg-blue-800/30 dark:hover:text-blue-400 dark:focus:bg-blue-800/30 dark:focus:text-blue-400":t==="soft"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border bg-white-100 text-gray-800 hover:bg-gray-200 hover:bg-gray-200 focus:outline-hidden focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:text-blue-400 dark:hover:bg-blue-900 dark:focus:bg-blue-900":"relative border-solid border-gray-200 focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 border-input hover:bg-gray-100 border px-4 py-2 gap-1 bg-transparent h-[38px]"}const Je={en:{apply:"Apply",search:"Search",more:"Show more",less:"Show less",selected:"selected",clear:"Clear",notfound:"Nothing found",period:"Period",today:"Today",week:"Week",max:"max",min:"min",month:"Month",quarter:"Quarter",year:"Year",alltime:"All Time",prev:"Prev",next:"Next",selectFieldHelp:"Select a field to start creating a filter."},uk:{apply:"Застосувати",search:"Пошук",more:"Показати більше",less:"Показати меньше",selected:"обрано",clear:"Очистити",notfound:"Нічого не знайдено",period:"Період",today:"Сьогодні",week:"Тиждень",max:"макс",min:"мін",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період",selectFieldHelp:"Оберіть поле, щоб розпочати створення фільтра."}};function et(t){const a=t.split(".")[1],o=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(Je[o||navigator.language]||Je.uk)[a]}function de(){const t=e.getCurrentInstance();if(!t.appContext.config.globalProperties.$i18n)return et;const a=t.appContext.config.globalProperties.$t;return o=>{const r=a(o);return r===o?et(o):r}}const tl={},ll={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function ol(t,a){return e.openBlock(),e.createElementBlock("svg",ll,[...a[0]||(a[0]=[e.createStaticVNode('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter1)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter1" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>',12)])])}const Ie=ue(tl,[["render",ol]]),nl={},rl={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down w-[14px] rotate"};function al(t,a){return e.openBlock(),e.createElementBlock("svg",rl,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const $e=ue(nl,[["render",al]]),il={},sl={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down w-[14px] rotate-[180deg]"};function cl(t,a){return e.openBlock(),e.createElementBlock("svg",sl,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Ue=ue(il,[["render",cl]]),dl={key:0,class:"w-full"},ml={class:"flex flex-col items-center justify-center p-5 text-center"},pl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},fl={key:1,class:"py-2 px-2"},ul=["disabled"],gl=e.defineComponent({__name:"radio",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=e.ref(null),s=ke(),x=de(),n=o,{innerValue:p,filteredOptions:h,isSelected:f,selectItem:u,clear:y,toggleShowAll:V,isReqProc:m,showAll:w,isEnableShowAll:B,labelKey:c,valueKey:d,allOptions:M,loadData:F}=ve({...r,modelValue:r.modelValue??r.default??""},n);return e.onMounted(()=>{r.api&&F()}),a({clear:y,inputTextRef:l}),e.watch(()=>r.modelValue,P=>{P===void 0&&(p.value=void 0)}),(P,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col max-h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),k=>(e.openBlock(),e.createBlock(Oe,{layout:t.layout,key:k[e.unref(d)],count:k.count,label:k[e.unref(c)],color:k.color,type:"radio",value:k[e.unref(d)],"is-selected":e.unref(f)(k),onItemClick:D=>e.unref(u)(k)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),t.type==="select"&&e.unref(h).length===0&&!e.unref(m)?(e.openBlock(),e.createElementBlock("div",dl,[e.createElementVNode("div",ml,[e.createVNode(Ie),b[4]||(b[4]=e.createElementVNode("div",{class:"max-w-sm mx-auto mt-6"},[e.createElementVNode("p",{class:"font-medium text-gray-800 dark:text-neutral-200"},"За вашим запитом нічого не знайдено"),e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"})],-1))])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(w)&&e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:b[0]||(b[0]=(...k)=>e.unref(V)&&e.unref(V)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[b[5]||(b[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode($e)])):e.createCommentVNode("",!0),e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:b[1]||(b[1]=(...k)=>e.unref(V)&&e.unref(V)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[b[6]||(b[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(Ue)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",pl,[e.createTextVNode(e.toDisplayString(e.unref(p)||e.unref(p)===null?1:0)+" з "+e.toDisplayString(e.unref(M).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:b[2]||(b[2]=(...k)=>e.unref(y)&&e.unref(y)(...k))}," Очистити ",512),[[e.vShow,e.unref(p)!==""&&e.unref(p)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",fl,[e.createElementVNode("button",{type:"button",disabled:!(e.unref(p)!==""&&e.unref(p)!==void 0),class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:b[3]||(b[3]=(...k)=>e.unref(y)&&e.unref(y)(...k))},e.toDisplayString(e.unref(x)("filter.clear")),11,ul)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function tt(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:x}=t,n=s??x??"data";function p(i){return Array.isArray(i)?i:i?[i]:[]}const h=e.ref(p(t.modelValue)),f=e.ref(""),u=e.ref(!1),y=e.ref([]),V=e.ref("id"),m=e.ref("text"),w=e.ref(!1),B=e.ref(t.layout!=="popover"&&r.length>l);function c(i){const C=i.find(Boolean)??{},g=["id","value","code","key"].find(A=>A in C)??"id",$=["text","label","name","title"].find(A=>A in C)??"text";return{autoValueKey:g,autoLabelKey:$}}function d(i){if(i.length>0){const g=c(i);V.value=g.autoValueKey,m.value=g.autoLabelKey}const C=[...i].sort((g,$)=>t.sort==="count"?$.count&&g.count?$.count-g.count:0:t.sort==="name"?String(g[m.value]).localeCompare(String($[m.value])):0);y.value=C}r.length>0&&d(r);const M=e.computed(()=>{const i=y.value;return t.layout==="popover"||w.value?i:i.slice(0,l)});async function F(){if(o){u.value=!0;try{const i=new URL(o,window.location.origin);i.searchParams.set("json","1"),i.searchParams.set("limit",l.toString());const C=await fetch(i.toString());if(!C.ok){Ce({type:"error",title:"Error",message:"Failed to fetch remote options"}),y.value=[];return}const g=await C.json();if(!g[n]){Ce({type:"error",title:"Error",message:g}),y.value=[];return}d(g[n])}catch(i){console.error("Failed to fetch remote options:",i)}finally{u.value=!1}}}function P(){o&&y.value.length===0&&F()}e.watch(()=>t.modelValue,i=>{h.value=p(i)},{immediate:!0}),o||d(r);function b(i){return h.value&&h.value.includes(i[V.value])}function k(i){const C=h.value.includes(i[V.value]);h.value=C?h.value.filter(g=>g!==i[V.value]):[...h.value,i[V.value]],a("update:modelValue",h.value),a("change",{name:t.name,value:h.value})}function D(){h.value=[],a("update:modelValue",h.value),a("clear",t.name)}function S(){w.value=!w.value}return{innerValue:h,searchTerm:f,filteredOptions:M,isSelected:b,selectItem:k,clear:D,toggleShowAll:S,isReqProc:u,showAll:w,isEnableShowAll:B,labelKey:m,valueKey:V,allOptions:y,loadData:P}}const hl={key:0,class:"w-full"},yl={class:"flex flex-col items-center justify-center p-5 text-center"},xl={class:"max-w-sm mx-auto mt-6"},bl={class:"font-medium text-gray-800 dark:text-neutral-200"},kl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},wl={key:1,class:"py-2 px-2 border-t"},Cl=["disabled"],Vl={class:"text-xs text-gray-500"},lt=e.defineComponent({__name:"checkbox",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=de(),l=ke(),s=t,x=o,{innerValue:n,filteredOptions:p,isSelected:h,selectItem:f,clear:u,toggleShowAll:y,isReqProc:V,showAll:m,isEnableShowAll:w,labelKey:B,valueKey:c,allOptions:d,loadData:M}=tt({...s,modelValue:s.modelValue},x);return e.onMounted(()=>{s.api&&M()}),e.watch(()=>s.modelValue,F=>{F===void 0&&(n.value=[])}),a({clear:u}),(F,P)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col max-h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p),b=>(e.openBlock(),e.createBlock(Oe,{layout:t.layout,count:b.count,label:b[e.unref(B)],color:b.color,type:"checkbox",value:b[e.unref(c)],"is-selected":e.unref(h)(b),onItemClick:k=>e.unref(f)(b)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),t.type==="select"&&e.unref(p).length===0&&!e.unref(V)?(e.openBlock(),e.createElementBlock("div",hl,[e.createElementVNode("div",yl,[e.createVNode(Ie),e.createElementVNode("div",xl,[e.createElementVNode("p",bl,e.toDisplayString(e.unref(r)("filter.notfound")),1),P[4]||(P[4]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(m)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:P[0]||(P[0]=(...b)=>e.unref(y)&&e.unref(y)(...b)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.more"))+" ",1),e.createVNode($e)])):e.createCommentVNode("",!0),e.unref(m)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:P[1]||(P[1]=(...b)=>e.unref(y)&&e.unref(y)(...b)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.less"))+" ",1),e.createVNode(Ue)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",kl,[e.createTextVNode(e.toDisplayString(e.unref(n).length)+" / "+e.toDisplayString(e.unref(d).length)+" "+e.toDisplayString(e.unref(r)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:P[2]||(P[2]=(...b)=>e.unref(u)&&e.unref(u)(...b))},e.toDisplayString(e.unref(r)("filter.clear")),513),[[e.vShow,e.unref(n).length!==0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",wl,[e.createElementVNode("button",{type:"button",disabled:e.unref(n).length===0,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:P[3]||(P[3]=(...b)=>e.unref(u)&&e.unref(u)(...b))},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.clear"))+" ",1),e.createElementVNode("span",Vl,e.toDisplayString(e.unref(n).length)+" з "+e.toDisplayString(e.unref(d).length),1)],10,Cl)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Bl={},El={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"15px",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-search stroke-gray-500 transition-all"};function Nl(t,a){return e.openBlock(),e.createElementBlock("svg",El,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0"},null,-1),e.createElementVNode("path",{d:"M21 21l-6 -6"},null,-1)])])}const ot=ue(Bl,[["render",Nl]]),Sl={},_l={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-x stroke-gray-500 hover:stroke-red-500 transition-all",width:"15px",height:"15px"};function Ml(t,a){return e.openBlock(),e.createElementBlock("svg",_l,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M18 6l-12 12"},null,-1),e.createElementVNode("path",{d:"M6 6l12 12"},null,-1)])])}const Ke=ue(Sl,[["render",Ml]]);class nt{static getWidthClass(a){return typeof a=="number"?`max-w-[${a}px] min-w-[${a}px]`:typeof a=="string"?a.endsWith("%")||a.endsWith("px")?`max-w-[${a}]`:`max-w-${a}`:"w-full"}}const Dl={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},zl=["placeholder"],Ll=e.defineComponent({__name:"text-input",props:{id:{},name:{},title:{},type:{},label:{},width:{default:220},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{emit:a}){var h;const o=t,r=e.ref((o.placeholder||o.label||o.title||o.name||"search").toString()),l=a,s=e.ref(((h=o.modelValue)==null?void 0:h.toString())??"");e.watch(()=>o.modelValue,f=>{f!==s.value&&(s.value=(f==null?void 0:f.toString())??"")});let x=null;function n(){if(s.value=s.value.trimStart(),s.value.length===0){p();return}x&&clearTimeout(x),x=setTimeout(()=>{l("update:modelValue",s.value),l("change",{name:o.name,value:s.value})},300)}function p(){s.value="",l("update:modelValue",""),l("clear",o.name)}return(f,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vs-form-text relative bg-white [&>input]:py-[7px] [&>input]:max-h-[38px] [&>input]:ps-10 [&>input]:pe-8 [&>input]:block [&>input]:w-full [&>input]:bg-gray-100 [&>input]:border-transparent [&>input]:text-sm [&>input]:focus:bg-white [&>input]:focus:border-blue-500 [&>input]:focus:ring-blue-500 [&>input]:disabled:opacity-50 [&>input]:disabled:pointer-events-none [&>input]:dark:bg-neutral-700 [&>input]:dark:border-transparent [&>input]:dark:text-neutral-400 [&>input]:dark:placeholder:text-neutral-400 dark:focus:bg-neutral-800 dark:focus:ring-neutral-600",t.layout==="vertical"?"rounded-md":"rounded-sm",t.layout==="vertical"?"[&>input]:rounded-md":"[&>input]:rounded-sm",t.layout==="inline"?e.unref(nt).getWidthClass(t.width):"mb-2"+(t.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Dl,[e.createVNode(ot)]),s.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:p,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(Ke)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":u[0]||(u[0]=y=>s.value=y),onInput:n,placeholder:r.value,class:e.normalizeClass(["!pr-7 !pl-8 bg-white h-[38px] min-w-[100px] text-sm py-2 px-3 block w-full border border-solid placeholder:text-nowrap border-stone-200 text-sm text-stone-800 placeholder:text-stone-400 focus:border-2 focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500",t.layout==="vertical"?"rounded-md":"rounded-sm"])},null,42,zl),[[e.vModelText,s.value]])],2))}}),Pl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},$l=["placeholder","disabled"],Al={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Fl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},jl=["placeholder","disabled"],Rl=["disabled"],Zl=e.defineComponent({__name:"range-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=Qe(),l=ke(),s=de(),x=t,n=e.ref(x.modelValue??x.default??[]),p=o,h=e.computed({get:()=>x.modelValue??n.value,set:y=>{x.modelValue!==void 0?p("update:modelValue",y):n.value=y}});function f(){p("change",{name:x.name,value:h.value||n.value})}function u(){n.value=[],h.value=n.value,p("clear",x.name)}return e.watch(()=>x.modelValue,y=>{y!==void 0&&x.layout!=="popover"?(n.value=y,p("update:modelValue",y)):n.value=[]}),a({clear:u,currentValue:h}),(y,V)=>{var m,w;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",Pl,e.toDisplayString(e.unref(s)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(r)),placeholder:((m=t.placeholder)==null?void 0:m[0])??e.unref(s)("filter.min"),step:"1",style:{outline:"none"},"onUpdate:modelValue":V[0]||(V[0]=B=>h.value[0]=B),disabled:t.disabled},null,10,$l),[[e.vModelText,h.value[0]]])]),t.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",Al," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",Fl,e.toDisplayString(e.unref(s)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(r)),placeholder:((w=t.placeholder)==null?void 0:w[1])??e.unref(s)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":V[1]||(V[1]=B=>h.value[1]=B),disabled:t.disabled},null,10,jl),[[e.vModelText,h.value[1]]])]),["popover","inline","vertical"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:f,class:e.normalizeClass(e.unref(l)+(t.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(t.layout==="vertical"?"Ok":e.unref(s)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(h.value[0]||h.value[1]),onClick:u,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100")},e.toDisplayString(e.unref(s)("filter.clear")),11,Rl)):e.createCommentVNode("",!0)],2)]),(t.cleanable&&n.value.length,e.createCommentVNode("",!0))],64)}}});class J{static format(a){const o=a.getFullYear(),r=(a.getMonth()+1).toString().padStart(2,"0"),l=a.getDate().toString().padStart(2,"0");return`${o}-${r}-${l}`}static getShiftedDay(a,o=0){const r=a?new Date(a):new Date;return r.setDate(r.getDate()+o),this.format(r)}static getLastWeekRange(a,o,r=0){if(a&&o){const h=new Date(a),f=new Date(o);return h.setDate(h.getDate()+r*7),f.setDate(f.getDate()+r*7),[this.format(h),this.format(f)]}const l=new Date,s=l.getDay(),x=s===0?13:s-1+7,n=new Date(l);n.setDate(l.getDate()-x+r*7);const p=new Date(n);return p.setDate(n.getDate()+6),[this.format(n),this.format(p)]}static getMonthRange(a,o,r=0){let l;a?l=new Date(a):l=new Date,l=new Date(l.getFullYear(),l.getMonth()+r,1);const s=l,x=new Date(l.getFullYear(),l.getMonth()+1,0);return[this.format(s),this.format(x)]}static getQuarterRange(a,o,r=0){const l=a||o,s=l?new Date(l):new Date;let x=Math.floor(s.getMonth()/3);x+=r;const n=(x%4+4)%4*3,p=s.getFullYear()+Math.floor(x/4),h=new Date(p,n,1),f=new Date(p,n+3,0);return[this.format(h),this.format(f)]}static getYear(a,o=0){let r;return a&&/^\d{4}$/.test(a)?r=parseInt(a,10):a?r=new Date(a).getFullYear():r=new Date().getFullYear(),String(r+o)}static getYearRange(a,o=0){let r;return a&&/^\d{4}$/.test(a)?r=parseInt(a,10):a?r=new Date(a).getFullYear():r=new Date().getFullYear(),[this.format(new Date(r+o,0,1)),this.format(new Date(r+o+1,0,0))]}static getRangeFromDaysBefore(a){const o=new Date,r=new Date(o.getTime());return r.setDate(o.getDate()-a),[this.format(r),this.format(o)]}}function rt(t,a){const{popoverRef:o}=t,r=de(),l=e.ref(""),s=e.ref(t.modelValue??t.default??[]),x=e.ref(0);function n(){const c=J.getRangeFromDaysBefore(x.value);return s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value),c}function p(c){var M;l.value=c,(M=o.value)==null||M.close();const d=[];switch(l.value){case"today":d.push(J.getShiftedDay()),d.push(J.getShiftedDay());break;case"week":d.push(...J.getLastWeekRange());break;case"month":d.push(...J.getMonthRange());break;case"quarter":d.push(...J.getQuarterRange());break;case"year":d.push(...J.getYearRange());break;case"last_7_days":x.value=7,n();break;case"range":x.value=7,d.push(...n());break}s.value=[...d],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}function h(){const c=[];switch(l.value){case"today":c.push(J.getShiftedDay(s.value[0],1));break;case"week":c.push(...J.getLastWeekRange(s.value[0],s.value[1],1));break;case"month":c.push(...J.getMonthRange(s.value[0],s.value[1],1));break;case"quarter":c.push(...J.getQuarterRange(s.value[0],s.value[1],1));break;case"year":c.push(...J.getYearRange(s.value[0],1));break}s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}function f(){const c=[];switch(l.value){case"today":c.push(J.getShiftedDay(s.value[0],-1));break;case"week":c.push(...J.getLastWeekRange(s.value[0],s.value[1],-1));break;case"month":c.push(...J.getMonthRange(s.value[0],s.value[1],-1));break;case"quarter":c.push(...J.getQuarterRange(s.value[0],s.value[1],-1));break;case"year":c.push(...J.getYearRange(s.value[0],-1));break}s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}const u=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function y(c){const[d,M,F]=c.split("-");return`${F}.${M}.${d}`}function V(c,d="long"){const M=new Date(Date.UTC(2e3,c-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:d,timeZone:"UTC"}).format(M)}function m(c){const{value:d}=s;switch(c){case"today":return y(d[0]);case"range":return"Період";case"week":return d[0]&&d[1]?`${y(d[0])} – ${y(d[1])}`:"";case"quarter":if(d[0]){const M=new Date(d[0]),F=M.getFullYear(),P=M.getMonth();return`${Math.floor(P/3)+1} ${r("filter.quarter")} ${F}`}return"";case"month":if(d[0]){const[M,F]=d[0].split("-");return`${V(parseInt(F,10))} ${M}`}return"";case"year":return d[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const w=e.computed(()=>l.value?m(l.value):t.label??"");function B(){l.value="",s.value=[],a("update:modelValue",[]),a("clear",t.name)}return{activeMode:l,innerValue:s,daysBefore:x,onDaysBeforeChange:n,onSelectChange:p,nextClick:h,prevClick:f,ukMonths:u,formatDisplayDate:y,getModeLabel:m,currentLabel:w,clear:B}}const Tl={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},Ol={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},vl=["max","disabled"],Il=["min","disabled"],Ul={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Kl=["max","disabled"],Hl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Wl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Gl=["min","disabled"],ql={class:"flex gap-1 px-2"},Yl=["title","onClick"],Ql={class:"pt-2 px-2"},Xl=["disabled"],Jl=e.defineComponent({__name:"date-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=Qe(),s=ke(),x=el(),n=de(),p=o,h=e.ref(null),{activeMode:f,innerValue:u,onSelectChange:y,nextClick:V,prevClick:m,clear:w}=rt({...r,popoverRef:h},p);e.watch(()=>r.modelValue,F=>{F!==void 0?(u.value=F,p("update:modelValue",F)):(f.value="",u.value=[])}),e.watch(u,F=>{p("update:modelValue",F),p("change",{name:r.name,value:F})},{deep:!0});const B=["today","week","month","quarter","year"],c={today:{label:"день",title:n("filter.today")},week:{label:"тиж.",title:n("filter.week")},month:{label:"міс.",title:n("filter.month")},quarter:{label:"кв.",title:n("filter.quarter")},year:{label:"рік",title:n("filter.year")}};function d(F){var P;return((P=c[F])==null?void 0:P.label)??n(`filter.${F}`)}function M(F){var P;return((P=c[F])==null?void 0:P.title)??n(`filter.${F}`)}return a({clear:w,popoverRef:h}),(F,P)=>{var b;return e.openBlock(),e.createElementBlock(e.Fragment,null,[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Tl,[e.unref(f)!==""&&e.unref(f)==="range"?(e.openBlock(),e.createElementBlock("div",Ol,[P[7]||(P[7]=e.createTextVNode(" 1111 ",-1)),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(u)[1],locale:"uk-UA","onUpdate:modelValue":P[0]||(P[0]=k=>e.unref(u)[0]=k),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:t.disabled},null,8,vl),[[e.vModelText,e.unref(u)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(u)[0],locale:"uk-UA","onUpdate:modelValue":P[1]||(P[1]=k=>e.unref(u)[1]=k),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:t.disabled},null,8,Il),[[e.vModelText,e.unref(u)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",Ul,e.toDisplayString(e.unref(n)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(u)[1],locale:"uk-UA","onUpdate:modelValue":P[2]||(P[2]=k=>e.unref(u)[0]=k),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,Kl),[[e.vModelText,e.unref(u)[0]]])],2),t.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",Hl," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",Wl,e.toDisplayString(e.unref(n)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(u)[0],locale:"uk-UA","onUpdate:modelValue":P[3]||(P[3]=k=>e.unref(u)[1]=k),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,Gl),[[e.vModelText,e.unref(u)[1]]])],2)],2),e.createElementVNode("div",ql,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(B,k=>e.createElementVNode("button",{key:k,class:e.normalizeClass(e.unref(x)+(e.unref(f)===k?" bg-blue-100":"")),title:M(k),onClick:D=>e.unref(y)(k)},e.toDisplayString(d(k)),11,Yl)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(x)),onClick:P[4]||(P[4]=(...k)=>e.unref(m)&&e.unref(m)(...k))},"<",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(x)),onClick:P[5]||(P[5]=(...k)=>e.unref(V)&&e.unref(V)(...k))},">",2)]),e.createElementVNode("div",Ql,[["popover"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:!((b=e.unref(u))!=null&&b.length)||!e.unref(u)[0]&&!e.unref(u)[1],class:e.normalizeClass(e.unref(s)+"hover:bg-gray-100"),onClick:P[6]||(P[6]=(...k)=>e.unref(w)&&e.unref(w)(...k))},e.toDisplayString(e.unref(n)("filter.clear")),11,Xl)):e.createCommentVNode("",!0)])],64)}}});function eo(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:x}=t,n=s??x??"data",p=t.multi;function h(_){return p?Array.isArray(_)?_:_?[_]:[]:Array.isArray(_)?_[0]:_}const f=e.ref(h(t.modelValue)),u=e.ref(""),y=e.ref(!1),V=e.ref(r),m=e.ref("id"),w=e.ref("text"),B=e.ref(!1),c=e.ref(t.layout!=="popover"&&r.length>l),d=e.ref([]),M=e.ref(0);function F(_){const O=_.find(Boolean)??{},I=["id","value","code","key"].find(te=>te in O)??"id",v=["text","label","name","title"].find(te=>te in O)??"text";return{autoValueKey:I,autoLabelKey:v}}if(r.length>0){const _=F(r);m.value=_.autoValueKey,w.value=_.autoLabelKey}const P=e.computed(()=>{if(o)return V.value;const _=V.value;if(t.layout==="popover")return _;if(!u.value)return B.value?_:_.slice(0,l);const O=u.value.toLowerCase();return _.filter(I=>I[w.value].toLowerCase().includes(O))});let b=null;async function k(_){if(o){y.value=!0;try{const O=new URL(o,window.location.origin);O.searchParams.set("json","1"),O.searchParams.set("key",_),O.searchParams.set("limit",l.toString());const I=await fetch(O.toString());if(!I.ok){Ce({type:"error",title:"Error",message:"Failed to fetch remote options"}),V.value=[];return}const v=await I.json();if(!v[n]){Ce({type:"error",title:"Error",message:v}),V.value=[];return}if(V.value=v[n],V.value.length>0){const te=F(V.value);m.value=te.autoValueKey,w.value=te.autoLabelKey}M.value=v.total}catch(O){console.error("Failed to fetch remote options:",O)}finally{y.value=!1}}}e.watch(u,_=>{o&&(b&&clearTimeout(b),b=setTimeout(()=>{k(_)},200))}),e.watch(()=>t.modelValue,_=>{f.value=h(_)},{immediate:!0}),e.watch(f,_=>{p?(!Array.isArray(_)||_.length===0)&&(d.value=[]):(_==null||typeof _=="string"&&_==="")&&(d.value=[])});function D(_){return p&&Array.isArray(f.value)?f.value.includes(_[m.value]):f.value&&f.value===_[m.value]}function S(_){if(p&&!Array.isArray(f.value)&&(f.value=[]),p&&Array.isArray(f.value)){const O=f.value.includes(_[m.value]);f.value=O?f.value.filter(I=>I!==_[m.value]):[...f.value,_[m.value]],d.value=O?d.value.filter(I=>I!==_[w.value]):[...d.value,_[w.value]]}else f.value=_[m.value],d.value=_[w.value];a("update:modelValue",f.value),a("change",{name:t.name,value:f.value})}function i(){p?(f.value=[],d.value=[]):(f.value=void 0,d.value=[]),a("update:modelValue",f.value),a("clear",t.name)}function C(){b&&clearTimeout(b),u.value="",B.value=!1}function g(){B.value=!B.value}e.onBeforeUnmount(()=>{b&&clearTimeout(b)});const $=e.ref(-1);e.watch(P,()=>{$.value=P.value.length>0?0:-1});function A(_){const O=P.value.length;if(_.key==="ArrowDown")_.preventDefault(),$.value=($.value+1)%O;else if(_.key==="ArrowUp")_.preventDefault(),$.value=($.value-1+O)%O;else if(_.key==="Enter"&&(_.preventDefault(),$.value>=0&&$.value<P.value.length)){const I=P.value[$.value];S(I)}}function Z(){o&&V.value.length===0&&u.value.length===0&&k(u.value)}return{innerValue:f,searchTerm:u,filteredOptions:P,isSelected:D,selectItem:S,clear:i,resetSearch:C,toggleShowAll:g,isReqProc:y,showAll:B,isEnableShowAll:c,labelKey:w,valueKey:m,allOptions:V,highlightedIndex:$,onKeyDown:A,selectedLabels:d,totalCount:M,loadData:Z}}const to={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},lo=["placeholder"],oo={key:0,class:"w-full"},no={class:"flex flex-col items-center justify-center p-5 text-center"},ro={class:"max-w-sm mx-auto mt-6"},ao={class:"font-medium text-gray-800 dark:text-neutral-200"},io={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},so={key:1,class:"py-2 px-2 border-t"},co=["disabled"],mo={class:"text-xs text-gray-500"},po=e.defineComponent({__name:"select",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=de(),l=ke(),s=t,x=o,n=e.ref(null),{innerValue:p,filteredOptions:h,isSelected:f,selectItem:u,clear:y,resetSearch:V,toggleShowAll:m,isReqProc:w,showAll:B,isEnableShowAll:c,searchTerm:d,labelKey:M,valueKey:F,highlightedIndex:P,onKeyDown:b,selectedLabels:k,totalCount:D,loadData:S}=eo({...s,modelValue:s.modelValue},x),i=e.computed(()=>s.multi?Array.isArray(p.value)&&p.value.length>0:p.value!=null&&p.value!==""),C=e.computed(()=>s.multi&&Array.isArray(p.value)?p.value.length:p.value!=null&&p.value!==""?1:0);e.onMounted(()=>{V(),s.layout!=="inline"&&(S(),n.value&&s.layout==="popover"&&n.value.focus())}),e.watch(()=>s.modelValue,$=>{$===void 0&&(s.multi?p.value=[]:p.value=void 0)});const g=e.ref([]);return e.watch(P,$=>{var A;$>=0&&g.value[$]&&((A=g.value[$])==null||A.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(h,()=>{g.value=[]}),a({clear:y,inputTextRef:n,selectedLabels:k,loadData:S}),($,A)=>{var Z;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col max-h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",to,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":A[0]||(A[0]=_=>e.isRef(d)?d.value=_:null),onKeydown:A[1]||(A[1]=(..._)=>e.unref(b)&&e.unref(b)(..._)),class:"w-full h-full text-[13px] px-4 border rounded-sm pl-9 focus:outline-none focus:ring-ring focus:ring-1 focus:ring-blue-500 text-gray-700",placeholder:e.unref(r)("filter.search"),type:"text",ref_key:"inputTextRef",ref:n},null,40,lo),[[e.vModelText,e.unref(d)]]),e.createVNode(ot,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(d)!=""?(e.openBlock(),e.createBlock(Ke,{key:0,onClick:A[2]||(A[2]=_=>d.value=""),class:"absolute text-gray-400 -translate-y-1/2 cursor-pointer hover:text-red-500 right-4 top-1/2"})):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),(_,O)=>(e.openBlock(),e.createBlock(Oe,{layout:t.layout,count:_.count,label:_[e.unref(M)],color:_.color,type:t.multi?"checkbox":"radio",value:_[e.unref(F)],"is-selected":e.unref(f)(_),highlighted:O===e.unref(P),onItemClick:I=>e.unref(u)(_),ref_for:!0,ref:I=>g.value[O]=I==null?void 0:I.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),t.type==="select"&&e.unref(h).length===0&&!e.unref(w)?(e.openBlock(),e.createElementBlock("div",oo,[e.createElementVNode("div",no,[e.createVNode(Ie),e.createElementVNode("div",ro,[e.createElementVNode("p",ao,e.toDisplayString(e.unref(r)("filter.notfound")),1),A[7]||(A[7]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(B)&&e.unref(c)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:A[3]||(A[3]=(..._)=>e.unref(m)&&e.unref(m)(..._)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.more"))+" ",1),e.createVNode($e)])):e.createCommentVNode("",!0),e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:A[4]||(A[4]=(..._)=>e.unref(m)&&e.unref(m)(..._)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.less"))+" ",1),e.createVNode(Ue)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",io,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(p))?(Z=e.unref(p))==null?void 0:Z.length:e.unref(p)!==void 0&&(e.unref(p)||e.unref(p)===null)?1:0)+" / "+e.toDisplayString(e.unref(D))+" "+e.toDisplayString(e.unref(r)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:A[5]||(A[5]=(..._)=>e.unref(y)&&e.unref(y)(..._))},e.toDisplayString(e.unref(r)("filter.clear")),513),[[e.vShow,i.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",so,[e.createElementVNode("button",{type:"button",disabled:!i.value,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:A[6]||(A[6]=(..._)=>e.unref(y)&&e.unref(y)(..._))},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.clear"))+" ",1),e.createElementVNode("span",mo,e.toDisplayString(C.value)+" з "+e.toDisplayString(e.unref(D)),1)],10,co)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),fo=["for","onClick"],uo=["id","name","value"],go={class:"block"},ho={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},yo={key:1,class:"pt-2 px-2 border-t"},xo=["disabled"],bo={class:"text-xs text-gray-500"},ko=e.defineComponent({__name:"tag-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=ke(),x=de(),{innerValue:n,isSelected:p,selectItem:h,clear:f,labelKey:u,valueKey:y,allOptions:V}=r.multi?tt({...r,modelValue:r.modelValue??r.default??[]},l):ve({...r,modelValue:r.modelValue!==void 0?r.modelValue:r.default??""},l),m=e.computed(()=>r.multi?Array.isArray(n.value)&&n.value.length>0:n.value!=null&&n.value!==""),w=e.computed(()=>r.multi&&Array.isArray(n.value)?n.value.length:n.value!=null&&n.value!==""?1:0);return a({clear:f}),e.watch(()=>r.modelValue,B=>{B===void 0&&(r.multi?n.value=[]:n.value=void 0)}),(B,c)=>{var d;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",t.layout==="popover"?"p-2 max-h-[calc(100%-55px)] overflow-y-auto":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(V),M=>(e.openBlock(),e.createElementBlock("label",{key:`item-${M[e.unref(y)]}`,for:`item-${M[e.unref(y)]}`,onClick:e.withModifiers(F=>e.unref(h)(M),["stop","prevent"]),class:e.normalizeClass([e.unref(p)(M)?"ring-2 ring-indigo-600":"","p-2.5 group relative flex justify-center items-center gap-x-12 text-center text-xs bg-white text-gray-800 border border-gray-200 cursor-pointer rounded-sm dark:bg-neutral-900 dark:border-neutral-700 dark:text-neutral-200 peer-checked:text-indigo-600 dark:has-checked:text-indigo-500 peer-checked:border-indigo-600 dark:has-checked:border-indigo-500 peer-checked:ring peer-checked:shadow focus:ring dark:has-checked:ring-indigo-500 has-disabled:pointer-events-none has-disabled:text-gray-200 dark:has-disabled:text-neutral-700 has-disabled:after:absolute has-disabled:after:inset-0 has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-gray-200)_calc(50%-1px),var(--color-gray-200)_50%,transparent_50%)] dark:has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-neutral-700)_calc(50%-1px),var(--color-neutral-700)_50%,transparent_50%)]"])},[e.createElementVNode("input",{type:"checkbox",id:`item-${M[e.unref(y)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${M[e.unref(y)]}`,value:M[e.unref(y)]},null,8,uo),e.createElementVNode("span",go,e.toDisplayString(M[e.unref(u)]),1)],10,fo))),128))],2),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",ho,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(n))?(d=e.unref(n))==null?void 0:d.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(V).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:c[0]||(c[0]=(...M)=>e.unref(f)&&e.unref(f)(...M))}," Очистити ",512),[[e.vShow,m.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",yo,[e.createElementVNode("button",{type:"button",disabled:!m.value,class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:c[1]||(c[1]=(...M)=>e.unref(f)&&e.unref(f)(...M))},[e.createTextVNode(e.toDisplayString(e.unref(x)("filter.clear"))+" ",1),e.createElementVNode("span",bo,e.toDisplayString(w.value)+" з "+e.toDisplayString(e.unref(V).length),1)],10,xo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),wo=["disabled","title"],Co={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},Vo={class:"truncate text-ellipsis text-sm"},Bo={key:0,class:"inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-sm bg-blue-100 px-2 text-[11px] font-semibold text-blue-600"},Eo={class:"w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-sm focus:outline-none focus:bg-stone-100 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full"},No={class:"w-[360px] max-h-[500px] overflow-auto [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-1 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-stone-100 [&::-webkit-scrollbar-thumb]:bg-stone-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 before:w-full p-2"},He=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},en:{},ua:{},uk:{},fr:{},de:{},es:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(t,{expose:a}){const o=t,r=e.computed(()=>Xe(o.mode)),l=e.ref(!1),s=e.ref({top:0,left:0}),x=e.ref(null),n=e.ref(null),p=e.ref(null);let h=null;function f(){const b=n.value,k=p.value;if(!b||!k)return;const D=b.getBoundingClientRect(),S=k.offsetWidth,i=k.offsetHeight,C=window.innerWidth,g=window.innerHeight,$=8;let A=D.bottom+$,{left:Z}=D;const _=Math.max(C-S-10,10);if(Z=Math.min(Z,_),Z=Math.max(Z,10),A+i>g-10){const O=D.top-i-$;A=O>=10?O:Math.max(g-i-10,10)}A<10&&(A=10),s.value={top:A,left:Z}}function u(){e.nextTick(()=>{f(),typeof window<"u"&&typeof window.requestAnimationFrame=="function"&&window.requestAnimationFrame(()=>f())})}function y(){l.value=!l.value,l.value&&(u(),e.nextTick(()=>{var b,k,D,S,i,C,g;(b=o.fieldRef)!=null&&b.inputTextRef&&((S=(D=(k=o.fieldRef)==null?void 0:k.inputTextRef)==null?void 0:D.focus)==null||S.call(D)),(i=o.fieldRef)!=null&&i.loadData&&Promise.resolve((g=(C=o.fieldRef)==null?void 0:C.loadData)==null?void 0:g.call(C)).finally(()=>{l.value&&u()})}))}function V(b){var k,D,S;!((k=x.value)!=null&&k.contains(b.target))&&!((D=p.value)!=null&&D.contains(b.target))&&!((S=n.value)!=null&&S.contains(b.target))&&(l.value=!1)}function m(b){b.key==="Escape"&&(l.value=!1)}const w=e.ref(!1),B=e.ref("ua"),c=b=>{b.detail.key==="locale"&&(B.value=b.detail.newValue)};e.onMounted(()=>{w.value=!0,B.value=localStorage.locale,window.addEventListener("storage",c),document.addEventListener("click",V,!0),document.addEventListener("keydown",m),window.addEventListener("scroll",f,!0),window.addEventListener("resize",f,!0),typeof ResizeObserver<"u"&&(h=new ResizeObserver(()=>{l.value&&u()}))}),e.onBeforeUnmount(()=>{window.removeEventListener("storage",c),document.removeEventListener("click",V,!0),document.removeEventListener("keydown",m),window.removeEventListener("scroll",f,!0),window.removeEventListener("resize",f,!0),h==null||h.disconnect(),h=null});function d(){l.value=!1}a({close:d}),e.watch([w,l,p],([b,k,D])=>{b&&k&&D&&(u(),h==null||h.observe(D))});function M(b){return Array.isArray(b)?b.filter(k=>k!=null&&k!=="").length:b&&typeof b=="object"?Object.values(b).filter(k=>k!=null&&k!=="").length:typeof b=="string"?b.trim()===""?0:1:typeof b=="number"?Number.isNaN(b)?0:1:b===null||b!==void 0?1:0}const F=e.computed(()=>{var D;const b=(D=o.fieldRef)==null?void 0:D.selectedLabels,k=M(b);return k>0?k:M(o.currentValue)}),P=e.computed(()=>{var k;const b=(k=o.fieldRef)==null?void 0:k.selectedLabels;return!b||["inline"].includes(o.layout||"")?o[B.value]||(o.label??""):Array.isArray(b)?b.length>0?b.join(", "):o.label??"":String(b)});return(b,k)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:x},[e.createElementVNode("button",{onClick:y,disabled:t.disabled,ref_key:"triggerRef",ref:n,title:t.label,class:e.normalizeClass([r.value,t.width?e.unref(nt).getWidthClass(t.width):"w-full",t.layout==="inline"&&F.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",Co,[e.createElementVNode("span",Vo,e.toDisplayString(P.value),1),t.layout==="inline"&&F.value>0?(e.openBlock(),e.createElementBlock("span",Bo,e.toDisplayString(F.value),1)):e.createCommentVNode("",!0)]),e.createVNode($e,{class:"h-4 w-4 text-neutral-500"})],10,wo),w.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:p,class:"vsTailwind vs-popover__content w-fit fixed z-[1000]",style:e.normalizeStyle({top:`${s.value.top}px`,left:`${s.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",Eo,[e.createElementVNode("div",No,[e.renderSlot(b.$slots,"default")])])],4),[[e.vShow,l.value]])])):e.createCommentVNode("",!0)],512))}}),So={},_o={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[90deg]"};function Mo(t,a){return e.openBlock(),e.createElementBlock("svg",_o,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Do=ue(So,[["render",Mo]]),zo={},Lo={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[270deg]"};function Po(t,a){return e.openBlock(),e.createElementBlock("svg",Lo,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const $o=ue(zo,[["render",Po]]),Ao={class:"flex gap-1"},Fo={class:"mb-1"},jo={class:"mb-1"},Ro={class:"inline-flex rounded-sm shrink-0 pl-1"},Zo=["title"],To={class:"inline-flex rounded-sm shrink-0 pl-1"},Oo=["title"],vo={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},Io=["max","value","disabled"],Uo=["min","value","disabled"],Ko=e.defineComponent({__name:"date-input-inline",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=de(),l=t,s=o,x=e.ref(null),{activeMode:n,innerValue:p,onSelectChange:h,nextClick:f,prevClick:u,currentLabel:y,clear:V}=rt({...l,popoverRef:x},s);e.watch(()=>l.modelValue,B=>{B!==void 0?(p.value=B,s("update:modelValue",B)):(n.value="",p.value=[])}),e.watch(p,B=>{s("update:modelValue",B),s("change",{name:l.name,value:B})},{deep:!0});function m(B){const c=Array.isArray(p.value)?[...p.value]:[];p.value=[B,c[1]||""]}function w(B){const c=Array.isArray(p.value)?[...p.value]:[];p.value=[c[0]||"",B]}return a({clear:V,popoverRef:x}),(B,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ao,[e.createVNode(He,{ref_key:"popoverRef",ref:x,label:e.unref(y),"current-value":e.unref(p),mode:t.mode,width:typeof t.width=="number"&&e.unref(p).length?t.width-70:t.width,onClear:e.unref(V),layout:t.layout,class:e.normalizeClass(t.itemClass)},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[0]||(c[0]=d=>e.unref(h)("range")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.period"))+" ",1),e.unref(n)==="range"?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0)])]),c[12]||(c[12]=e.createElementVNode("div",null,[e.createElementVNode("div",{class:"pt-1 mt-1 border-t"})],-1)),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[1]||(c[1]=d=>e.unref(h)("today")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.today"))+" ",1),e.unref(n)==="today"?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[2]||(c[2]=d=>e.unref(h)("week")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.week"))+" ",1),e.unref(n)==="week"?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[3]||(c[3]=d=>e.unref(h)("month")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.month"))+" ",1),e.unref(n)==="month"?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[4]||(c[4]=d=>e.unref(h)("quarter")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.quarter"))+" ",1),e.unref(n)==="quarter"?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Fo,[e.createElementVNode("button",{type:"button",onClick:c[5]||(c[5]=d=>e.unref(h)("year")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.year"))+" ",1),e.unref(n)==="year"?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",jo,[e.createElementVNode("button",{type:"button",onClick:c[6]||(c[6]=d=>e.unref(V)()),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.alltime"))+" ",1),e.unref(p)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(be,{key:0}))])])]),_:1},8,["label","current-value","mode","width","onClear","layout","class"]),e.unref(n)!==""&&e.unref(n)!=="range"&&e.unref(n)!=="last_7_days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Ro,[e.createElementVNode("button",{type:"button",title:e.unref(r)("filter.prev"),class:"inline-flex h-[38px] items-center px-2 text-sm text-gray-800 bg-gray-100 gap-x-2 -ms-px first:rounded-s-lg first:ms-0 last:rounded-e-lg focus:z-10 hover:bg-gray-200 focus:bg-gray-200 duration-300",onClick:c[7]||(c[7]=(...d)=>e.unref(u)&&e.unref(u)(...d))},[e.createVNode(Do)],8,Zo)]),e.createElementVNode("div",To,[e.createElementVNode("button",{type:"button",title:e.unref(r)("filter.next"),class:"inline-flex h-[38px] items-center px-2 text-sm text-gray-800 gap-x-2 bg-gray-100 -ms-px first:rounded-s-lg first:ms-0 last:rounded-e-lg focus:z-10 hover:bg-gray-200 focus:bg-gray-200 duration-300",onClick:c[8]||(c[8]=(...d)=>e.unref(f)&&e.unref(f)(...d))},[e.createVNode($o)],8,Oo)])],64)):e.createCommentVNode("",!0),e.unref(n)!==""&&e.unref(n)==="range"?(e.openBlock(),e.createElementBlock("div",vo,[e.createElementVNode("input",{type:"date",max:e.unref(p)[1],locale:"uk-UA",value:e.unref(p)[0],onInput:c[9]||(c[9]=d=>m(d.target.value)),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:t.disabled},null,40,Io),e.createElementVNode("input",{type:"date",min:e.unref(p)[0],locale:"uk-UA",value:e.unref(p)[1],onInput:c[10]||(c[10]=d=>w(d.target.value)),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:t.disabled},null,40,Uo)])):e.createCommentVNode("",!0)]),(t.cleanable,e.createCommentVNode("",!0))],64))}}),Ho=["disabled","onClick"],Wo={key:0,class:"pt-2 px-2 border-t"},Go=["disabled"],qo=e.defineComponent({__name:"button-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=ke(),x=de(),{innerValue:n,isSelected:p,selectItem:h,clear:f,labelKey:u,valueKey:y,allOptions:V}=ve({...r,modelValue:r.modelValue??r.default??""},l),m=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value===""));function w(c){return p(c)?["bg-blue-600 text-white"].filter(d=>typeof d=="string"&&d.trim().length>0).join(" "):["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter(d=>typeof d=="string"&&d.trim().length>0).join(" ")}function B(c){r.disabled||h(c)}return a({clear:f}),e.watch(()=>r.modelValue,c=>{c===void 0&&(n.value=void 0)}),(c,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["flex flex-wrap items-center gap-2",t.layout==="popover"?"p-2 max-h-[calc(100%-55px)] overflow-y-auto":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(V),M=>(e.openBlock(),e.createElementBlock("button",{key:M[e.unref(y)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",w(M)]),disabled:t.disabled,onClick:F=>B(M)},e.toDisplayString(M[e.unref(u)]),11,Ho))),128))],2),t.cleanable&&t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Wo,[e.createElementVNode("button",{type:"button",disabled:!m.value,class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:d[0]||(d[0]=(...M)=>e.unref(f)&&e.unref(f)(...M))},e.toDisplayString(e.unref(x)("filter.clear")),11,Go)])):e.createCommentVNode("",!0)],64))}}),at={radio:gl,checkbox:lt,check:lt,text:Ll,range:Zl,date:Jl,select:po,tag:ko,button:qo,"date:inline":Ko};function We(t,a){let o;switch(t.toLowerCase()){case"autocomplete":o="select";break;case"check":o="checkbox";break;default:o=t==null?void 0:t.toString().toLowerCase()}return o==="date"&&a&&a==="inline"&&(o="date:inline"),{component:at[o]||at.text,type:o}}const Yo={style:{display:"inline-flex",margin:"0px",width:"100%"}},Qo={class:"relative w-full mb-2 p-4 bg-white rounded-md shadow-sm"},Xo={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},Jo={class:"flex items-center"},en={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},tn={class:"filter-layout__body"},ln=e.defineComponent({__name:"vertical-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),x=e.computed(()=>We(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:u=>l("update:modelValue",u)});function p(u){l("clear",u)}function h(u,y){l("change",{name:u,value:y}),r.modelValue!==void 0&&l("update:modelValue",y)}function f(){var u,y;(y=(u=s.value)==null?void 0:u.clear)==null||y.call(u),l("clear",r.name)}return e.watch(()=>r.default,u=>{n.value=u}),e.watch(()=>r.modelValue,u=>{n.value=u}),a({filterRef:s}),(u,y)=>{var V,m,w;return e.openBlock(),e.createElementBlock("div",Yo,[e.createElementVNode("div",Qo,[e.createElementVNode("div",Xo,[e.createElementVNode("div",Jo,[e.createElementVNode("span",en,e.toDisplayString(t.label),1)]),typeof n.value=="string"&&n.value.trim()!==""||Array.isArray(n.value)&&n.value.length>0&&n.value.some(B=>B!==void 0)||n.value===null?(e.openBlock(),e.createBlock(Ut,{key:0,onClick:f})):e.createCommentVNode("",!0)]),e.createElementVNode("div",tn,[((V=x.value)==null?void 0:V.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((m=x.value)==null?void 0:m.component),e.mergeProps({key:0},r,{type:(w=x.value)==null?void 0:w.type,class:r.itemClass,onChange:y[0]||(y[0]=B=>h(B.name,B.value)),onClear:y[1]||(y[1]=B=>p(B)),ref_key:"filterRef",ref:s}),null,16,["type","class"])):(e.openBlock(),e.createBlock(He,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:f,fieldRef:s.value,width:void 0,disabled:t.disabled,layout:"vertical"},{default:e.withCtx(()=>{var B,c;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((B=x.value)==null?void 0:B.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{type:(c=x.value)==null?void 0:c.type,class:r.itemClass,onChange:y[2]||(y[2]=d=>h(d.name,d.value)),onClear:y[3]||(y[3]=d=>p(d))}),null,16,["type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),it=e.defineComponent({__name:"inline-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),x=e.computed(()=>We(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:f=>l("update:modelValue",f)});function p(f=r.name){l("clear",f)}function h(f,u){l("change",{name:f,value:u}),r.modelValue!==void 0&&l("update:modelValue",u)}return e.watch(()=>r.default,f=>{n.value=f}),e.watch(()=>r.modelValue,f=>{n.value=f}),a({filterRef:s}),(f,u)=>{var y,V;return["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((y=x.value)==null?void 0:y.component),e.mergeProps({key:0},r,{type:(V=x.value)==null?void 0:V.type,class:t.itemClass,onChange:u[0]||(u[0]=m=>h(m.name,m.value)),onClear:u[1]||(u[1]=m=>p(m)),disabled:t.disabled,modelValue:n.value,"onUpdate:modelValue":u[2]||(u[2]=m=>n.value=m)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(He,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:p,fieldRef:s.value,width:r.width,disabled:t.disabled,layout:"inline"},{default:e.withCtx(()=>{var m,w;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((m=x.value)==null?void 0:m.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{modelValue:n.value,"onUpdate:modelValue":u[3]||(u[3]=B=>n.value=B),type:(w=x.value)==null?void 0:w.type,class:r.itemClass,onChange:u[4]||(u[4]=B=>h(B.name,B.value)),onClear:u[5]||(u[5]=B=>p(B))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),on=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),x=e.computed(()=>We(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:f=>l("update:modelValue",f)});function p(f){l("clear",f)}function h(f,u){l("change",{name:f,value:u}),r.modelValue!==void 0&&l("update:modelValue",u)}return e.watch(()=>r.default,f=>{n.value=f}),e.watch(()=>r.modelValue,f=>{n.value=f}),e.watch(()=>r,f=>{n.value=f}),a({filterRef:s}),(f,u)=>{var y,V;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((y=x.value)==null?void 0:y.component),e.mergeProps(r,{type:(V=x.value)==null?void 0:V.type,class:r.itemClass,modelValue:n.value,"onUpdate:modelValue":u[0]||(u[0]=m=>n.value=m),onChange:u[1]||(u[1]=m=>h(m.name,m.value)),onClear:u[2]||(u[2]=m=>p(m)),ref_key:"filterRef",ref:s}),null,16,["type","class","modelValue"])}}}),fe=e.defineComponent({__name:"filter-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean,default:!0},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{default:"name"},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),x=e.computed({get:()=>r.modelValue,set:f=>l("update:modelValue",f)});function n(f){l("clear",f)}function p(f,u){l("change",{name:f,value:u}),r.modelValue!==void 0&&l("update:modelValue",u)}e.watch(()=>r.default,f=>{x.value=f}),e.watch(()=>r.modelValue,f=>{x.value=f}),a({filterRef:s});function h(){switch(r.layout){case"inline":return it;case"vertical":return ln;case"popover":return on;default:return it}}return(f,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(h()),e.mergeProps(r,{onChange:u[0]||(u[0]=y=>p(y.name,y.value)),onClear:u[1]||(u[1]=y=>n(y)),modelValue:x.value,"onUpdate:modelValue":u[2]||(u[2]=y=>x.value=y)}),null,16,["modelValue"]))}});function Ae(t,a){const{slots:o}=t,r=c=>c?JSON.parse(JSON.stringify(e.toRaw(c))):{},l=e.ref(r(t.value));e.watch(()=>t.value,c=>{l.value=r(c)},{deep:!0,immediate:!0});const s=e.computed(()=>{var c;return(e.toRaw((c=o==null?void 0:o.default)==null?void 0:c.call(o))??[]).flatMap(d=>Array.isArray(d.children)?d.children:[d])});function x(c){delete l.value[c],a("clear",{data:e.toRaw(l.value),name:c})}function n(c,d){d===void 0?x(c):l.value={...l.value,[c]:d},a("change",{data:e.toRaw(l.value),name:c,value:d})}const p=e.computed(()=>s.value.map(c=>{var M,F,P;const d=(M=c.props)==null?void 0:M.name;return e.cloneVNode(c,{...c.props,layout:t.view,showClean:!0,modelValue:l.value[d],"onUpdate:modelValue":b=>{n(d,b)},onClear:()=>x(d),class:[t.itemClass,(F=c.props)==null?void 0:F.class],itemClass:[t.itemClass,(P=c.props)==null?void 0:P.itemClass].filter(b=>typeof b=="string"&&b.trim().length>0).join(" ")||void 0})})),h=e.computed(()=>new Map(p.value.map(c=>{var M;const d=(M=c.props)==null?void 0:M.name;return d?[d,c]:null}).filter(c=>c!==null)));function f(c=!1){l.value={},c||a("clearAll",{data:e.toRaw(l.value),name:"ALL"})}const u=e.ref(""),y=e.computed(()=>{var c;return(c=t.schema)!=null&&c.value?Object.entries(l.value).filter(([d,M])=>t.schema&&!(d in t.schema.value)?!1:Array.isArray(M)?M.some(F=>F!==""&&F!==void 0):M!==""&&M!==void 0).length:0}),V=e.ref();e.watch(u,async()=>{var c,d;await e.nextTick(),(d=(c=V==null?void 0:V.value)==null?void 0:c.filterRef)!=null&&d.inputTextRef&&V.value.filterRef.inputTextRef.focus()});const m=e.computed(()=>{var c,d;return(c=t.schema)!=null&&c.value?Object.fromEntries(Object.entries((d=t.schema)==null?void 0:d.value).slice(0,t.limit)):{}}),w=e.computed(()=>{var d;if(p.value.length===0)return[];let c=0;if((d=t.schema)!=null&&d.value){const M=Object.entries(t.schema.value).length;t.limit&&M<t.limit?c=t.limit-M:c=0}return p.value.slice(0,c)}),B=e.computed(()=>p.value.length===0?[]:t.view!=="inline"?p.value:p.value.slice(w.value.length));return{activeFilter:l,activeFilterCount:y,onFilterChange:n,clearFilter:x,clearAllFilters:f,limitedSchema:m,filtersSlot:p,limitedFiltersSlot:w,popoverFiltersSlot:B,vnodeMap:h,selectedFilter:u,filterRef:V}}const nn=e.defineComponent({__name:"popover",emits:["open","close"],setup(t,{emit:a}){const o=e.ref(!1),r=e.ref(null),l=e.ref(null),s=e.ref(null),x=e.ref({top:"0px",left:"0px",position:"absolute"}),n=e.ref(!1);function p(){o.value=!o.value}function h(){const m=s.value,w=r.value;if(!m||!w)return;const{left:B,bottom:c}=m.getBoundingClientRect();requestAnimationFrame(()=>{if(!w)return;const{width:d}=w.getBoundingClientRect(),M=w.offsetWidth||d,F=window.innerWidth||document.documentElement.clientWidth,P=F-B;let b=B;M>P&&(b=F-M-18),b<18&&(b=18);const k=F-M-18;b>k&&(b=Math.max(18,k)),x.value={position:"fixed",top:`${c+18}px`,left:`${b}px`},n.value=!0})}const f=e.computed(()=>Object.entries(x.value).map(m=>m.join(":")).join(";"));function u(m){var B,c;const w=m.target;!((B=s.value)!=null&&B.contains(m.target))&&!((c=r.value)!=null&&c.contains(m.target))&&!w.closest("[data-inside-popover]")&&(o.value=!1)}const y=e.ref(!1);e.onMounted(()=>{y.value=!0}),e.onMounted(()=>{var m,w;s.value=((m=l.value)==null?void 0:m.querySelector("[data-popover-trigger]"))||null,(w=s.value)==null||w.addEventListener("click",p),document.addEventListener("click",u),window.addEventListener("resize",h),window.addEventListener("scroll",h,!0)}),e.onBeforeUnmount(()=>{var m;(m=s.value)==null||m.removeEventListener("click",p),document.removeEventListener("click",u),window.removeEventListener("resize",h),window.removeEventListener("scroll",h,!0)});const V=a;return e.watch(o,async m=>{m?(n.value=!1,V("open"),await e.nextTick(),requestAnimationFrame(()=>{h()})):(V("close"),n.value=!1)}),(m,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:l},[e.renderSlot(m.$slots,"trigger"),y.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:r,class:"fixed z-[50] w-[calc(100vw-32px)] md:w-[600px] rounded-md border bg-white shadow-md transition-opacity duration-0",style:e.normalizeStyle([f.value,{visibility:n.value?"visible":"hidden",opacity:n.value?1:0}])},[e.renderSlot(m.$slots,"default")],4),[[e.vShow,o.value]])])):e.createCommentVNode("",!0)],512))}}),rn={},an={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-filter h-4 w-4"};function sn(t,a){return e.openBlock(),e.createElementBlock("svg",an,[...a[0]||(a[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)])])}const st=ue(rn,[["render",sn]]),cn={class:"flex items-center gap-2 overflow-hidden"},dn={key:0,class:"inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-500 px-1 text-[11px] font-semibold text-white"},mn={class:"flex max-h-[400px] md:max-h-[400px]"},pn={class:"w-[150px] sm:w-[180px] md:w-64 border-r border-gray-200 overflow-y-auto"},fn={class:"p-2 md:p-4 border-b"},un={class:"text-xs md:text-sm text-gray-600"},gn={class:"p-1 md:p-2"},hn=["onClick"],yn={class:"flex items-center gap-1.5 md:gap-2"},xn={class:"text-xs md:text-sm font-medium line-clamp-3"},bn={key:0,class:"inline-flex min-h-[16px] md:min-h-[18px] min-w-[16px] md:min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-0.5 md:px-1 text-[10px] md:text-[11px] font-semibold text-blue-600 flex-shrink-0"},kn=["onClick"],wn={class:"flex items-center gap-1.5 md:gap-2"},Cn={class:"text-xs md:text-sm font-medium truncate"},Vn={key:0,class:"inline-flex min-h-[16px] md:min-h-[18px] min-w-[16px] md:min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-0.5 md:px-1 text-[10px] md:text-[11px] font-semibold text-blue-600 flex-shrink-0"},Bn={key:0,class:"p-1 md:p-2 border-t"},En={class:"flex-1 min-h-[250px] md:min-h-[300px] overflow-y-auto"},Nn={key:0,class:"flex items-center justify-center h-full text-gray-500"},Sn={class:"text-xs md:text-sm"},ct=e.defineComponent({__name:"popover-filter-layout",props:{badgeCount:{},schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=de(),l=t,s=Xe(l.mode),x=e.useSlots(),n=o,p=e.ref({}),h=e.computed(()=>p!=null&&p.value?l.view!=="inline"?p==null?void 0:p.value:Object.fromEntries(Object.entries(p==null?void 0:p.value).slice(l.limit)):{}),{activeFilter:f,activeFilterCount:u,onFilterChange:y,clearFilter:V,clearAllFilters:m,popoverFiltersSlot:w,selectedFilter:B,filterRef:c}=Ae({...l,schema:p,slots:x},n),d=e.computed(()=>l.badgeCount??u.value);function M(b){return Array.isArray(b)?b.filter(k=>k!=null&&k!=="").length:b&&typeof b=="object"?Object.values(b).filter(k=>k!=null&&k!=="").length:b===null||b!==void 0&&b!==""?1:0}function F(b){return f.value?M(f.value[b]):0}function P(){if(h.value){const[b]=Object.keys(h.value);B.value=b}else w.value.length>0?B.value=w.value[0].props.name:B.value=""}return e.watch(()=>l.schema,b=>{p.value=b??{}},{deep:!0,immediate:!0}),a({clearFilter:V,clearAllFilters:m}),(b,k)=>(e.openBlock(),e.createBlock(nn,{onOpen:P,onClose:k[5]||(k[5]=D=>B.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,e.unref(s),"flex items-center justify-between gap-2",d.value>0?"border border-blue-400 bg-blue-50 text-blue-600 hover:border-blue-500":"text-neutral-700 hover:border-neutral-400"]),type:"button"},[e.createElementVNode("span",cn,[e.createVNode(st,{class:"h-4 w-4"}),k[6]||(k[6]=e.createElementVNode("span",{class:"text-sm font-medium"},"Фільтр",-1))]),d.value>0?(e.openBlock(),e.createElementBlock("span",dn,e.toDisplayString(d.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",mn,[e.createElementVNode("div",pn,[e.createElementVNode("div",fn,[e.createElementVNode("p",un,e.toDisplayString(e.unref(r)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",gn,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(h.value),([D,S])=>(e.openBlock(),e.createElementBlock("button",{key:D,onClick:()=>{B.value=D},class:e.normalizeClass(["flex w-full items-center justify-between px-2 md:px-3 py-1.5 md:py-2 text-left transition-colors hover:bg-gray-50",e.unref(B)===D?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",yn,[e.createElementVNode("span",xn,e.toDisplayString(S.label),1)]),F(D)>0?(e.openBlock(),e.createElementBlock("div",bn,e.toDisplayString(F(D)),1)):e.createCommentVNode("",!0)],10,hn))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(w),(D,S)=>(e.openBlock(),e.createElementBlock("button",{key:"slot-"+S,onClick:i=>B.value=D.props.name,class:e.normalizeClass(["flex items-center justify-between px-2 md:px-3 py-1.5 md:py-2 text-left transition-colors hover:bg-gray-50",e.unref(B)===D.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",wn,[e.createElementVNode("span",Cn,e.toDisplayString(D.props.label),1)]),F(D.props.name)>0?(e.openBlock(),e.createElementBlock("div",Vn,e.toDisplayString(F(D.props.name)),1)):e.createCommentVNode("",!0)],10,kn))),128))]),e.unref(u)>0?(e.openBlock(),e.createElementBlock("div",Bn,[e.createElementVNode("button",{class:e.normalizeClass([t.itemClass,"w-full px-2 md:px-3 py-1.5 md:py-2 text-left text-xs md:text-sm text-gray-600 hover:bg-gray-50 transition-colors"]),onClick:k[0]||(k[0]=D=>e.unref(m)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",En,[e.unref(B)===""?(e.openBlock(),e.createElementBlock("div",Nn,[e.createElementVNode("p",Sn,e.toDisplayString(e.unref(r)("filter.selectFieldHelp")),1)])):e.createCommentVNode("",!0),e.unref(B)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[h.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(h.value),([D,S])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(B)===D?(e.openBlock(),e.createBlock(fe,e.mergeProps({key:D,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:c},{ref_for:!0},S,{class:[t.itemClass,S==null?void 0:S.class],"item-class":[t.itemClass,S==null?void 0:S.itemClass].filter(Boolean).join(" ")||void 0,onChange:k[1]||(k[1]=i=>e.unref(y)(i.name,i.value)),onClear:k[2]||(k[2]=i=>{e.unref(V)(i),e.unref(y)(i,void 0)}),modelValue:e.unref(f)[D],"onUpdate:modelValue":i=>e.unref(f)[D]=i,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(w),(D,S)=>{var i,C;return e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+S},[e.unref(B)===D.props.name?(e.openBlock(),e.createBlock(fe,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},D.props,{ref_for:!0,ref_key:"filterRef",ref:c,class:[t.itemClass,(i=D.props)==null?void 0:i.class],"item-class":[t.itemClass,(C=D.props)==null?void 0:C.itemClass].filter(Boolean).join(" ")||void 0,onChange:k[3]||(k[3]=g=>e.unref(y)(g.name,g.value)),onClear:k[4]||(k[4]=g=>{e.unref(V)(g),e.unref(y)(g,void 0)}),modelValue:e.unref(f)[D.props.name],"onUpdate:modelValue":g=>e.unref(f)[D.props.name]=g,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64)}),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),_n={class:"flex gap-1 items-center flex-wrap"},dt=e.defineComponent({__name:"inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=de(),l=t,s=o,x=e.useSlots(),n=e.ref({}),p=e.computed(()=>Object.keys(l.schema).length>l.limit),{activeFilter:h,activeFilterCount:f,onFilterChange:u,clearFilter:y,clearAllFilters:V,limitedSchema:m,filtersSlot:w,limitedFiltersSlot:B}=Ae({...l,schema:n,slots:x},s);function c(k){return Array.isArray(k)?k.some(D=>D!==""&&D!==void 0&&D!==null):k===null?!0:k&&typeof k=="object"?Object.values(k).some(D=>D!==""&&D!==void 0&&D!==null):k!==""&&k!==void 0}const d=e.computed(()=>{const k=Object.keys(m.value??{}),D=B.value.map(S=>{var i;return(i=S.props)==null?void 0:i.name}).filter(S=>typeof S=="string");return new Set([...k,...D])}),M=e.computed(()=>Object.entries(h.value??{}).filter(([k,D])=>d.value.has(k)&&c(D)).length),F=e.computed(()=>{const k=f.value??0,D=M.value??0;return Math.max(k-D,0)}),P=e.ref();function b(){P.value&&P.value.clearAllFilters(!0),V()}return e.watch(()=>l.schema,k=>{n.value=k},{deep:!0,immediate:!0}),a({clearFilter:y,clearAllFilters:V}),(k,D)=>(e.openBlock(),e.createElementBlock("div",_n,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(m)),([S,i])=>(e.openBlock(),e.createBlock(fe,e.mergeProps({key:S,mode:t.mode,width:t.width?t.width:i==null?void 0:i.width},{ref_for:!0},i,{class:[t.itemClass,i==null?void 0:i.class],"item-class":[t.itemClass,i==null?void 0:i.itemClass].filter(Boolean).join(" ")||void 0,onChange:D[0]||(D[0]=C=>e.unref(u)(C.name,C.value)),onClear:e.unref(y),layout:"inline",cleanable:!0,modelValue:e.unref(h)[S],"onUpdate:modelValue":C=>e.unref(h)[S]=C}),null,16,["mode","width","class","item-class","onClear","modelValue","onUpdate:modelValue"]))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),(S,i)=>{var C,g;return e.openBlock(),e.createBlock(fe,e.mergeProps({key:"slot-"+i,layout:"inline"},{ref_for:!0},S.props,{class:[t.itemClass,(C=S.props)==null?void 0:C.class],"item-class":[t.itemClass,(g=S.props)==null?void 0:g.itemClass].filter(Boolean).join(" ")||void 0,onChange:D[1]||(D[1]=$=>e.unref(u)($.name,$.value)),onClear:D[2]||(D[2]=$=>{e.unref(y)($),e.unref(u)($,void 0)}),cleanable:!0,modelValue:e.unref(h)[S.props.name],"onUpdate:modelValue":$=>e.unref(h)[S.props.name]=$}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128)),p.value?(e.openBlock(),e.createBlock(ct,e.mergeProps({key:1},l,{schema:t.schema,limit:t.limit,onChange:D[3]||(D[3]=S=>e.unref(u)(S.name,S.value)),onClearAll:D[4]||(D[4]=S=>e.unref(V)()),onClear:D[5]||(D[5]=S=>e.unref(y)(S.name)),mode:t.mode,ref_key:"popoverRef",ref:P,cleanable:!0,"badge-count":F.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(w),(S,i)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(S),e.mergeProps({key:"slot-"+i,layout:"popover"},{ref_for:!0},S.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","limit","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(f)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:b,class:e.normalizeClass([t.itemClass,"relative py-2 px-3 inline-flex justify-center items-center gap-x-2 text-sm font-medium rounded-md bg-gray-50 border text-gray-800 hover:bg-gray-200 focus:bg-gray-200"])},e.toDisplayString(e.unref(r)("filter.clear")),3)):e.createCommentVNode("",!0)]))}}),Mn={key:0,class:"p-2 overflow-y-auto overflow-hidden [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 dark:bg-neutral-800 max-h-[calc(100%-142px)] h-full bg-gray-100"},Dn={class:"flex items-center vst-filters vsTailwind flex-col w-full"},zn=e.defineComponent({__name:"vertical-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.useSlots(),{activeFilter:x,activeFilterCount:n,onFilterChange:p,clearFilter:h,clearAllFilters:f,filtersSlot:u}=Ae({...r,slots:s},l);return a({clearFilter:h,clearAllFilters:f}),(y,V)=>t.view==="vertical"?(e.openBlock(),e.createElementBlock("div",Mn,[e.createElementVNode("div",Dn,[e.unref(n)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:V[0]||(V[0]=m=>e.unref(f)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,"w-full ring-offset-background focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:text-accent-foreground border h-10 px-4 py-2 gap-2 m-2 bg-white text-gray-800 hover:bg-gray-200 focus:bg-gray-200"]),type:"button"}," Очистити ",2)):e.createCommentVNode("",!0),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(t.schema),([m,w])=>(e.openBlock(),e.createBlock(fe,e.mergeProps({layout:"vertical"},{ref_for:!0},w,{class:[t.itemClass,w==null?void 0:w.class],"item-class":[t.itemClass,w==null?void 0:w.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[1]||(V[1]=B=>e.unref(p)(B.name,B.value)),onClear:V[2]||(V[2]=B=>{e.unref(h)(B),e.unref(p)(B,void 0)}),modelValue:e.unref(x)[m],"onUpdate:modelValue":B=>e.unref(x)[m]=B,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),(m,w)=>{var B,c;return e.openBlock(),e.createBlock(fe,e.mergeProps({key:"slot-"+w,layout:"vertical"},{ref_for:!0},m.props,{class:[t.itemClass,(B=m.props)==null?void 0:B.class],"item-class":[t.itemClass,(c=m.props)==null?void 0:c.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[3]||(V[3]=d=>e.unref(p)(d.name,d.value)),onClear:V[4]||(V[4]=d=>{e.unref(h)(d),e.unref(p)(d,void 0)}),modelValue:e.unref(x)[m.props.name],"onUpdate:modelValue":d=>e.unref(x)[m.props.name]=d,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))])])):e.createCommentVNode("",!0)}}),Ln=["onKeydown"],Pn=["disabled"],$n={key:0,class:"ml-2 inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-full bg-blue-500 px-1.5 text-[11px] font-semibold text-white"},An={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Fn={class:"mb-3 flex items-center justify-between"},jn={class:"text-[15px] font-semibold text-slate-800"},Rn={"aria-hidden":"true"},Zn={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},Tn={key:0,class:"mt-3 flex justify-end"},On=e.defineComponent({__name:"popover-inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:10},width:{default:220},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{emit:a}){const o=de(),r=t,l=a,s=e.ref({}),x=e.useSlots(),{activeFilter:n,activeFilterCount:p,onFilterChange:h,clearFilter:f,clearAllFilters:u,filtersSlot:y}=Ae({...r,schema:s.value,slots:x},l),V=e.ref(null),m=e.ref(null),w=e.reactive({open:!1,top:0,left:0}),B=e.computed(()=>w.open),c=e.computed(()=>!!r.disabled),d=e.computed(()=>s.value||{}),M=e.computed(()=>r.title??"Фільтр"),F=e.computed(()=>!!x.trigger),P=e.computed(()=>["inline-flex h-9 items-center justify-center gap-2 rounded-lg border border-transparent bg-slate-200/70 px-3 text-sm font-medium text-slate-700 transition-colors hover:bg-blue-100 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-slate-200/70 disabled:hover:text-slate-700",c.value?"cursor-not-allowed opacity-60":"cursor-pointer"]),b=e.computed(()=>w.open?{position:"absolute",top:`${w.top}px`,left:`${w.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function k(){w.open=!1}function D(){if(!V.value)return;const $=V.value.getBoundingClientRect();w.top=$.bottom+window.scrollY+8,w.left=$.left+$.width/2+window.scrollX}function S(){w.open=!w.open,w.open&&e.nextTick(D)}function i(){c.value||S()}function C(){w.open&&D()}function g(){u()}return e.onMounted(()=>{window.addEventListener("resize",C),window.addEventListener("scroll",C,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",C),window.removeEventListener("scroll",C,!0)}),e.watch(()=>r.schema,$=>{if(!$){s.value={};return}if(Array.isArray($)){const A=$.filter(Z=>Z&&(Z.name||Z.id)).map(Z=>{const _=Z.name||Z.id;return[_,{...Z,name:_}]});s.value=Object.fromEntries(A);return}s.value=$},{deep:!0,immediate:!0}),e.watch(()=>r.disabled,$=>{$&&k()}),($,A)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:V},[F.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",c.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(i,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(i,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(i,["prevent","stop"]),["space"])]},[e.renderSlot($.$slots,"trigger",{toggle:i,open:B.value,disabled:c.value,activeCount:e.unref(p)})],42,Ln)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(P.value),type:"button",disabled:c.value,onClick:e.withModifiers(i,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(st,{class:"h-4 w-4"}),e.unref(p)>0?(e.openBlock(),e.createElementBlock("div",$n,e.toDisplayString(e.unref(p)),1)):e.createCommentVNode("",!0)],10,Pn)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[B.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof t.width=="number"?`min-w-[${t.width+32+(Object.keys(d.value).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(b.value),ref_key:"panel",ref:m,onClick:A[4]||(A[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",An,[e.createElementVNode("div",Fn,[e.createElementVNode("h3",jn,e.toDisplayString(M.value),1),e.createElementVNode("button",{type:"button",class:"inline-flex h-6 w-6 items-center justify-center rounded-full border-0 bg-slate-300/40 text-slate-600 transition-colors hover:bg-blue-200/60 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200",onClick:k},[e.createElementVNode("span",Rn,[e.createVNode(Ke,{class:"h-4 w-4"})]),A[5]||(A[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",Zn,[Object.keys(d.value).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(d.value),([Z,_])=>(e.openBlock(),e.createBlock(fe,e.mergeProps({key:Z},{ref_for:!0},{..._,layout:"inline"},{width:t.width?t.width:_==null?void 0:_.width,class:[t.itemClass,_==null?void 0:_.class],"item-class":[t.itemClass,_==null?void 0:_.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[Z],"onUpdate:modelValue":O=>e.unref(n)[Z]=O,onChange:A[0]||(A[0]=O=>e.unref(h)(O.name,O.value)),onClear:A[1]||(A[1]=O=>{e.unref(f)(O),e.unref(h)(O,void 0)})}),null,16,["width","class","item-class","modelValue","onUpdate:modelValue"]))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),(Z,_)=>{var O,I;return e.openBlock(),e.createBlock(fe,e.mergeProps({key:"slot-"+_,ref_for:!0},{...Z.props,layout:"inline"},{class:[t.itemClass,(O=Z.props)==null?void 0:O.class],"item-class":[t.itemClass,(I=Z.props)==null?void 0:I.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[Z.props.name],"onUpdate:modelValue":v=>e.unref(n)[Z.props.name]=v,onChange:A[2]||(A[2]=v=>e.unref(h)(v.name,v.value)),onClear:A[3]||(A[3]=v=>{e.unref(f)(v),e.unref(h)(v,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))]),e.unref(p)>0?(e.openBlock(),e.createElementBlock("div",Tn,[e.createElementVNode("button",{type:"button",class:e.normalizeClass([t.itemClass,"text-sm font-semibold text-blue-600 transition-colors hover:text-blue-700 focus:outline-none"]),onClick:g},e.toDisplayString(e.unref(o)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),vn={class:"mb-6 flex flex-wrap gap-2"},In=["onClick"],Un={class:"mr-2 flex items-center gap-1"},Kn={class:"font-semibold"},Hn={class:"text-xs text-gray-500"},Fe=e.defineComponent({__name:"filter",props:{schema:{},view:{default:"inline"},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=t,l=e.useAttrs(),s=e.computed(()=>({...r,...l})),x=e.ref(f(r.value??{}));e.watch(()=>r.value,async i=>{var C,g;x.value=f(i??{}),(!i||Object.keys(i).length===0)&&(await e.nextTick(),(g=(C=p.value)==null?void 0:C.clearAllFilters)==null||g.call(C,!0))},{deep:!0,immediate:!0});const n=o,p=e.ref(),h=e.useSlots();function f(i){if(Array.isArray(i))return i.map(C=>f(C));if(i!==null&&typeof i=="object"){const C=e.toRaw(i),g={};for(const $ in C)g[$]=f(C[$]);return g}return i}function u(i,C){C!==void 0?x.value={...x.value,[i]:C}:delete x.value[i],n("change",{data:f(x.value),name:i,value:f(C)})}function y(i){delete x.value[i],n("clear",{data:f(x.value),name:i}),n("change",{data:f(x.value),name:i,value:null})}function V(){x.value={},n("clear",{data:f(x.value),name:"ALL"}),n("change",{data:f(x.value),name:"ALL",value:null})}const m=e.ref({}),w=e.computed(()=>r.teleportActive);function B(){switch(r.view){case"inline":return dt;case"vertical":return zn;case"popover":return ct;case"popover-inline":return On;default:return dt}}e.watch(()=>r.schema,i=>{if(!i){m.value={};return}if(Array.isArray(i)&&!i.length){m.value={};return}Array.isArray(i)?m.value=i.filter(C=>C.type).reduce((C,g)=>(Object.assign(g,{name:g.id||g.name,type:{datepicker:"date"}[g.type.toLowerCase()]||g.type.toLowerCase(),label:g.label||g.ua}),C[g.name]=g,g.data&&!g.api&&!g.options&&Object.assign(g,{api:`/api/suggest/${g.data}`}),C),{}):(Object.entries(i).forEach(([C,g])=>{Object.assign(g,{name:C||g.name||g.id,type:g.type.toLowerCase()})}),m.value={...i})},{immediate:!0,deep:!0});function c(i){p.value.clearFilter(i),y(i)}function d(){p.value.clearAllFilters(),V()}const M=e.computed(()=>Object.entries(x.value).filter(([,i])=>i==null?!1:Array.isArray(i)?i.length>0:typeof i=="string"?i.trim().length>0:!0).map(([i,C])=>{const g=m.value[i],$=(g==null?void 0:g.label)||(g==null?void 0:g.title)||i,A=P(g,C);return{key:i,label:$,value:A}}));function F(i){c(i)}function P(i,C){if(!i||C===void 0||C===null)return"";const g=b(C);if(!g.length)return"";const $=k(i);return g.map(A=>$.get(A)??A).filter(Boolean).join(", ")}function b(i){return Array.isArray(i)?i.map(C=>{var g;return((g=C==null?void 0:C.toString)==null?void 0:g.call(C))??""}).filter(Boolean):typeof i=="string"?i.split(",").map(C=>C.trim()).filter(Boolean):[]}function k(i){const C=new Map,g=i.valueKey||"id",$=i.labelKey||"text";return(i.options??[]).forEach(A=>{const Z=D(A,g),_=S(A,$);Z&&C.set(Z,_||Z)}),C}function D(i,C){var g,$;return i?(($=(g=i[C]??i.id??i.value??i.key)==null?void 0:g.toString)==null?void 0:$.call(g))??"":""}function S(i,C){var g,$;return i?(($=(g=i[C]??i.text??i.label??i.value??i.id)==null?void 0:g.toString)==null?void 0:$.call(g))??"":""}return e.watch(()=>x.value,i=>{if(r.history){const C=new URL(window.location.href),g=new URLSearchParams(window.location.search);Object.keys(i).length>0?g.set("filter",Object.entries(i).filter(([,$])=>$).map(([$,A])=>`${$}=${A}`).join("|")):g.delete("filter"),C.search=decodeURI(g.toString()),window.history.pushState({},"",C)}}),a({clearAllFilters:d,clearFilter:c}),(i,C)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(B()),e.mergeProps(s.value,{schema:m.value,onChange:C[0]||(C[0]=g=>u(g.name,g.value)),onClear:C[1]||(C[1]=g=>y(g.name)),onClearAll:V,ref_key:"filterRef",ref:p}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:2},[e.unref(h).trigger?{name:"trigger",fn:e.withCtx(g=>[e.renderSlot(i.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(g)))]),key:"0"}:void 0]),1040,["schema"])),w.value&&M.value.length?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:w.value},[e.createElementVNode("div",vn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,g=>(e.openBlock(),e.createElementBlock("button",{key:g.key,type:"button",class:"ga1u8 zw1wr sr4j9 flex items-center zu875 kew0r w9dei w4xo0 kghwt wz1vo focus:outline-hidden gugmw dark:bg-emerald-500 dark:hover:bg-emerald-600 dark:focus:bg-emerald-600 bg-white border border-gray-200 px-3 py-1 rounded-full text-sm text-gray-700",onClick:$=>F(g.key)},[e.createElementVNode("span",Un,[e.createElementVNode("span",Kn,e.toDisplayString(g.label),1),e.createElementVNode("span",Hn,"· "+e.toDisplayString(g.value),1)]),C[2]||(C[2]=e.createElementVNode("span",{class:"g424j flex flex-col jkwm1 items-center b9gop aqyoh ad7q2 kghwt t4363 q7nhl dark:text-emerald-500"},[e.createElementVNode("svg",{class:"e731n u28hb",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})])],-1))],8,In))),128))])],8,["to"])):e.createCommentVNode("",!0)],64))}});Fe.install=function(t){t.component("Filter",Fe),t.component("FilterField",fe)};function Wn(t){const{page:a,id:o,filter:r,filterByView:l}=t,s=new URL(window.location.href),x=new URLSearchParams(window.location.search);a?x.set("page",a.toString()):x.delete("page"),o?x.set("id",o.toString()):x.delete("id"),r?x.set("filter",r):x.delete("filter"),typeof l=="boolean"?x.set("bbox",l?"1":"0"):x.delete("bbox"),s.search=decodeURI(x.toString()),window.history.pushState({},"",s)}const Gn={class:"flex items-center justify-between w-full gap-x-1"},qn={class:"flex items-center"},Yn=["disabled"],Qn={class:"flex items-center gap-x-1"},Xn=["onClick"],Jn=["disabled"],er={class:"flex justify-center items-center gap-x-5 ml-3"},tr={class:"relative"},lr={class:"hs-dropdown-menu z-50 bg-white shadow-md rounded-lg p-1 space-y-0.5 dark:bg-neutral-800 dark:border dark:border-neutral-700 right-0 dark:divide-neutral-700 absolute bottom-[100%]",role:"menu","aria-orientation":"vertical","aria-labelledby":"dropdown-button"},or=["onClick"],nr={key:0,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-check text-blue-600",width:"14",height:"14"},Ge=e.defineComponent({__name:"pagination",props:{total:{},currentPage:{},pageSize:{}},emits:["update:currentPage","update:pageSize","pageChange","pageSizeChange"],setup(t,{emit:a}){const o=t,r=a,l=e.ref(o.currentPage),s=e.ref(o.pageSize),x=e.ref(!1);e.watch(()=>o.pageSize,V=>{s.value=V});const n=e.computed(()=>Math.ceil(o.total/o.pageSize)),p=e.computed(()=>{const m=Math.floor(3.5);let w=l.value-m,B=l.value+m;w<1&&(B+=1-w,w=1),B>n.value&&(w-=B-n.value,B=n.value),w=Math.max(1,w);const c=[];for(let d=w;d<=B;d+=1)c.push(d);return c}),h=()=>{l.value>1&&u(l.value-1)},f=()=>{l.value<n.value&&u(l.value+1)},u=V=>{l.value=V,r("update:currentPage",V),r("pageChange",V)},y=(V=s.value)=>{s.value=V,x.value=!1,r("update:pageSize",s.value),r("update:currentPage",1),r("pageSizeChange",s.value)};return e.watch(()=>o.currentPage,V=>{l.value=V}),(V,m)=>(e.openBlock(),e.createElementBlock("nav",Gn,[e.createElementVNode("div",qn,[e.createElementVNode("button",{type:"button","aria-label":"Previous",onClick:h,disabled:l.value===1,class:"border-white last:rounded-e-lg text-base h-[38px] min-w-[38px] py-2 px-2.5 inline-flex justify-center items-center gap-x-2 border text-sm rounded-lg bg-white text-gray-800 hover:shadow-sm hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-50 dark:bg-neutral-700 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-800 py-2"},[...m[1]||(m[1]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down rotate-90",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1),e.createElementVNode("span",{"aria-hidden":"true",class:"sr-only"},"Previous",-1)])],8,Yn),e.createElementVNode("div",Qn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,w=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:w,onClick:B=>u(w),class:e.normalizeClass(l.value===w?"flex justify-center items-center rounded-lg text-sm dark:text-neutral-300 py-2 px-3 focus:outline-none disabled:opacity-50 disabled:pointer-events-none bg-[#e5e7eb] dark:bg-[#242424] border border-gray-200 text-base h-[38px] min-w-[38px]":"flex justify-center items-center rounded-lg text-sm dark:text-neutral-400 hover:bg-gray-100 py-2 px-3 focus:outline-none focus:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:hover:bg-neutral-800 dark:focus:bg-neutral-800 text-base h-[38px] min-w-[38px]")},e.toDisplayString(w),11,Xn))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:f,disabled:l.value===n.value,class:"border-white last:rounded-e-lg text-base h-[38px] min-w-[38px] py-2 px-2.5 inline-flex justify-center items-center gap-x-2 border text-sm rounded-lg bg-white text-gray-800 hover:shadow-sm hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-50 dark:bg-neutral-700 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-800 py-2"},[...m[2]||(m[2]=[e.createElementVNode("span",{"aria-hidden":"true",class:"sr-only"},"Next",-1),e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down -rotate-90",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1)])],8,Jn)]),e.createElementVNode("div",er,[e.createElementVNode("div",tr,[e.withDirectives(e.createElementVNode("div",lr,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30],w=>e.createElementVNode("button",{type:"button",key:w,onClick:B=>y(w),class:"w-full flex items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm text-gray-800 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 dark:text-neutral-400 dark:hover:bg-neutral-700 dark:hover:text-neutral-300 dark:focus:bg-neutral-700"},[e.createTextVNode(e.toDisplayString(w)+" ",1),s.value===w?(e.openBlock(),e.createElementBlock("svg",nr,[...m[3]||(m[3]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M5 12l5 5l10 -10"},null,-1)])])):e.createCommentVNode("",!0)],8,or)),64))],512),[[e.vShow,x.value]]),e.createElementVNode("button",{type:"button",class:"py-3 px-3.5 inline-flex items-center gap-x-1 text-sm rounded-lg border border-gray-200 text-gray-800 shadow-sm hover:bg-gray-50 focus:outline-none focus:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700 text-base h-[38px] min-w-[38px]","aria-haspopup":"menu","aria-expanded":"false","aria-label":"Dropdown",onClick:m[0]||(m[0]=w=>x.value=!x.value)},[e.createTextVNode(e.toDisplayString(s.value)+" ",1),m[4]||(m[4]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1))])])])]))}}),he=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o},rr={},ar={class:"w-48 mx-auto mb-4",width:"178",height:"90",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function ir(t,a){return e.openBlock(),e.createElementBlock("svg",ar,[...a[0]||(a[0]=[e.createStaticVNode('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-stone-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-stone-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-stone-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-stone-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-stone-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-stone-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-stone-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-stone-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter2)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-stone-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-stone-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-stone-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-stone-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter2" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>',12)])])}const qe=he(rr,[["render",ir]]),sr={},cr={xmlns:"http://www.w3.org/2000/svg",width:"21",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-layout-sidebar-right-collapse"};function dr(t,a){return e.openBlock(),e.createElementBlock("svg",cr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"},null,-1),e.createElementVNode("path",{d:"M15 4v16"},null,-1),e.createElementVNode("path",{d:"M9 10l2 2l-2 2"},null,-1)])])}const mr=he(sr,[["render",dr]]),pr={},fr={xmlns:"http://www.w3.org/2000/svg",width:"21",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-layout-sidebar-right-expand"};function ur(t,a){return e.openBlock(),e.createElementBlock("svg",fr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"},null,-1),e.createElementVNode("path",{d:"M15 4v16"},null,-1),e.createElementVNode("path",{d:"M10 10l-2 2l2 2"},null,-1)])])}const gr=he(pr,[["render",ur]]),hr={},yr={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-map"};function xr(t,a){return e.openBlock(),e.createElementBlock("svg",yr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M3 7l6 -3l6 3l6 -3v13l-6 3l-6 -3l-6 3v-13"},null,-1),e.createElementVNode("path",{d:"M9 4v13"},null,-1),e.createElementVNode("path",{d:"M15 7v13"},null,-1)])])}const br=he(hr,[["render",xr]]),kr={},wr={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-table"};function Cr(t,a){return e.openBlock(),e.createElementBlock("svg",wr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14z"},null,-1),e.createElementVNode("path",{d:"M3 10h18"},null,-1),e.createElementVNode("path",{d:"M10 3v18"},null,-1)])])}const Vr=he(kr,[["render",Cr]]);function mt(t,a){let o;return function(...r){clearTimeout(o),o=setTimeout(()=>t(...r),a)}}const Br={class:"fixed inset-0 z-50 pointer-events-none"},Er={class:"text-base font-semibold text-gray-900"},Nr={class:"px-4 pb-3 min-h-0 shrink-0 overflow-hidden"},Sr={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},_r={class:"text-base font-semibold text-gray-900"},Mr={class:"flex-1 min-h-0 overflow-auto p-4"},Dr=152,pt=96,zr=270,ft=96,Ve=he(e.defineComponent({__name:"MobileModalShell",props:{open:{type:Boolean},title:{},topOffset:{},initialVariant:{},peekMode:{}},emits:["close","expand","collapse"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref("full"),x=e.computed(()=>r.topOffset??"0px"),n=e.computed(()=>r.peekMode??"custom"),p=e.ref(!1),h=e.ref(0);let f=null,u=0,y=0;function V(S,i,C){return Math.max(S,Math.min(C,i))}function m(S){if(!S)return 0;const i=Number.parseFloat(S);return Number.isFinite(i)?i:0}function w(){if(typeof window>"u")return 0;const S=m(x.value);return Math.max(0,window.innerHeight-S)}function B(){const S=n.value==="custom",i=S?Dr:zr,C=S?pt:ft,g=S?40:60;if(typeof window>"u")return Math.max(C,i);const $=window.innerHeight*(g/100);return V(C,i,$)}function c(){return n.value==="custom"?pt:ft}function d(S){const i=w(),C=B(),g=c(),$=s.value==="full"?i:C;return i<=0?Math.max(g,$):V(g,$-S,i)}const M=e.computed(()=>({height:`${d(h.value)}px`}));e.watch(()=>r.open,S=>{S&&(s.value=r.initialVariant??"full"),p.value=!1,h.value=0}),e.watch(()=>r.initialVariant,S=>{r.open&&S&&(s.value=S)});function F(){s.value!=="full"&&(s.value="full",l("expand")),p.value||(h.value=0)}function P(){s.value!=="peek"&&(s.value="peek",l("collapse")),p.value||(h.value=0)}function b(S){if(S.pointerId!==f)return;S.cancelable&&S.preventDefault();const i=S.clientY-u;h.value=y+i}function k(S){if(S.pointerId!==f)return;window.removeEventListener("pointermove",b),window.removeEventListener("pointerup",k),window.removeEventListener("pointercancel",k),f=null;const i=S.clientY-u,C=y+i;h.value=C;const g=d(C),A=(typeof window<"u"?window.innerHeight:0)*.6,Z=A>0&&g>=A,_=A>0&&!Z;if(!(s.value==="peek"&&Z||s.value==="full"&&_)){p.value=!0;return}p.value=!1,h.value=0,s.value==="peek"&&Z?F():s.value==="full"&&_&&P()}function D(S){var i,C;S.button!==0&&S.pointerType==="mouse"||(S.cancelable&&S.preventDefault(),f=S.pointerId,u=S.clientY,y=h.value,p.value=!0,(C=(i=S.currentTarget).setPointerCapture)==null||C.call(i,S.pointerId),window.addEventListener("pointermove",b,{passive:!1}),window.addEventListener("pointerup",k),window.addEventListener("pointercancel",k))}return e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",b),window.removeEventListener("pointerup",k),window.removeEventListener("pointercancel",k)}),a({expand:F,collapseToPeek:P}),(S,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",Br,[e.createElementVNode("div",{class:e.normalizeClass(["absolute inset-0 bg-black/40 transition-opacity duration-150",s.value==="peek"?"opacity-0 pointer-events-none":"opacity-100 pointer-events-auto"]),onClick:i[0]||(i[0]=e.withModifiers(C=>s.value!=="peek"&&l("close"),["self"]))},null,2),e.createElementVNode("div",{class:e.normalizeClass(["pointer-events-auto absolute left-0 right-0 bottom-0 flex flex-col overflow-hidden bg-white shadow-[0_-4px_24px_rgba(0,0,0,0.12)] vs-mobile-modal-shell__panel",[s.value==="peek"?"rounded-t-2xl":"",p.value?"vs-mobile-modal-shell__panel--dragging":""]]),style:e.normalizeStyle(M.value)},[e.createElementVNode("div",{class:"shrink-0 flex flex-col items-center pt-2 pb-1 cursor-grab active:cursor-grabbing touch-none select-none",onPointerdown:D},[...i[5]||(i[5]=[e.createElementVNode("div",{class:"h-1.5 w-10 rounded-full bg-stone-300","aria-hidden":"true"},null,-1)])],32),s.value==="peek"&&n.value==="custom"?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center justify-between gap-4 px-4 pb-3 border-b border-gray-200 shrink-0 touch-none select-none cursor-grab active:cursor-grabbing",onPointerdown:D},[e.createElementVNode("div",Er,e.toDisplayString(t.title),1),e.createElementVNode("button",{type:"button",class:"h-9 w-9 inline-flex items-center justify-center rounded-full border border-gray-200 text-gray-600 hover:bg-gray-50 relative z-[80]",onPointerdown:i[1]||(i[1]=e.withModifiers(()=>{},["stop"])),onClick:i[2]||(i[2]=C=>l("close")),"aria-label":"Close"},[...i[6]||(i[6]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])],32)],32)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",Nr,[e.renderSlot(S.$slots,"peek",{expand:F,collapse:P},()=>[e.createElementVNode("button",{type:"button",class:"w-full text-left text-base font-semibold text-gray-900 py-2 rounded-lg hover:bg-stone-50",onClick:F},e.toDisplayString(t.title),1)],!0)],512),[[e.vShow,s.value==="peek"&&n.value==="custom"]]),e.withDirectives(e.createElementVNode("div",Sr,[e.createElementVNode("div",{class:"flex items-center justify-between gap-4 px-4 pb-3 border-b border-gray-200 shrink-0 touch-none select-none cursor-grab active:cursor-grabbing",onPointerdown:D},[e.createElementVNode("div",_r,e.toDisplayString(t.title),1),e.createElementVNode("button",{type:"button",class:"h-9 w-9 inline-flex items-center justify-center rounded-full border border-gray-200 text-gray-600 hover:bg-gray-50 relative z-[80]",onPointerdown:i[3]||(i[3]=e.withModifiers(()=>{},["stop"])),onClick:i[4]||(i[4]=C=>l("close")),"aria-label":"Close"},[...i[7]||(i[7]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])],32)],32),e.createElementVNode("div",Mr,[e.renderSlot(S.$slots,"default",{},void 0,!0)])],512),[[e.vShow,s.value==="full"||s.value==="peek"&&n.value==="clip-full"]])],6)],512)),[[e.vShow,t.open]])}}),[["__scopeId","data-v-74c152ea"]]),Lr={class:"flex flex-col gap-2 pointer-events-auto self-end","data-peek-controls":"1"},Pr=e.defineComponent({__name:"MapMobilePeekControlButtons",props:{onOpenLayers:{type:Function},onOpenLegend:{type:Function}},setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",Lr,[e.createElementVNode("button",{type:"button",class:"h-[28px] w-[28px] inline-flex items-center justify-center rounded-lg border border-gray-200 bg-white text-gray-800 shadow-md p-0 hover:bg-gray-50 cursor-pointer","aria-label":"Layers",onClick:o[0]||(o[0]=r=>t.onOpenLayers())},[...o[2]||(o[2]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[e.createElementVNode("path",{d:"M12 2 2 7l10 5 10-5-10-5Z"}),e.createElementVNode("path",{d:"M2 17l10 5 10-5"}),e.createElementVNode("path",{d:"M2 12l10 5 10-5"})],-1)])]),e.createElementVNode("button",{type:"button",class:"h-[28px] w-[28px] inline-flex items-center justify-center rounded-lg border border-gray-200 bg-white text-gray-800 shadow-md p-0 hover:bg-gray-50 cursor-pointer","aria-label":"Legend",onClick:o[1]||(o[1]=r=>t.onOpenLegend())},[...o[3]||(o[3]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 6h13"></path><path d="M8 12h13"></path><path d="M8 18h13"></path><path d="M3 6h.01"></path><path d="M3 12h.01"></path><path d="M3 18h.01"></path></svg>',1)])])]))}}),$r=["interpolate",["linear"],["zoom"],10,5,15,12],Ar=["interpolate",["linear"],["zoom"],10,11,12,12];function ut(t,a,o=12,r=12){const l=a??"";return`${window.location.origin}/api/vtile/${t}/ua/{z}/{x}/{y}.vmt?pointZoom=${r}&clusterZoom=${o}&filter=${l}`}function Fr(t,a,o,r,l,s=12,x=12,n={}){if(!a)return;const{mixedGeom:p=!1,circleRadius:h=$r,circleStrokeWidth:f=1,geometryZoomBreakpoint:u,polygonZoom:y}=n,V=u??y??s,m=V-.01,w=V,B=ut(t,l,s,x);a.addSource("vector",{type:"vector",tiles:[B],minzoom:0,maxzoom:22});const c=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],d=[">",c,1],M=["<=",c,1],F=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],P=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],b=["coalesce",["get","point_count_abbreviated"],["get","cluster_count_abbreviated"],["get","clusterCountAbbreviated"],c];a.addLayer({id:"vector-clusters",type:"circle",source:"vector","source-layer":t,filter:d,maxzoom:12,paint:{"circle-color":["step",c,"#51bbd6",100,"#f1f075",750,"#f28cb1"],"circle-radius":["step",c,18,100,26,750,32],"circle-opacity":.85}}),a.addLayer({id:"vector-cluster-count",type:"symbol",source:"vector","source-layer":t,filter:d,maxzoom:12,layout:{"text-field":["to-string",b],"text-font":["Noto Sans Regular"],"text-size":12},paint:{"text-color":"#1f2937"}});const k={id:"vector-circle",type:"circle",source:"vector","source-layer":t,filter:["all",M,F],paint:{"circle-color":o,"circle-stroke-color":r||"#eee","circle-stroke-width":f,"circle-radius":h}};p||(k.maxzoom=m),a.addLayer(k),a.addLayer({id:"vector-fill",type:"fill",minzoom:w,source:"vector","source-layer":t,filter:P,paint:{"fill-color":o,"fill-opacity":.6}}),a.addLayer({id:"vector-stroke",type:"line",minzoom:w,source:"vector","source-layer":t,filter:P,paint:{"line-color":r||o,"line-width":4,"line-opacity":1,"line-dasharray":[2,2]}})}const jr=[{id:"voyager",name:"Базова карта (voyager)",url:"https://data.gki.com.ua/api-user/rtile/voyager/ua/{z}/{x}/{y}.png",preview:"https://data.gki.com.ua/api-user/rtile/voyager/ua/12/2422/1400.png"},{id:"orto",name:"Ортофото 10К",url:"https://data.gki.com.ua/api-user/rtile/orto10/ua/{z}/{x}/{y}.png",preview:"https://data.gki.com.ua/api-user/rtile/orto10/ua/12/2422/1400.png"},{id:"esri",name:"Esri",url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",preview:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/12/2422/1400.png"},{id:"google",name:"Google",url:"https://mt1.google.com/vt/lyrs=s&x={x}&y={y}&z={z}",preview:"https://mt1.google.com/vt/lyrs=s&x=2422&y=1400&z=12"}],Rr={class:"relative w-auto h-full"},Zr={key:0,class:"text-[0.875rem] font-medium text-stone-700"},Tr={key:1,class:"legend-panel__toggle ml-auto shrink-0 p-1.5 rounded-full hover:bg-stone-100 text-stone-600","aria-hidden":"true"},Or={key:0,xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},vr={key:1,xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},Ir={key:0,class:"mb-2"},Ur={class:"flex justify-start items-center gap-2"},Kr={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Hr={class:"text-[0.875rem]"},Wr={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Gr={class:"flex justify-start items-center gap-2"},qr={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Yr={class:"text-[0.875rem]"},Qr={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Xr={key:1,class:"p-[10px]"},Jr={key:0,class:"mb-2"},ea={class:"flex justify-start items-center gap-2"},ta={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},la={class:"text-[0.875rem]"},oa={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},na={class:"flex justify-start items-center gap-2"},ra={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},aa={class:"text-[0.875rem]"},ia={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},sa={key:0,class:"vs-map-slot-layers z-10 select-none",style:{display:"flex"}},ca=["title","onClick"],da=["src"],ma={class:"absolute py-2 px-4 text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg top-[-46px] hidden whitespace-nowrap left-1/2 -translate-x-1/2"},pa={class:"vs-mobile-peek-controls px-3 pb-3"},fa={class:"vs-map-slot-layers--peek z-10 select-none",style:{position:"static",display:"grid !important","grid-template-columns":"repeat(3, minmax(0, 1fr))",gap:"12px",width:"100%"}},ua=["title","onClick"],ga=["src"],ha={class:"absolute py-2 px-4 text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg top-[-46px] hidden whitespace-nowrap left-1/2 -translate-x-1/2"},ya={class:"vs-mobile-peek-controls flex justify-center w-full"},xa={class:"w-full"},ba={class:"legend-panel__header flex items-center justify-between gap-2 py-[7px] pl-[10px] pr-[7px] pb-[12px]"},ka={class:"text-[0.875rem] font-medium text-stone-700"},wa={class:"legend-panel__content overflow-hidden transition-all duration-200 ease-out"},Ca={class:"p-[10px] pt-0"},Va={class:"flex justify-start items-center gap-2"},Ba={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Ea={class:"text-[0.875rem]"},Na={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Be="vector-clusters",gt=e.defineComponent({__name:"map",props:{table:{},center:{},colorAttr:{},strokeAttr:{},filter:{},modelValue:{},zoom:{},minZoom:{},maxZoom:{},map:{},showPopup:{type:Boolean,default:!0},mobilePeekControls:{type:Boolean},layers:{},clusterZoom:{},pointZoom:{},polygonZoom:{},geometryZoomBreakpoint:{},mixedGeom:{type:Boolean,default:!1},circleRadius:{},circleStrokeWidth:{},highlightCircleRadius:{},highlightCircleColor:{},isCollapsible:{type:Boolean},legendTitle:{},legendWidth:{},alwaysShowPolygon:{type:Boolean}},emits:["update:modelValue","update:map"],setup(t,{emit:a}){const o=t,r=a;let l,s=null;const x=e.getCurrentInstance(),n=e.ref(null),p=e.ref(!1),h=e.ref(!1),f=e.ref(!1),u=e.ref(!1);let y=null,V=null;const m=["vector-circle","vector-fill","vector-stroke"],w=e.ref(!1);function B(){h.value=!h.value}const c=e.computed(()=>{var L,j;return((j=(L=x==null?void 0:x.appContext.config.globalProperties)==null?void 0:L.$settings)==null?void 0:j.basemaps)||[]}),d=e.computed(()=>(o.layers&&o.layers.length?o.layers:c.value.length?c.value:jr).map((j,T)=>{var ee;const z=j.id||((ee=j.name)==null?void 0:ee.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${T}`,W=j.name||j.id||`layer-${T}`;return{...j,id:z,name:W}})),M=e.ref(""),F=e.computed(()=>d.value.find(L=>L.id===M.value)||d.value[0]);e.watch(d,L=>{var j;L.length&&(!M.value||!L.some(T=>T.id===M.value))&&(M.value=((j=L[0])==null?void 0:j.id)||"")},{immediate:!0});function P(L){return L?L.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const b=e.ref(null),k=e.ref(null),D=e.computed(()=>o.showPopup!==!1),S=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"],i=["#0a7a34","#7c3aed","#d97706","#dc2626"];let C,g=[];const $=[30,48];let A=null,Z=[];function _(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const L=new URLSearchParams(window.location.search),j=Number(L.get("z")),T=Number(L.get("y")),z=Number(L.get("x")),W=L.has("x")&&L.has("y"),ee=L.has("z");return{zoom:ee?j:null,center:W?[z,T]:null,hasQuery:W||ee}}function O(L,j){if(!L||typeof window>"u")return;const T=new URL(window.location.href);T.searchParams.set("z",j.toFixed(2)),T.searchParams.set("x",L[0].toFixed(6)),T.searchParams.set("y",L[1].toFixed(6)),window.history.replaceState({},"",T)}let I=!1;function v(){if(!l||!I)return;const L=l.getCenter();O([L.lng,L.lat],l.getZoom())}const te=()=>{I||(I=!0),v()};function Me(L){return L?["==",["to-string",["get","id"]],L]:["==",["literal",1],0]}const ae=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],ie=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]];function De(){const L=o.geometryZoomBreakpoint;if(L==null)return null;const j=Number(L);return Number.isNaN(j)?null:j}function ge(){const L=De();return L??(typeof o.polygonZoom=="number"?o.polygonZoom:typeof o.clusterZoom=="number"?o.clusterZoom:12)}function Ee(){return o.pointZoom??12}function Ne(){const L=Me(o.modelValue),j=["all",L,ae],T=["all",L,ie];if(!l.getLayer("vector-highlight-circle")){const W=ge(),ee=W!=null?W-.01:24,me=o.highlightCircleRadius??o.circleRadius??Ar,le=o.highlightCircleColor??"#ffffff",U={id:"vector-highlight-circle",type:"circle",source:"vector","source-layer":o.table,paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":le,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":me}};o.mixedGeom||(U.maxzoom=ee),l.addLayer(U)}if(!l.getLayer("vector-highlight-fill")){const W=ge();l.addLayer({id:"vector-highlight-fill",type:"line",minzoom:W??24,source:"vector","source-layer":o.table,paint:{"line-color":"#ffffff","line-width":4,"line-opacity":.9}})}l.setFilter("vector-highlight-circle",j),l.setFilter("vector-highlight-fill",T);const z=o.modelValue?"visible":"none";l.setLayoutProperty("vector-highlight-circle","visibility",z),l.setLayoutProperty("vector-highlight-fill","visibility",z),Ze()}function Se(){!l||!Z.length||(l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-color",Z),l.getLayer("vector-fill")&&l.setPaintProperty("vector-fill","fill-color",Z))}function Re(){if(!l)return;o.circleRadius!==void 0&&l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-radius",o.circleRadius),o.circleStrokeWidth!==void 0&&l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-stroke-width",o.circleStrokeWidth);const L=o.highlightCircleRadius??o.circleRadius;L!==void 0&&l.getLayer("vector-highlight-circle")&&l.setPaintProperty("vector-highlight-circle","circle-radius",L),l.getLayer("vector-highlight-circle")&&l.setPaintProperty("vector-highlight-circle","circle-stroke-color",o.highlightCircleColor??"#ffffff")}function Ze(){if(oe(),!o.modelValue)return;let L=!0;A=window.setInterval(()=>{L=!L;const j=L?.95:.45;l!=null&&l.getLayer("vector-highlight-circle")&&l.setPaintProperty("vector-highlight-circle","circle-stroke-opacity",j),l!=null&&l.getLayer("vector-highlight-fill")&&l.setPaintProperty("vector-highlight-fill","line-opacity",j)},600)}function oe(){A&&(clearInterval(A),A=null)}function Te(){l&&(l.setCenter(o.center||$),l.setZoom(o.zoom||5))}function se(){if(!(l!=null&&l.setLayerZoomRange))return;const L=o.minZoom??0,j=Math.min((o.maxZoom??18)+.01,24),z=(o.clusterZoom??12)-.01,W=ge(),ee=W-.01,me=w.value&&!o.mixedGeom?ee:j,le=W;o.alwaysShowPolygon?(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",L,0),l.getLayer("vector-highlight-circle")&&l.setLayerZoomRange("vector-highlight-circle",L,0),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",L,j),l.getLayer("vector-highlight-fill")&&l.setLayerZoomRange("vector-highlight-fill",L,j),l.getLayer(Be)&&l.setLayerZoomRange(Be,L,0),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",L,0)):(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",L,me),l.getLayer("vector-highlight-circle")&&l.setLayerZoomRange("vector-highlight-circle",L,me),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",le,j),l.getLayer("vector-stroke")&&l.setLayerZoomRange("vector-stroke",le,j),l.getLayer("vector-highlight-fill")&&l.setLayerZoomRange("vector-highlight-fill",le,j),l.getLayer(Be)&&l.setLayerZoomRange(Be,L,z),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",L,z))}function ze(){if(l!=null&&l.getSource("vector")){try{const j=l.querySourceFeatures("vector",{sourceLayer:o.table}).some(T=>{var W;const z=(W=T.geometry)==null?void 0:W.type;return z==="Polygon"||z==="MultiPolygon"});w.value=j}catch{}se()}}const _e=_();I=_e.hasQuery,e.onMounted(async()=>{C=(await fetch(`/api/data/${o.table}/${o.colorAttr}`).then(U=>U.json())).rows,C.forEach((U,K)=>{if(U.id==null||U.id===""){U.color="#808080";return}U.color||Object.assign(U,{color:S[K%10]})});const j=o.strokeAttr;if(g=[],j){g=(await fetch(`/api/data/${o.table}/${j}`).then(H=>H.json())).rows||[];let K=0;g.forEach((H,X)=>{H.color||!H.id||(Object.assign(H,{color:i[K%i.length]}),K+=1)})}s=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const T=F.value;if(!T)return;const z=_e.center||o.center||$,W=_e.zoom||o.zoom||5;l=new maplibregl.Map({container:n.value,style:{version:8,sources:{[T.id]:{type:"raster",tiles:[T.url],tileSize:256},...T.overlayUrl?{[`${T.id}-overlay`]:{type:"raster",tiles:[T.overlayUrl],tileSize:256}}:{}},layers:[{id:T.id,type:"raster",source:T.id,minzoom:0,maxzoom:19},...T.overlayUrl?[{id:`${T.id}-overlay`,type:"raster",source:`${T.id}-overlay`,minzoom:0,maxzoom:19}]:[]]},center:z,zoom:W,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),r("update:map",l);const ee=o.mobilePeekControls?"bottom-right":"top-right";if(l.addControl(new maplibregl.NavigationControl,ee),o.mobilePeekControls){const U={onAdd:()=>{const K=document.createElement("div");return y=K,V=e.createApp(Pr,{onOpenLayers:()=>{f.value=!0},onOpenLegend:()=>{u.value=!0}}),V.mount(K),K},onRemove:()=>{V==null||V.unmount(),V=null,y=null}};l.addControl(U,"bottom-right"),l.once("render",()=>{if(!y)return;const K=l.getContainer(),H=K.querySelector(".maplibregl-ctrl-bottom-right"),X=K.querySelector(".maplibregl-ctrl-zoom-in"),pe=X==null?void 0:X.closest(".maplibregl-ctrl-group");!H||!pe||y.parentElement===H&&(H.removeChild(y),H.insertBefore(y,pe.nextSibling))})}l.on("zoom",()=>{}),l.on("moveend",te),l.on("zoomend",te),I&&v(),l.on("load",()=>{l==null||l.resize(),p.value=!0;const U=C.filter(Y=>Y.id!=null&&Y.id!=="").reduce((Y,ne)=>[String(ne.id),ne.color].concat(Y),[]),K=["match",["to-string",["get",o.colorAttr]],...U,"#808080"],H=(g||[]).filter(Y=>Y.id!=null&&Y.id!=="").reduce((Y,ne)=>[String(ne.id),ne.color].concat(Y),[]),X=j?["match",["to-string",["get",j]],...H,"rgba(0,0,0,0)"]:"rgba(0,0,0,0)";Z=K;const pe=De();Fr(o.table,l,K,X,o.filter,o.clusterZoom,Ee(),{mixedGeom:o.mixedGeom,circleRadius:o.circleRadius,circleStrokeWidth:o.circleStrokeWidth,geometryZoomBreakpoint:pe??void 0,polygonZoom:pe==null?o.polygonZoom:void 0}),Ne(),Se(),Re(),se(),l.on("sourcedata",Y=>{Y.sourceId==="vector"&&Y.isSourceLoaded&&ge()!=null&&ze()})});const me=U=>{var H,X;const K=(H=U.features)==null?void 0:H[0];(X=K==null?void 0:K.properties)!=null&&X.id&&r("update:modelValue",K.properties.id)};m.forEach(U=>{l.on("click",U,me)}),l.on("click",Be,U=>{var Y,ne,Le;const K=(Y=U.features)==null?void 0:Y[0];if(!K)return;const{geometry:H}=K,X=(H==null?void 0:H.type)==="Point"?H.coordinates:(Le=(ne=H==null?void 0:H.coordinates)==null?void 0:ne[0])==null?void 0:Le[0];if(!X)return;const pe=Math.min(l.getZoom()+2,l.getMaxZoom());l.easeTo({center:X,zoom:pe})}),[...m,Be].forEach(U=>{l.on("mouseenter",U,()=>{l.getCanvas().style.cursor="pointer"}),l.on("mouseleave",U,()=>{l.getCanvas().style.cursor=""})}),l.on("mousemove",U=>{var Y,ne;if(!D.value){(Y=s==null?void 0:s.remove)==null||Y.call(s);return}if(!s)return;const K=l.queryRenderedFeatures(U.point,{layers:m});if(!K||!K.length){s.remove();return}const H=K[0],{coordinates:X}=H.geometry,pe=H.geometry.type==="Point"?X:X[0][0];k.value=H.properties,s.setLngLat(pe).setHTML((ne=b.value)==null?void 0:ne.innerHTML).addTo(l)})}),e.watch(()=>o.center,L=>{l&&l.setCenter(L||$)}),e.watch(()=>o.zoom,L=>{l&&l.setZoom(L)}),e.watch(()=>o.minZoom,L=>{l&&(l.setMinZoom(L??3),se())}),e.watch(()=>o.maxZoom,L=>{l&&(l.setMaxZoom(L??18),se())});function ye(L,j,T){if(!(l!=null&&l.getSource("vector")))return;const z=ut(o.table,L??o.filter,j??o.clusterZoom??12,Ee());l.getSource("vector").setTiles([z])}return e.watch(()=>o.filter,L=>{ye(L)}),e.watch(()=>o.clusterZoom,L=>{ye(void 0,L),se()}),e.watch(()=>o.pointZoom,()=>{ye()}),e.watch(()=>o.geometryZoomBreakpoint,()=>{ye(),se()}),e.watch(()=>o.alwaysShowPolygon,()=>{se(),ye()}),e.watch(()=>o.polygonZoom,()=>{ze()}),e.watch(()=>o.mixedGeom,()=>{se()}),e.watch(()=>[o.circleRadius,o.circleStrokeWidth,o.highlightCircleRadius,o.highlightCircleColor],()=>{Re()}),e.watch(()=>o.modelValue,L=>{if(!l)return;const j=Me(L),T=["all",j,ae],z=["all",j,ie];if(l.getLayer("vector-highlight-circle")){l.setFilter("vector-highlight-circle",T);const W=L?"visible":"none";l.setLayoutProperty("vector-highlight-circle","visibility",W)}if(l.getLayer("vector-highlight-fill")){l.setFilter("vector-highlight-fill",z);const W=L?"visible":"none";l.setLayoutProperty("vector-highlight-fill","visibility",W)}Se(),L?Ze():oe()}),e.watch(M,(L,j)=>{if(!l||!L)return;const T=d.value.find(ee=>ee.id===L);if(!T)return;l.getLayer(j)&&l.removeLayer(j),l.getSource(j)&&l.removeSource(j);const z=`${j}-overlay`;l.getLayer(z)&&l.removeLayer(z),l.getSource(z)&&l.removeSource(z),l.addSource(L,{type:"raster",tiles:[T.url],tileSize:256}),T.overlayUrl&&l.addSource(`${L}-overlay`,{type:"raster",tiles:[T.overlayUrl],tileSize:256});const W=l.getLayer("vector-clusters")?"vector-clusters":l.getLayer("vector-circle")?"vector-circle":void 0;l.addLayer({id:T.id,type:"raster",source:T.id,minzoom:0,maxzoom:19},W),T.overlayUrl&&l.addLayer({id:`${L}-overlay`,type:"raster",source:`${L}-overlay`,minzoom:0,maxzoom:19},W)}),e.onBeforeUnmount(()=>{oe(),l&&(l.off("moveend",te),l.off("zoomend",te),l.remove())}),(L,j)=>{const T=e.resolveDirective("tooltip");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Rr,[e.createElementVNode("div",{ref_key:"mapContainer",ref:n,class:"map-container w-auto relative"},null,512),e.withDirectives((e.openBlock(),e.createElementBlock("button",{type:"button",class:"absolute top-25 right-2 z-20 h-8 w-8 flex items-center justify-center rounded-lg bg-white border border-gray-200 shadow-[0_8px_20px_rgba(0,0,0,0.08)] text-[18px] leading-none text-gray-700 hover:bg-gray-50",title:"Повернутися до базового вигляду",onClick:Te},[...j[3]||(j[3]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M3 11L12 3l9 8"}),e.createElementVNode("path",{d:"M5 9v10h4v-6h6v6h4V9"})],-1)])])),[[T,"Повернутися до базового вигляду"]]),e.createElementVNode("div",{class:e.normalizeClass(["absolute left-[20px] bottom-[74px] bg-white rounded-lg z-10 border legend-panel",{"legend-panel--has-header":o.legendTitle||o.isCollapsible}]),style:e.normalizeStyle(o.legendWidth?{width:o.legendWidth}:{maxWidth:"250px"})},[o.legendTitle||o.isCollapsible?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.isCollapsible?"button":"div"),{type:o.isCollapsible?"button":void 0,class:e.normalizeClass(["legend-panel__header flex items-center justify-between gap-2 py-[7px] pl-[10px] pr-[7px]",{"legend-panel__header--interactive":o.isCollapsible}]),"aria-label":o.isCollapsible?h.value?"Згорнути легенду":"Розгорнути легенду":void 0,"aria-expanded":o.isCollapsible?String(h.value):void 0,onClick:j[0]||(j[0]=z=>o.isCollapsible?B():void 0)},{default:e.withCtx(()=>[o.legendTitle?(e.openBlock(),e.createElementBlock("span",Zr,e.toDisplayString(o.legendTitle),1)):e.createCommentVNode("",!0),o.isCollapsible?(e.openBlock(),e.createElementBlock("span",Tr,[h.value?(e.openBlock(),e.createElementBlock("svg",Or,[...j[4]||(j[4]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",vr,[...j[5]||(j[5]=[e.createElementVNode("path",{d:"m18 15-6-6-6 6"},null,-1)])]))])):e.createCommentVNode("",!0)]),_:1},8,["type","class","aria-label","aria-expanded"])),e.createElementVNode("div",{class:"legend-panel__content overflow-hidden transition-all duration-200 ease-out",style:e.normalizeStyle(o.isCollapsible&&!h.value?{maxHeight:"0",padding:"0",margin:"0",opacity:"0"}:{})},[e.createElementVNode("div",{class:e.normalizeClass(["p-[10px]",h.value&&(e.unref(C)||[]).length?"pt-0":"pt-2"])},[(e.unref(g)||[]).some(z=>z==null?void 0:z.id)?(e.openBlock(),e.createElementBlock("div",Ir,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((e.unref(g)||[]).filter(z=>z==null?void 0:z.id),z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${z.id}`},[e.createElementVNode("div",Ur,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:z.color||"#808080"})},null,4),e.createElementVNode("div",Kr,[e.createElementVNode("span",Hr,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",Wr,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C)||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",Gr,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",qr,[e.createElementVNode("span",Yr,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",Qr,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))],2)],4)],64)):(e.openBlock(),e.createElementBlock("div",Xr,[(e.unref(g)||[]).some(z=>z==null?void 0:z.id)?(e.openBlock(),e.createElementBlock("div",Jr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((e.unref(g)||[]).filter(z=>z==null?void 0:z.id),z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${z.id}`},[e.createElementVNode("div",ea,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:z.color||"#808080"})},null,4),e.createElementVNode("div",ta,[e.createElementVNode("span",la,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",oa,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C)||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",na,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",ra,[e.createElementVNode("span",aa,e.toDisplayString(z.text??"Відсутні дані"),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",ia,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))]))],6),e.createElementVNode("div",{ref_key:"popupDiv",ref:b,style:{display:"none"}},[e.renderSlot(L.$slots,"default",{hoverData:k.value})],512),o.mobilePeekControls?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",sa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,z=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:z.id,title:z.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:M.value===z.id}]),onClick:W=>M.value=z.id},[e.createElementVNode("img",{src:z.preview||P(z.url),class:"vs-map-slot-layers__image"},null,8,da),e.createElementVNode("div",ma,e.toDisplayString(z.name),1)],10,ca)),[[T,z.name]])),128))])),o.mobilePeekControls?(e.openBlock(),e.createBlock(Ve,{key:1,open:f.value,title:"Шари","initial-variant":"peek","peek-mode":"clip-full","allow-expand":!1,onClose:j[1]||(j[1]=z=>f.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",pa,[e.createElementVNode("div",fa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,z=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:z.id,title:z.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:M.value===z.id}]),onClick:W=>M.value=z.id},[e.createElementVNode("img",{src:z.preview||P(z.url),class:"vs-map-slot-layers__image",style:{width:"100%",height:"100","object-fit":"cover",display:"block"}},null,8,ga),e.createElementVNode("div",ha,e.toDisplayString(z.name),1)],10,ua)),[[T,z.name]])),128))])])]),_:1},8,["open"])):e.createCommentVNode("",!0),o.mobilePeekControls?(e.openBlock(),e.createBlock(Ve,{key:2,open:u.value,title:"Легенда","initial-variant":"peek","peek-mode":"clip-full","peek-height-px":200,onClose:j[2]||(j[2]=z=>u.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",ya,[e.createElementVNode("div",xa,[e.createElementVNode("div",ba,[e.createElementVNode("span",ka,e.toDisplayString(o.legendTitle||"Легенда"),1)]),e.createElementVNode("div",wa,[e.createElementVNode("div",Ca,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C)||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",Va,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",Ba,[e.createElementVNode("span",Ea,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",Na,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])])])])]),_:1},8,["open"])):e.createCommentVNode("",!0)],512)),[[e.vShow,p.value]])}}}),ht={mounted(t,a){if(typeof document>"u")return;let o=null;const r=()=>{o=document.createElement("div"),o.textContent=a.value,Object.assign(o.style,{position:"absolute",background:"#333",color:"#fff",padding:"4px 8px",borderRadius:"4px",fontSize:"12px",whiteSpace:"nowrap",pointerEvents:"none",zIndex:"9999"}),document.body.appendChild(o);const s=t.getBoundingClientRect();o.style.left=`${s.left+window.scrollX}px`,o.style.top=`${s.top+window.scrollY-o.offsetHeight-5}px`},l=()=>{o&&o.parentNode&&(o.parentNode.removeChild(o),o=null)};t.addEventListener("mouseenter",r),t.addEventListener("mouseleave",l),Object.assign(t,{tooltipHandlers:{showTooltip:r,hideTooltip:l}})},unmounted(t){if(typeof document>"u")return;const a=t.tooltipHandlers;a&&(t.removeEventListener("mouseenter",a.showTooltip),t.removeEventListener("mouseleave",a.hideTooltip))}},Sa={},_a={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-list-filter-icon lucide-list-filter"};function Ma(t,a){return e.openBlock(),e.createElementBlock("svg",_a,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M2 5h20"},null,-1),e.createElementVNode("path",{d:"M6 12h12"},null,-1),e.createElementVNode("path",{d:"M9 19h6"},null,-1)])])}const Da=he(Sa,[["render",Ma]]),za={},La={xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5 shrink-0",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"};function Pa(t,a){return e.openBlock(),e.createElementBlock("svg",La,[...a[0]||(a[0]=[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"},null,-1),e.createElementVNode("path",{d:"m21 21-4.35-4.35"},null,-1)])])}const $a=he(za,[["render",Pa]]),Aa={},Fa={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-table-icon lucide-table"};function ja(t,a){return e.openBlock(),e.createElementBlock("svg",Fa,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M12 3v18"},null,-1),e.createElementVNode("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"},null,-1),e.createElementVNode("path",{d:"M3 9h18"},null,-1),e.createElementVNode("path",{d:"M3 15h18"},null,-1)])])}const Ra=he(Aa,[["render",ja]]),Za={class:"absolute inset-x-0 top-[12px] z-40 px-[12px] pointer-events-none"},Ta={class:"flex flex-wrap gap-2"},Oa=["disabled"],va={key:0,class:"pointer-events-none absolute top-1 right-0.5 h-3 w-3 rounded-full bg-blue-400","aria-hidden":"true"},Ia=e.defineComponent({__name:"MobileOverlayActions",props:{activeModal:{},filtersDisabled:{type:Boolean},hasActiveFilters:{type:Boolean}},emits:["openSearch","openFilters","openTable"],setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",Za,[e.createElementVNode("div",Ta,[e.createElementVNode("button",{type:"button",class:e.normalizeClass(["pointer-events-auto py-2 px-3 h-[44px] inline-flex items-center gap-x-2 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",{"bg-stone-50":t.activeModal==="search"}]),onClick:o[0]||(o[0]=r=>a.$emit("openSearch"))},[e.createVNode($a)],2),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["pointer-events-auto relative py-2 px-3 h-[44px] inline-flex items-center gap-x-2 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",{"bg-stone-50":t.activeModal==="filters"}]),disabled:t.filtersDisabled,onClick:o[1]||(o[1]=r=>a.$emit("openFilters"))},[e.createVNode(Da,{"stroke-width":1,class:"text-gray-900"}),o[3]||(o[3]=e.createElementVNode("span",{class:"font-medium"},"Фільтри",-1)),t.hasActiveFilters&&!t.filtersDisabled?(e.openBlock(),e.createElementBlock("span",va)):e.createCommentVNode("",!0)],10,Oa),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["pointer-events-auto py-2 px-3 h-[44px] inline-flex items-center gap-x-2 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",{"bg-stone-50":t.activeModal==="table"}]),onClick:o[2]||(o[2]=r=>a.$emit("openTable"))},[e.createVNode(Ra,{"stroke-width":1,class:"text-gray-900"}),o[4]||(o[4]=e.createElementVNode("span",{class:"font-medium"},"Таблиця",-1))],2)])]))}}),Ua={key:0,class:"relative w-full h-full vs-mobile-parts-map"},Ka={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},Ha={class:"flex flex-col min-h-0 gap-4"},Wa={class:"flex flex-col min-h-0 flex-1"},Ga={key:1,class:"wrapperTable flex flex-col min-h-0"},qa={key:1,class:"text-center py-8"},Ya={key:2,class:"mt-4 pt-4 border-t border-stone-200 shrink-0"},Qa={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},Xa={id:"active-filters"},Ja={class:"flex-1 min-h-0"},ei={key:1,class:"text-sm text-stone-500"},ti={class:"wrapperTable flex flex-col min-h-0"},li={key:1,class:"text-center py-12"},oi={key:0,class:"mt-4 pt-4 border-t border-stone-200"},ni=["onClick"],ri={class:"w-full gap-5 inline-flex mb-[6px] pr-3"},ai={class:"flex items-center"},ii=["title"],si={class:"max-[1000px]:flex gap-2 min-[1001px]:hidden"},ci={class:"flex"},di={key:0,class:"flex items-center py-[15px] pb-[24px] pl-2 pr-6 gap-4"},mi={class:"font-bold text-2xl mr-[10px]"},pi={class:"text-sm text-stone-500 font-medium"},fi={key:0,class:"inline-flex items-center gap-2 text-sm text-stone-700 select-none ml-auto mt-auto"},ui={class:"wrapperTable flex flex-col",style:{height:"calc(100vh - 302px)"}},gi={key:1,class:"text-center py-28"},hi={key:1},yi={key:2,class:"my-5 pr-2"},xi={class:"flex justify-between"},bi={class:"w-full lg:w-1/2 relative"},ki={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},yt="(max-width: 999px)",je="0px",Ye=e.defineComponent({__name:"vs-parts-map",props:{title:{},table:{},map:{},rows:{},geom:{default:"geom"},zoom:{},minZoom:{default:3},maxZoom:{default:18},center:{},initTotal:{},colorAttr:{},strokeAttr:{},id:{},filters:{},history:{type:Boolean},layers:{},objectsInView:{type:Boolean,default:!0},clusterZoom:{default:12},pointZoom:{},polygonZoom:{},geometryZoomBreakpoint:{},mixedGeom:{type:Boolean,default:!1},circleRadius:{},circleStrokeWidth:{},highlightCircleRadius:{},highlightCircleColor:{},isCollapsible:{type:Boolean},legendTitle:{},legendWidth:{},polygonFitBbox:{type:Boolean},alwaysShowPolygon:{type:Boolean},mobileFilterView:{},mobileFilterLimit:{}},emits:["change:filter","update:map"],setup(t,{emit:a}){var H,X,pe,Y,ne,Le,xt;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=ht);function r(E){return E?(E.type==="Point"?E.coordinates:null)||(E.type.includes("Multi")?E.coordinates[0][0][0]:E.coordinates[0][0]):null}function l(E){switch(E==null?void 0:E.type){case"Polygon":return E.coordinates[0];case"MultiPolygon":return E.coordinates.flatMap(N=>N[0]);case"LineString":return E.coordinates;case"MultiLineString":return E.coordinates.flat();default:return[]}}function s(E){if(!E||E.type==="Point"||E.type==="MultiPoint")return null;const N=l(E);if(!N.length)return null;let G=1/0,R=1/0,re=-1/0,Q=-1/0;return N.forEach(([q,ce])=>{q<G&&(G=q),ce<R&&(R=ce),q>re&&(re=q),ce>Q&&(Q=ce)}),[[G,R],[re,Q]]}function x(E){return(E==null?void 0:E.type)==="Polygon"||(E==null?void 0:E.type)==="MultiPolygon"}const n=t,p=e.useSlots(),h=e.computed(()=>n.mobileFilterView??"vertical"),f=e.computed(()=>n.mobileFilterLimit!==void 0?{limit:n.mobileFilterLimit}:{}),u=a,y=e.ref(0);y.value=n.initTotal??((H=n.rows)==null?void 0:H.length)??0;const V=e.ref(""),m=e.ref(null),w=e.ref(!0),B=e.ref(((X=n.rows)==null?void 0:X.length)===1),c=e.ref(!1);let d=null;const M=e.ref(!1);typeof window<"u"&&(d=window.matchMedia(yt),M.value=d.matches,c.value=!0);const F=e.ref(n.rows),P=e.ref(1),b=e.ref(20),k=e.ref(n.filters||[]),D=e.ref(""),S=e.ref({}),i=e.computed(()=>Object.values(S.value).some(E=>Array.isArray(E)?E.some(N=>N!=null&&N!==""):E&&typeof E=="object"?Object.values(E).some(N=>N!=null&&N!==""):E===null?!0:E!==void 0&&E!=="")),C=e.ref(((pe=n.rows)==null?void 0:pe.length)===1?n.rows[0]:{}),g=e.ref(((Y=n.rows)==null?void 0:Y.length)===1?n.rows[0].id:""),$=e.ref(((ne=n.rows)==null?void 0:ne.length)===1?r((Le=n.rows[0])==null?void 0:Le[n.geom]):n.center||null),A=e.ref(((xt=n.rows)==null?void 0:xt.length)===1?14:n.zoom||5),Z=e.ref(!1),_=e.ref(!1),O=e.ref("");let I=!1;const v=e.ref(null),te=e.ref(!1);function Me(){if(!d)return;const E=M.value;M.value=d.matches,E!==M.value&&(v.value=null,e.nextTick(()=>{var N,G;(G=(N=m.value)==null?void 0:N.resize)==null||G.call(N)}))}const ae=e.ref(null),ie=e.ref(null),De=e.computed(()=>{if(n.alwaysShowPolygon)return 0;if(ie.value!=null)return ie.value;if(n.geometryZoomBreakpoint!=null){const E=Number(n.geometryZoomBreakpoint);if(!Number.isNaN(E))return E}return 12}),ge=E=>(E==null?void 0:E[n.geom])??(E==null?void 0:E.geom),Ee=e.computed(()=>B.value&&!ge(C.value)),Ne=e.computed({get:()=>Ee.value?"":g.value,set:E=>{g.value=E,M.value&&(E?(te.value=!0,v.value="details"):v.value==="details"&&(v.value=null))}});function Se(){var q,ce;if(n.alwaysShowPolygon){ae.value=null,ie.value=null;return}const E=ge(C.value);if(!n.polygonFitBbox||!m.value||!E){ae.value=null,ie.value=null;return}const N=E;if(!x(N)){ae.value=null,ie.value=null;return}const G=s(N);if(!G){ae.value=null,ie.value=null;return}const R=(ce=(q=m.value).cameraForBounds)==null?void 0:ce.call(q,G,{padding:20,maxZoom:16}),re=R==null?void 0:R.zoom,Q=n.clusterZoom??12;if(re!=null&&re<Q){const we=Math.floor(re);ae.value=we,ie.value=we}else ae.value=null,ie.value=null}function Re(E){return Object.entries(E).filter(([,N])=>Array.isArray(N)?N.length:N).map(([N,G])=>`${N}=${G}`).join("|")}function Ze(){var R,re,Q,q;if(!m.value||!_.value)return;const E=(re=(R=m.value).getBounds)==null?void 0:re.call(R);if(!E)return;const N=(Q=E.getSouthWest)==null?void 0:Q.call(E),G=(q=E.getNorthEast)==null?void 0:q.call(E);!N||!G||(O.value=`${N.lng} ${N.lat},${G.lng} ${G.lat}`)}async function oe(E=!1){await e.nextTick();const N=Re(S.value);D.value=N,_.value?Ze():O.value="";try{const G={search:V.value,limit:b.value.toString(),page:P.value.toString(),filter:N,..._.value&&O.value?{bbox:O.value}:{}},R=new URL(`/api/data/${n.table}`,window.location.origin)+(g.value?`/${g.value}`:""),re=new URLSearchParams(G).toString(),Q=await fetch(`${R.toString()}?${re}`).then(q=>q.json());if(g.value){let q;Q.rows.length>1?q=Q.rows.find(we=>we.id===g.value):[q]=Q.rows,C.value=q;const ce=ge(q);if(!E&&ce){const we=n.polygonFitBbox?s(ce):null;we&&m.value?m.value.fitBounds(we,{padding:20,maxZoom:16,duration:500}):($.value=r(ce),A.value=14)}else!E&&ce&&($.value=r(ce),A.value=14);Se(),B.value=!0}else ae.value=null,ie.value=null,B.value=!1,Z.value||(A.value=n.zoom||5),F.value=Q==null?void 0:Q.rows;Z.value=!1,y.value=Q.filtered,Wn({page:P.value,filter:N,id:g.value,filterByView:_.value})}catch(G){console.error(G.message)}}const Te=mt(()=>oe(),300),se=mt(()=>oe(!0),400);function ze(){!m.value||I||!_.value||(m.value.on("moveend",se),m.value.on("zoomend",se),I=!0)}function _e(){!m.value||!I||(m.value.off("moveend",se),m.value.off("zoomend",se),I=!1)}function ye(E){b.value=E,P.value=1,oe()}function L(E){P.value=E,oe()}function j(E){S.value=E.data,P.value=1,g.value?g.value="":oe(),u("change:filter",E)}async function T(){if(n.filters)return;const N=await(await fetch(`/api/filter/${n.table}`)).json();k.value=N.list}function z(){S.value={},V.value="",oe()}e.onMounted(async()=>{var G,R;d||(d=window.matchMedia(yt)),c.value||(M.value=d.matches,c.value=!0),d.addEventListener("change",Me),M.value&&(w.value=!1);const E=new URLSearchParams(window.location.search);P.value=Number(E.get("page"))||1,b.value=Number(E.get("limit"))||b.value,g.value=E.get("id")||"",B.value=!!g.value,D.value=E.get("filter")||"";const N=E.get("bbox");N!==null?_.value=N!=="0":_.value=!1,(R=(G=E.get("filter"))==null?void 0:G.split("|"))==null||R.forEach(re=>{const[Q,q]=re.split("=");Q&&(S.value[Q]=q!=null&&q.includes(",")?q.split(","):[q])}),T(),!F.value&&!g.value&&oe()}),e.onBeforeUnmount(()=>{d==null||d.removeEventListener("change",Me),_e()});function W(){Z.value=!0,B.value=!1,C.value=null,g.value="",ae.value=null,ie.value=null}function ee(E){v.value=E}function me(){v.value=null}async function le(){var E,N;await e.nextTick(),(N=(E=m.value)==null?void 0:E.resize)==null||N.call(E)}function U(){W(),me()}function K(E){te.value=!0;const N=ge(E);if(N){const G=n.polygonFitBbox?s(N):null;G&&m.value?m.value.fitBounds(G,{padding:20,maxZoom:16,duration:500}):($.value=r(N),A.value=16)}else E!=null&&E[n.geom]&&($.value=r(E[n.geom]),A.value=16);C.value=E,g.value=E.id,Se(),M.value&&(v.value="details")}return e.watch(v,async()=>{var E,N;await e.nextTick(),(N=(E=m.value)==null?void 0:E.resize)==null||N.call(E)}),e.watch(m,E=>{u("update:map",E),E&&_.value&&ze(),E&&n.polygonFitBbox&&ge(C.value)&&Se()}),e.watch(V,E=>{E||oe()}),e.watch(g,()=>{oe()}),e.watch(_,()=>{_.value?ze():_e(),oe()}),(E,N)=>{var G;return c.value?(e.openBlock(),e.createElementBlock("section",{key:0,class:e.normalizeClass(M.value?"":"pt-[20px]")},[M.value?(e.openBlock(),e.createElementBlock("div",Ua,[e.createVNode(gt,{table:n.table,map:m.value,"onUpdate:map":N[0]||(N[0]=R=>m.value=R),zoom:A.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:D.value,center:$.value,clusterZoom:n.alwaysShowPolygon?0:ae.value??n.clusterZoom,pointZoom:De.value,polygonZoom:n.polygonZoom,geometryZoomBreakpoint:n.geometryZoomBreakpoint,mixedGeom:n.mixedGeom,circleRadius:n.circleRadius,circleStrokeWidth:n.circleStrokeWidth,highlightCircleRadius:n.highlightCircleRadius,highlightCircleColor:n.highlightCircleColor,alwaysShowPolygon:n.alwaysShowPolygon,modelValue:Ne.value,"onUpdate:modelValue":N[1]||(N[1]=R=>Ne.value=R),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!1,"mobile-peek-controls":!0},{default:e.withCtx(({hoverData:R})=>[e.renderSlot(E.$slots,"popup",{data:R})]),_:3},8,["table","map","zoom","minZoom","maxZoom","colorAttr","strokeAttr","filter","center","clusterZoom","pointZoom","polygonZoom","geometryZoomBreakpoint","mixedGeom","circleRadius","circleStrokeWidth","highlightCircleRadius","highlightCircleColor","alwaysShowPolygon","modelValue","layers","isCollapsible","legendTitle","legendWidth"]),Ee.value?(e.openBlock(),e.createElementBlock("div",Ka,[...N[19]||(N[19]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="text-white/80"><path d="M12.75 7.09a3 3 0 0 1 2.16 2.16"></path><path d="M17.072 17.072c-1.634 2.17-3.527 3.912-4.471 4.727a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 1.432-4.568"></path><path d="m2 2 20 20"></path><path d="M8.475 2.818A8 8 0 0 1 20 10c0 1.183-.31 2.377-.81 3.533"></path><path d="M9.13 9.13a3 3 0 0 0 3.74 3.74"></path></svg><p class="mt-4 text-base font-[300] text-white">Геопросторові дані відсутні</p><p class="mt-2 max-w-xs text-center text-sm font-[200] text-white/70 leading-relaxed"> Координати або межі об'єкта не внесені до системи. Об'єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0),e.createVNode(Ia,{"active-modal":v.value,"filters-disabled":!k.value.length,"has-active-filters":i.value,onOpenSearch:N[2]||(N[2]=R=>ee("search")),onOpenFilters:N[3]||(N[3]=R=>ee("filters")),onOpenTable:N[4]||(N[4]=R=>ee("table"))},null,8,["active-modal","filters-disabled","has-active-filters"]),e.createVNode(Ve,{open:v.value==="search",title:"Пошук","top-offset":je,"initial-variant":"full","peek-mode":"clip-full",onClose:me,onExpand:le,onCollapse:le},{default:e.withCtx(()=>[e.createElementVNode("div",Ha,[e.createVNode(e.unref(fe),{type:"text",modelValue:V.value,"onUpdate:modelValue":N[5]||(N[5]=R=>V.value=R),name:"search",label:"Пошук",onChange:e.unref(Te)},null,8,["modelValue","onChange"]),e.createElementVNode("div",Wa,[e.unref(p)["mobile-search-results"]?e.renderSlot(E.$slots,"mobile-search-results",{key:0,rows:F.value,selectRow:K,closeModal:me}):(e.openBlock(),e.createElementBlock("div",Ga,[y.value>=1?e.renderSlot(E.$slots,"table",{key:0,rows:F.value,selectRow:K,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",qa,[e.createVNode(qe),N[20]||(N[20]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),N[21]||(N[21]=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1)),e.createElementVNode("button",{type:"button",class:"mt-[10px] py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs rounded-lg border border-stone-200 bg-white text-stone-800 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100",onClick:z}," Очистити дані пошуку ")]))])),y.value>=1?(e.openBlock(),e.createElementBlock("div",Ya,[e.createVNode(Ge,{total:y.value,currentPage:P.value??1,pageSize:b.value,onPageChange:N[6]||(N[6]=R=>L(R)),onPageSizeChange:N[7]||(N[7]=R=>ye(R))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)])])]),_:3},8,["open"]),e.createVNode(Ve,{open:v.value==="filters",title:"Фільтри","top-offset":je,"initial-variant":"full","peek-mode":"clip-full",onClose:me,onExpand:le,onCollapse:le},{default:e.withCtx(()=>[e.createElementVNode("div",Qa,[e.withDirectives(e.createElementVNode("div",Xa,null,512),[[e.vShow,v.value==="filters"]]),e.createElementVNode("div",Ja,[k.value.length?(e.openBlock(),e.createBlock(e.unref(Fe),e.mergeProps({key:0,schema:k.value,view:h.value},f.value,{value:S.value,teleportActive:"#active-filters",onChange:j}),null,16,["schema","view","value"])):(e.openBlock(),e.createElementBlock("p",ei,"Фільтри недоступні для цього переліку."))])])]),_:1},8,["open"]),e.createVNode(Ve,{open:v.value==="table",title:"Таблиця","top-offset":je,"initial-variant":"full","peek-mode":"clip-full",onClose:me,onExpand:le,onCollapse:le},{default:e.withCtx(()=>[e.createElementVNode("div",ti,[y.value>=1?e.renderSlot(E.$slots,"table",{key:0,rows:F.value,selectRow:K,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",li,[e.createVNode(qe),N[22]||(N[22]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),N[23]||(N[23]=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1)),e.createElementVNode("button",{type:"button",class:"mt-[10px] py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs rounded-lg border border-stone-200 bg-white text-stone-800 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100",onClick:z}," Очистити дані пошуку ")]))]),y.value>=1?(e.openBlock(),e.createElementBlock("div",oi,[e.createVNode(Ge,{total:y.value,currentPage:P.value??1,pageSize:b.value,onPageChange:N[8]||(N[8]=R=>L(R)),onPageSizeChange:N[9]||(N[9]=R=>ye(R))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)]),_:3},8,["open"]),e.createVNode(Ve,{open:v.value==="details",title:"Об'єкт","top-offset":je,"initial-variant":te.value?"peek":"full","peek-mode":"custom",onClose:U,onExpand:le,onCollapse:le},{peek:e.withCtx(({expand:R})=>[e.unref(p)["mobile-details-peek"]?e.renderSlot(E.$slots,"mobile-details-peek",{key:0,selectedRow:C.value,expand:R,close:U}):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"w-full text-left text-base font-semibold text-gray-900 py-2 rounded-lg hover:bg-stone-50",onClick:R}," Деталі об'єкта ",8,ni))]),default:e.withCtx(()=>[e.renderSlot(E.$slots,"details",{table:n.table,selectedRow:C.value,closeObjCard:U})]),_:3},8,["open","initial-variant"]),e.renderSlot(E.$slots,"default",{table:n.table,map:m.value,selectedRow:C.value})])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(E.$slots,"header",{title:n.title,total:y.value}),e.createElementVNode("div",ri,[e.createVNode(e.unref(fe),{type:"text",modelValue:V.value,"onUpdate:modelValue":N[10]||(N[10]=R=>V.value=R),name:"search",label:"Пошук",onChange:e.unref(Te)},null,8,["modelValue","onChange"]),k.value.length?(e.openBlock(),e.createBlock(e.unref(Fe),{key:0,schema:k.value,view:"inline",onChange:j,limit:5,value:S.value,ref:"filterRef"},null,8,["schema","value"])):e.createCommentVNode("",!0),e.createElementVNode("div",ai,[e.createElementVNode("button",{type:"button",class:"map-visible-button py-2 px-2 hidden min-[1001px]:inline-flex items-center gap-x-1.5 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",title:w.value?"Приховати карту":"Показати карту",onClick:N[11]||(N[11]=R=>w.value=!w.value)},[w.value?(e.openBlock(),e.createBlock(mr,{key:0})):(e.openBlock(),e.createBlock(gr,{key:1})),N[24]||(N[24]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,ii),e.createElementVNode("div",si,[e.createElementVNode("button",{onClick:N[12]||(N[12]=R=>w.value=!1),class:"py-2 px-2 h-[38px] inline-flex items-center gap-x-1.5 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100"},[e.createVNode(Vr)]),e.createElementVNode("button",{onClick:N[13]||(N[13]=R=>w.value=!0),class:"py-2 px-2 h-[38px] inline-flex items-center gap-x-1.5 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100"},[e.createVNode(br)])])])]),e.createElementVNode("div",ci,[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden shrink-0",w.value?"w-2/4 mr-0":"w-full mr-3",B.value?"hidden":""])},[(G=E.$slots)!=null&&G.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",di,[e.createElementVNode("div",null,[e.createElementVNode("span",mi,e.toDisplayString(n.title),1),e.createElementVNode("span",pi,e.toDisplayString(y.value),1),N[25]||(N[25]=e.createElementVNode("span",{class:"text-sm text-stone-500 font-medium"}," об'єктів",-1))]),n.objectsInView?(e.openBlock(),e.createElementBlock("label",fi,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"accent-blue-600 w-4 h-4","onUpdate:modelValue":N[14]||(N[14]=R=>_.value=R)},null,512),[[e.vModelCheckbox,_.value]]),N[26]||(N[26]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",ui,[y.value>=1?e.renderSlot(E.$slots,"table",{key:0,rows:F.value,selectRow:K}):(e.openBlock(),e.createElementBlock("div",gi,[e.createVNode(qe),N[27]||(N[27]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),N[28]||(N[28]=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1)),e.createElementVNode("button",{type:"button",class:"mt-[10px] py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs rounded-lg border border-stone-200 bg-white text-stone-800 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100",onClick:z}," Очистити дані пошуку ")]))]),y.value>=1?(e.openBlock(),e.createElementBlock("hr",hi)):e.createCommentVNode("",!0),y.value>=1?(e.openBlock(),e.createElementBlock("div",yi,[e.createElementVNode("div",xi,[e.createVNode(Ge,{total:y.value,currentPage:P.value??1,pageSize:b.value,onPageChange:N[15]||(N[15]=R=>L(R)),onPageSizeChange:N[16]||(N[16]=R=>ye(R))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),B.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(w.value?"lg:static lg:w-1/2 mr-0 pb-5":"pb-5 mr-3"),style:{height:"calc(100vh - 152px)"}},[e.renderSlot(E.$slots,"details",{table:n.table,selectedRow:C.value,closeObjCard:W})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",bi,[e.createVNode(gt,{table:n.table,map:m.value,"onUpdate:map":N[17]||(N[17]=R=>m.value=R),zoom:A.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:D.value,center:$.value,clusterZoom:n.alwaysShowPolygon?0:ae.value??n.clusterZoom,pointZoom:De.value,polygonZoom:n.polygonZoom,geometryZoomBreakpoint:n.geometryZoomBreakpoint,mixedGeom:n.mixedGeom,circleRadius:n.circleRadius,circleStrokeWidth:n.circleStrokeWidth,highlightCircleRadius:n.highlightCircleRadius,highlightCircleColor:n.highlightCircleColor,alwaysShowPolygon:n.alwaysShowPolygon,modelValue:Ne.value,"onUpdate:modelValue":N[18]||(N[18]=R=>Ne.value=R),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!0},{default:e.withCtx(({hoverData:R})=>[e.renderSlot(E.$slots,"popup",{data:R})]),_:3},8,["table","map","zoom","minZoom","maxZoom","colorAttr","strokeAttr","filter","center","clusterZoom","pointZoom","polygonZoom","geometryZoomBreakpoint","mixedGeom","circleRadius","circleStrokeWidth","highlightCircleRadius","highlightCircleColor","alwaysShowPolygon","modelValue","layers","isCollapsible","legendTitle","legendWidth"]),e.renderSlot(E.$slots,"default",{table:n.table,map:m.value,selectedRow:C.value}),Ee.value?(e.openBlock(),e.createElementBlock("div",ki,[...N[29]||(N[29]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="text-white/80"><path d="M12.75 7.09a3 3 0 0 1 2.16 2.16"></path><path d="M17.072 17.072c-1.634 2.17-3.527 3.912-4.471 4.727a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 1.432-4.568"></path><path d="m2 2 20 20"></path><path d="M8.475 2.818A8 8 0 0 1 20 10c0 1.183-.31 2.377-.81 3.533"></path><path d="M9.13 9.13a3 3 0 0 0 3.74 3.74"></path></svg><p class="mt-4 text-base font-[300] text-white">Геопросторові дані відсутні</p><p class="mt-2 max-w-xs text-center text-sm font-[200] text-white/70 leading-relaxed"> Координати або межі об'єкта не внесені до системи. Об'єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0)],512),[[e.vShow,w.value]])])],64))],2)):e.createCommentVNode("",!0)}}});return Ye.install=t=>{t.component("VsPartsMap",Ye),t._context.directives.tooltip||t.directive("tooltip",ht)},Ye});
|
|
1
|
+
(function(e,pe){typeof exports=="object"&&typeof module<"u"?module.exports=pe(require("vue")):typeof define=="function"&&define.amd?define(["vue"],pe):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=pe(e.Vue))})(this,function(e){"use strict";const pe=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o};e.defineComponent({props:{modelValue:{type:Boolean,default:()=>!1},title:{type:String,default:()=>""},disabled:{type:Boolean,default:()=>!1}},data(){return{}},mounted(){this.modelValue||this.$emit("update:modelValue",!1)},computed:{modelState:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},labelCursorClasses(){return[{"cursor-not-allowed":this.disabled},{"cursor-pointer":!this.disabled}]}},methods:{handleEnterDown(t){const{keyCode:a}=t;a===13&&(this.modelState=!this.modelState)},addKeyHandler(){window.addEventListener("keydown",this.handleEnterDown)},removeKeyHandler(){window.removeEventListener("keydown",this.handleEnterDown)}}});const Mt={},Dt={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-green-600"};function zt(t,a){return e.openBlock(),e.createElementBlock("svg",Dt,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)]))}const Lt=pe(Mt,[["render",zt]]),Pt={},$t={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"orange",class:"size-6 text-orange-600"};function Ft(t,a){return e.openBlock(),e.createElementBlock("svg",$t,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v3m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)]))}const At=pe(Pt,[["render",Ft]]),jt={},Rt={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-blue-600"};function Zt(t,a){return e.openBlock(),e.createElementBlock("svg",Rt,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"},null,-1)]))}const Tt=pe(jt,[["render",Zt]]),Ot={},It={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"red",class:"size-6 text-red-600"};function Ut(t,a){return e.openBlock(),e.createElementBlock("svg",It,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)]))}const vt=pe(Ot,[["render",Ut]]),Kt={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},Ht={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},Gt={class:"flex-1"},Wt={class:"font-medium text-gray-900"},qt={class:"mt-0.5 text-sm text-gray-700"},Yt=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(t){const a={success:Lt,warning:At,error:vt,info:Tt};return(o,r)=>(e.openBlock(),e.createElementBlock("div",Kt,[e.createElementVNode("div",Ht,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a[o.type]))),e.createElementVNode("div",Gt,[e.createElementVNode("strong",Wt,e.toDisplayString(o.title),1),e.createElementVNode("p",qt,e.toDisplayString(o.message),1)]),r[0]||(r[0]=e.createElementVNode("button",{class:"m-3 rounded-full p-1.5 text-gray-500 transition-colors hover:bg-gray-50 hover:text-gray-700",type:"button","aria-label":"Dismiss notify"},[e.createElementVNode("span",{class:"sr-only"},"Dismiss popup"),e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-5"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})])],-1))])]))}});e.reactive({visible:!0});const je={top:"top-4 left-1/2 transform -translate-x-1/2","left-bottom":"bottom-4 left-4 transform","right-bottom":"bottom-4 right-4 transform",bottom:"bottom-4 left-1/2 transform -translate-x-1/2"},Ce=t=>{var p;const{type:a="info",title:o,message:r,position:l="right-bottom"}=t||{};let s=document.querySelector("#notify-root");s||(s=document.createElement("div"),s.id="notify-root",s.className=`fixed z-[2000] flex flex-col gap-3 ${je[l]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(s)),s.className.includes(je[l])||(Object.values(je).forEach(y=>{s.classList.remove(...y.split(" "))}),s.classList.add(...je[l].split(" ")));const b=document.createElement("div");s.appendChild(b);const n=e.createApp({render(){return e.h(Yt,{type:a,title:o,message:r,onClose:()=>{n.unmount(),b.remove()}})}});n.mount(b),(p=b.querySelector("button"))==null||p.addEventListener("click",()=>{b.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{n.unmount(),b.remove()},350)}),setTimeout(()=>{b.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{n.unmount(),b.remove()},350)},3500)},ae=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o},Qt={},Xt={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-reload absolute inline mr-1 text-gray-800 transition-all cursor-pointer active:rotate-90 right-1 top-1 hover:text-blue-500"};function Jt(t,a){return e.openBlock(),e.createElementBlock("svg",Xt,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M19.933 13.041a8 8 0 1 1 -9.925 -8.788c3.899 -1 7.935 1.007 9.425 4.747"},null,-1),e.createElementVNode("path",{d:"M20 4v5h-5"},null,-1)])])}const el=ae(Qt,[["render",Jt]]),tl={},ll={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"text-blue-600 w-[16px] h-[16px]"};function ol(t,a){return e.openBlock(),e.createElementBlock("svg",ll,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)])])}const ue=ae(tl,[["render",ol]]),nl={class:"flex items-center cursor-pointer w-full"},rl={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},al=["value"],il={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},sl={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},cl={key:1,class:"absolute right-2 flex size-3.5 items-center justify-center"},We=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(t,{expose:a,emit:o}){const r=t,l=o;function s(){l("itemClick",r.value)}const b=e.ref(null),n=e.computed(()=>r.layout==="inline"&&r.type==="radio"),p=e.computed(()=>r.layout==="vertical"?"text-[13px]":"text-sm");return a({el:b}),(y,u)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-sm group hover:bg-gray-100",ref_key:"el",ref:b},[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between w-full",p.value])},[e.createElementVNode("div",nl,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(t.layout)?"text-gray-500 px-2 w-full py-2 cursor-pointer !flex flex-row items-center":"flex flex-row items-center w-full px-2 py-2 text-gray-500 cursor-pointer",{"bg-blue-100":t.highlighted,relative:n.value},p.value]),onClick:e.withModifiers(s,["stop","prevent"])},[n.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[t.type==="checkbox"?"rounded-[4px]":"rounded-full",t.color?`bg-[${t.color}] border-[#ffffff]`:t.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[t.isSelected?(e.openBlock(),e.createElementBlock("img",rl)):e.createCommentVNode("",!0)],2)),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:t.value},null,8,al),e.createElementVNode("div",{class:e.normalizeClass(["flex flex-1 flex-row items-center justify-between",n.value?"pl-1 pr-6":"w-[calc(100%-18px)] pl-[10px]"])},[e.createElementVNode("span",il,e.toDisplayString(t.label??"Відсутні дані"),1),t.count?(e.openBlock(),e.createElementBlock("div",sl," ("+e.toDisplayString(t.count)+") ",1)):e.createCommentVNode("",!0)],2),n.value&&t.isSelected?(e.openBlock(),e.createElementBlock("span",cl,[e.createVNode(ue)])):e.createCommentVNode("",!0)],2)])],2)],512))}});function qe(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:b}=t,n=s??b??"data";function p(i){return Array.isArray(i)?i[0]:i}const y=e.ref(p(t.modelValue)),u=e.ref(""),f=e.ref(!1),x=e.ref([]),V=e.ref("id"),m=e.ref("text"),C=e.ref(!1),N=e.ref(t.layout!=="popover"&&r.length>l);function c(i){const E=i.find(Boolean)??{},g=["id","value","code","key"].find(j=>j in E)??"id",D=["text","label","name","title"].find(j=>j in E)??"text";return{autoValueKey:g,autoLabelKey:D}}function d(i){if(i.length>0){const g=c(i);V.value=g.autoValueKey,m.value=g.autoLabelKey}const E=[...i].sort((g,D)=>t.sort==="count"?D.count&&g.count?D.count-g.count:0:t.sort==="name"?String(g[m.value]??"").localeCompare(String(D[m.value]??"")):0);x.value=E}r.length>0&&d(r);const M=e.computed(()=>{const i=x.value;return t.layout==="popover"||C.value?i:i.slice(0,l)});async function A(){if(o){f.value=!0;try{const i=new URL(o,window.location.origin);i.searchParams.set("json","1"),i.searchParams.set("limit",l.toString());const E=await fetch(i.toString());if(!E.ok){Ce({type:"error",title:"Error",message:"Failed to fetch remote options"}),x.value=[];return}const g=await E.json();if(!g[n]){Ce({type:"error",title:"Error",message:g}),x.value=[];return}d(g[n])}catch(i){console.error("Failed to fetch remote options:",i)}finally{f.value=!1}}}function $(){o&&x.value.length===0&&A()}e.watch(()=>t.modelValue,i=>{y.value=p(i)},{immediate:!0}),o||d(r);function k(i){return y.value===i[V.value]}function w(i){y.value=i[V.value],a("update:modelValue",y.value),a("change",{name:t.name,value:y.value})}function L(){y.value=void 0,a("update:modelValue",y.value),a("clear",t.name)}function _(){C.value=!C.value}return{innerValue:y,searchTerm:u,filteredOptions:M,isSelected:k,selectItem:w,clear:L,toggleShowAll:_,isReqProc:f,showAll:C,isEnableShowAll:N,labelKey:m,valueKey:V,allOptions:x,loadData:$}}function at(t={color:"blue"}){return e.computed(()=>{const a=`w-full px-3 py-2 border-solid border text-black border-gray-300 text-sm rounded focus:outline-none focus:ring-2 focus:ring-${t.color}-500 focus:border-transparent
|
|
2
|
+
text-gray-800 bg-white dark:text-neutral-300 dark:bg-neutral-800 dark:border-neutral-600`;return(t==null?void 0:t.size)==="sm"?`${a}h-[32px]`:`${a}h-[38px]`})}function he(){return"rounded-md font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 px-4 py-2 w-full bg-transparent border text-black text-sm h-[38px]"}function dl(){return"font-medium border border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 h-7 rounded-md text-xs px-2 py-1 text-gray-800 bg-white hover:bg-gray-100 dark:text-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600"}function it(t){return t==="ghost"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border text-gray-600 hover:bg-blue-100 hover:text-gray-800 focus:outline-hidden focus:bg-gray-100 focus:text-gray-800 disabled:opacity-50 disabled:pointer-events-none dark:text-gray-500 dark:hover:bg-blue-800/30 dark:hover:text-blue-400 dark:focus:bg-blue-800/30 dark:focus:text-blue-400":t==="soft"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border bg-white-100 text-gray-800 hover:bg-gray-200 hover:bg-gray-200 focus:outline-hidden focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:text-blue-400 dark:hover:bg-blue-900 dark:focus:bg-blue-900":"relative border-solid border-gray-200 focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 border-input hover:bg-gray-100 border px-4 py-2 gap-1 bg-transparent h-[38px]"}const st={en:{apply:"Apply",search:"Search",more:"Show more",less:"Show less",selected:"selected",clear:"Clear",notfound:"Nothing found",period:"Period",today:"Today",week:"Week",max:"max",min:"min",month:"Month",quarter:"Quarter",year:"Year",alltime:"All Time",prev:"Prev",next:"Next",selectFieldHelp:"Select a field to start creating a filter."},uk:{apply:"Застосувати",search:"Пошук",more:"Показати більше",less:"Показати меньше",selected:"обрано",clear:"Очистити",notfound:"Нічого не знайдено",period:"Період",today:"Сьогодні",week:"Тиждень",max:"макс",min:"мін",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період",selectFieldHelp:"Оберіть поле, щоб розпочати створення фільтра."}};function ct(t){const a=t.split(".")[1],o=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(st[o||navigator.language]||st.uk)[a]}function ne(){const t=e.getCurrentInstance();if(!t.appContext.config.globalProperties.$i18n)return ct;const a=t.appContext.config.globalProperties.$t;return o=>{const r=a(o);return r===o?ct(o):r}}const ml={},pl={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function ul(t,a){return e.openBlock(),e.createElementBlock("svg",pl,[...a[0]||(a[0]=[e.createStaticVNode('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter1)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter1" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>',12)])])}const Ye=ae(ml,[["render",ul]]),fl={},gl={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down w-[14px] rotate"};function hl(t,a){return e.openBlock(),e.createElementBlock("svg",gl,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Re=ae(fl,[["render",hl]]),yl={},xl={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down w-[14px] rotate-[180deg]"};function bl(t,a){return e.openBlock(),e.createElementBlock("svg",xl,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Qe=ae(yl,[["render",bl]]),kl={key:0,class:"w-full"},wl={class:"flex flex-col items-center justify-center p-5 text-center"},Cl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Vl={key:1,class:"py-2 px-2"},Bl=["disabled"],El=e.defineComponent({__name:"radio",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=e.ref(null),s=he(),b=ne(),n=o,{innerValue:p,filteredOptions:y,isSelected:u,selectItem:f,clear:x,toggleShowAll:V,isReqProc:m,showAll:C,isEnableShowAll:N,labelKey:c,valueKey:d,allOptions:M,loadData:A}=qe({...r,modelValue:r.modelValue??r.default??""},n);return e.onMounted(()=>{r.api&&A()}),a({clear:x,inputTextRef:l}),e.watch(()=>r.modelValue,$=>{$===void 0&&(p.value=void 0)}),($,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col max-h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),w=>(e.openBlock(),e.createBlock(We,{layout:t.layout,key:w[e.unref(d)],count:w.count,label:w[e.unref(c)],color:w.color,type:"radio",value:w[e.unref(d)],"is-selected":e.unref(u)(w),onItemClick:L=>e.unref(f)(w)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),t.type==="select"&&e.unref(y).length===0&&!e.unref(m)?(e.openBlock(),e.createElementBlock("div",kl,[e.createElementVNode("div",wl,[e.createVNode(Ye),k[4]||(k[4]=e.createElementVNode("div",{class:"max-w-sm mx-auto mt-6"},[e.createElementVNode("p",{class:"font-medium text-gray-800 dark:text-neutral-200"},"За вашим запитом нічого не знайдено"),e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"})],-1))])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(C)&&e.unref(N)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:k[0]||(k[0]=(...w)=>e.unref(V)&&e.unref(V)(...w)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[k[5]||(k[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(Re)])):e.createCommentVNode("",!0),e.unref(C)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:k[1]||(k[1]=(...w)=>e.unref(V)&&e.unref(V)(...w)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[k[6]||(k[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(Qe)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Cl,[e.createTextVNode(e.toDisplayString(e.unref(p)||e.unref(p)===null?1:0)+" з "+e.toDisplayString(e.unref(M).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:k[2]||(k[2]=(...w)=>e.unref(x)&&e.unref(x)(...w))}," Очистити ",512),[[e.vShow,e.unref(p)!==""&&e.unref(p)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Vl,[e.createElementVNode("button",{type:"button",disabled:!(e.unref(p)!==""&&e.unref(p)!==void 0),class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:k[3]||(k[3]=(...w)=>e.unref(x)&&e.unref(x)(...w))},e.toDisplayString(e.unref(b)("filter.clear")),11,Bl)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function dt(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:b}=t,n=s??b??"data";function p(i){return Array.isArray(i)?i:i?[i]:[]}const y=e.ref(p(t.modelValue)),u=e.ref(""),f=e.ref(!1),x=e.ref([]),V=e.ref("id"),m=e.ref("text"),C=e.ref(!1),N=e.ref(t.layout!=="popover"&&r.length>l);function c(i){const E=i.find(Boolean)??{},g=["id","value","code","key"].find(j=>j in E)??"id",D=["text","label","name","title"].find(j=>j in E)??"text";return{autoValueKey:g,autoLabelKey:D}}function d(i){if(i.length>0){const g=c(i);V.value=g.autoValueKey,m.value=g.autoLabelKey}const E=[...i].sort((g,D)=>t.sort==="count"?D.count&&g.count?D.count-g.count:0:t.sort==="name"?String(g[m.value]).localeCompare(String(D[m.value])):0);x.value=E}r.length>0&&d(r);const M=e.computed(()=>{const i=x.value;return t.layout==="popover"||C.value?i:i.slice(0,l)});async function A(){if(o){f.value=!0;try{const i=new URL(o,window.location.origin);i.searchParams.set("json","1"),i.searchParams.set("limit",l.toString());const E=await fetch(i.toString());if(!E.ok){Ce({type:"error",title:"Error",message:"Failed to fetch remote options"}),x.value=[];return}const g=await E.json();if(!g[n]){Ce({type:"error",title:"Error",message:g}),x.value=[];return}d(g[n])}catch(i){console.error("Failed to fetch remote options:",i)}finally{f.value=!1}}}function $(){o&&x.value.length===0&&A()}e.watch(()=>t.modelValue,i=>{y.value=p(i)},{immediate:!0}),o||d(r);function k(i){return y.value&&y.value.includes(i[V.value])}function w(i){const E=y.value.includes(i[V.value]);y.value=E?y.value.filter(g=>g!==i[V.value]):[...y.value,i[V.value]],a("update:modelValue",y.value),a("change",{name:t.name,value:y.value})}function L(){y.value=[],a("update:modelValue",y.value),a("clear",t.name)}function _(){C.value=!C.value}return{innerValue:y,searchTerm:u,filteredOptions:M,isSelected:k,selectItem:w,clear:L,toggleShowAll:_,isReqProc:f,showAll:C,isEnableShowAll:N,labelKey:m,valueKey:V,allOptions:x,loadData:$}}const Nl={key:0,class:"w-full"},Sl={class:"flex flex-col items-center justify-center p-5 text-center"},_l={class:"max-w-sm mx-auto mt-6"},Ml={class:"font-medium text-gray-800 dark:text-neutral-200"},Dl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},zl={key:1,class:"py-2 px-2 border-t"},Ll=["disabled"],Pl={class:"text-xs text-gray-500"},mt=e.defineComponent({__name:"checkbox",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=ne(),l=he(),s=t,b=o,{innerValue:n,filteredOptions:p,isSelected:y,selectItem:u,clear:f,toggleShowAll:x,isReqProc:V,showAll:m,isEnableShowAll:C,labelKey:N,valueKey:c,allOptions:d,loadData:M}=dt({...s,modelValue:s.modelValue},b);return e.onMounted(()=>{s.api&&M()}),e.watch(()=>s.modelValue,A=>{A===void 0&&(n.value=[])}),a({clear:f}),(A,$)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col max-h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p),k=>(e.openBlock(),e.createBlock(We,{layout:t.layout,count:k.count,label:k[e.unref(N)],color:k.color,type:"checkbox",value:k[e.unref(c)],"is-selected":e.unref(y)(k),onItemClick:w=>e.unref(u)(k)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),t.type==="select"&&e.unref(p).length===0&&!e.unref(V)?(e.openBlock(),e.createElementBlock("div",Nl,[e.createElementVNode("div",Sl,[e.createVNode(Ye),e.createElementVNode("div",_l,[e.createElementVNode("p",Ml,e.toDisplayString(e.unref(r)("filter.notfound")),1),$[4]||($[4]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(m)&&e.unref(C)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:$[0]||($[0]=(...k)=>e.unref(x)&&e.unref(x)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.more"))+" ",1),e.createVNode(Re)])):e.createCommentVNode("",!0),e.unref(m)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:$[1]||($[1]=(...k)=>e.unref(x)&&e.unref(x)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.less"))+" ",1),e.createVNode(Qe)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Dl,[e.createTextVNode(e.toDisplayString(e.unref(n).length)+" / "+e.toDisplayString(e.unref(d).length)+" "+e.toDisplayString(e.unref(r)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:$[2]||($[2]=(...k)=>e.unref(f)&&e.unref(f)(...k))},e.toDisplayString(e.unref(r)("filter.clear")),513),[[e.vShow,e.unref(n).length!==0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",zl,[e.createElementVNode("button",{type:"button",disabled:e.unref(n).length===0,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:$[3]||($[3]=(...k)=>e.unref(f)&&e.unref(f)(...k))},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.clear"))+" ",1),e.createElementVNode("span",Pl,e.toDisplayString(e.unref(n).length)+" з "+e.toDisplayString(e.unref(d).length),1)],10,Ll)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),$l={},Fl={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"15px",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-search stroke-gray-500 transition-all"};function Al(t,a){return e.openBlock(),e.createElementBlock("svg",Fl,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0"},null,-1),e.createElementVNode("path",{d:"M21 21l-6 -6"},null,-1)])])}const pt=ae($l,[["render",Al]]),jl={},Rl={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-x stroke-gray-500 hover:stroke-red-500 transition-all",width:"15px",height:"15px"};function Zl(t,a){return e.openBlock(),e.createElementBlock("svg",Rl,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M18 6l-12 12"},null,-1),e.createElementVNode("path",{d:"M6 6l12 12"},null,-1)])])}const Xe=ae(jl,[["render",Zl]]);class ut{static getWidthClass(a){return typeof a=="number"?`max-w-[${a}px] min-w-[${a}px]`:typeof a=="string"?a.endsWith("%")||a.endsWith("px")?`max-w-[${a}]`:`max-w-${a}`:"w-full"}}const Tl={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},Ol=["placeholder"],Il=e.defineComponent({__name:"text-input",props:{id:{},name:{},title:{},type:{},label:{},width:{default:220},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{emit:a}){var y;const o=t,r=e.ref((o.placeholder||o.label||o.title||o.name||"search").toString()),l=a,s=e.ref(((y=o.modelValue)==null?void 0:y.toString())??"");e.watch(()=>o.modelValue,u=>{u!==s.value&&(s.value=(u==null?void 0:u.toString())??"")});let b=null;function n(){if(s.value=s.value.trimStart(),s.value.length===0){p();return}b&&clearTimeout(b),b=setTimeout(()=>{l("update:modelValue",s.value),l("change",{name:o.name,value:s.value})},300)}function p(){s.value="",l("update:modelValue",""),l("clear",o.name)}return(u,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vs-form-text relative bg-white [&>input]:py-[7px] [&>input]:max-h-[38px] [&>input]:ps-10 [&>input]:pe-8 [&>input]:block [&>input]:w-full [&>input]:bg-gray-100 [&>input]:border-transparent [&>input]:text-sm [&>input]:focus:bg-white [&>input]:focus:border-blue-500 [&>input]:focus:ring-blue-500 [&>input]:disabled:opacity-50 [&>input]:disabled:pointer-events-none [&>input]:dark:bg-neutral-700 [&>input]:dark:border-transparent [&>input]:dark:text-neutral-400 [&>input]:dark:placeholder:text-neutral-400 dark:focus:bg-neutral-800 dark:focus:ring-neutral-600",t.layout==="vertical"?"rounded-md":"rounded-sm",t.layout==="vertical"?"[&>input]:rounded-md":"[&>input]:rounded-sm",t.layout==="inline"?e.unref(ut).getWidthClass(t.width):"mb-2"+(t.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Tl,[e.createVNode(pt)]),s.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:p,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(Xe)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":f[0]||(f[0]=x=>s.value=x),onInput:n,placeholder:r.value,class:e.normalizeClass(["!pr-7 !pl-8 bg-white h-[38px] min-w-[100px] text-sm py-2 px-3 block w-full border border-solid placeholder:text-nowrap border-stone-200 text-sm text-stone-800 placeholder:text-stone-400 focus:border-2 focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500",t.layout==="vertical"?"rounded-md":"rounded-sm"])},null,42,Ol),[[e.vModelText,s.value]])],2))}}),Ul={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},vl=["placeholder","disabled"],Kl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Hl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Gl=["placeholder","disabled"],Wl=["disabled"],ql=e.defineComponent({__name:"range-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=at(),l=he(),s=ne(),b=t,n=e.ref(b.modelValue??b.default??[]),p=o,y=e.computed({get:()=>b.modelValue??n.value,set:x=>{b.modelValue!==void 0?p("update:modelValue",x):n.value=x}});function u(){p("change",{name:b.name,value:y.value||n.value})}function f(){n.value=[],y.value=n.value,p("clear",b.name)}return e.watch(()=>b.modelValue,x=>{x!==void 0&&b.layout!=="popover"?(n.value=x,p("update:modelValue",x)):n.value=[]}),a({clear:f,currentValue:y}),(x,V)=>{var m,C;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",Ul,e.toDisplayString(e.unref(s)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(r)),placeholder:((m=t.placeholder)==null?void 0:m[0])??e.unref(s)("filter.min"),step:"1",style:{outline:"none"},"onUpdate:modelValue":V[0]||(V[0]=N=>y.value[0]=N),disabled:t.disabled},null,10,vl),[[e.vModelText,y.value[0]]])]),t.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",Kl," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",Hl,e.toDisplayString(e.unref(s)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(r)),placeholder:((C=t.placeholder)==null?void 0:C[1])??e.unref(s)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":V[1]||(V[1]=N=>y.value[1]=N),disabled:t.disabled},null,10,Gl),[[e.vModelText,y.value[1]]])]),["popover","inline","vertical"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:u,class:e.normalizeClass(e.unref(l)+(t.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(t.layout==="vertical"?"Ok":e.unref(s)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(y.value[0]||y.value[1]),onClick:f,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100")},e.toDisplayString(e.unref(s)("filter.clear")),11,Wl)):e.createCommentVNode("",!0)],2)]),(t.cleanable&&n.value.length,e.createCommentVNode("",!0))],64)}}});class ee{static format(a){const o=a.getFullYear(),r=(a.getMonth()+1).toString().padStart(2,"0"),l=a.getDate().toString().padStart(2,"0");return`${o}-${r}-${l}`}static getShiftedDay(a,o=0){const r=a?new Date(a):new Date;return r.setDate(r.getDate()+o),this.format(r)}static getLastWeekRange(a,o,r=0){if(a&&o){const y=new Date(a),u=new Date(o);return y.setDate(y.getDate()+r*7),u.setDate(u.getDate()+r*7),[this.format(y),this.format(u)]}const l=new Date,s=l.getDay(),b=s===0?13:s-1+7,n=new Date(l);n.setDate(l.getDate()-b+r*7);const p=new Date(n);return p.setDate(n.getDate()+6),[this.format(n),this.format(p)]}static getMonthRange(a,o,r=0){let l;a?l=new Date(a):l=new Date,l=new Date(l.getFullYear(),l.getMonth()+r,1);const s=l,b=new Date(l.getFullYear(),l.getMonth()+1,0);return[this.format(s),this.format(b)]}static getQuarterRange(a,o,r=0){const l=a||o,s=l?new Date(l):new Date;let b=Math.floor(s.getMonth()/3);b+=r;const n=(b%4+4)%4*3,p=s.getFullYear()+Math.floor(b/4),y=new Date(p,n,1),u=new Date(p,n+3,0);return[this.format(y),this.format(u)]}static getYear(a,o=0){let r;return a&&/^\d{4}$/.test(a)?r=parseInt(a,10):a?r=new Date(a).getFullYear():r=new Date().getFullYear(),String(r+o)}static getYearRange(a,o=0){let r;return a&&/^\d{4}$/.test(a)?r=parseInt(a,10):a?r=new Date(a).getFullYear():r=new Date().getFullYear(),[this.format(new Date(r+o,0,1)),this.format(new Date(r+o+1,0,0))]}static getRangeFromDaysBefore(a){const o=new Date,r=new Date(o.getTime());return r.setDate(o.getDate()-a),[this.format(r),this.format(o)]}}function ft(t,a){const{popoverRef:o}=t,r=ne(),l=e.ref(""),s=e.ref(t.modelValue??t.default??[]),b=e.ref(0);function n(){const c=ee.getRangeFromDaysBefore(b.value);return s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value),c}function p(c){var M;l.value=c,(M=o.value)==null||M.close();const d=[];switch(l.value){case"today":d.push(ee.getShiftedDay()),d.push(ee.getShiftedDay());break;case"week":d.push(...ee.getLastWeekRange());break;case"month":d.push(...ee.getMonthRange());break;case"quarter":d.push(...ee.getQuarterRange());break;case"year":d.push(...ee.getYearRange());break;case"last_7_days":b.value=7,n();break;case"range":b.value=7,d.push(...n());break}s.value=[...d],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}function y(){const c=[];switch(l.value){case"today":c.push(ee.getShiftedDay(s.value[0],1));break;case"week":c.push(...ee.getLastWeekRange(s.value[0],s.value[1],1));break;case"month":c.push(...ee.getMonthRange(s.value[0],s.value[1],1));break;case"quarter":c.push(...ee.getQuarterRange(s.value[0],s.value[1],1));break;case"year":c.push(...ee.getYearRange(s.value[0],1));break}s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}function u(){const c=[];switch(l.value){case"today":c.push(ee.getShiftedDay(s.value[0],-1));break;case"week":c.push(...ee.getLastWeekRange(s.value[0],s.value[1],-1));break;case"month":c.push(...ee.getMonthRange(s.value[0],s.value[1],-1));break;case"quarter":c.push(...ee.getQuarterRange(s.value[0],s.value[1],-1));break;case"year":c.push(...ee.getYearRange(s.value[0],-1));break}s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}const f=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function x(c){const[d,M,A]=c.split("-");return`${A}.${M}.${d}`}function V(c,d="long"){const M=new Date(Date.UTC(2e3,c-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:d,timeZone:"UTC"}).format(M)}function m(c){const{value:d}=s;switch(c){case"today":return x(d[0]);case"range":return"Період";case"week":return d[0]&&d[1]?`${x(d[0])} – ${x(d[1])}`:"";case"quarter":if(d[0]){const M=new Date(d[0]),A=M.getFullYear(),$=M.getMonth();return`${Math.floor($/3)+1} ${r("filter.quarter")} ${A}`}return"";case"month":if(d[0]){const[M,A]=d[0].split("-");return`${V(parseInt(A,10))} ${M}`}return"";case"year":return d[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const C=e.computed(()=>l.value?m(l.value):t.label??"");function N(){l.value="",s.value=[],a("update:modelValue",[]),a("clear",t.name)}return{activeMode:l,innerValue:s,daysBefore:b,onDaysBeforeChange:n,onSelectChange:p,nextClick:y,prevClick:u,ukMonths:f,formatDisplayDate:x,getModeLabel:m,currentLabel:C,clear:N}}const Yl={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},Ql={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},Xl=["max","disabled"],Jl=["min","disabled"],eo={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},to=["max","disabled"],lo={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},oo={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},no=["min","disabled"],ro={class:"flex gap-1 px-2"},ao=["title","onClick"],io={class:"pt-2 px-2"},so=["disabled"],co=e.defineComponent({__name:"date-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=at(),s=he(),b=dl(),n=ne(),p=o,y=e.ref(null),{activeMode:u,innerValue:f,onSelectChange:x,nextClick:V,prevClick:m,clear:C}=ft({...r,popoverRef:y},p);e.watch(()=>r.modelValue,A=>{A!==void 0?(f.value=A,p("update:modelValue",A)):(u.value="",f.value=[])}),e.watch(f,A=>{p("update:modelValue",A),p("change",{name:r.name,value:A})},{deep:!0});const N=["today","week","month","quarter","year"],c={today:{label:"день",title:n("filter.today")},week:{label:"тиж.",title:n("filter.week")},month:{label:"міс.",title:n("filter.month")},quarter:{label:"кв.",title:n("filter.quarter")},year:{label:"рік",title:n("filter.year")}};function d(A){var $;return(($=c[A])==null?void 0:$.label)??n(`filter.${A}`)}function M(A){var $;return(($=c[A])==null?void 0:$.title)??n(`filter.${A}`)}return a({clear:C,popoverRef:y}),(A,$)=>{var k;return e.openBlock(),e.createElementBlock(e.Fragment,null,[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Yl,[e.unref(u)!==""&&e.unref(u)==="range"?(e.openBlock(),e.createElementBlock("div",Ql,[$[7]||($[7]=e.createTextVNode(" 1111 ",-1)),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(f)[1],locale:"uk-UA","onUpdate:modelValue":$[0]||($[0]=w=>e.unref(f)[0]=w),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:t.disabled},null,8,Xl),[[e.vModelText,e.unref(f)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(f)[0],locale:"uk-UA","onUpdate:modelValue":$[1]||($[1]=w=>e.unref(f)[1]=w),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:t.disabled},null,8,Jl),[[e.vModelText,e.unref(f)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",eo,e.toDisplayString(e.unref(n)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(f)[1],locale:"uk-UA","onUpdate:modelValue":$[2]||($[2]=w=>e.unref(f)[0]=w),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,to),[[e.vModelText,e.unref(f)[0]]])],2),t.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",lo," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",oo,e.toDisplayString(e.unref(n)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(f)[0],locale:"uk-UA","onUpdate:modelValue":$[3]||($[3]=w=>e.unref(f)[1]=w),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,no),[[e.vModelText,e.unref(f)[1]]])],2)],2),e.createElementVNode("div",ro,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(N,w=>e.createElementVNode("button",{key:w,class:e.normalizeClass(e.unref(b)+(e.unref(u)===w?" bg-blue-100":"")),title:M(w),onClick:L=>e.unref(x)(w)},e.toDisplayString(d(w)),11,ao)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(b)),onClick:$[4]||($[4]=(...w)=>e.unref(m)&&e.unref(m)(...w))},"<",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(b)),onClick:$[5]||($[5]=(...w)=>e.unref(V)&&e.unref(V)(...w))},">",2)]),e.createElementVNode("div",io,[["popover"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:!((k=e.unref(f))!=null&&k.length)||!e.unref(f)[0]&&!e.unref(f)[1],class:e.normalizeClass(e.unref(s)+"hover:bg-gray-100"),onClick:$[6]||($[6]=(...w)=>e.unref(C)&&e.unref(C)(...w))},e.toDisplayString(e.unref(n)("filter.clear")),11,so)):e.createCommentVNode("",!0)])],64)}}});function mo(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:b}=t,n=s??b??"data",p=t.multi;function y(P){return p?Array.isArray(P)?P:P?[P]:[]:Array.isArray(P)?P[0]:P}const u=e.ref(y(t.modelValue)),f=e.ref(""),x=e.ref(!1),V=e.ref(r),m=e.ref("id"),C=e.ref("text"),N=e.ref(!1),c=e.ref(t.layout!=="popover"&&r.length>l),d=e.ref([]),M=e.ref(0);function A(P){const Z=P.find(Boolean)??{},H=["id","value","code","key"].find(G=>G in Z)??"id",Q=["text","label","name","title"].find(G=>G in Z)??"text";return{autoValueKey:H,autoLabelKey:Q}}if(r.length>0){const P=A(r);m.value=P.autoValueKey,C.value=P.autoLabelKey}const $=e.computed(()=>{if(o)return V.value;const P=V.value;if(t.layout==="popover")return P;if(!f.value)return N.value?P:P.slice(0,l);const Z=f.value.toLowerCase();return P.filter(H=>H[C.value].toLowerCase().includes(Z))});let k=null;async function w(P){if(o){x.value=!0;try{const Z=new URL(o,window.location.origin);Z.searchParams.set("json","1"),Z.searchParams.set("key",P),Z.searchParams.set("limit",l.toString());const H=await fetch(Z.toString());if(!H.ok){Ce({type:"error",title:"Error",message:"Failed to fetch remote options"}),V.value=[];return}const Q=await H.json();if(!Q[n]){Ce({type:"error",title:"Error",message:Q}),V.value=[];return}if(V.value=Q[n],V.value.length>0){const G=A(V.value);m.value=G.autoValueKey,C.value=G.autoLabelKey}M.value=Q.total}catch(Z){console.error("Failed to fetch remote options:",Z)}finally{x.value=!1}}}e.watch(f,P=>{o&&(k&&clearTimeout(k),k=setTimeout(()=>{w(P)},200))}),e.watch(()=>t.modelValue,P=>{u.value=y(P)},{immediate:!0}),e.watch(u,P=>{p?(!Array.isArray(P)||P.length===0)&&(d.value=[]):(P==null||typeof P=="string"&&P==="")&&(d.value=[])});function L(P){return p&&Array.isArray(u.value)?u.value.includes(P[m.value]):u.value&&u.value===P[m.value]}function _(P){if(p&&!Array.isArray(u.value)&&(u.value=[]),p&&Array.isArray(u.value)){const Z=u.value.includes(P[m.value]);u.value=Z?u.value.filter(H=>H!==P[m.value]):[...u.value,P[m.value]],d.value=Z?d.value.filter(H=>H!==P[C.value]):[...d.value,P[C.value]]}else u.value=P[m.value],d.value=P[C.value];a("update:modelValue",u.value),a("change",{name:t.name,value:u.value})}function i(){p?(u.value=[],d.value=[]):(u.value=void 0,d.value=[]),a("update:modelValue",u.value),a("clear",t.name)}function E(){k&&clearTimeout(k),f.value="",N.value=!1}function g(){N.value=!N.value}e.onBeforeUnmount(()=>{k&&clearTimeout(k)});const D=e.ref(-1);e.watch($,()=>{D.value=$.value.length>0?0:-1});function j(P){const Z=$.value.length;if(P.key==="ArrowDown")P.preventDefault(),D.value=(D.value+1)%Z;else if(P.key==="ArrowUp")P.preventDefault(),D.value=(D.value-1+Z)%Z;else if(P.key==="Enter"&&(P.preventDefault(),D.value>=0&&D.value<$.value.length)){const H=$.value[D.value];_(H)}}function I(){o&&V.value.length===0&&f.value.length===0&&w(f.value)}return{innerValue:u,searchTerm:f,filteredOptions:$,isSelected:L,selectItem:_,clear:i,resetSearch:E,toggleShowAll:g,isReqProc:x,showAll:N,isEnableShowAll:c,labelKey:C,valueKey:m,allOptions:V,highlightedIndex:D,onKeyDown:j,selectedLabels:d,totalCount:M,loadData:I}}const po={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},uo=["placeholder"],fo={key:0,class:"w-full"},go={class:"flex flex-col items-center justify-center p-5 text-center"},ho={class:"max-w-sm mx-auto mt-6"},yo={class:"font-medium text-gray-800 dark:text-neutral-200"},xo={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},bo={key:1,class:"py-2 px-2 border-t"},ko=["disabled"],wo={class:"text-xs text-gray-500"},Co=e.defineComponent({__name:"select",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=ne(),l=he(),s=t,b=o,n=e.ref(null),{innerValue:p,filteredOptions:y,isSelected:u,selectItem:f,clear:x,resetSearch:V,toggleShowAll:m,isReqProc:C,showAll:N,isEnableShowAll:c,searchTerm:d,labelKey:M,valueKey:A,highlightedIndex:$,onKeyDown:k,selectedLabels:w,totalCount:L,loadData:_}=mo({...s,modelValue:s.modelValue},b),i=e.computed(()=>s.multi?Array.isArray(p.value)&&p.value.length>0:p.value!=null&&p.value!==""),E=e.computed(()=>s.multi&&Array.isArray(p.value)?p.value.length:p.value!=null&&p.value!==""?1:0);e.onMounted(()=>{V(),s.layout!=="inline"&&(_(),n.value&&s.layout==="popover"&&n.value.focus())}),e.watch(()=>s.modelValue,D=>{D===void 0&&(s.multi?p.value=[]:p.value=void 0)});const g=e.ref([]);return e.watch($,D=>{var j;D>=0&&g.value[D]&&((j=g.value[D])==null||j.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(y,()=>{g.value=[]}),a({clear:x,inputTextRef:n,selectedLabels:w,loadData:_}),(D,j)=>{var I;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col max-h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",po,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":j[0]||(j[0]=P=>e.isRef(d)?d.value=P:null),onKeydown:j[1]||(j[1]=(...P)=>e.unref(k)&&e.unref(k)(...P)),class:"w-full h-full text-[13px] px-4 border rounded-sm pl-9 focus:outline-none focus:ring-ring focus:ring-1 focus:ring-blue-500 text-gray-700",placeholder:e.unref(r)("filter.search"),type:"text",ref_key:"inputTextRef",ref:n},null,40,uo),[[e.vModelText,e.unref(d)]]),e.createVNode(pt,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(d)!=""?(e.openBlock(),e.createBlock(Xe,{key:0,onClick:j[2]||(j[2]=P=>d.value=""),class:"absolute text-gray-400 -translate-y-1/2 cursor-pointer hover:text-red-500 right-4 top-1/2"})):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),(P,Z)=>(e.openBlock(),e.createBlock(We,{layout:t.layout,count:P.count,label:P[e.unref(M)],color:P.color,type:t.multi?"checkbox":"radio",value:P[e.unref(A)],"is-selected":e.unref(u)(P),highlighted:Z===e.unref($),onItemClick:H=>e.unref(f)(P),ref_for:!0,ref:H=>g.value[Z]=H==null?void 0:H.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),t.type==="select"&&e.unref(y).length===0&&!e.unref(C)?(e.openBlock(),e.createElementBlock("div",fo,[e.createElementVNode("div",go,[e.createVNode(Ye),e.createElementVNode("div",ho,[e.createElementVNode("p",yo,e.toDisplayString(e.unref(r)("filter.notfound")),1),j[7]||(j[7]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(N)&&e.unref(c)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:j[3]||(j[3]=(...P)=>e.unref(m)&&e.unref(m)(...P)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.more"))+" ",1),e.createVNode(Re)])):e.createCommentVNode("",!0),e.unref(N)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:j[4]||(j[4]=(...P)=>e.unref(m)&&e.unref(m)(...P)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.less"))+" ",1),e.createVNode(Qe)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",xo,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(p))?(I=e.unref(p))==null?void 0:I.length:e.unref(p)!==void 0&&(e.unref(p)||e.unref(p)===null)?1:0)+" / "+e.toDisplayString(e.unref(L))+" "+e.toDisplayString(e.unref(r)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:j[5]||(j[5]=(...P)=>e.unref(x)&&e.unref(x)(...P))},e.toDisplayString(e.unref(r)("filter.clear")),513),[[e.vShow,i.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",bo,[e.createElementVNode("button",{type:"button",disabled:!i.value,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:j[6]||(j[6]=(...P)=>e.unref(x)&&e.unref(x)(...P))},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.clear"))+" ",1),e.createElementVNode("span",wo,e.toDisplayString(E.value)+" з "+e.toDisplayString(e.unref(L)),1)],10,ko)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),Vo=["for","onClick"],Bo=["id","name","value"],Eo={class:"block"},No={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},So={key:1,class:"pt-2 px-2 border-t"},_o=["disabled"],Mo={class:"text-xs text-gray-500"},Do=e.defineComponent({__name:"tag-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=he(),b=ne(),{innerValue:n,isSelected:p,selectItem:y,clear:u,labelKey:f,valueKey:x,allOptions:V}=r.multi?dt({...r,modelValue:r.modelValue??r.default??[]},l):qe({...r,modelValue:r.modelValue!==void 0?r.modelValue:r.default??""},l),m=e.computed(()=>r.multi?Array.isArray(n.value)&&n.value.length>0:n.value!=null&&n.value!==""),C=e.computed(()=>r.multi&&Array.isArray(n.value)?n.value.length:n.value!=null&&n.value!==""?1:0);return a({clear:u}),e.watch(()=>r.modelValue,N=>{N===void 0&&(r.multi?n.value=[]:n.value=void 0)}),(N,c)=>{var d;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",t.layout==="popover"?"p-2 max-h-[calc(100%-55px)] overflow-y-auto":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(V),M=>(e.openBlock(),e.createElementBlock("label",{key:`item-${M[e.unref(x)]}`,for:`item-${M[e.unref(x)]}`,onClick:e.withModifiers(A=>e.unref(y)(M),["stop","prevent"]),class:e.normalizeClass([e.unref(p)(M)?"ring-2 ring-indigo-600":"","p-2.5 group relative flex justify-center items-center gap-x-12 text-center text-xs bg-white text-gray-800 border border-gray-200 cursor-pointer rounded-sm dark:bg-neutral-900 dark:border-neutral-700 dark:text-neutral-200 peer-checked:text-indigo-600 dark:has-checked:text-indigo-500 peer-checked:border-indigo-600 dark:has-checked:border-indigo-500 peer-checked:ring peer-checked:shadow focus:ring dark:has-checked:ring-indigo-500 has-disabled:pointer-events-none has-disabled:text-gray-200 dark:has-disabled:text-neutral-700 has-disabled:after:absolute has-disabled:after:inset-0 has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-gray-200)_calc(50%-1px),var(--color-gray-200)_50%,transparent_50%)] dark:has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-neutral-700)_calc(50%-1px),var(--color-neutral-700)_50%,transparent_50%)]"])},[e.createElementVNode("input",{type:"checkbox",id:`item-${M[e.unref(x)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${M[e.unref(x)]}`,value:M[e.unref(x)]},null,8,Bo),e.createElementVNode("span",Eo,e.toDisplayString(M[e.unref(f)]),1)],10,Vo))),128))],2),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",No,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(n))?(d=e.unref(n))==null?void 0:d.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(V).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:c[0]||(c[0]=(...M)=>e.unref(u)&&e.unref(u)(...M))}," Очистити ",512),[[e.vShow,m.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",So,[e.createElementVNode("button",{type:"button",disabled:!m.value,class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:c[1]||(c[1]=(...M)=>e.unref(u)&&e.unref(u)(...M))},[e.createTextVNode(e.toDisplayString(e.unref(b)("filter.clear"))+" ",1),e.createElementVNode("span",Mo,e.toDisplayString(C.value)+" з "+e.toDisplayString(e.unref(V).length),1)],10,_o)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),zo=["disabled","title"],Lo={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},Po={class:"truncate text-ellipsis text-sm"},$o={key:0,class:"inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-sm bg-blue-100 px-2 text-[11px] font-semibold text-blue-600"},Fo={class:"w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-sm focus:outline-none focus:bg-stone-100 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full"},Ao={class:"w-[360px] max-h-[500px] overflow-auto [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-1 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-stone-100 [&::-webkit-scrollbar-thumb]:bg-stone-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 before:w-full p-2"},Je=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},en:{},ua:{},uk:{},fr:{},de:{},es:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(t,{expose:a}){const o=t,r=e.computed(()=>it(o.mode)),l=e.ref(!1),s=e.ref({top:0,left:0}),b=e.ref(null),n=e.ref(null),p=e.ref(null);let y=null;function u(){const k=n.value,w=p.value;if(!k||!w)return;const L=k.getBoundingClientRect(),_=w.offsetWidth,i=w.offsetHeight,E=window.innerWidth,g=window.innerHeight,D=8;let j=L.bottom+D,{left:I}=L;const P=Math.max(E-_-10,10);if(I=Math.min(I,P),I=Math.max(I,10),j+i>g-10){const Z=L.top-i-D;j=Z>=10?Z:Math.max(g-i-10,10)}j<10&&(j=10),s.value={top:j,left:I}}function f(){e.nextTick(()=>{u(),typeof window<"u"&&typeof window.requestAnimationFrame=="function"&&window.requestAnimationFrame(()=>u())})}function x(){l.value=!l.value,l.value&&(f(),e.nextTick(()=>{var k,w,L,_,i,E,g;(k=o.fieldRef)!=null&&k.inputTextRef&&((_=(L=(w=o.fieldRef)==null?void 0:w.inputTextRef)==null?void 0:L.focus)==null||_.call(L)),(i=o.fieldRef)!=null&&i.loadData&&Promise.resolve((g=(E=o.fieldRef)==null?void 0:E.loadData)==null?void 0:g.call(E)).finally(()=>{l.value&&f()})}))}function V(k){var w,L,_;!((w=b.value)!=null&&w.contains(k.target))&&!((L=p.value)!=null&&L.contains(k.target))&&!((_=n.value)!=null&&_.contains(k.target))&&(l.value=!1)}function m(k){k.key==="Escape"&&(l.value=!1)}const C=e.ref(!1),N=e.ref("ua"),c=k=>{k.detail.key==="locale"&&(N.value=k.detail.newValue)};e.onMounted(()=>{C.value=!0,N.value=localStorage.locale,window.addEventListener("storage",c),document.addEventListener("click",V,!0),document.addEventListener("keydown",m),window.addEventListener("scroll",u,!0),window.addEventListener("resize",u,!0),typeof ResizeObserver<"u"&&(y=new ResizeObserver(()=>{l.value&&f()}))}),e.onBeforeUnmount(()=>{window.removeEventListener("storage",c),document.removeEventListener("click",V,!0),document.removeEventListener("keydown",m),window.removeEventListener("scroll",u,!0),window.removeEventListener("resize",u,!0),y==null||y.disconnect(),y=null});function d(){l.value=!1}a({close:d}),e.watch([C,l,p],([k,w,L])=>{k&&w&&L&&(f(),y==null||y.observe(L))});function M(k){return Array.isArray(k)?k.filter(w=>w!=null&&w!=="").length:k&&typeof k=="object"?Object.values(k).filter(w=>w!=null&&w!=="").length:typeof k=="string"?k.trim()===""?0:1:typeof k=="number"?Number.isNaN(k)?0:1:k===null||k!==void 0?1:0}const A=e.computed(()=>{var L;const k=(L=o.fieldRef)==null?void 0:L.selectedLabels,w=M(k);return w>0?w:M(o.currentValue)}),$=e.computed(()=>{var w;const k=(w=o.fieldRef)==null?void 0:w.selectedLabels;return!k||["inline"].includes(o.layout||"")?o[N.value]||(o.label??""):Array.isArray(k)?k.length>0?k.join(", "):o.label??"":String(k)});return(k,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:b},[e.createElementVNode("button",{onClick:x,disabled:t.disabled,ref_key:"triggerRef",ref:n,title:t.label,class:e.normalizeClass([r.value,t.width?e.unref(ut).getWidthClass(t.width):"w-full",t.layout==="inline"&&A.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",Lo,[e.createElementVNode("span",Po,e.toDisplayString($.value),1),t.layout==="inline"&&A.value>0?(e.openBlock(),e.createElementBlock("span",$o,e.toDisplayString(A.value),1)):e.createCommentVNode("",!0)]),e.createVNode(Re,{class:"h-4 w-4 text-neutral-500"})],10,zo),C.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:p,class:"vsTailwind vs-popover__content w-fit fixed z-[1000]",style:e.normalizeStyle({top:`${s.value.top}px`,left:`${s.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",Fo,[e.createElementVNode("div",Ao,[e.renderSlot(k.$slots,"default")])])],4),[[e.vShow,l.value]])])):e.createCommentVNode("",!0)],512))}}),jo={},Ro={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[90deg]"};function Zo(t,a){return e.openBlock(),e.createElementBlock("svg",Ro,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const To=ae(jo,[["render",Zo]]),Oo={},Io={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[270deg]"};function Uo(t,a){return e.openBlock(),e.createElementBlock("svg",Io,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const vo=ae(Oo,[["render",Uo]]),Ko={class:"flex gap-1"},Ho={class:"mb-1"},Go={class:"mb-1"},Wo={class:"inline-flex rounded-sm shrink-0 pl-1"},qo=["title"],Yo={class:"inline-flex rounded-sm shrink-0 pl-1"},Qo=["title"],Xo={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},Jo=["max","value","disabled"],en=["min","value","disabled"],tn=e.defineComponent({__name:"date-input-inline",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=ne(),l=t,s=o,b=e.ref(null),{activeMode:n,innerValue:p,onSelectChange:y,nextClick:u,prevClick:f,currentLabel:x,clear:V}=ft({...l,popoverRef:b},s);e.watch(()=>l.modelValue,N=>{N!==void 0?(p.value=N,s("update:modelValue",N)):(n.value="",p.value=[])}),e.watch(p,N=>{s("update:modelValue",N),s("change",{name:l.name,value:N})},{deep:!0});function m(N){const c=Array.isArray(p.value)?[...p.value]:[];p.value=[N,c[1]||""]}function C(N){const c=Array.isArray(p.value)?[...p.value]:[];p.value=[c[0]||"",N]}return a({clear:V,popoverRef:b}),(N,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ko,[e.createVNode(Je,{ref_key:"popoverRef",ref:b,label:e.unref(x),"current-value":e.unref(p),mode:t.mode,width:typeof t.width=="number"&&e.unref(p).length?t.width-70:t.width,onClear:e.unref(V),layout:t.layout,class:e.normalizeClass(t.itemClass)},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[0]||(c[0]=d=>e.unref(y)("range")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.period"))+" ",1),e.unref(n)==="range"?(e.openBlock(),e.createBlock(ue,{key:0})):e.createCommentVNode("",!0)])]),c[12]||(c[12]=e.createElementVNode("div",null,[e.createElementVNode("div",{class:"pt-1 mt-1 border-t"})],-1)),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[1]||(c[1]=d=>e.unref(y)("today")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.today"))+" ",1),e.unref(n)==="today"?(e.openBlock(),e.createBlock(ue,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[2]||(c[2]=d=>e.unref(y)("week")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.week"))+" ",1),e.unref(n)==="week"?(e.openBlock(),e.createBlock(ue,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[3]||(c[3]=d=>e.unref(y)("month")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.month"))+" ",1),e.unref(n)==="month"?(e.openBlock(),e.createBlock(ue,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:c[4]||(c[4]=d=>e.unref(y)("quarter")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.quarter"))+" ",1),e.unref(n)==="quarter"?(e.openBlock(),e.createBlock(ue,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Ho,[e.createElementVNode("button",{type:"button",onClick:c[5]||(c[5]=d=>e.unref(y)("year")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.year"))+" ",1),e.unref(n)==="year"?(e.openBlock(),e.createBlock(ue,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Go,[e.createElementVNode("button",{type:"button",onClick:c[6]||(c[6]=d=>e.unref(V)()),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.alltime"))+" ",1),e.unref(p)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ue,{key:0}))])])]),_:1},8,["label","current-value","mode","width","onClear","layout","class"]),e.unref(n)!==""&&e.unref(n)!=="range"&&e.unref(n)!=="last_7_days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Wo,[e.createElementVNode("button",{type:"button",title:e.unref(r)("filter.prev"),class:"inline-flex h-[38px] items-center px-2 text-sm text-gray-800 bg-gray-100 gap-x-2 -ms-px first:rounded-s-lg first:ms-0 last:rounded-e-lg focus:z-10 hover:bg-gray-200 focus:bg-gray-200 duration-300",onClick:c[7]||(c[7]=(...d)=>e.unref(f)&&e.unref(f)(...d))},[e.createVNode(To)],8,qo)]),e.createElementVNode("div",Yo,[e.createElementVNode("button",{type:"button",title:e.unref(r)("filter.next"),class:"inline-flex h-[38px] items-center px-2 text-sm text-gray-800 gap-x-2 bg-gray-100 -ms-px first:rounded-s-lg first:ms-0 last:rounded-e-lg focus:z-10 hover:bg-gray-200 focus:bg-gray-200 duration-300",onClick:c[8]||(c[8]=(...d)=>e.unref(u)&&e.unref(u)(...d))},[e.createVNode(vo)],8,Qo)])],64)):e.createCommentVNode("",!0),e.unref(n)!==""&&e.unref(n)==="range"?(e.openBlock(),e.createElementBlock("div",Xo,[e.createElementVNode("input",{type:"date",max:e.unref(p)[1],locale:"uk-UA",value:e.unref(p)[0],onInput:c[9]||(c[9]=d=>m(d.target.value)),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:t.disabled},null,40,Jo),e.createElementVNode("input",{type:"date",min:e.unref(p)[0],locale:"uk-UA",value:e.unref(p)[1],onInput:c[10]||(c[10]=d=>C(d.target.value)),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:t.disabled},null,40,en)])):e.createCommentVNode("",!0)]),(t.cleanable,e.createCommentVNode("",!0))],64))}}),ln=["disabled","onClick"],on={key:0,class:"pt-2 px-2 border-t"},nn=["disabled"],rn=e.defineComponent({__name:"button-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=he(),b=ne(),{innerValue:n,isSelected:p,selectItem:y,clear:u,labelKey:f,valueKey:x,allOptions:V}=qe({...r,modelValue:r.modelValue??r.default??""},l),m=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value===""));function C(c){return p(c)?["bg-blue-600 text-white"].filter(d=>typeof d=="string"&&d.trim().length>0).join(" "):["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter(d=>typeof d=="string"&&d.trim().length>0).join(" ")}function N(c){r.disabled||y(c)}return a({clear:u}),e.watch(()=>r.modelValue,c=>{c===void 0&&(n.value=void 0)}),(c,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["flex flex-wrap items-center gap-2",t.layout==="popover"?"p-2 max-h-[calc(100%-55px)] overflow-y-auto":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(V),M=>(e.openBlock(),e.createElementBlock("button",{key:M[e.unref(x)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",C(M)]),disabled:t.disabled,onClick:A=>N(M)},e.toDisplayString(M[e.unref(f)]),11,ln))),128))],2),t.cleanable&&t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",on,[e.createElementVNode("button",{type:"button",disabled:!m.value,class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:d[0]||(d[0]=(...M)=>e.unref(u)&&e.unref(u)(...M))},e.toDisplayString(e.unref(b)("filter.clear")),11,nn)])):e.createCommentVNode("",!0)],64))}}),gt={radio:El,checkbox:mt,check:mt,text:Il,range:ql,date:co,select:Co,tag:Do,button:rn,"date:inline":tn};function et(t,a){let o;switch(t.toLowerCase()){case"autocomplete":o="select";break;case"check":o="checkbox";break;default:o=t==null?void 0:t.toString().toLowerCase()}return o==="date"&&a&&a==="inline"&&(o="date:inline"),{component:gt[o]||gt.text,type:o}}const an={style:{display:"inline-flex",margin:"0px",width:"100%"}},sn={class:"relative w-full mb-2 p-4 bg-white rounded-md shadow-sm"},cn={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},dn={class:"flex items-center"},mn={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},pn={class:"filter-layout__body"},un=e.defineComponent({__name:"vertical-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),b=e.computed(()=>et(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:f=>l("update:modelValue",f)});function p(f){l("clear",f)}function y(f,x){l("change",{name:f,value:x}),r.modelValue!==void 0&&l("update:modelValue",x)}function u(){var f,x;(x=(f=s.value)==null?void 0:f.clear)==null||x.call(f),l("clear",r.name)}return e.watch(()=>r.default,f=>{n.value=f}),e.watch(()=>r.modelValue,f=>{n.value=f}),a({filterRef:s}),(f,x)=>{var V,m,C;return e.openBlock(),e.createElementBlock("div",an,[e.createElementVNode("div",sn,[e.createElementVNode("div",cn,[e.createElementVNode("div",dn,[e.createElementVNode("span",mn,e.toDisplayString(t.label),1)]),typeof n.value=="string"&&n.value.trim()!==""||Array.isArray(n.value)&&n.value.length>0&&n.value.some(N=>N!==void 0)||n.value===null?(e.openBlock(),e.createBlock(el,{key:0,onClick:u})):e.createCommentVNode("",!0)]),e.createElementVNode("div",pn,[((V=b.value)==null?void 0:V.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((m=b.value)==null?void 0:m.component),e.mergeProps({key:0},r,{type:(C=b.value)==null?void 0:C.type,class:r.itemClass,onChange:x[0]||(x[0]=N=>y(N.name,N.value)),onClear:x[1]||(x[1]=N=>p(N)),ref_key:"filterRef",ref:s}),null,16,["type","class"])):(e.openBlock(),e.createBlock(Je,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:u,fieldRef:s.value,width:void 0,disabled:t.disabled,layout:"vertical"},{default:e.withCtx(()=>{var N,c;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((N=b.value)==null?void 0:N.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{type:(c=b.value)==null?void 0:c.type,class:r.itemClass,onChange:x[2]||(x[2]=d=>y(d.name,d.value)),onClear:x[3]||(x[3]=d=>p(d))}),null,16,["type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),ht=e.defineComponent({__name:"inline-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),b=e.computed(()=>et(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:u=>l("update:modelValue",u)});function p(u=r.name){l("clear",u)}function y(u,f){l("change",{name:u,value:f}),r.modelValue!==void 0&&l("update:modelValue",f)}return e.watch(()=>r.default,u=>{n.value=u}),e.watch(()=>r.modelValue,u=>{n.value=u}),a({filterRef:s}),(u,f)=>{var x,V;return["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((x=b.value)==null?void 0:x.component),e.mergeProps({key:0},r,{type:(V=b.value)==null?void 0:V.type,class:t.itemClass,onChange:f[0]||(f[0]=m=>y(m.name,m.value)),onClear:f[1]||(f[1]=m=>p(m)),disabled:t.disabled,modelValue:n.value,"onUpdate:modelValue":f[2]||(f[2]=m=>n.value=m)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(Je,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:p,fieldRef:s.value,width:r.width,disabled:t.disabled,layout:"inline"},{default:e.withCtx(()=>{var m,C;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((m=b.value)==null?void 0:m.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{modelValue:n.value,"onUpdate:modelValue":f[3]||(f[3]=N=>n.value=N),type:(C=b.value)==null?void 0:C.type,class:r.itemClass,onChange:f[4]||(f[4]=N=>y(N.name,N.value)),onClear:f[5]||(f[5]=N=>p(N))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),fn=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),b=e.computed(()=>et(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:u=>l("update:modelValue",u)});function p(u){l("clear",u)}function y(u,f){l("change",{name:u,value:f}),r.modelValue!==void 0&&l("update:modelValue",f)}return e.watch(()=>r.default,u=>{n.value=u}),e.watch(()=>r.modelValue,u=>{n.value=u}),e.watch(()=>r,u=>{n.value=u}),a({filterRef:s}),(u,f)=>{var x,V;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((x=b.value)==null?void 0:x.component),e.mergeProps(r,{type:(V=b.value)==null?void 0:V.type,class:r.itemClass,modelValue:n.value,"onUpdate:modelValue":f[0]||(f[0]=m=>n.value=m),onChange:f[1]||(f[1]=m=>y(m.name,m.value)),onClear:f[2]||(f[2]=m=>p(m)),ref_key:"filterRef",ref:s}),null,16,["type","class","modelValue"])}}}),re=e.defineComponent({__name:"filter-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean,default:!0},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{default:"name"},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref(),b=e.computed({get:()=>r.modelValue,set:u=>l("update:modelValue",u)});function n(u){l("clear",u)}function p(u,f){l("change",{name:u,value:f}),r.modelValue!==void 0&&l("update:modelValue",f)}e.watch(()=>r.default,u=>{b.value=u}),e.watch(()=>r.modelValue,u=>{b.value=u}),a({filterRef:s});function y(){switch(r.layout){case"inline":return ht;case"vertical":return un;case"popover":return fn;default:return ht}}return(u,f)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(y()),e.mergeProps(r,{onChange:f[0]||(f[0]=x=>p(x.name,x.value)),onClear:f[1]||(f[1]=x=>n(x)),modelValue:b.value,"onUpdate:modelValue":f[2]||(f[2]=x=>b.value=x)}),null,16,["modelValue"]))}});function Ze(t,a){const{slots:o}=t,r=c=>c?JSON.parse(JSON.stringify(e.toRaw(c))):{},l=e.ref(r(t.value));e.watch(()=>t.value,c=>{l.value=r(c)},{deep:!0,immediate:!0});const s=e.computed(()=>{var c;return(e.toRaw((c=o==null?void 0:o.default)==null?void 0:c.call(o))??[]).flatMap(d=>Array.isArray(d.children)?d.children:[d])});function b(c){delete l.value[c],a("clear",{data:e.toRaw(l.value),name:c})}function n(c,d){d===void 0?b(c):l.value={...l.value,[c]:d},a("change",{data:e.toRaw(l.value),name:c,value:d})}const p=e.computed(()=>s.value.map(c=>{var M,A,$;const d=(M=c.props)==null?void 0:M.name;return e.cloneVNode(c,{...c.props,layout:t.view,showClean:!0,modelValue:l.value[d],"onUpdate:modelValue":k=>{n(d,k)},onClear:()=>b(d),class:[t.itemClass,(A=c.props)==null?void 0:A.class],itemClass:[t.itemClass,($=c.props)==null?void 0:$.itemClass].filter(k=>typeof k=="string"&&k.trim().length>0).join(" ")||void 0})})),y=e.computed(()=>new Map(p.value.map(c=>{var M;const d=(M=c.props)==null?void 0:M.name;return d?[d,c]:null}).filter(c=>c!==null)));function u(c=!1){l.value={},c||a("clearAll",{data:e.toRaw(l.value),name:"ALL"})}const f=e.ref(""),x=e.computed(()=>{var c;return(c=t.schema)!=null&&c.value?Object.entries(l.value).filter(([d,M])=>t.schema&&!(d in t.schema.value)?!1:Array.isArray(M)?M.some(A=>A!==""&&A!==void 0):M!==""&&M!==void 0).length:0}),V=e.ref();e.watch(f,async()=>{var c,d;await e.nextTick(),(d=(c=V==null?void 0:V.value)==null?void 0:c.filterRef)!=null&&d.inputTextRef&&V.value.filterRef.inputTextRef.focus()});const m=e.computed(()=>{var c,d;return(c=t.schema)!=null&&c.value?Object.fromEntries(Object.entries((d=t.schema)==null?void 0:d.value).slice(0,t.limit)):{}}),C=e.computed(()=>{var d;if(p.value.length===0)return[];let c=0;if((d=t.schema)!=null&&d.value){const M=Object.entries(t.schema.value).length;t.limit&&M<t.limit?c=t.limit-M:c=0}return p.value.slice(0,c)}),N=e.computed(()=>p.value.length===0?[]:t.view!=="inline"?p.value:p.value.slice(C.value.length));return{activeFilter:l,activeFilterCount:x,onFilterChange:n,clearFilter:b,clearAllFilters:u,limitedSchema:m,filtersSlot:p,limitedFiltersSlot:C,popoverFiltersSlot:N,vnodeMap:y,selectedFilter:f,filterRef:V}}const gn=e.defineComponent({__name:"popover",emits:["open","close"],setup(t,{emit:a}){const o=e.ref(!1),r=e.ref(null),l=e.ref(null),s=e.ref(null),b=e.ref({top:"0px",left:"0px",position:"absolute"}),n=e.ref(!1);function p(){o.value=!o.value}function y(){const m=s.value,C=r.value;if(!m||!C)return;const{left:N,bottom:c}=m.getBoundingClientRect();requestAnimationFrame(()=>{if(!C)return;const{width:d}=C.getBoundingClientRect(),M=C.offsetWidth||d,A=window.innerWidth||document.documentElement.clientWidth,$=A-N;let k=N;M>$&&(k=A-M-18),k<18&&(k=18);const w=A-M-18;k>w&&(k=Math.max(18,w)),b.value={position:"fixed",top:`${c+18}px`,left:`${k}px`},n.value=!0})}const u=e.computed(()=>Object.entries(b.value).map(m=>m.join(":")).join(";"));function f(m){var N,c;const C=m.target;!((N=s.value)!=null&&N.contains(m.target))&&!((c=r.value)!=null&&c.contains(m.target))&&!C.closest("[data-inside-popover]")&&(o.value=!1)}const x=e.ref(!1);e.onMounted(()=>{x.value=!0}),e.onMounted(()=>{var m,C;s.value=((m=l.value)==null?void 0:m.querySelector("[data-popover-trigger]"))||null,(C=s.value)==null||C.addEventListener("click",p),document.addEventListener("click",f),window.addEventListener("resize",y),window.addEventListener("scroll",y,!0)}),e.onBeforeUnmount(()=>{var m;(m=s.value)==null||m.removeEventListener("click",p),document.removeEventListener("click",f),window.removeEventListener("resize",y),window.removeEventListener("scroll",y,!0)});const V=a;return e.watch(o,async m=>{m?(n.value=!1,V("open"),await e.nextTick(),requestAnimationFrame(()=>{y()})):(V("close"),n.value=!1)}),(m,C)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:l},[e.renderSlot(m.$slots,"trigger"),x.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:r,class:"fixed z-[50] w-[calc(100vw-32px)] md:w-[600px] rounded-md border bg-white shadow-md transition-opacity duration-0",style:e.normalizeStyle([u.value,{visibility:n.value?"visible":"hidden",opacity:n.value?1:0}])},[e.renderSlot(m.$slots,"default")],4),[[e.vShow,o.value]])])):e.createCommentVNode("",!0)],512))}}),hn={},yn={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-filter h-4 w-4"};function xn(t,a){return e.openBlock(),e.createElementBlock("svg",yn,[...a[0]||(a[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)])])}const yt=ae(hn,[["render",xn]]),bn={class:"flex items-center gap-2 overflow-hidden"},kn={key:0,class:"inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-500 px-1 text-[11px] font-semibold text-white"},wn={class:"flex max-h-[400px] md:max-h-[400px]"},Cn={class:"w-[150px] sm:w-[180px] md:w-64 border-r border-gray-200 overflow-y-auto"},Vn={class:"p-2 md:p-4 border-b"},Bn={class:"text-xs md:text-sm text-gray-600"},En={class:"p-1 md:p-2"},Nn=["onClick"],Sn={class:"flex items-center gap-1.5 md:gap-2"},_n={class:"text-xs md:text-sm font-medium line-clamp-3"},Mn={key:0,class:"inline-flex min-h-[16px] md:min-h-[18px] min-w-[16px] md:min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-0.5 md:px-1 text-[10px] md:text-[11px] font-semibold text-blue-600 flex-shrink-0"},Dn=["onClick"],zn={class:"flex items-center gap-1.5 md:gap-2"},Ln={class:"text-xs md:text-sm font-medium truncate"},Pn={key:0,class:"inline-flex min-h-[16px] md:min-h-[18px] min-w-[16px] md:min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-0.5 md:px-1 text-[10px] md:text-[11px] font-semibold text-blue-600 flex-shrink-0"},$n={key:0,class:"p-1 md:p-2 border-t"},Fn={class:"flex-1 min-h-[250px] md:min-h-[300px] overflow-y-auto"},An={key:0,class:"flex items-center justify-center h-full text-gray-500"},jn={class:"text-xs md:text-sm"},xt=e.defineComponent({__name:"popover-filter-layout",props:{badgeCount:{},schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=ne(),l=t,s=it(l.mode),b=e.useSlots(),n=o,p=e.ref({}),y=e.computed(()=>p!=null&&p.value?l.view!=="inline"?p==null?void 0:p.value:Object.fromEntries(Object.entries(p==null?void 0:p.value).slice(l.limit)):{}),{activeFilter:u,activeFilterCount:f,onFilterChange:x,clearFilter:V,clearAllFilters:m,popoverFiltersSlot:C,selectedFilter:N,filterRef:c}=Ze({...l,schema:p,slots:b},n),d=e.computed(()=>l.badgeCount??f.value);function M(k){return Array.isArray(k)?k.filter(w=>w!=null&&w!=="").length:k&&typeof k=="object"?Object.values(k).filter(w=>w!=null&&w!=="").length:k===null||k!==void 0&&k!==""?1:0}function A(k){return u.value?M(u.value[k]):0}function $(){if(y.value){const[k]=Object.keys(y.value);N.value=k}else C.value.length>0?N.value=C.value[0].props.name:N.value=""}return e.watch(()=>l.schema,k=>{p.value=k??{}},{deep:!0,immediate:!0}),a({clearFilter:V,clearAllFilters:m}),(k,w)=>(e.openBlock(),e.createBlock(gn,{onOpen:$,onClose:w[5]||(w[5]=L=>N.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,e.unref(s),"flex items-center justify-between gap-2",d.value>0?"border border-blue-400 bg-blue-50 text-blue-600 hover:border-blue-500":"text-neutral-700 hover:border-neutral-400"]),type:"button"},[e.createElementVNode("span",bn,[e.createVNode(yt,{class:"h-4 w-4"}),w[6]||(w[6]=e.createElementVNode("span",{class:"text-sm font-medium"},"Фільтр",-1))]),d.value>0?(e.openBlock(),e.createElementBlock("span",kn,e.toDisplayString(d.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",wn,[e.createElementVNode("div",Cn,[e.createElementVNode("div",Vn,[e.createElementVNode("p",Bn,e.toDisplayString(e.unref(r)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",En,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(y.value),([L,_])=>(e.openBlock(),e.createElementBlock("button",{key:L,onClick:()=>{N.value=L},class:e.normalizeClass(["flex w-full items-center justify-between px-2 md:px-3 py-1.5 md:py-2 text-left transition-colors hover:bg-gray-50",e.unref(N)===L?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Sn,[e.createElementVNode("span",_n,e.toDisplayString(_.label),1)]),A(L)>0?(e.openBlock(),e.createElementBlock("div",Mn,e.toDisplayString(A(L)),1)):e.createCommentVNode("",!0)],10,Nn))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C),(L,_)=>(e.openBlock(),e.createElementBlock("button",{key:"slot-"+_,onClick:i=>N.value=L.props.name,class:e.normalizeClass(["flex items-center justify-between px-2 md:px-3 py-1.5 md:py-2 text-left transition-colors hover:bg-gray-50",e.unref(N)===L.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",zn,[e.createElementVNode("span",Ln,e.toDisplayString(L.props.label),1)]),A(L.props.name)>0?(e.openBlock(),e.createElementBlock("div",Pn,e.toDisplayString(A(L.props.name)),1)):e.createCommentVNode("",!0)],10,Dn))),128))]),e.unref(f)>0?(e.openBlock(),e.createElementBlock("div",$n,[e.createElementVNode("button",{class:e.normalizeClass([t.itemClass,"w-full px-2 md:px-3 py-1.5 md:py-2 text-left text-xs md:text-sm text-gray-600 hover:bg-gray-50 transition-colors"]),onClick:w[0]||(w[0]=L=>e.unref(m)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Fn,[e.unref(N)===""?(e.openBlock(),e.createElementBlock("div",An,[e.createElementVNode("p",jn,e.toDisplayString(e.unref(r)("filter.selectFieldHelp")),1)])):e.createCommentVNode("",!0),e.unref(N)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[y.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(y.value),([L,_])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(N)===L?(e.openBlock(),e.createBlock(re,e.mergeProps({key:L,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:c},{ref_for:!0},_,{class:[t.itemClass,_==null?void 0:_.class],"item-class":[t.itemClass,_==null?void 0:_.itemClass].filter(Boolean).join(" ")||void 0,onChange:w[1]||(w[1]=i=>e.unref(x)(i.name,i.value)),onClear:w[2]||(w[2]=i=>{e.unref(V)(i),e.unref(x)(i,void 0)}),modelValue:e.unref(u)[L],"onUpdate:modelValue":i=>e.unref(u)[L]=i,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C),(L,_)=>{var i,E;return e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+_},[e.unref(N)===L.props.name?(e.openBlock(),e.createBlock(re,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},L.props,{ref_for:!0,ref_key:"filterRef",ref:c,class:[t.itemClass,(i=L.props)==null?void 0:i.class],"item-class":[t.itemClass,(E=L.props)==null?void 0:E.itemClass].filter(Boolean).join(" ")||void 0,onChange:w[3]||(w[3]=g=>e.unref(x)(g.name,g.value)),onClear:w[4]||(w[4]=g=>{e.unref(V)(g),e.unref(x)(g,void 0)}),modelValue:e.unref(u)[L.props.name],"onUpdate:modelValue":g=>e.unref(u)[L.props.name]=g,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64)}),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),Rn={class:"flex gap-1 items-center flex-wrap"},bt=e.defineComponent({__name:"inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=ne(),l=t,s=o,b=e.useSlots(),n=e.ref({}),p=e.computed(()=>Object.keys(l.schema).length>l.limit),{activeFilter:y,activeFilterCount:u,onFilterChange:f,clearFilter:x,clearAllFilters:V,limitedSchema:m,filtersSlot:C,limitedFiltersSlot:N}=Ze({...l,schema:n,slots:b},s);function c(w){return Array.isArray(w)?w.some(L=>L!==""&&L!==void 0&&L!==null):w===null?!0:w&&typeof w=="object"?Object.values(w).some(L=>L!==""&&L!==void 0&&L!==null):w!==""&&w!==void 0}const d=e.computed(()=>{const w=Object.keys(m.value??{}),L=N.value.map(_=>{var i;return(i=_.props)==null?void 0:i.name}).filter(_=>typeof _=="string");return new Set([...w,...L])}),M=e.computed(()=>Object.entries(y.value??{}).filter(([w,L])=>d.value.has(w)&&c(L)).length),A=e.computed(()=>{const w=u.value??0,L=M.value??0;return Math.max(w-L,0)}),$=e.ref();function k(){$.value&&$.value.clearAllFilters(!0),V()}return e.watch(()=>l.schema,w=>{n.value=w},{deep:!0,immediate:!0}),a({clearFilter:x,clearAllFilters:V}),(w,L)=>(e.openBlock(),e.createElementBlock("div",Rn,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(m)),([_,i])=>(e.openBlock(),e.createBlock(re,e.mergeProps({key:_,mode:t.mode,width:t.width?t.width:i==null?void 0:i.width},{ref_for:!0},i,{class:[t.itemClass,i==null?void 0:i.class],"item-class":[t.itemClass,i==null?void 0:i.itemClass].filter(Boolean).join(" ")||void 0,onChange:L[0]||(L[0]=E=>e.unref(f)(E.name,E.value)),onClear:e.unref(x),layout:"inline",cleanable:!0,modelValue:e.unref(y)[_],"onUpdate:modelValue":E=>e.unref(y)[_]=E}),null,16,["mode","width","class","item-class","onClear","modelValue","onUpdate:modelValue"]))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(N),(_,i)=>{var E,g;return e.openBlock(),e.createBlock(re,e.mergeProps({key:"slot-"+i,layout:"inline"},{ref_for:!0},_.props,{class:[t.itemClass,(E=_.props)==null?void 0:E.class],"item-class":[t.itemClass,(g=_.props)==null?void 0:g.itemClass].filter(Boolean).join(" ")||void 0,onChange:L[1]||(L[1]=D=>e.unref(f)(D.name,D.value)),onClear:L[2]||(L[2]=D=>{e.unref(x)(D),e.unref(f)(D,void 0)}),cleanable:!0,modelValue:e.unref(y)[_.props.name],"onUpdate:modelValue":D=>e.unref(y)[_.props.name]=D}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128)),p.value?(e.openBlock(),e.createBlock(xt,e.mergeProps({key:1},l,{schema:t.schema,limit:t.limit,onChange:L[3]||(L[3]=_=>e.unref(f)(_.name,_.value)),onClearAll:L[4]||(L[4]=_=>e.unref(V)()),onClear:L[5]||(L[5]=_=>e.unref(x)(_.name)),mode:t.mode,ref_key:"popoverRef",ref:$,cleanable:!0,"badge-count":A.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C),(_,i)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(_),e.mergeProps({key:"slot-"+i,layout:"popover"},{ref_for:!0},_.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","limit","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(u)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:k,class:e.normalizeClass([t.itemClass,"relative py-2 px-3 inline-flex justify-center items-center gap-x-2 text-sm font-medium rounded-md bg-gray-50 border text-gray-800 hover:bg-gray-200 focus:bg-gray-200"])},e.toDisplayString(e.unref(r)("filter.clear")),3)):e.createCommentVNode("",!0)]))}}),Zn={key:0,class:"p-2 overflow-y-auto overflow-hidden [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 dark:bg-neutral-800 max-h-[calc(100%-142px)] h-full bg-gray-100"},Tn={class:"flex items-center vst-filters vsTailwind flex-col w-full"},On=e.defineComponent({__name:"vertical-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.useSlots(),{activeFilter:b,activeFilterCount:n,onFilterChange:p,clearFilter:y,clearAllFilters:u,filtersSlot:f}=Ze({...r,slots:s},l);return a({clearFilter:y,clearAllFilters:u}),(x,V)=>t.view==="vertical"?(e.openBlock(),e.createElementBlock("div",Zn,[e.createElementVNode("div",Tn,[e.unref(n)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:V[0]||(V[0]=m=>e.unref(u)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,"w-full ring-offset-background focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:text-accent-foreground border h-10 px-4 py-2 gap-2 m-2 bg-white text-gray-800 hover:bg-gray-200 focus:bg-gray-200"]),type:"button"}," Очистити ",2)):e.createCommentVNode("",!0),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(t.schema),([m,C])=>(e.openBlock(),e.createBlock(re,e.mergeProps({layout:"vertical"},{ref_for:!0},C,{class:[t.itemClass,C==null?void 0:C.class],"item-class":[t.itemClass,C==null?void 0:C.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[1]||(V[1]=N=>e.unref(p)(N.name,N.value)),onClear:V[2]||(V[2]=N=>{e.unref(y)(N),e.unref(p)(N,void 0)}),modelValue:e.unref(b)[m],"onUpdate:modelValue":N=>e.unref(b)[m]=N,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),(m,C)=>{var N,c;return e.openBlock(),e.createBlock(re,e.mergeProps({key:"slot-"+C,layout:"vertical"},{ref_for:!0},m.props,{class:[t.itemClass,(N=m.props)==null?void 0:N.class],"item-class":[t.itemClass,(c=m.props)==null?void 0:c.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[3]||(V[3]=d=>e.unref(p)(d.name,d.value)),onClear:V[4]||(V[4]=d=>{e.unref(y)(d),e.unref(p)(d,void 0)}),modelValue:e.unref(b)[m.props.name],"onUpdate:modelValue":d=>e.unref(b)[m.props.name]=d,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))])])):e.createCommentVNode("",!0)}}),In=["onKeydown"],Un=["disabled"],vn={key:0,class:"ml-2 inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-full bg-blue-500 px-1.5 text-[11px] font-semibold text-white"},Kn={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Hn={class:"mb-3 flex items-center justify-between"},Gn={class:"text-[15px] font-semibold text-slate-800"},Wn={"aria-hidden":"true"},qn={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},Yn={key:0,class:"mt-3 flex justify-end"},Qn=e.defineComponent({__name:"popover-inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:10},width:{default:220},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{emit:a}){const o=ne(),r=t,l=a,s=e.ref({}),b=e.useSlots(),{activeFilter:n,activeFilterCount:p,onFilterChange:y,clearFilter:u,clearAllFilters:f,filtersSlot:x}=Ze({...r,schema:s.value,slots:b},l),V=e.ref(null),m=e.ref(null),C=e.reactive({open:!1,top:0,left:0}),N=e.computed(()=>C.open),c=e.computed(()=>!!r.disabled),d=e.computed(()=>s.value||{}),M=e.computed(()=>r.title??"Фільтр"),A=e.computed(()=>!!b.trigger),$=e.computed(()=>["inline-flex h-9 items-center justify-center gap-2 rounded-lg border border-transparent bg-slate-200/70 px-3 text-sm font-medium text-slate-700 transition-colors hover:bg-blue-100 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-slate-200/70 disabled:hover:text-slate-700",c.value?"cursor-not-allowed opacity-60":"cursor-pointer"]),k=e.computed(()=>C.open?{position:"absolute",top:`${C.top}px`,left:`${C.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function w(){C.open=!1}function L(){if(!V.value)return;const D=V.value.getBoundingClientRect();C.top=D.bottom+window.scrollY+8,C.left=D.left+D.width/2+window.scrollX}function _(){C.open=!C.open,C.open&&e.nextTick(L)}function i(){c.value||_()}function E(){C.open&&L()}function g(){f()}return e.onMounted(()=>{window.addEventListener("resize",E),window.addEventListener("scroll",E,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",E),window.removeEventListener("scroll",E,!0)}),e.watch(()=>r.schema,D=>{if(!D){s.value={};return}if(Array.isArray(D)){const j=D.filter(I=>I&&(I.name||I.id)).map(I=>{const P=I.name||I.id;return[P,{...I,name:P}]});s.value=Object.fromEntries(j);return}s.value=D},{deep:!0,immediate:!0}),e.watch(()=>r.disabled,D=>{D&&w()}),(D,j)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:V},[A.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",c.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(i,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(i,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(i,["prevent","stop"]),["space"])]},[e.renderSlot(D.$slots,"trigger",{toggle:i,open:N.value,disabled:c.value,activeCount:e.unref(p)})],42,In)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass($.value),type:"button",disabled:c.value,onClick:e.withModifiers(i,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(yt,{class:"h-4 w-4"}),e.unref(p)>0?(e.openBlock(),e.createElementBlock("div",vn,e.toDisplayString(e.unref(p)),1)):e.createCommentVNode("",!0)],10,Un)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[N.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof t.width=="number"?`min-w-[${t.width+32+(Object.keys(d.value).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(k.value),ref_key:"panel",ref:m,onClick:j[4]||(j[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Kn,[e.createElementVNode("div",Hn,[e.createElementVNode("h3",Gn,e.toDisplayString(M.value),1),e.createElementVNode("button",{type:"button",class:"inline-flex h-6 w-6 items-center justify-center rounded-full border-0 bg-slate-300/40 text-slate-600 transition-colors hover:bg-blue-200/60 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200",onClick:w},[e.createElementVNode("span",Wn,[e.createVNode(Xe,{class:"h-4 w-4"})]),j[5]||(j[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",qn,[Object.keys(d.value).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(d.value),([I,P])=>(e.openBlock(),e.createBlock(re,e.mergeProps({key:I},{ref_for:!0},{...P,layout:"inline"},{width:t.width?t.width:P==null?void 0:P.width,class:[t.itemClass,P==null?void 0:P.class],"item-class":[t.itemClass,P==null?void 0:P.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[I],"onUpdate:modelValue":Z=>e.unref(n)[I]=Z,onChange:j[0]||(j[0]=Z=>e.unref(y)(Z.name,Z.value)),onClear:j[1]||(j[1]=Z=>{e.unref(u)(Z),e.unref(y)(Z,void 0)})}),null,16,["width","class","item-class","modelValue","onUpdate:modelValue"]))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(x),(I,P)=>{var Z,H;return e.openBlock(),e.createBlock(re,e.mergeProps({key:"slot-"+P,ref_for:!0},{...I.props,layout:"inline"},{class:[t.itemClass,(Z=I.props)==null?void 0:Z.class],"item-class":[t.itemClass,(H=I.props)==null?void 0:H.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[I.props.name],"onUpdate:modelValue":Q=>e.unref(n)[I.props.name]=Q,onChange:j[2]||(j[2]=Q=>e.unref(y)(Q.name,Q.value)),onClear:j[3]||(j[3]=Q=>{e.unref(u)(Q),e.unref(y)(Q,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))]),e.unref(p)>0?(e.openBlock(),e.createElementBlock("div",Yn,[e.createElementVNode("button",{type:"button",class:e.normalizeClass([t.itemClass,"text-sm font-semibold text-blue-600 transition-colors hover:text-blue-700 focus:outline-none"]),onClick:g},e.toDisplayString(e.unref(o)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),Xn={class:"mb-6 flex flex-wrap gap-2"},Jn=["onClick"],er={class:"mr-2 flex items-center gap-1"},tr={class:"font-semibold"},lr={class:"text-xs text-gray-500"},Te=e.defineComponent({__name:"filter",props:{schema:{},view:{default:"inline"},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{},teleportActive:{}},emits:["change","clear","clearAll"],setup(t,{expose:a,emit:o}){const r=t,l=e.useAttrs(),s=e.computed(()=>({...r,...l})),b=e.ref(u(r.value??{}));e.watch(()=>r.value,async i=>{var E,g;b.value=u(i??{}),(!i||Object.keys(i).length===0)&&(await e.nextTick(),(g=(E=p.value)==null?void 0:E.clearAllFilters)==null||g.call(E,!0))},{deep:!0,immediate:!0});const n=o,p=e.ref(),y=e.useSlots();function u(i){if(Array.isArray(i))return i.map(E=>u(E));if(i!==null&&typeof i=="object"){const E=e.toRaw(i),g={};for(const D in E)g[D]=u(E[D]);return g}return i}function f(i,E){E!==void 0?b.value={...b.value,[i]:E}:delete b.value[i],n("change",{data:u(b.value),name:i,value:u(E)})}function x(i){delete b.value[i],n("clear",{data:u(b.value),name:i}),n("change",{data:u(b.value),name:i,value:null})}function V(){b.value={},n("clear",{data:u(b.value),name:"ALL"}),n("change",{data:u(b.value),name:"ALL",value:null})}const m=e.ref({}),C=e.computed(()=>r.teleportActive);function N(){switch(r.view){case"inline":return bt;case"vertical":return On;case"popover":return xt;case"popover-inline":return Qn;default:return bt}}e.watch(()=>r.schema,i=>{if(!i){m.value={};return}if(Array.isArray(i)&&!i.length){m.value={};return}Array.isArray(i)?m.value=i.filter(E=>E.type).reduce((E,g)=>(Object.assign(g,{name:g.id||g.name,type:{datepicker:"date"}[g.type.toLowerCase()]||g.type.toLowerCase(),label:g.label||g.ua}),E[g.name]=g,g.data&&!g.api&&!g.options&&Object.assign(g,{api:`/api/suggest/${g.data}`}),E),{}):(Object.entries(i).forEach(([E,g])=>{Object.assign(g,{name:E||g.name||g.id,type:g.type.toLowerCase()})}),m.value={...i})},{immediate:!0,deep:!0});function c(i){p.value.clearFilter(i),x(i)}function d(){p.value.clearAllFilters(),V()}const M=e.computed(()=>Object.entries(b.value).filter(([,i])=>i==null?!1:Array.isArray(i)?i.length>0:typeof i=="string"?i.trim().length>0:!0).map(([i,E])=>{const g=m.value[i],D=(g==null?void 0:g.label)||(g==null?void 0:g.title)||i,j=$(g,E);return{key:i,label:D,value:j}}));function A(i){c(i)}function $(i,E){if(!i||E===void 0||E===null)return"";const g=k(E);if(!g.length)return"";const D=w(i);return g.map(j=>D.get(j)??j).filter(Boolean).join(", ")}function k(i){return Array.isArray(i)?i.map(E=>{var g;return((g=E==null?void 0:E.toString)==null?void 0:g.call(E))??""}).filter(Boolean):typeof i=="string"?i.split(",").map(E=>E.trim()).filter(Boolean):[]}function w(i){const E=new Map,g=i.valueKey||"id",D=i.labelKey||"text";return(i.options??[]).forEach(j=>{const I=L(j,g),P=_(j,D);I&&E.set(I,P||I)}),E}function L(i,E){var g,D;return i?((D=(g=i[E]??i.id??i.value??i.key)==null?void 0:g.toString)==null?void 0:D.call(g))??"":""}function _(i,E){var g,D;return i?((D=(g=i[E]??i.text??i.label??i.value??i.id)==null?void 0:g.toString)==null?void 0:D.call(g))??"":""}return e.watch(()=>b.value,i=>{if(r.history){const E=new URL(window.location.href),g=new URLSearchParams(window.location.search);Object.keys(i).length>0?g.set("filter",Object.entries(i).filter(([,D])=>D).map(([D,j])=>`${D}=${j}`).join("|")):g.delete("filter"),E.search=decodeURI(g.toString()),window.history.pushState({},"",E)}}),a({clearAllFilters:d,clearFilter:c}),(i,E)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N()),e.mergeProps(s.value,{schema:m.value,onChange:E[0]||(E[0]=g=>f(g.name,g.value)),onClear:E[1]||(E[1]=g=>x(g.name)),onClearAll:V,ref_key:"filterRef",ref:p}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:2},[e.unref(y).trigger?{name:"trigger",fn:e.withCtx(g=>[e.renderSlot(i.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(g)))]),key:"0"}:void 0]),1040,["schema"])),C.value&&M.value.length?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:C.value},[e.createElementVNode("div",Xn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,g=>(e.openBlock(),e.createElementBlock("button",{key:g.key,type:"button",class:"ga1u8 zw1wr sr4j9 flex items-center zu875 kew0r w9dei w4xo0 kghwt wz1vo focus:outline-hidden gugmw dark:bg-emerald-500 dark:hover:bg-emerald-600 dark:focus:bg-emerald-600 bg-white border border-gray-200 px-3 py-1 rounded-full text-sm text-gray-700",onClick:D=>A(g.key)},[e.createElementVNode("span",er,[e.createElementVNode("span",tr,e.toDisplayString(g.label),1),e.createElementVNode("span",lr,"· "+e.toDisplayString(g.value),1)]),E[2]||(E[2]=e.createElementVNode("span",{class:"g424j flex flex-col jkwm1 items-center b9gop aqyoh ad7q2 kghwt t4363 q7nhl dark:text-emerald-500"},[e.createElementVNode("svg",{class:"e731n u28hb",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})])],-1))],8,Jn))),128))])],8,["to"])):e.createCommentVNode("",!0)],64))}});Te.install=function(t){t.component("Filter",Te),t.component("FilterField",re)};function kt(t){const{page:a,id:o,filter:r,filterByView:l}=t,s=new URL(window.location.href),b=new URLSearchParams(window.location.search);a?b.set("page",a.toString()):b.delete("page"),o?b.set("id",o.toString()):b.delete("id"),r?b.set("filter",r):b.delete("filter"),typeof l=="boolean"?b.set("bbox",l?"1":"0"):b.delete("bbox"),s.search=decodeURI(b.toString()),window.history.pushState({},"",s)}const or={class:"flex items-center justify-between w-full gap-x-1"},nr={class:"flex items-center"},rr=["disabled"],ar={class:"flex items-center gap-x-1"},ir=["onClick"],sr=["disabled"],cr={class:"flex justify-center items-center gap-x-5 ml-3"},dr={class:"relative"},mr={class:"hs-dropdown-menu z-50 bg-white shadow-md rounded-lg p-1 space-y-0.5 dark:bg-neutral-800 dark:border dark:border-neutral-700 right-0 dark:divide-neutral-700 absolute bottom-[100%]",role:"menu","aria-orientation":"vertical","aria-labelledby":"dropdown-button"},pr=["onClick"],ur={key:0,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-check text-blue-600",width:"14",height:"14"},tt=e.defineComponent({__name:"pagination",props:{total:{},currentPage:{},pageSize:{}},emits:["update:currentPage","update:pageSize","pageChange","pageSizeChange"],setup(t,{emit:a}){const o=t,r=a,l=e.ref(o.currentPage),s=e.ref(o.pageSize),b=e.ref(!1);e.watch(()=>o.pageSize,V=>{s.value=V});const n=e.computed(()=>Math.ceil(o.total/o.pageSize)),p=e.computed(()=>{const m=Math.floor(3.5);let C=l.value-m,N=l.value+m;C<1&&(N+=1-C,C=1),N>n.value&&(C-=N-n.value,N=n.value),C=Math.max(1,C);const c=[];for(let d=C;d<=N;d+=1)c.push(d);return c}),y=()=>{l.value>1&&f(l.value-1)},u=()=>{l.value<n.value&&f(l.value+1)},f=V=>{l.value=V,r("update:currentPage",V),r("pageChange",V)},x=(V=s.value)=>{s.value=V,b.value=!1,r("update:pageSize",s.value),r("update:currentPage",1),r("pageSizeChange",s.value)};return e.watch(()=>o.currentPage,V=>{l.value=V}),(V,m)=>(e.openBlock(),e.createElementBlock("nav",or,[e.createElementVNode("div",nr,[e.createElementVNode("button",{type:"button","aria-label":"Previous",onClick:y,disabled:l.value===1,class:"border-white last:rounded-e-lg text-base h-[38px] min-w-[38px] py-2 px-2.5 inline-flex justify-center items-center gap-x-2 border text-sm rounded-lg bg-white text-gray-800 hover:shadow-sm hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-50 dark:bg-neutral-700 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-800 py-2"},[...m[1]||(m[1]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down rotate-90",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1),e.createElementVNode("span",{"aria-hidden":"true",class:"sr-only"},"Previous",-1)])],8,rr),e.createElementVNode("div",ar,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,C=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:C,onClick:N=>f(C),class:e.normalizeClass(l.value===C?"flex justify-center items-center rounded-lg text-sm dark:text-neutral-300 py-2 px-3 focus:outline-none disabled:opacity-50 disabled:pointer-events-none bg-[#e5e7eb] dark:bg-[#242424] border border-gray-200 text-base h-[38px] min-w-[38px]":"flex justify-center items-center rounded-lg text-sm dark:text-neutral-400 hover:bg-gray-100 py-2 px-3 focus:outline-none focus:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:hover:bg-neutral-800 dark:focus:bg-neutral-800 text-base h-[38px] min-w-[38px]")},e.toDisplayString(C),11,ir))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:u,disabled:l.value===n.value,class:"border-white last:rounded-e-lg text-base h-[38px] min-w-[38px] py-2 px-2.5 inline-flex justify-center items-center gap-x-2 border text-sm rounded-lg bg-white text-gray-800 hover:shadow-sm hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-50 dark:bg-neutral-700 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-800 py-2"},[...m[2]||(m[2]=[e.createElementVNode("span",{"aria-hidden":"true",class:"sr-only"},"Next",-1),e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down -rotate-90",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1)])],8,sr)]),e.createElementVNode("div",cr,[e.createElementVNode("div",dr,[e.withDirectives(e.createElementVNode("div",mr,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30],C=>e.createElementVNode("button",{type:"button",key:C,onClick:N=>x(C),class:"w-full flex items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm text-gray-800 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 dark:text-neutral-400 dark:hover:bg-neutral-700 dark:hover:text-neutral-300 dark:focus:bg-neutral-700"},[e.createTextVNode(e.toDisplayString(C)+" ",1),s.value===C?(e.openBlock(),e.createElementBlock("svg",ur,[...m[3]||(m[3]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M5 12l5 5l10 -10"},null,-1)])])):e.createCommentVNode("",!0)],8,pr)),64))],512),[[e.vShow,b.value]]),e.createElementVNode("button",{type:"button",class:"py-3 px-3.5 inline-flex items-center gap-x-1 text-sm rounded-lg border border-gray-200 text-gray-800 shadow-sm hover:bg-gray-50 focus:outline-none focus:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700 text-base h-[38px] min-w-[38px]","aria-haspopup":"menu","aria-expanded":"false","aria-label":"Dropdown",onClick:m[0]||(m[0]=C=>b.value=!b.value)},[e.createTextVNode(e.toDisplayString(s.value)+" ",1),m[4]||(m[4]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1))])])])]))}}),se=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o},fr={},gr={class:"w-48 mx-auto mb-4",width:"178",height:"90",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function hr(t,a){return e.openBlock(),e.createElementBlock("svg",gr,[...a[0]||(a[0]=[e.createStaticVNode('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-stone-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-stone-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-stone-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-stone-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-stone-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-stone-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-stone-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-stone-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter2)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-stone-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-stone-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-stone-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-stone-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter2" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>',12)])])}const lt=se(fr,[["render",hr]]),yr={},xr={xmlns:"http://www.w3.org/2000/svg",width:"21",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-layout-sidebar-right-collapse"};function br(t,a){return e.openBlock(),e.createElementBlock("svg",xr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"},null,-1),e.createElementVNode("path",{d:"M15 4v16"},null,-1),e.createElementVNode("path",{d:"M9 10l2 2l-2 2"},null,-1)])])}const kr=se(yr,[["render",br]]),wr={},Cr={xmlns:"http://www.w3.org/2000/svg",width:"21",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-layout-sidebar-right-expand"};function Vr(t,a){return e.openBlock(),e.createElementBlock("svg",Cr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"},null,-1),e.createElementVNode("path",{d:"M15 4v16"},null,-1),e.createElementVNode("path",{d:"M10 10l-2 2l2 2"},null,-1)])])}const Br=se(wr,[["render",Vr]]),Er={},Nr={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-map"};function Sr(t,a){return e.openBlock(),e.createElementBlock("svg",Nr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M3 7l6 -3l6 3l6 -3v13l-6 3l-6 -3l-6 3v-13"},null,-1),e.createElementVNode("path",{d:"M9 4v13"},null,-1),e.createElementVNode("path",{d:"M15 7v13"},null,-1)])])}const _r=se(Er,[["render",Sr]]),Mr={},Dr={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-table"};function zr(t,a){return e.openBlock(),e.createElementBlock("svg",Dr,[...a[0]||(a[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14z"},null,-1),e.createElementVNode("path",{d:"M3 10h18"},null,-1),e.createElementVNode("path",{d:"M10 3v18"},null,-1)])])}const Lr=se(Mr,[["render",zr]]);function wt(t,a){let o;return function(...r){clearTimeout(o),o=setTimeout(()=>t(...r),a)}}const Pr={class:"fixed inset-0 z-50 pointer-events-none"},$r={class:"text-base font-semibold text-gray-900"},Fr={class:"px-4 pb-3 min-h-0 shrink-0 overflow-hidden"},Ar={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},jr={class:"text-base font-semibold text-gray-900"},Rr={class:"flex-1 min-h-0 overflow-auto p-4"},Zr=152,Ct=96,Tr=270,Vt=96,Ve=se(e.defineComponent({__name:"MobileModalShell",props:{open:{type:Boolean},title:{},topOffset:{},initialVariant:{},peekMode:{}},emits:["close","expand","collapse"],setup(t,{expose:a,emit:o}){const r=t,l=o,s=e.ref("full"),b=e.computed(()=>r.topOffset??"0px"),n=e.computed(()=>r.peekMode??"custom"),p=e.ref(!1),y=e.ref(0);let u=null,f=0,x=0;function V(_,i,E){return Math.max(_,Math.min(E,i))}function m(_){if(!_)return 0;const i=Number.parseFloat(_);return Number.isFinite(i)?i:0}function C(){if(typeof window>"u")return 0;const _=m(b.value);return Math.max(0,window.innerHeight-_)}function N(){const _=n.value==="custom",i=_?Zr:Tr,E=_?Ct:Vt,g=_?40:60;if(typeof window>"u")return Math.max(E,i);const D=window.innerHeight*(g/100);return V(E,i,D)}function c(){return n.value==="custom"?Ct:Vt}function d(_){const i=C(),E=N(),g=c(),D=s.value==="full"?i:E;return i<=0?Math.max(g,D):V(g,D-_,i)}const M=e.computed(()=>({height:`${d(y.value)}px`}));e.watch(()=>r.open,_=>{_&&(s.value=r.initialVariant??"full"),p.value=!1,y.value=0}),e.watch(()=>r.initialVariant,_=>{r.open&&_&&(s.value=_)});function A(){s.value!=="full"&&(s.value="full",l("expand")),p.value||(y.value=0)}function $(){s.value!=="peek"&&(s.value="peek",l("collapse")),p.value||(y.value=0)}function k(_){if(_.pointerId!==u)return;_.cancelable&&_.preventDefault();const i=_.clientY-f;y.value=x+i}function w(_){if(_.pointerId!==u)return;window.removeEventListener("pointermove",k),window.removeEventListener("pointerup",w),window.removeEventListener("pointercancel",w),u=null;const i=_.clientY-f,E=x+i;y.value=E;const g=d(E),j=(typeof window<"u"?window.innerHeight:0)*.6,I=j>0&&g>=j,P=j>0&&!I;if(!(s.value==="peek"&&I||s.value==="full"&&P)){p.value=!0;return}p.value=!1,y.value=0,s.value==="peek"&&I?A():s.value==="full"&&P&&$()}function L(_){var i,E;_.button!==0&&_.pointerType==="mouse"||(_.cancelable&&_.preventDefault(),u=_.pointerId,f=_.clientY,x=y.value,p.value=!0,(E=(i=_.currentTarget).setPointerCapture)==null||E.call(i,_.pointerId),window.addEventListener("pointermove",k,{passive:!1}),window.addEventListener("pointerup",w),window.addEventListener("pointercancel",w))}return e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",k),window.removeEventListener("pointerup",w),window.removeEventListener("pointercancel",w)}),a({expand:A,collapseToPeek:$}),(_,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",Pr,[e.createElementVNode("div",{class:e.normalizeClass(["absolute inset-0 bg-black/40 transition-opacity duration-150",s.value==="peek"?"opacity-0 pointer-events-none":"opacity-100 pointer-events-auto"]),onClick:i[0]||(i[0]=e.withModifiers(E=>s.value!=="peek"&&l("close"),["self"]))},null,2),e.createElementVNode("div",{class:e.normalizeClass(["pointer-events-auto absolute left-0 right-0 bottom-0 flex flex-col overflow-hidden bg-white shadow-[0_-4px_24px_rgba(0,0,0,0.12)] vs-mobile-modal-shell__panel",[s.value==="peek"?"rounded-t-2xl":"",p.value?"vs-mobile-modal-shell__panel--dragging":""]]),style:e.normalizeStyle(M.value)},[e.createElementVNode("div",{class:"shrink-0 flex flex-col items-center pt-2 pb-1 cursor-grab active:cursor-grabbing touch-none select-none",onPointerdown:L},[...i[5]||(i[5]=[e.createElementVNode("div",{class:"h-1.5 w-10 rounded-full bg-stone-300","aria-hidden":"true"},null,-1)])],32),s.value==="peek"&&n.value==="custom"?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center justify-between gap-4 px-4 pb-3 border-b border-gray-200 shrink-0 touch-none select-none cursor-grab active:cursor-grabbing",onPointerdown:L},[e.createElementVNode("div",$r,e.toDisplayString(t.title),1),e.createElementVNode("button",{type:"button",class:"h-9 w-9 inline-flex items-center justify-center rounded-full border border-gray-200 text-gray-600 hover:bg-gray-50 relative z-[80]",onPointerdown:i[1]||(i[1]=e.withModifiers(()=>{},["stop"])),onClick:i[2]||(i[2]=E=>l("close")),"aria-label":"Close"},[...i[6]||(i[6]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])],32)],32)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",Fr,[e.renderSlot(_.$slots,"peek",{expand:A,collapse:$},()=>[e.createElementVNode("button",{type:"button",class:"w-full text-left text-base font-semibold text-gray-900 py-2 rounded-lg hover:bg-stone-50",onClick:A},e.toDisplayString(t.title),1)],!0)],512),[[e.vShow,s.value==="peek"&&n.value==="custom"]]),e.withDirectives(e.createElementVNode("div",Ar,[e.createElementVNode("div",{class:"flex items-center justify-between gap-4 px-4 pb-3 border-b border-gray-200 shrink-0 touch-none select-none cursor-grab active:cursor-grabbing",onPointerdown:L},[e.createElementVNode("div",jr,e.toDisplayString(t.title),1),e.createElementVNode("button",{type:"button",class:"h-9 w-9 inline-flex items-center justify-center rounded-full border border-gray-200 text-gray-600 hover:bg-gray-50 relative z-[80]",onPointerdown:i[3]||(i[3]=e.withModifiers(()=>{},["stop"])),onClick:i[4]||(i[4]=E=>l("close")),"aria-label":"Close"},[...i[7]||(i[7]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])],32)],32),e.createElementVNode("div",Rr,[e.renderSlot(_.$slots,"default",{},void 0,!0)])],512),[[e.vShow,s.value==="full"||s.value==="peek"&&n.value==="clip-full"]])],6)],512)),[[e.vShow,t.open]])}}),[["__scopeId","data-v-80e656ca"]]),Or={class:"flex flex-col gap-2 pointer-events-auto self-end","data-peek-controls":"1"},Ir=e.defineComponent({__name:"MapMobilePeekControlButtons",props:{onOpenLayers:{type:Function},onOpenLegend:{type:Function}},setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",Or,[e.createElementVNode("button",{type:"button",class:"h-[28px] w-[28px] inline-flex items-center justify-center rounded-lg border border-gray-200 bg-white text-gray-800 shadow-md p-0 hover:bg-gray-50 cursor-pointer","aria-label":"Layers",onClick:o[0]||(o[0]=r=>t.onOpenLayers())},[...o[2]||(o[2]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},[e.createElementVNode("path",{d:"M12 2 2 7l10 5 10-5-10-5Z"}),e.createElementVNode("path",{d:"M2 17l10 5 10-5"}),e.createElementVNode("path",{d:"M2 12l10 5 10-5"})],-1)])]),e.createElementVNode("button",{type:"button",class:"h-[28px] w-[28px] inline-flex items-center justify-center rounded-lg border border-gray-200 bg-white text-gray-800 shadow-md p-0 hover:bg-gray-50 cursor-pointer","aria-label":"Legend",onClick:o[1]||(o[1]=r=>t.onOpenLegend())},[...o[3]||(o[3]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 6h13"></path><path d="M8 12h13"></path><path d="M8 18h13"></path><path d="M3 6h.01"></path><path d="M3 12h.01"></path><path d="M3 18h.01"></path></svg>',1)])])]))}}),Ur=["interpolate",["linear"],["zoom"],10,5,15,12],ot=["interpolate",["linear"],["zoom"],10,11,12,12];function Bt(t,a,o=12,r=12){const l=a??"";return`${window.location.origin}/api/vtile/${t}/ua/{z}/{x}/{y}.vmt?pointZoom=${r}&clusterZoom=${o}&filter=${l}`}function vr(t,a,o,r,l,s=12,b=12,n={}){if(!a)return;const{mixedGeom:p=!1,circleRadius:y=Ur,circleStrokeWidth:u=1,geometryZoomBreakpoint:f,polygonZoom:x}=n,V=f??x??s,m=V-.01,C=V,N=Bt(t,l,s,b);a.addSource("vector",{type:"vector",tiles:[N],minzoom:0,maxzoom:22});const c=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],d=[">",c,1],M=["<=",c,1],A=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],$=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],k=["coalesce",["get","point_count_abbreviated"],["get","cluster_count_abbreviated"],["get","clusterCountAbbreviated"],c];a.addLayer({id:"vector-clusters",type:"circle",source:"vector","source-layer":t,filter:d,maxzoom:12,paint:{"circle-color":["step",c,"#51bbd6",100,"#f1f075",750,"#f28cb1"],"circle-radius":["step",c,18,100,26,750,32],"circle-opacity":.85}}),a.addLayer({id:"vector-cluster-count",type:"symbol",source:"vector","source-layer":t,filter:d,maxzoom:12,layout:{"text-field":["to-string",k],"text-font":["Noto Sans Regular"],"text-size":12},paint:{"text-color":"#1f2937"}});const w={id:"vector-circle",type:"circle",source:"vector","source-layer":t,filter:["all",M,A],paint:{"circle-color":o,"circle-stroke-color":r||"#eee","circle-stroke-width":u,"circle-radius":y}};p||(w.maxzoom=m),a.addLayer(w),a.addLayer({id:"vector-fill",type:"fill",minzoom:C,source:"vector","source-layer":t,filter:$,paint:{"fill-color":o,"fill-opacity":.6}}),a.addLayer({id:"vector-stroke",type:"line",minzoom:C,source:"vector","source-layer":t,filter:$,paint:{"line-color":r||o,"line-width":4,"line-opacity":1,"line-dasharray":[2,2]}})}const Kr=[{id:"voyager",name:"Базова карта (voyager)",url:"https://data.gki.com.ua/api-user/rtile/voyager/ua/{z}/{x}/{y}.png",preview:"https://data.gki.com.ua/api-user/rtile/voyager/ua/12/2422/1400.png"},{id:"orto",name:"Ортофото 10К",url:"https://data.gki.com.ua/api-user/rtile/orto10/ua/{z}/{x}/{y}.png",preview:"https://data.gki.com.ua/api-user/rtile/orto10/ua/12/2422/1400.png"},{id:"esri",name:"Esri",url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",preview:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/12/2422/1400.png"},{id:"google",name:"Google",url:"https://mt1.google.com/vt/lyrs=s&x={x}&y={y}&z={z}",preview:"https://mt1.google.com/vt/lyrs=s&x=2422&y=1400&z=12"}],Hr={class:"relative w-auto h-full"},Gr={key:0,class:"text-[0.875rem] font-medium text-stone-700"},Wr={key:1,class:"legend-panel__toggle ml-auto shrink-0 p-1.5 rounded-full hover:bg-stone-100 text-stone-600","aria-hidden":"true"},qr={key:0,xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},Yr={key:1,xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},Qr={key:0,class:"mb-2"},Xr={class:"flex justify-start items-center gap-2"},Jr={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},ea={class:"text-[0.875rem]"},ta={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},la={class:"flex justify-start items-center gap-2"},oa={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},na={class:"text-[0.875rem]"},ra={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},aa={key:1,class:"p-[10px]"},ia={key:0,class:"mb-2"},sa={class:"flex justify-start items-center gap-2"},ca={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},da={class:"text-[0.875rem]"},ma={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},pa={class:"flex justify-start items-center gap-2"},ua={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},fa={class:"text-[0.875rem]"},ga={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},ha={key:0,class:"vs-map-slot-layers z-10 select-none",style:{display:"flex"}},ya=["title","onClick"],xa=["src"],ba={class:"absolute py-2 px-4 text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg top-[-46px] hidden whitespace-nowrap left-1/2 -translate-x-1/2"},ka={class:"vs-mobile-peek-controls px-3 pb-3"},wa={class:"vs-map-slot-layers--peek z-10 select-none",style:{position:"static",display:"grid !important","grid-template-columns":"repeat(3, minmax(0, 1fr))",gap:"12px",width:"100%"}},Ca=["title","onClick"],Va=["src"],Ba={class:"absolute py-2 px-4 text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg top-[-46px] hidden whitespace-nowrap left-1/2 -translate-x-1/2"},Ea={class:"vs-mobile-peek-controls flex justify-center w-full"},Na={class:"w-full"},Sa={class:"legend-panel__header flex items-center justify-between gap-2 py-[7px] pl-[10px] pr-[7px] pb-[12px]"},_a={class:"text-[0.875rem] font-medium text-stone-700"},Ma={class:"legend-panel__content overflow-hidden transition-all duration-200 ease-out"},Da={class:"p-[10px] pt-0"},za={class:"flex justify-start items-center gap-2"},La={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Pa={class:"text-[0.875rem]"},$a={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Be="vector-clusters",Ee="selected-geometry-source",Oe="selected-geometry-fill",Ie="selected-geometry-line",$e="selected-geometry-point",ce="vector-highlight-circle",fe="vector-highlight-fill",Et=e.defineComponent({__name:"map",props:{table:{},center:{},colorAttr:{},strokeAttr:{},filter:{},modelValue:{},selectedFeature:{},zoom:{},minZoom:{},maxZoom:{},map:{},showPopup:{type:Boolean,default:!0},mobilePeekControls:{type:Boolean},layers:{},clusterZoom:{},pointZoom:{},polygonZoom:{},geometryZoomBreakpoint:{},mixedGeom:{type:Boolean,default:!1},circleRadius:{},circleStrokeWidth:{},highlightCircleRadius:{},highlightCircleColor:{},isCollapsible:{type:Boolean},legendTitle:{},legendWidth:{},alwaysShowPolygon:{type:Boolean}},emits:["update:modelValue","update:map"],setup(t,{emit:a}){const o=t,r=a;let l,s=null;const b=e.getCurrentInstance(),n=e.ref(null),p=e.ref(!1),y=e.ref(!1),u=e.ref(!1),f=e.ref(!1);let x=null,V=null;const m=["vector-circle","vector-fill","vector-stroke"],C=e.ref(!1);function N(){y.value=!y.value}const c=e.computed(()=>{var B,F;return((F=(B=b==null?void 0:b.appContext.config.globalProperties)==null?void 0:B.$settings)==null?void 0:F.basemaps)||[]}),d=e.computed(()=>(o.layers&&o.layers.length?o.layers:c.value.length?c.value:Kr).map((F,T)=>{var X;const z=F.id||((X=F.name)==null?void 0:X.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${T}`,v=F.name||F.id||`layer-${T}`;return{...F,id:z,name:v}})),M=e.ref(""),A=e.computed(()=>d.value.find(B=>B.id===M.value)||d.value[0]);e.watch(d,B=>{var F;B.length&&(!M.value||!B.some(T=>T.id===M.value))&&(M.value=((F=B[0])==null?void 0:F.id)||"")},{immediate:!0});function $(B){return B?B.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const k=e.ref(null),w=e.ref(null),L=e.computed(()=>o.showPopup!==!1),_=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"],i=["#0a7a34","#7c3aed","#d97706","#dc2626"];let E,g=[];const D=[30,48];let j=null;const I=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],P=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]];let Z=[];function H(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const B=new URLSearchParams(window.location.search),F=Number(B.get("z")),T=Number(B.get("y")),z=Number(B.get("x")),v=B.has("x")&&B.has("y"),X=B.has("z");return{zoom:X?F:null,center:v?[z,T]:null,hasQuery:v||X}}function Q(B,F){if(!B||typeof window>"u")return;const T=new URL(window.location.href);T.searchParams.set("z",F.toFixed(2)),T.searchParams.set("x",B[0].toFixed(6)),T.searchParams.set("y",B[1].toFixed(6)),window.history.replaceState({},"",T)}let G=!1;function Ne(){if(!l||!G)return;const B=l.getCenter();Q([B.lng,B.lat],l.getZoom())}const ye=()=>{G||(G=!0),Ne()};function oe(){const B=o.geometryZoomBreakpoint;if(B==null)return null;const F=Number(B);return Number.isNaN(F)?null:F}function le(){const B=oe();return B??(typeof o.polygonZoom=="number"?o.polygonZoom:typeof o.clusterZoom=="number"?o.clusterZoom:12)}function Fe(){return o.pointZoom??12}function de(B){var F;return!B||typeof B!="object"?null:B.type==="FeatureCollection"?de((F=B.features)==null?void 0:F[0]):B.type==="Feature"?de(B.geometry):B.type&&B.coordinates?B:null}function Ae(){var B;return de((B=o.selectedFeature)==null?void 0:B.geom)}function xe(B){return B==null||B===""?["==",["literal",1],0]:["==",["to-string",["get","id"]],String(B)]}function Se(){return o.highlightCircleColor??"#ffffff"}function ve(){var F,T;const B=Ae();return B?{mode:"geometry",geometry:B}:((F=o.selectedFeature)==null?void 0:F.id)!=null&&((T=o.selectedFeature)==null?void 0:T.id)!==""?{mode:"id",geometry:null}:{mode:"none",geometry:null}}function rt(){[Oe,Ie,$e,ce,fe].forEach(B=>{l!=null&&l.getLayer(B)&&l.removeLayer(B)}),l!=null&&l.getSource(Ee)&&l.removeSource(Ee)}function te(B){return{id:B.id,type:B.type,source:B.source,...B.sourceLayer?{"source-layer":B.sourceLayer}:{},...B.filter?{filter:B.filter}:{},...B.minzoom!=null?{minzoom:B.minzoom}:{},...B.maxzoom!=null?{maxzoom:B.maxzoom}:{},paint:B.paint}}function Ke(){const B=Se(),F=o.highlightCircleRadius??o.circleRadius??ot;return[te({id:Oe,type:"fill",source:Ee,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],paint:{"fill-color":B,"fill-opacity":.12,"fill-opacity-transition":{duration:800,delay:0}}}),te({id:Ie,type:"line",source:Ee,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon","LineString","MultiLineString"]]],paint:{"line-color":B,"line-width":4,"line-opacity":.95,"line-opacity-transition":{duration:800,delay:0}}}),te({id:$e,type:"circle",source:Ee,filter:["in",["geometry-type"],["literal",["Point","MultiPoint"]]],paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":B,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":F,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}})]}function He(){var v,X;const B=Se(),F=o.highlightCircleRadius??o.circleRadius??ot,T=le(),z=T!=null?T-.01:24;return[te({id:ce,type:"circle",source:"vector",sourceLayer:o.table,filter:["all",xe((v=o.selectedFeature)==null?void 0:v.id),I],maxzoom:o.mixedGeom?void 0:z,paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":B,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":F,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}}),te({id:fe,type:"line",source:"vector",sourceLayer:o.table,filter:["all",xe((X=o.selectedFeature)==null?void 0:X.id),P],minzoom:T??24,paint:{"line-color":B,"line-width":4,"line-opacity":.9,"line-opacity-transition":{duration:800,delay:0}}})]}function ge(){var z,v;if(!l)return"none";const{mode:B,geometry:F}=ve(),T=B==="geometry"?Ke():B==="id"?He():[];return rt(),B==="geometry"&&l.addSource(Ee,{type:"geojson",data:{type:"FeatureCollection",features:[{type:"Feature",id:(z=o.selectedFeature)==null?void 0:z.id,properties:{id:(v=o.selectedFeature)==null?void 0:v.id},geometry:F}]}}),T.forEach(X=>l.addLayer(X)),B}function _e(){!l||!Z.length||(l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-color",Z),l.getLayer("vector-fill")&&l.setPaintProperty("vector-fill","fill-color",Z))}function Me(){l&&(o.circleRadius!==void 0&&l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-radius",o.circleRadius),o.circleStrokeWidth!==void 0&&l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-stroke-width",o.circleStrokeWidth),ge())}function De(B){if(ze(),!l||B==="none")return;let F=!0;const T=o.highlightCircleRadius??o.circleRadius??ot;j=window.setInterval(()=>{F=!F;const z=F?.95:.35,v=F?T:T*1.12;B==="geometry"&&(l!=null&&l.getLayer(Oe)&&l.setPaintProperty(Oe,"fill-opacity",F?.14:.04),l!=null&&l.getLayer(Ie)&&l.setPaintProperty(Ie,"line-opacity",z),l!=null&&l.getLayer($e)&&(l.setPaintProperty($e,"circle-stroke-opacity",z),l.setPaintProperty($e,"circle-radius",v))),B==="id"&&(l!=null&&l.getLayer(ce)&&(l.setPaintProperty(ce,"circle-stroke-opacity",z),l.setPaintProperty(ce,"circle-radius",v)),l!=null&&l.getLayer(fe)&&l.setPaintProperty(fe,"line-opacity",z))},800)}function ze(){j&&(clearInterval(j),j=null)}function Ge(){l&&(l.setCenter(o.center||D),l.setZoom(o.zoom||5))}function ie(){if(!(l!=null&&l.setLayerZoomRange))return;const B=o.minZoom??0,F=Math.min((o.maxZoom??18)+.01,24),z=(o.clusterZoom??12)-.01,v=le(),X=v-.01,be=C.value&&!o.mixedGeom?X:F,ke=v;o.alwaysShowPolygon?(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",B,0),l.getLayer(ce)&&l.setLayerZoomRange(ce,B,0),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",B,F),l.getLayer(fe)&&l.setLayerZoomRange(fe,B,F),l.getLayer(Be)&&l.setLayerZoomRange(Be,B,0),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",B,0)):(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",B,be),l.getLayer(ce)&&l.setLayerZoomRange(ce,B,be),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",ke,F),l.getLayer("vector-stroke")&&l.setLayerZoomRange("vector-stroke",ke,F),l.getLayer(fe)&&l.setLayerZoomRange(fe,ke,F),l.getLayer(Be)&&l.setLayerZoomRange(Be,B,z),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",B,z))}function Le(){if(l!=null&&l.getSource("vector")){try{const F=l.querySourceFeatures("vector",{sourceLayer:o.table}).some(T=>{var v;const z=(v=T.geometry)==null?void 0:v.type;return z==="Polygon"||z==="MultiPolygon"});C.value=F}catch{}ie()}}const Pe=H();G=Pe.hasQuery,e.onMounted(async()=>{E=(await fetch(`/api/data/${o.table}/${o.colorAttr}`).then(W=>W.json())).rows,E.forEach((W,K)=>{if(W.id==null||W.id===""){W.color="#808080";return}W.color||Object.assign(W,{color:_[K%10]})});const F=o.strokeAttr;if(g=[],F){g=(await fetch(`/api/data/${o.table}/${F}`).then(U=>U.json())).rows||[];let K=0;g.forEach((U,h)=>{U.color||!U.id||(Object.assign(U,{color:i[K%i.length]}),K+=1)})}s=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const T=A.value;if(!T)return;const z=Pe.center||o.center||D,v=Pe.zoom||o.zoom||5;l=new maplibregl.Map({container:n.value,style:{version:8,sources:{[T.id]:{type:"raster",tiles:[T.url],tileSize:256},...T.overlayUrl?{[`${T.id}-overlay`]:{type:"raster",tiles:[T.overlayUrl],tileSize:256}}:{}},layers:[{id:T.id,type:"raster",source:T.id,minzoom:0,maxzoom:19},...T.overlayUrl?[{id:`${T.id}-overlay`,type:"raster",source:`${T.id}-overlay`,minzoom:0,maxzoom:19}]:[]]},center:z,zoom:v,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),r("update:map",l);const X=o.mobilePeekControls?"bottom-right":"top-right";if(l.addControl(new maplibregl.NavigationControl,X),o.mobilePeekControls){const W={onAdd:()=>{const K=document.createElement("div");return x=K,V=e.createApp(Ir,{onOpenLayers:()=>{u.value=!0},onOpenLegend:()=>{f.value=!0}}),V.mount(K),K},onRemove:()=>{V==null||V.unmount(),V=null,x=null}};l.addControl(W,"bottom-right"),l.once("render",()=>{if(!x)return;const K=l.getContainer(),U=K.querySelector(".maplibregl-ctrl-bottom-right"),h=K.querySelector(".maplibregl-ctrl-zoom-in"),S=h==null?void 0:h.closest(".maplibregl-ctrl-group");!U||!S||x.parentElement===U&&(U.removeChild(x),U.insertBefore(x,S.nextSibling))})}l.on("moveend",ye),l.on("zoomend",ye),G&&Ne(),l.on("load",()=>{l==null||l.resize(),p.value=!0;const W=E.filter(O=>O.id!=null&&O.id!=="").reduce((O,R)=>[String(R.id),R.color].concat(O),[]),K=["match",["to-string",["get",o.colorAttr]],...W,"#808080"],U=(g||[]).filter(O=>O.id!=null&&O.id!=="").reduce((O,R)=>[String(R.id),R.color].concat(O),[]),h=F?["match",["to-string",["get",F]],...U,"rgba(0,0,0,0)"]:"rgba(0,0,0,0)";Z=K;const S=oe();vr(o.table,l,K,h,o.filter,o.clusterZoom,Fe(),{mixedGeom:o.mixedGeom,circleRadius:o.circleRadius,circleStrokeWidth:o.circleStrokeWidth,geometryZoomBreakpoint:S??void 0,polygonZoom:S==null?o.polygonZoom:void 0}),De(ge()),_e(),Me(),ie(),l.on("sourcedata",O=>{O.sourceId==="vector"&&O.isSourceLoaded&&le()!=null&&Le()})});const be=W=>{var U,h;const K=(U=W.features)==null?void 0:U[0];(h=K==null?void 0:K.properties)!=null&&h.id&&r("update:modelValue",K.properties.id)};m.forEach(W=>{l.on("click",W,be)}),l.on("click",Be,W=>{var O,R,q;const K=(O=W.features)==null?void 0:O[0];if(!K)return;const{geometry:U}=K,h=(U==null?void 0:U.type)==="Point"?U.coordinates:(q=(R=U==null?void 0:U.coordinates)==null?void 0:R[0])==null?void 0:q[0];if(!h)return;const S=Math.min(l.getZoom()+2,l.getMaxZoom());l.easeTo({center:h,zoom:S})}),[...m,Be].forEach(W=>{l.on("mouseenter",W,()=>{l.getCanvas().style.cursor="pointer"}),l.on("mouseleave",W,()=>{l.getCanvas().style.cursor=""})}),l.on("mousemove",W=>{var O,R;if(!L.value){(O=s==null?void 0:s.remove)==null||O.call(s);return}if(!s)return;const K=l.queryRenderedFeatures(W.point,{layers:m});if(!K||!K.length){s.remove();return}const U=K[0],{coordinates:h}=U.geometry,S=U.geometry.type==="Point"?h:h[0][0];w.value=U.properties,s.setLngLat(S).setHTML((R=k.value)==null?void 0:R.innerHTML).addTo(l)})}),e.watch(()=>o.center,B=>{l&&l.setCenter(B||D)}),e.watch(()=>o.zoom,B=>{l&&l.setZoom(B)}),e.watch(()=>o.minZoom,B=>{l&&(l.setMinZoom(B??3),ie())}),e.watch(()=>o.maxZoom,B=>{l&&(l.setMaxZoom(B??18),ie())});function me(B,F,T){if(!(l!=null&&l.getSource("vector")))return;const z=Bt(o.table,B??o.filter,F??o.clusterZoom??12,Fe());l.getSource("vector").setTiles([z])}return e.watch(()=>o.filter,B=>{me(B)}),e.watch(()=>o.clusterZoom,B=>{me(void 0,B),ie()}),e.watch(()=>o.pointZoom,()=>{me()}),e.watch(()=>o.geometryZoomBreakpoint,()=>{me(),ie()}),e.watch(()=>o.alwaysShowPolygon,()=>{ie(),me()}),e.watch(()=>o.polygonZoom,()=>{Le()}),e.watch(()=>o.mixedGeom,()=>{ie()}),e.watch(()=>[o.circleRadius,o.circleStrokeWidth,o.highlightCircleRadius,o.highlightCircleColor],()=>{Me()}),e.watch(()=>{var B,F;return[(B=o.selectedFeature)==null?void 0:B.id,(F=o.selectedFeature)==null?void 0:F.geom]},()=>{l&&De(ge())},{immediate:!0,deep:!0}),e.watch(M,(B,F)=>{if(!l||!B)return;const T=d.value.find(X=>X.id===B);if(!T)return;l.getLayer(F)&&l.removeLayer(F),l.getSource(F)&&l.removeSource(F);const z=`${F}-overlay`;l.getLayer(z)&&l.removeLayer(z),l.getSource(z)&&l.removeSource(z),l.addSource(B,{type:"raster",tiles:[T.url],tileSize:256}),T.overlayUrl&&l.addSource(`${B}-overlay`,{type:"raster",tiles:[T.overlayUrl],tileSize:256});const v=l.getLayer("vector-clusters")?"vector-clusters":l.getLayer("vector-circle")?"vector-circle":void 0;l.addLayer({id:T.id,type:"raster",source:T.id,minzoom:0,maxzoom:19},v),T.overlayUrl&&l.addLayer({id:`${B}-overlay`,type:"raster",source:`${B}-overlay`,minzoom:0,maxzoom:19},v)}),e.onBeforeUnmount(()=>{ze(),l&&(l.off("moveend",ye),l.off("zoomend",ye),l.remove())}),(B,F)=>{const T=e.resolveDirective("tooltip");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Hr,[e.createElementVNode("div",{ref_key:"mapContainer",ref:n,class:"map-container w-auto relative"},null,512),e.withDirectives((e.openBlock(),e.createElementBlock("button",{type:"button",class:"absolute top-25 right-2 z-20 h-8 w-8 flex items-center justify-center rounded-lg bg-white border border-gray-200 shadow-[0_8px_20px_rgba(0,0,0,0.08)] text-[18px] leading-none text-gray-700 hover:bg-gray-50",title:"Повернутися до базового вигляду",onClick:Ge},[...F[3]||(F[3]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M3 11L12 3l9 8"}),e.createElementVNode("path",{d:"M5 9v10h4v-6h6v6h4V9"})],-1)])])),[[T,"Повернутися до базового вигляду"]]),e.createElementVNode("div",{class:e.normalizeClass(["absolute left-[20px] bottom-[74px] bg-white rounded-lg z-10 border legend-panel",{"legend-panel--has-header":o.legendTitle||o.isCollapsible}]),style:e.normalizeStyle(o.legendWidth?{width:o.legendWidth}:{maxWidth:"250px"})},[o.legendTitle||o.isCollapsible?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.isCollapsible?"button":"div"),{type:o.isCollapsible?"button":void 0,class:e.normalizeClass(["legend-panel__header flex items-center justify-between gap-2 py-[7px] pl-[10px] pr-[7px]",{"legend-panel__header--interactive":o.isCollapsible}]),"aria-label":o.isCollapsible?y.value?"Згорнути легенду":"Розгорнути легенду":void 0,"aria-expanded":o.isCollapsible?String(y.value):void 0,onClick:F[0]||(F[0]=z=>o.isCollapsible?N():void 0)},{default:e.withCtx(()=>[o.legendTitle?(e.openBlock(),e.createElementBlock("span",Gr,e.toDisplayString(o.legendTitle),1)):e.createCommentVNode("",!0),o.isCollapsible?(e.openBlock(),e.createElementBlock("span",Wr,[y.value?(e.openBlock(),e.createElementBlock("svg",qr,[...F[4]||(F[4]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",Yr,[...F[5]||(F[5]=[e.createElementVNode("path",{d:"m18 15-6-6-6 6"},null,-1)])]))])):e.createCommentVNode("",!0)]),_:1},8,["type","class","aria-label","aria-expanded"])),e.createElementVNode("div",{class:"legend-panel__content overflow-hidden transition-all duration-200 ease-out",style:e.normalizeStyle(o.isCollapsible&&!y.value?{maxHeight:"0",padding:"0",margin:"0",opacity:"0"}:{})},[e.createElementVNode("div",{class:e.normalizeClass(["p-[10px]",y.value&&(e.unref(E)||[]).length?"pt-0":"pt-2"])},[(e.unref(g)||[]).some(z=>z==null?void 0:z.id)?(e.openBlock(),e.createElementBlock("div",Qr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((e.unref(g)||[]).filter(z=>z==null?void 0:z.id),z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${z.id}`},[e.createElementVNode("div",Xr,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:z.color||"#808080"})},null,4),e.createElementVNode("div",Jr,[e.createElementVNode("span",ea,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",ta,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(E)||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",la,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",oa,[e.createElementVNode("span",na,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",ra,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))],2)],4)],64)):(e.openBlock(),e.createElementBlock("div",aa,[(e.unref(g)||[]).some(z=>z==null?void 0:z.id)?(e.openBlock(),e.createElementBlock("div",ia,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((e.unref(g)||[]).filter(z=>z==null?void 0:z.id),z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${z.id}`},[e.createElementVNode("div",sa,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:z.color||"#808080"})},null,4),e.createElementVNode("div",ca,[e.createElementVNode("span",da,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",ma,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(E)||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",pa,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",ua,[e.createElementVNode("span",fa,e.toDisplayString(z.text??"Відсутні дані"),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",ga,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))]))],6),e.createElementVNode("div",{ref_key:"popupDiv",ref:k,style:{display:"none"}},[e.renderSlot(B.$slots,"default",{hoverData:w.value})],512),o.mobilePeekControls?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ha,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,z=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:z.id,title:z.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:M.value===z.id}]),onClick:v=>M.value=z.id},[e.createElementVNode("img",{src:z.preview||$(z.url),class:"vs-map-slot-layers__image"},null,8,xa),e.createElementVNode("div",ba,e.toDisplayString(z.name),1)],10,ya)),[[T,z.name]])),128))])),o.mobilePeekControls?(e.openBlock(),e.createBlock(Ve,{key:1,open:u.value,title:"Шари","initial-variant":"peek","peek-mode":"clip-full","allow-expand":!1,onClose:F[1]||(F[1]=z=>u.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",ka,[e.createElementVNode("div",wa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,z=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:z.id,title:z.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:M.value===z.id}]),onClick:v=>M.value=z.id},[e.createElementVNode("img",{src:z.preview||$(z.url),class:"vs-map-slot-layers__image",style:{width:"100%",height:"100","object-fit":"cover",display:"block"}},null,8,Va),e.createElementVNode("div",Ba,e.toDisplayString(z.name),1)],10,Ca)),[[T,z.name]])),128))])])]),_:1},8,["open"])):e.createCommentVNode("",!0),o.mobilePeekControls?(e.openBlock(),e.createBlock(Ve,{key:2,open:f.value,title:"Легенда","initial-variant":"peek","peek-mode":"clip-full","peek-height-px":200,onClose:F[2]||(F[2]=z=>f.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",Ea,[e.createElementVNode("div",Na,[e.createElementVNode("div",Sa,[e.createElementVNode("span",_a,e.toDisplayString(o.legendTitle||"Легенда"),1)]),e.createElementVNode("div",Ma,[e.createElementVNode("div",Da,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(E)||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",za,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",La,[e.createElementVNode("span",Pa,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",$a,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])])])])]),_:1},8,["open"])):e.createCommentVNode("",!0)],512)),[[e.vShow,p.value]])}}}),Nt={mounted(t,a){if(typeof document>"u")return;let o=null;const r=()=>{o=document.createElement("div"),o.textContent=a.value,Object.assign(o.style,{position:"absolute",background:"#333",color:"#fff",padding:"4px 8px",borderRadius:"4px",fontSize:"12px",whiteSpace:"nowrap",pointerEvents:"none",zIndex:"9999"}),document.body.appendChild(o);const s=t.getBoundingClientRect();o.style.left=`${s.left+window.scrollX}px`,o.style.top=`${s.top+window.scrollY-o.offsetHeight-5}px`},l=()=>{o&&o.parentNode&&(o.parentNode.removeChild(o),o=null)};t.addEventListener("mouseenter",r),t.addEventListener("mouseleave",l),Object.assign(t,{tooltipHandlers:{showTooltip:r,hideTooltip:l}})},unmounted(t){if(typeof document>"u")return;const a=t.tooltipHandlers;a&&(t.removeEventListener("mouseenter",a.showTooltip),t.removeEventListener("mouseleave",a.hideTooltip))}},Fa={},Aa={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-list-filter-icon lucide-list-filter"};function ja(t,a){return e.openBlock(),e.createElementBlock("svg",Aa,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M2 5h20"},null,-1),e.createElementVNode("path",{d:"M6 12h12"},null,-1),e.createElementVNode("path",{d:"M9 19h6"},null,-1)])])}const Ra=se(Fa,[["render",ja]]),Za={},Ta={xmlns:"http://www.w3.org/2000/svg",class:"w-5 h-5 shrink-0",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"};function Oa(t,a){return e.openBlock(),e.createElementBlock("svg",Ta,[...a[0]||(a[0]=[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"},null,-1),e.createElementVNode("path",{d:"m21 21-4.35-4.35"},null,-1)])])}const Ia=se(Za,[["render",Oa]]),Ua={},va={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-table-icon lucide-table"};function Ka(t,a){return e.openBlock(),e.createElementBlock("svg",va,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M12 3v18"},null,-1),e.createElementVNode("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"},null,-1),e.createElementVNode("path",{d:"M3 9h18"},null,-1),e.createElementVNode("path",{d:"M3 15h18"},null,-1)])])}const Ha=se(Ua,[["render",Ka]]),Ga={class:"absolute inset-x-0 top-[12px] z-40 px-[12px] pointer-events-none"},Wa={class:"flex flex-wrap gap-2"},qa=["disabled"],Ya={key:0,class:"pointer-events-none absolute top-1 right-0.5 h-3 w-3 rounded-full bg-blue-400","aria-hidden":"true"},Qa=e.defineComponent({__name:"MobileOverlayActions",props:{activeModal:{},filtersDisabled:{type:Boolean},hasActiveFilters:{type:Boolean}},emits:["openSearch","openFilters","openTable"],setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",Ga,[e.createElementVNode("div",Wa,[e.createElementVNode("button",{type:"button",class:e.normalizeClass(["pointer-events-auto py-2 px-3 h-[44px] inline-flex items-center gap-x-2 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",{"bg-stone-50":t.activeModal==="search"}]),onClick:o[0]||(o[0]=r=>a.$emit("openSearch"))},[e.createVNode(Ia)],2),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["pointer-events-auto relative py-2 px-3 h-[44px] inline-flex items-center gap-x-2 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",{"bg-stone-50":t.activeModal==="filters"}]),disabled:t.filtersDisabled,onClick:o[1]||(o[1]=r=>a.$emit("openFilters"))},[e.createVNode(Ra,{"stroke-width":1,class:"text-gray-900"}),o[3]||(o[3]=e.createElementVNode("span",{class:"font-medium"},"Фільтри",-1)),t.hasActiveFilters&&!t.filtersDisabled?(e.openBlock(),e.createElementBlock("span",Ya)):e.createCommentVNode("",!0)],10,qa),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["pointer-events-auto py-2 px-3 h-[44px] inline-flex items-center gap-x-2 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",{"bg-stone-50":t.activeModal==="table"}]),onClick:o[2]||(o[2]=r=>a.$emit("openTable"))},[e.createVNode(Ha,{"stroke-width":1,class:"text-gray-900"}),o[4]||(o[4]=e.createElementVNode("span",{class:"font-medium"},"Таблиця",-1))],2)])]))}}),Xa={key:0,class:"relative w-full h-full vs-mobile-parts-map"},Ja={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},ei={class:"flex flex-col min-h-0 gap-4"},ti={class:"flex flex-col min-h-0 flex-1"},li={key:1,class:"wrapperTable flex flex-col min-h-0"},oi={key:1,class:"text-center py-8"},ni={key:2,class:"mt-4 pt-4 border-t border-stone-200 shrink-0"},ri={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},ai={id:"active-filters"},ii={class:"flex-1 min-h-0"},si={key:1,class:"text-sm text-stone-500"},ci={class:"wrapperTable flex flex-col min-h-0"},di={key:1,class:"text-center py-12"},mi={key:0,class:"mt-4 pt-4 border-t border-stone-200"},pi=["onClick"],ui={class:"w-full gap-5 inline-flex mb-[6px] pr-3"},fi={class:"flex items-center"},gi=["title"],hi={class:"max-[1000px]:flex gap-2 min-[1001px]:hidden"},yi={class:"flex"},xi={key:0,class:"flex items-center py-[15px] pb-[24px] pl-2 pr-6 gap-4"},bi={class:"font-bold text-2xl mr-[10px]"},ki={class:"text-sm text-stone-500 font-medium"},wi={key:0,class:"inline-flex items-center gap-2 text-sm text-stone-700 select-none ml-auto mt-auto"},Ci={class:"wrapperTable flex flex-col",style:{height:"calc(100vh - 302px)"}},Vi={key:1,class:"text-center py-28"},Bi={key:1},Ei={key:2,class:"my-5 pr-2"},Ni={class:"flex justify-between"},Si={class:"w-full lg:w-1/2 relative"},_i={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},St="(max-width: 999px)",Ue="0px",nt=e.defineComponent({__name:"vs-parts-map",props:{title:{},table:{},map:{},rows:{},geom:{default:"geom"},zoom:{},minZoom:{default:3},maxZoom:{default:18},center:{},initTotal:{},colorAttr:{},strokeAttr:{},id:{},filters:{},history:{type:Boolean},layers:{},objectsInView:{type:Boolean,default:!0},clusterZoom:{default:12},pointZoom:{},polygonZoom:{},geometryZoomBreakpoint:{},mixedGeom:{type:Boolean,default:!1},circleRadius:{},circleStrokeWidth:{},highlightCircleRadius:{},highlightCircleColor:{},isCollapsible:{type:Boolean},legendTitle:{},legendWidth:{},polygonFitBbox:{type:Boolean},alwaysShowPolygon:{type:Boolean},mobileFilterView:{},mobileFilterLimit:{}},emits:["change:filter","update:map"],setup(t,{emit:a}){var v,X,be,ke,W,K,U;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=Nt);function r(h){return h?(h.type==="Point"?h.coordinates:null)||(h.type.includes("Multi")?h.coordinates[0][0][0]:h.coordinates[0][0]):null}function l(h){switch(h==null?void 0:h.type){case"Polygon":return h.coordinates[0];case"MultiPolygon":return h.coordinates.flatMap(S=>S[0]);case"LineString":return h.coordinates;case"MultiLineString":return h.coordinates.flat();default:return[]}}function s(h){if(!h||h.type==="Point"||h.type==="MultiPoint")return null;const S=l(h);if(!S.length)return null;let O=1/0,R=1/0,q=-1/0,Y=-1/0;return S.forEach(([J,we])=>{J<O&&(O=J),we<R&&(R=we),J>q&&(q=J),we>Y&&(Y=we)}),[[O,R],[q,Y]]}function b(h){return(h==null?void 0:h.type)==="Polygon"||(h==null?void 0:h.type)==="MultiPolygon"}const n=t,p=e.useSlots(),y=e.computed(()=>n.mobileFilterView??"vertical"),u=e.computed(()=>n.mobileFilterLimit!==void 0?{limit:n.mobileFilterLimit}:{}),f=a,x=e.ref(0);x.value=n.initTotal??((v=n.rows)==null?void 0:v.length)??0;const V=e.ref(""),m=e.ref(null),C=e.ref(!0),N=e.ref(((X=n.rows)==null?void 0:X.length)===1),c=e.ref(!1);let d=null;const M=e.ref(!1);typeof window<"u"&&(d=window.matchMedia(St),M.value=d.matches,c.value=!0);const A=e.ref(n.rows),$=e.ref(1),k=e.ref(20),w=e.ref(n.filters||[]),L=e.ref(""),_=e.ref({}),i=e.computed(()=>Object.values(_.value).some(h=>Array.isArray(h)?h.some(S=>S!=null&&S!==""):h&&typeof h=="object"?Object.values(h).some(S=>S!=null&&S!==""):h===null?!0:h!==void 0&&h!==""));function E(h){return h&&(h.geom?h:{...h,geom:(h==null?void 0:h[n.geom])??null})}const g=e.ref(((be=n.rows)==null?void 0:be.length)===1?E(n.rows[0]):{}),D=e.ref(((ke=n.rows)==null?void 0:ke.length)===1?n.rows[0].id:""),j=e.ref(((W=n.rows)==null?void 0:W.length)===1?r((K=n.rows[0])==null?void 0:K[n.geom]):n.center||null),I=e.ref(((U=n.rows)==null?void 0:U.length)===1?14:n.zoom||5),P=e.ref(!1),Z=e.ref(!1),H=e.ref("");let Q=!1;const G=e.ref(null),Ne=e.ref(!1);function ye(){if(!d)return;const h=M.value;M.value=d.matches,h!==M.value&&(G.value=null,e.nextTick(()=>{var S,O;(O=(S=m.value)==null?void 0:S.resize)==null||O.call(S)}))}const oe=e.ref(null),le=e.ref(null),Fe=e.computed(()=>{if(n.alwaysShowPolygon)return 0;if(le.value!=null)return le.value;if(n.geometryZoomBreakpoint!=null){const h=Number(n.geometryZoomBreakpoint);if(!Number.isNaN(h))return h}return 12}),de=h=>(h==null?void 0:h.geom)??(h==null?void 0:h[n.geom])??null,Ae=e.computed(()=>N.value&&!de(g.value)),xe=e.computed({get:()=>Ae.value?"":D.value,set:h=>{D.value=h,M.value&&(h?(Ne.value=!0,G.value="details"):G.value==="details"&&(G.value=null))}});function Se(){var J,we;if(n.alwaysShowPolygon){oe.value=null,le.value=null;return}const h=de(g.value);if(!n.polygonFitBbox||!m.value||!h){oe.value=null,le.value=null;return}const S=h;if(!b(S)){oe.value=null,le.value=null;return}const O=s(S);if(!O){oe.value=null,le.value=null;return}const R=(we=(J=m.value).cameraForBounds)==null?void 0:we.call(J,O,{padding:20,maxZoom:16}),q=R==null?void 0:R.zoom,Y=n.clusterZoom??12;if(q!=null&&q<Y){const _t=Math.floor(q);oe.value=_t,le.value=_t}else oe.value=null,le.value=null}function ve(h){return Object.entries(h).filter(([,S])=>Array.isArray(S)?S.length:S).map(([S,O])=>`${S}=${O}`).join("|")}function rt(){var R,q,Y,J;if(!m.value||!Z.value)return;const h=(q=(R=m.value).getBounds)==null?void 0:q.call(R);if(!h)return;const S=(Y=h.getSouthWest)==null?void 0:Y.call(h),O=(J=h.getNorthEast)==null?void 0:J.call(h);!S||!O||(H.value=`${S.lng} ${S.lat},${O.lng} ${O.lat}`)}async function te(h=!1){await e.nextTick();const S=ve(_.value);L.value=S,Z.value?rt():H.value="";try{const O={search:V.value,limit:k.value.toString(),page:$.value.toString(),filter:S,...Z.value&&H.value?{bbox:H.value}:{}},R=new URL(`/api/data/${n.table}`,window.location.origin),q=new URLSearchParams(O).toString(),Y=await fetch(`${R.toString()}?${q}`).then(J=>J.json());oe.value=null,le.value=null,N.value=!1,P.value||(I.value=n.zoom||5),A.value=Y==null?void 0:Y.rows,P.value=!1,x.value=Y.filtered,kt({page:$.value,filter:S,id:"",filterByView:Z.value})}catch(O){console.error(O.message)}}async function Ke(h=!1){if(D.value){await e.nextTick();try{const S=new URL(`/api/data/${n.table}/${D.value}`,window.location.origin),O=await fetch(S.toString()).then(Y=>Y.json());let R;O.rows.length>1?R=O.rows.find(Y=>Y.id===D.value):[R]=O.rows,g.value=E(R);const q=de(g.value);if(!h&&q){const Y=n.polygonFitBbox?s(q):null;Y&&m.value?m.value.fitBounds(Y,{padding:20,maxZoom:16,duration:500}):(j.value=r(q),I.value=14)}else!h&&q&&(j.value=r(q),I.value=14);Se(),N.value=!0,P.value=!1,x.value=O.filtered,kt({page:$.value,filter:ve(_.value),id:D.value,filterByView:Z.value})}catch(S){console.error(S.message)}}}const He=wt(()=>te(),300),ge=wt(()=>{D.value||te(!0)},400);function _e(){!m.value||Q||!Z.value||D.value||(m.value.on("moveend",ge),m.value.on("zoomend",ge),Q=!0)}function Me(){!m.value||!Q||(m.value.off("moveend",ge),m.value.off("zoomend",ge),Q=!1)}function De(h){k.value=h,$.value=1,te()}function ze(h){$.value=h,te()}function Ge(h){_.value=h.data,$.value=1,D.value?D.value="":te(),f("change:filter",h)}async function ie(){if(n.filters)return;const S=await(await fetch(`/api/filter/${n.table}`)).json();w.value=S.list}function Le(){_.value={},V.value="",te()}e.onMounted(async()=>{var O,R;d||(d=window.matchMedia(St)),c.value||(M.value=d.matches,c.value=!0),d.addEventListener("change",ye),M.value&&(C.value=!1);const h=new URLSearchParams(window.location.search);$.value=Number(h.get("page"))||1,k.value=Number(h.get("limit"))||k.value,D.value=h.get("id")||"",N.value=!!D.value,L.value=h.get("filter")||"";const S=h.get("bbox");S!==null?Z.value=S!=="0":Z.value=!1,(R=(O=h.get("filter"))==null?void 0:O.split("|"))==null||R.forEach(q=>{const[Y,J]=q.split("=");Y&&(_.value[Y]=J!=null&&J.includes(",")?J.split(","):[J])}),ie(),D.value?Ke():A.value||te()}),e.onBeforeUnmount(()=>{d==null||d.removeEventListener("change",ye),Me()});function Pe(){P.value=!0,N.value=!1,g.value=null,D.value="",oe.value=null,le.value=null,Z.value&&_e()}function me(h){G.value=h}function B(){G.value=null}async function F(){var h,S;await e.nextTick(),(S=(h=m.value)==null?void 0:h.resize)==null||S.call(h)}function T(){Pe(),B()}function z(h){Ne.value=!0;const S=de(E(h));if(S){const O=n.polygonFitBbox?s(S):null;O&&m.value?m.value.fitBounds(O,{padding:20,maxZoom:16,duration:500}):(j.value=r(S),I.value=16)}else h!=null&&h[n.geom]&&(j.value=r(h[n.geom]),I.value=16);g.value=E(h),D.value=h.id,Se(),M.value&&(G.value="details")}return e.watch(G,async()=>{var h,S;await e.nextTick(),(S=(h=m.value)==null?void 0:h.resize)==null||S.call(h)}),e.watch(m,h=>{f("update:map",h),h&&Z.value&&_e(),h&&n.polygonFitBbox&&de(g.value)&&Se()}),e.watch(V,h=>{h||te()}),e.watch(D,()=>{D.value?(Me(),Ke()):(te(),Z.value&&_e())}),e.watch(Z,()=>{Z.value?_e():Me(),te()}),(h,S)=>{var O;return c.value?(e.openBlock(),e.createElementBlock("section",{key:0,class:e.normalizeClass(M.value?"":"pt-[20px]")},[M.value?(e.openBlock(),e.createElementBlock("div",Xa,[e.createVNode(Et,{table:n.table,selectedFeature:g.value,map:m.value,"onUpdate:map":S[0]||(S[0]=R=>m.value=R),zoom:I.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:L.value,center:j.value,clusterZoom:n.alwaysShowPolygon?0:oe.value??n.clusterZoom,pointZoom:Fe.value,polygonZoom:n.polygonZoom,geometryZoomBreakpoint:n.geometryZoomBreakpoint,mixedGeom:n.mixedGeom,circleRadius:n.circleRadius,circleStrokeWidth:n.circleStrokeWidth,highlightCircleRadius:n.highlightCircleRadius,highlightCircleColor:n.highlightCircleColor,alwaysShowPolygon:n.alwaysShowPolygon,modelValue:xe.value,"onUpdate:modelValue":S[1]||(S[1]=R=>xe.value=R),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!1,"mobile-peek-controls":!0},{default:e.withCtx(({hoverData:R})=>[e.renderSlot(h.$slots,"popup",{data:R})]),_:3},8,["table","selectedFeature","map","zoom","minZoom","maxZoom","colorAttr","strokeAttr","filter","center","clusterZoom","pointZoom","polygonZoom","geometryZoomBreakpoint","mixedGeom","circleRadius","circleStrokeWidth","highlightCircleRadius","highlightCircleColor","alwaysShowPolygon","modelValue","layers","isCollapsible","legendTitle","legendWidth"]),Ae.value?(e.openBlock(),e.createElementBlock("div",Ja,[...S[19]||(S[19]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="text-white/80"><path d="M12.75 7.09a3 3 0 0 1 2.16 2.16"></path><path d="M17.072 17.072c-1.634 2.17-3.527 3.912-4.471 4.727a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 1.432-4.568"></path><path d="m2 2 20 20"></path><path d="M8.475 2.818A8 8 0 0 1 20 10c0 1.183-.31 2.377-.81 3.533"></path><path d="M9.13 9.13a3 3 0 0 0 3.74 3.74"></path></svg><p class="mt-4 text-base font-[300] text-white">Геопросторові дані відсутні</p><p class="mt-2 max-w-xs text-center text-sm font-[200] text-white/70 leading-relaxed"> Координати або межі об'єкта не внесені до системи. Об'єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0),e.createVNode(Qa,{"active-modal":G.value,"filters-disabled":!w.value.length,"has-active-filters":i.value,onOpenSearch:S[2]||(S[2]=R=>me("search")),onOpenFilters:S[3]||(S[3]=R=>me("filters")),onOpenTable:S[4]||(S[4]=R=>me("table"))},null,8,["active-modal","filters-disabled","has-active-filters"]),e.createVNode(Ve,{open:G.value==="search",title:"Пошук","top-offset":Ue,"initial-variant":"full","peek-mode":"clip-full",onClose:B,onExpand:F,onCollapse:F},{default:e.withCtx(()=>[e.createElementVNode("div",ei,[e.createVNode(e.unref(re),{type:"text",modelValue:V.value,"onUpdate:modelValue":S[5]||(S[5]=R=>V.value=R),name:"search",label:"Пошук",onChange:e.unref(He)},null,8,["modelValue","onChange"]),e.createElementVNode("div",ti,[e.unref(p)["mobile-search-results"]?e.renderSlot(h.$slots,"mobile-search-results",{key:0,rows:A.value,selectRow:z,closeModal:B}):(e.openBlock(),e.createElementBlock("div",li,[x.value>=1?e.renderSlot(h.$slots,"table",{key:0,rows:A.value,selectRow:z,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",oi,[e.createVNode(lt),S[20]||(S[20]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),S[21]||(S[21]=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1)),e.createElementVNode("button",{type:"button",class:"mt-[10px] py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs rounded-lg border border-stone-200 bg-white text-stone-800 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100",onClick:Le}," Очистити дані пошуку ")]))])),x.value>=1?(e.openBlock(),e.createElementBlock("div",ni,[e.createVNode(tt,{total:x.value,currentPage:$.value??1,pageSize:k.value,onPageChange:S[6]||(S[6]=R=>ze(R)),onPageSizeChange:S[7]||(S[7]=R=>De(R))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)])])]),_:3},8,["open"]),e.createVNode(Ve,{open:G.value==="filters",title:"Фільтри","top-offset":Ue,"initial-variant":"full","peek-mode":"clip-full",onClose:B,onExpand:F,onCollapse:F},{default:e.withCtx(()=>[e.createElementVNode("div",ri,[e.withDirectives(e.createElementVNode("div",ai,null,512),[[e.vShow,G.value==="filters"]]),e.createElementVNode("div",ii,[w.value.length?(e.openBlock(),e.createBlock(e.unref(Te),e.mergeProps({key:0,schema:w.value,view:y.value},u.value,{value:_.value,teleportActive:"#active-filters",onChange:Ge}),null,16,["schema","view","value"])):(e.openBlock(),e.createElementBlock("p",si,"Фільтри недоступні для цього переліку."))])])]),_:1},8,["open"]),e.createVNode(Ve,{open:G.value==="table",title:"Таблиця","top-offset":Ue,"initial-variant":"full","peek-mode":"clip-full",onClose:B,onExpand:F,onCollapse:F},{default:e.withCtx(()=>[e.createElementVNode("div",ci,[x.value>=1?e.renderSlot(h.$slots,"table",{key:0,rows:A.value,selectRow:z,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",di,[e.createVNode(lt),S[22]||(S[22]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),S[23]||(S[23]=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1)),e.createElementVNode("button",{type:"button",class:"mt-[10px] py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs rounded-lg border border-stone-200 bg-white text-stone-800 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100",onClick:Le}," Очистити дані пошуку ")]))]),x.value>=1?(e.openBlock(),e.createElementBlock("div",mi,[e.createVNode(tt,{total:x.value,currentPage:$.value??1,pageSize:k.value,onPageChange:S[8]||(S[8]=R=>ze(R)),onPageSizeChange:S[9]||(S[9]=R=>De(R))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)]),_:3},8,["open"]),e.createVNode(Ve,{open:G.value==="details",title:"Об'єкт","top-offset":Ue,"initial-variant":Ne.value?"peek":"full","peek-mode":"custom",onClose:T,onExpand:F,onCollapse:F},{peek:e.withCtx(({expand:R})=>[e.unref(p)["mobile-details-peek"]?e.renderSlot(h.$slots,"mobile-details-peek",{key:0,selectedRow:g.value,expand:R,close:T}):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"w-full text-left text-base font-semibold text-gray-900 py-2 rounded-lg hover:bg-stone-50",onClick:R}," Деталі об'єкта ",8,pi))]),default:e.withCtx(()=>[e.renderSlot(h.$slots,"details",{table:n.table,selectedRow:g.value,closeObjCard:T})]),_:3},8,["open","initial-variant"]),e.renderSlot(h.$slots,"default",{table:n.table,map:m.value,selectedRow:g.value})])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(h.$slots,"header",{title:n.title,total:x.value}),e.createElementVNode("div",ui,[e.createVNode(e.unref(re),{type:"text",modelValue:V.value,"onUpdate:modelValue":S[10]||(S[10]=R=>V.value=R),name:"search",label:"Пошук",onChange:e.unref(He)},null,8,["modelValue","onChange"]),w.value.length?(e.openBlock(),e.createBlock(e.unref(Te),{key:0,schema:w.value,view:"inline",onChange:Ge,limit:5,value:_.value,ref:"filterRef"},null,8,["schema","value"])):e.createCommentVNode("",!0),e.createElementVNode("div",fi,[e.createElementVNode("button",{type:"button",class:"map-visible-button py-2 px-2 hidden min-[1001px]:inline-flex items-center gap-x-1.5 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100",title:C.value?"Приховати карту":"Показати карту",onClick:S[11]||(S[11]=R=>C.value=!C.value)},[C.value?(e.openBlock(),e.createBlock(kr,{key:0})):(e.openBlock(),e.createBlock(Br,{key:1})),S[24]||(S[24]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,gi),e.createElementVNode("div",hi,[e.createElementVNode("button",{onClick:S[12]||(S[12]=R=>C.value=!1),class:"py-2 px-2 h-[38px] inline-flex items-center gap-x-1.5 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100"},[e.createVNode(Lr)]),e.createElementVNode("button",{onClick:S[13]||(S[13]=R=>C.value=!0),class:"py-2 px-2 h-[38px] inline-flex items-center gap-x-1.5 text-sm rounded-lg border border-gray-200 bg-white text-gray-600 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-gray-100"},[e.createVNode(_r)])])])]),e.createElementVNode("div",yi,[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden shrink-0",C.value?"w-2/4 mr-0":"w-full mr-3",N.value?"hidden":""])},[(O=h.$slots)!=null&&O.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",xi,[e.createElementVNode("div",null,[e.createElementVNode("span",bi,e.toDisplayString(n.title),1),e.createElementVNode("span",ki,e.toDisplayString(x.value),1),S[25]||(S[25]=e.createElementVNode("span",{class:"text-sm text-stone-500 font-medium"}," об'єктів",-1))]),n.objectsInView?(e.openBlock(),e.createElementBlock("label",wi,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"accent-blue-600 w-4 h-4","onUpdate:modelValue":S[14]||(S[14]=R=>Z.value=R)},null,512),[[e.vModelCheckbox,Z.value]]),S[26]||(S[26]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",Ci,[x.value>=1?e.renderSlot(h.$slots,"table",{key:0,rows:A.value,selectRow:z}):(e.openBlock(),e.createElementBlock("div",Vi,[e.createVNode(lt),S[27]||(S[27]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),S[28]||(S[28]=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1)),e.createElementVNode("button",{type:"button",class:"mt-[10px] py-2 px-2.5 inline-flex items-center gap-x-1.5 text-xs rounded-lg border border-stone-200 bg-white text-stone-800 shadow-sm hover:bg-stone-50 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-stone-100",onClick:Le}," Очистити дані пошуку ")]))]),x.value>=1?(e.openBlock(),e.createElementBlock("hr",Bi)):e.createCommentVNode("",!0),x.value>=1?(e.openBlock(),e.createElementBlock("div",Ei,[e.createElementVNode("div",Ni,[e.createVNode(tt,{total:x.value,currentPage:$.value??1,pageSize:k.value,onPageChange:S[15]||(S[15]=R=>ze(R)),onPageSizeChange:S[16]||(S[16]=R=>De(R))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),N.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(C.value?"lg:static lg:w-1/2 mr-0 pb-5":"pb-5 mr-3"),style:{height:"calc(100vh - 152px)"}},[e.renderSlot(h.$slots,"details",{table:n.table,selectedRow:g.value,closeObjCard:Pe})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",Si,[e.createVNode(Et,{table:n.table,selectedFeature:g.value,map:m.value,"onUpdate:map":S[17]||(S[17]=R=>m.value=R),zoom:I.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:L.value,center:j.value,clusterZoom:n.alwaysShowPolygon?0:oe.value??n.clusterZoom,pointZoom:Fe.value,polygonZoom:n.polygonZoom,geometryZoomBreakpoint:n.geometryZoomBreakpoint,mixedGeom:n.mixedGeom,circleRadius:n.circleRadius,circleStrokeWidth:n.circleStrokeWidth,highlightCircleRadius:n.highlightCircleRadius,highlightCircleColor:n.highlightCircleColor,alwaysShowPolygon:n.alwaysShowPolygon,modelValue:xe.value,"onUpdate:modelValue":S[18]||(S[18]=R=>xe.value=R),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!0},{default:e.withCtx(({hoverData:R})=>[e.renderSlot(h.$slots,"popup",{data:R})]),_:3},8,["table","selectedFeature","map","zoom","minZoom","maxZoom","colorAttr","strokeAttr","filter","center","clusterZoom","pointZoom","polygonZoom","geometryZoomBreakpoint","mixedGeom","circleRadius","circleStrokeWidth","highlightCircleRadius","highlightCircleColor","alwaysShowPolygon","modelValue","layers","isCollapsible","legendTitle","legendWidth"]),e.renderSlot(h.$slots,"default",{table:n.table,map:m.value,selectedRow:g.value}),Ae.value?(e.openBlock(),e.createElementBlock("div",_i,[...S[29]||(S[29]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="text-white/80"><path d="M12.75 7.09a3 3 0 0 1 2.16 2.16"></path><path d="M17.072 17.072c-1.634 2.17-3.527 3.912-4.471 4.727a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 1.432-4.568"></path><path d="m2 2 20 20"></path><path d="M8.475 2.818A8 8 0 0 1 20 10c0 1.183-.31 2.377-.81 3.533"></path><path d="M9.13 9.13a3 3 0 0 0 3.74 3.74"></path></svg><p class="mt-4 text-base font-[300] text-white">Геопросторові дані відсутні</p><p class="mt-2 max-w-xs text-center text-sm font-[200] text-white/70 leading-relaxed"> Координати або межі об'єкта не внесені до системи. Об'єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0)],512),[[e.vShow,C.value]])])],64))],2)):e.createCommentVNode("",!0)}}});return nt.install=t=>{t.component("VsPartsMap",nt),t._context.directives.tooltip||t.directive("tooltip",Nt)},nt});
|