@opengis/partsmap 0.1.40 → 0.1.41

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.
@@ -1,2 +1,2 @@
1
- (function(e,Ce){typeof exports=="object"&&typeof module<"u"?module.exports=Ce(require("vue")):typeof define=="function"&&define.amd?define(["vue"],Ce):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=Ce(e.Vue))})(this,function(e){"use strict";const Ce=(t,i)=>{const o=t.__vccOpts||t;for(const[a,l]of i)o[a]=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:i}=t;i===13&&(this.modelState=!this.modelState)},addKeyHandler(){window.addEventListener("keydown",this.handleEnterDown)},removeKeyHandler(){window.removeEventListener("keydown",this.handleEnterDown)}}});const Pt={},At={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 $t(t,i){return e.openBlock(),e.createElementBlock("svg",At,i[0]||(i[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 Ft=Ce(Pt,[["render",$t]]),Rt={},Zt={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 Tt(t,i){return e.openBlock(),e.createElementBlock("svg",Zt,i[0]||(i[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 Kt=Ce(Rt,[["render",Tt]]),Ot={},It={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 Ut(t,i){return e.openBlock(),e.createElementBlock("svg",It,i[0]||(i[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 Ht=Ce(Ot,[["render",Ut]]),Gt={},Wt={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 qt(t,i){return e.openBlock(),e.createElementBlock("svg",Wt,i[0]||(i[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)]))}const Qt=Ce(Gt,[["render",qt]]),Yt={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},Xt={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},Jt={class:"flex-1"},el={class:"font-medium text-gray-900"},tl={class:"mt-0.5 text-sm text-gray-700"},ll=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(t){const i={success:Ft,warning:Kt,error:Qt,info:Ht};return(o,a)=>(e.openBlock(),e.createElementBlock("div",Yt,[e.createElementVNode("div",Xt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i[o.type]))),e.createElementVNode("div",Jt,[e.createElementVNode("strong",el,e.toDisplayString(o.title),1),e.createElementVNode("p",tl,e.toDisplayString(o.message),1)]),a[0]||(a[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 Ie={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"},je=t=>{var y;const{type:i="info",title:o,message:a,position:l="right-bottom"}=t||{};let m=document.querySelector("#notify-root");m||(m=document.createElement("div"),m.id="notify-root",m.className=`fixed z-[2000] flex flex-col gap-3 ${Ie[l]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(m)),m.className.includes(Ie[l])||(Object.values(Ie).forEach(C=>{m.classList.remove(...C.split(" "))}),m.classList.add(...Ie[l].split(" ")));const p=document.createElement("div");m.appendChild(p);const n=e.createApp({render(){return e.h(ll,{type:i,title:o,message:a,onClose:()=>{n.unmount(),p.remove()}})}});n.mount(p),(y=p.querySelector("button"))==null||y.addEventListener("click",()=>{p.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{n.unmount(),p.remove()},350)}),setTimeout(()=>{p.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{n.unmount(),p.remove()},350)},3500)};function ol(t){return t==null?!1:Array.isArray(t)?t.some(i=>i!==""&&i!==void 0&&i!==null):typeof t=="string"?t.trim().length>0:!0}function nl(t,i){const o={};return i.forEach(a=>{if(!(a!=null&&a.length))return;const l=a.find(m=>ol(t[m]));l&&a.forEach(m=>{m!==l&&(o[m]=!0)})}),o}function dt(t){return Array.isArray(t)?t.map(i=>{var o;return((o=i==null?void 0:i.toString)==null?void 0:o.call(i))??""}).filter(Boolean):typeof t=="string"?t.split(",").map(i=>i.trim()).filter(Boolean):t==null?[]:[t.toString()]}function mt(t){if(t==null)return[];if(Array.isArray(t))return t;if(typeof t=="string"){const i=t.trim();return i?i.split(",").map(o=>o.trim()):[]}return[t]}const he=(t,i)=>{const o=t.__vccOpts||t;for(const[a,l]of i)o[a]=l;return o},rl={},al={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 il(t,i){return e.openBlock(),e.createElementBlock("svg",al,[...i[0]||(i[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 sl=he(rl,[["render",il]]),cl={},dl={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 ml(t,i){return e.openBlock(),e.createElementBlock("svg",dl,[...i[0]||(i[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)])])}const Ve=he(cl,[["render",ml]]),pl={class:"flex items-center cursor-pointer w-full"},ul={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},fl=["value"],gl={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},yl={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},hl={key:1,class:"absolute right-2 flex size-3.5 items-center justify-center"},Je=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean},disabled:{type:Boolean}},emits:["itemClick"],setup(t,{expose:i,emit:o}){const a=t,l=o;function m(){a.disabled||l("itemClick",a.value)}const p=e.ref(null),n=e.computed(()=>a.layout==="inline"&&a.type==="radio"),y=e.computed(()=>a.layout==="vertical"?"text-[13px]":"text-sm");return i({el:p}),(C,b)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-sm group hover:bg-gray-100",ref_key:"el",ref:p},[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-between w-full",y.value])},[e.createElementVNode("div",pl,[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},y.value,t.disabled?"cursor-not-allowed opacity-60 pointer-events-none":""]),onClick:e.withModifiers(m,["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",ul)):e.createCommentVNode("",!0)],2)),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:t.value},null,8,fl),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",gl,e.toDisplayString(t.label??"Відсутні дані"),1),t.count?(e.openBlock(),e.createElementBlock("div",yl," ("+e.toDisplayString(t.count)+") ",1)):e.createCommentVNode("",!0)],2),n.value&&t.isSelected?(e.openBlock(),e.createElementBlock("span",hl,[e.createVNode(Ve)])):e.createCommentVNode("",!0)],2)])],2)],512))}});function et(t,i){const{api:o,options:a=[],limit:l=20,dataKey:m="data",data:p}=t,n=m??p??"data";function y(V){return Array.isArray(V)?V[0]:V}const C=e.ref(y(t.modelValue)),b=e.ref(""),c=e.ref(!1),N=e.ref([]),L=e.ref("id"),h=e.ref("text"),k=e.ref(!1),w=e.ref(t.layout!=="popover"&&a.length>l);function _(V){const B=V.find(Boolean)??{},v=["id","value","code","key"].find(j=>j in B)??"id",$=["text","label","name","title"].find(j=>j in B)??"text";return{autoValueKey:v,autoLabelKey:$}}function s(V){if(V.length>0){const v=_(V);L.value=v.autoValueKey,h.value=v.autoLabelKey}const B=[...V].sort((v,$)=>t.sort==="count"?$.count&&v.count?$.count-v.count:0:t.sort==="name"?String(v[h.value]??"").localeCompare(String($[h.value]??"")):0);N.value=B}a.length>0&&s(a);const x=e.computed(()=>{const V=N.value;return t.layout==="popover"||k.value?V:V.slice(0,l)});async function A(){if(o){c.value=!0;try{const V=new URL(o,window.location.origin);V.searchParams.set("json","1"),V.searchParams.set("limit",l.toString());const B=await fetch(V.toString());if(!B.ok){je({type:"error",title:"Error",message:"Failed to fetch remote options"}),N.value=[];return}const v=await B.json();if(!v[n]){je({type:"error",title:"Error",message:v}),N.value=[];return}s(v[n])}catch(V){console.error("Failed to fetch remote options:",V)}finally{c.value=!1}}}function R(){o&&N.value.length===0&&A()}e.watch(()=>t.modelValue,V=>{C.value=y(V)},{immediate:!0}),o||s(a);function g(V){return C.value===V[L.value]}function z(V){C.value=V[L.value],i("update:modelValue",C.value),i("change",{name:t.name,value:C.value})}function u(){C.value=void 0,i("update:modelValue",C.value),i("clear",t.name)}function M(){k.value=!k.value}return{innerValue:C,searchTerm:b,filteredOptions:x,isSelected:g,selectItem:z,clear:u,toggleShowAll:M,isReqProc:c,showAll:k,isEnableShowAll:w,labelKey:h,valueKey:L,allOptions:N,loadData:R}}function pt(t={color:"blue"}){return e.computed(()=>{const i=`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"?`${i}h-[32px]`:`${i}h-[38px]`})}function _e(){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 xl(){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 ut(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 ft={en:{apply:"Apply",search:"Search",more:"Show more",less:"Show less",selected:"selected",clear:"Clear",notfound:"Nothing found",period:"Period",from:"From",to:"To",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:"Період",from:"Від",to:"До",today:"Сьогодні",week:"Тиждень",max:"до",min:"від",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період",selectFieldHelp:"Оберіть поле, щоб розпочати створення фільтра."}};function gt(t){const i=t.split(".")[1],o=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(ft[o||navigator.language]||ft.uk)[i]}function ue(){const t=e.getCurrentInstance();if(!t.appContext.config.globalProperties.$i18n)return gt;const i=t.appContext.config.globalProperties.$t;return o=>{const a=i(o);return a===o?gt(o):a}}const bl={},kl={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function wl(t,i){return e.openBlock(),e.createElementBlock("svg",kl,[...i[0]||(i[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 tt=he(bl,[["render",wl]]),Bl={},Cl={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 Vl(t,i){return e.openBlock(),e.createElementBlock("svg",Cl,[...i[0]||(i[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=he(Bl,[["render",Vl]]),El={},Nl={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 Sl(t,i){return e.openBlock(),e.createElementBlock("svg",Nl,[...i[0]||(i[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const lt=he(El,[["render",Sl]]),_l={key:0,class:"w-full"},Ml={class:"flex flex-col items-center justify-center p-5 text-center"},Ll={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Dl={key:1,class:"py-2 px-2"},jl=["disabled"],zl=e.defineComponent({__name:"radio",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=e.ref(null),m=_e(),p=ue(),n=o,{innerValue:y,filteredOptions:C,isSelected:b,selectItem:c,clear:N,toggleShowAll:L,isReqProc:h,showAll:k,isEnableShowAll:w,labelKey:_,valueKey:s,allOptions:x,loadData:A}=et({...a,modelValue:a.modelValue??a.default??""},n);return e.onMounted(()=>{a.api&&A()}),i({clear:N,inputTextRef:l}),e.watch(()=>a.modelValue,R=>{R===void 0&&(y.value=void 0)}),(R,g)=>(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(C),z=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,key:z[e.unref(s)],count:z.count,label:z[e.unref(_)],color:z.color,type:"radio",value:z[e.unref(s)],"is-selected":e.unref(b)(z),onItemClick:u=>e.unref(c)(z)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),t.type==="select"&&e.unref(C).length===0&&!e.unref(h)?(e.openBlock(),e.createElementBlock("div",_l,[e.createElementVNode("div",Ml,[e.createVNode(tt),g[4]||(g[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(k)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:g[0]||(g[0]=(...z)=>e.unref(L)&&e.unref(L)(...z)),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"},[g[5]||(g[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(Ue)])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:g[1]||(g[1]=(...z)=>e.unref(L)&&e.unref(L)(...z)),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"},[g[6]||(g[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(lt)])):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",Ll,[e.createTextVNode(e.toDisplayString(e.unref(y)||e.unref(y)===null?1:0)+" з "+e.toDisplayString(e.unref(x).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[2]||(g[2]=(...z)=>e.unref(N)&&e.unref(N)(...z))}," Очистити ",512),[[e.vShow,e.unref(y)!==""&&e.unref(y)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Dl,[e.createElementVNode("button",{type:"button",disabled:!(e.unref(y)!==""&&e.unref(y)!==void 0),class:e.normalizeClass(e.unref(m)+" hover:bg-gray-100"),onClick:g[3]||(g[3]=(...z)=>e.unref(N)&&e.unref(N)(...z))},e.toDisplayString(e.unref(p)("filter.clear")),11,jl)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function yt(t,i){const{api:o,options:a=[],limit:l=20,dataKey:m="data",data:p}=t,n=m??p??"data";function y(B){return Array.isArray(B)?B:typeof B=="string"&&B.includes(",")?B.split(",").map(v=>v.trim()).filter(Boolean):B?[B]:[]}const C=e.ref(y(t.modelValue)),b=e.ref(""),c=e.ref(!1),N=e.ref([]),L=e.ref("id"),h=e.ref("text"),k=e.ref(!1),w=e.ref(t.layout!=="popover"&&a.length>l);function _(B){const v=B.find(Boolean)??{},$=["id","value","code","key"].find(r=>r in v)??"id",j=["text","label","name","title"].find(r=>r in v)??"text";return{autoValueKey:$,autoLabelKey:j}}function s(B){if(B.length>0){const $=_(B);L.value=$.autoValueKey,h.value=$.autoLabelKey}const v=[...B].sort(($,j)=>t.sort==="count"?j.count&&$.count?j.count-$.count:0:t.sort==="name"?String($[h.value]).localeCompare(String(j[h.value])):0);N.value=v}a.length>0&&s(a);function x(B){if(!Array.isArray(C.value)||C.value.length===0)return B;const v=new Set(C.value),$=B.filter(d=>v.has(d[L.value])),j=new Set($.map(d=>d[L.value])),r=B.filter(d=>!j.has(d[L.value]));return[...$,...r]}const A=e.computed(()=>{const B=N.value;if(t.layout==="popover")return x(B);const v=k.value?B:B.slice(0,l);return x(v)});async function R(){if(o){c.value=!0;try{const B=new URL(o,window.location.origin);B.searchParams.set("json","1"),B.searchParams.set("limit",l.toString());const v=await fetch(B.toString());if(!v.ok){je({type:"error",title:"Error",message:"Failed to fetch remote options"}),N.value=[];return}const $=await v.json();if(!$[n]){je({type:"error",title:"Error",message:$}),N.value=[];return}s($[n])}catch(B){console.error("Failed to fetch remote options:",B)}finally{c.value=!1}}}function g(){o&&N.value.length===0&&R()}e.watch(()=>t.modelValue,B=>{C.value=y(B)},{immediate:!0}),o||s(a);function z(B){return C.value&&C.value.includes(B[L.value])}function u(B){const v=C.value.includes(B[L.value]);C.value=v?C.value.filter($=>$!==B[L.value]):[...C.value,B[L.value]],i("update:modelValue",C.value),i("change",{name:t.name,value:C.value})}function M(){C.value=[],i("update:modelValue",C.value),i("clear",t.name)}function V(){k.value=!k.value}return{innerValue:C,searchTerm:b,filteredOptions:A,isSelected:z,selectItem:u,clear:M,toggleShowAll:V,isReqProc:c,showAll:k,isEnableShowAll:w,labelKey:h,valueKey:L,allOptions:N,loadData:g}}const vl={key:0,class:"w-full"},Pl={class:"flex flex-col items-center justify-center p-5 text-center"},Al={class:"max-w-sm mx-auto mt-6"},$l={class:"font-medium text-gray-800 dark:text-neutral-200"},Fl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Rl={key:1,class:"py-2 px-2 border-t"},Zl=["disabled"],Tl={class:"text-xs text-gray-500"},ht=e.defineComponent({__name:"checkbox",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=ue(),l=_e(),m=t,p=o,{innerValue:n,filteredOptions:y,isSelected:C,selectItem:b,clear:c,toggleShowAll:N,isReqProc:L,showAll:h,isEnableShowAll:k,labelKey:w,valueKey:_,allOptions:s,loadData:x}=yt({...m,modelValue:m.modelValue},p);return e.onMounted(()=>{m.api&&x()}),e.watch(()=>m.modelValue,A=>{A===void 0&&(n.value=[])}),i({clear:c}),(A,R)=>(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(y),g=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,count:g.count,label:g[e.unref(w)],color:g.color,type:"checkbox",value:g[e.unref(_)],"is-selected":e.unref(C)(g),onItemClick:z=>e.unref(b)(g)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),t.type==="select"&&e.unref(y).length===0&&!e.unref(L)?(e.openBlock(),e.createElementBlock("div",vl,[e.createElementVNode("div",Pl,[e.createVNode(tt),e.createElementVNode("div",Al,[e.createElementVNode("p",$l,e.toDisplayString(e.unref(a)("filter.notfound")),1),R[4]||(R[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(h)&&e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:R[0]||(R[0]=(...g)=>e.unref(N)&&e.unref(N)(...g)),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(a)("filter.more"))+" ",1),e.createVNode(Ue)])):e.createCommentVNode("",!0),e.unref(h)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:R[1]||(R[1]=(...g)=>e.unref(N)&&e.unref(N)(...g)),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(a)("filter.less"))+" ",1),e.createVNode(lt)])):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",Fl,[e.createTextVNode(e.toDisplayString(e.unref(n).length)+" / "+e.toDisplayString(e.unref(s).length)+" "+e.toDisplayString(e.unref(a)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:R[2]||(R[2]=(...g)=>e.unref(c)&&e.unref(c)(...g))},e.toDisplayString(e.unref(a)("filter.clear")),513),[[e.vShow,e.unref(n).length!==0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Rl,[e.createElementVNode("button",{type:"button",disabled:e.unref(n).length===0,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:R[3]||(R[3]=(...g)=>e.unref(c)&&e.unref(c)(...g))},[e.createTextVNode(e.toDisplayString(e.unref(a)("filter.clear"))+" ",1),e.createElementVNode("span",Tl,e.toDisplayString(e.unref(n).length)+" з "+e.toDisplayString(e.unref(s).length),1)],10,Zl)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Kl={},Ol={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 Il(t,i){return e.openBlock(),e.createElementBlock("svg",Ol,[...i[0]||(i[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 xt=he(Kl,[["render",Il]]),Ul={},Hl={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 Gl(t,i){return e.openBlock(),e.createElementBlock("svg",Hl,[...i[0]||(i[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 ot=he(Ul,[["render",Gl]]);class bt{static getWidthClass(i){return typeof i=="number"?`max-w-[${i}px] min-w-[${i}px]`:typeof i=="string"?i.endsWith("%")||i.endsWith("px")?`max-w-[${i}]`:`max-w-${i}`:"w-full"}}const Wl={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},ql=["placeholder"],Ql=e.defineComponent({__name:"text-input",props:{id:{},name:{},title:{},type:{},label:{},width:{default:220},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{emit:i}){var C;const o=t,a=e.ref((o.placeholder||o.label||o.title||o.name||"search").toString()),l=i,m=e.ref(((C=o.modelValue)==null?void 0:C.toString())??"");e.watch(()=>o.modelValue,b=>{b!==m.value&&(m.value=(b==null?void 0:b.toString())??"")});let p=null;function n(){if(m.value=m.value.trimStart(),m.value.length===0){y();return}p&&clearTimeout(p),p=setTimeout(()=>{l("update:modelValue",m.value),l("change",{name:o.name,value:m.value})},750)}function y(){m.value="",l("update:modelValue",""),l("clear",o.name)}return(b,c)=>(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(bt).getWidthClass(t.width):"mb-2"+(t.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Wl,[e.createVNode(xt)]),m.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:y,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(ot)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":c[0]||(c[0]=N=>m.value=N),onInput:n,placeholder:a.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,ql),[[e.vModelText,m.value]])],2))}}),Yl={key:0,class:"flex flex-col gap-3 mb-4"},Xl={class:"group flex cursor-pointer items-center gap-[10px] py-[2px]"},Jl={key:0,class:"h-2 w-2 rounded-full bg-blue-600"},eo=["checked"],to={key:0,class:"h-2 w-2 rounded-full bg-blue-600"},lo={class:"text-[15px] text-slate-700 transition-colors duration-150 group-hover:text-slate-900"},oo=["checked","onChange"],no={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ro=["placeholder","disabled"],ao={key:1,class:"mb-0 text-[13px] font-medium text-slate-500"},io={key:2,class:"block text-xs font-medium text-gray-600 mb-1"},so=["placeholder","disabled"],co=["disabled"],mo={key:1,class:"mt-5 mb-2"},po={class:"relative"},uo=["aria-valuenow","aria-valuemin","aria-valuemax"],fo={class:"pointer-events-none absolute bottom-[calc(100%+6px)] left-1/2 -translate-x-1/2 whitespace-nowrap rounded-[5px] bg-slate-800 px-[7px] py-[3px] text-[11px] font-semibold text-white opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus:opacity-100"},go=["aria-valuenow","aria-valuemin","aria-valuemax"],yo={class:"pointer-events-none absolute bottom-[calc(100%+6px)] left-1/2 -translate-x-1/2 whitespace-nowrap rounded-[5px] bg-slate-800 px-[7px] py-[3px] text-[11px] font-semibold text-white opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus:opacity-100"},ho={class:"flex justify-between text-xs text-slate-400 mt-1"},xo=e.defineComponent({__name:"range-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=pt(),l=_e(),m=ue(),p=t,n=e.ref(mt(p.modelValue??p.default??[])),y=o,C=e.ref(null),b=e.computed({get:()=>n.value,set:r=>{n.value=r,y("update:modelValue",r)}}),c=e.computed(()=>(p.options??[]).filter(r=>{const d=r;return d.min!==void 0||d.max!==void 0}).map((r,d)=>{const f=r;return{key:String(f.id??d),min:f.min??null,max:f.max??null,label:f.label??f.text??`${f.min??""} - ${f.max??""}`}})),N=e.computed(()=>{var P;const r=b.value;if(!Array.isArray(r)||r.length===0)return null;const d=r[0]??null,f=r[1]??null;return((P=c.value.find(Z=>String(Z.min??"")===String(d??"")&&String(Z.max??"")===String(f??"")))==null?void 0:P.key)??null}),L=e.computed(()=>{const r=Number(p.min);if(!Number.isNaN(r))return r;const d=c.value.map(f=>Number(f.min)).filter(f=>!Number.isNaN(f));return d.length?Math.min(...d):0}),h=e.computed(()=>{const r=Number(p.max);if(!Number.isNaN(r))return r;const d=c.value.map(Z=>Number(Z.max)).filter(Z=>!Number.isNaN(Z));if(d.length)return Math.max(...d);const f=x(b.value),P=Number(f[1]);return Number.isNaN(P)?100:P}),k=e.computed(()=>{const r=x(b.value),d=Number(r[0]);return Number.isNaN(d)?L.value:Math.max(L.value,Math.min(d,w.value))}),w=e.computed(()=>{const r=x(b.value),d=Number(r[1]);return Number.isNaN(d)?h.value:Math.min(h.value,Math.max(d,L.value))}),_=e.computed(()=>{const r=h.value-L.value;return r<=0?0:(k.value-L.value)/r*100}),s=e.computed(()=>{const r=h.value-L.value;return r<=0?100:(w.value-k.value)/r*100});function x(r){return Array.isArray(r)?r:[]}function A(r,d){const f=[r,d];n.value=f,b.value=f}let R=null;function g(r){const d=C.value;if(!d)return L.value;const f=d.getBoundingClientRect(),P=(Math.min(Math.max(r,f.left),f.right)-f.left)/f.width,Z=L.value+P*(h.value-L.value);return Math.round(Z)}function z(r){const d=g(r);if(R==="min"){A(Math.min(d,w.value),w.value);return}R==="max"&&A(k.value,Math.max(d,k.value))}function u(r){R&&z(r.clientX)}function M(){R=null,window.removeEventListener("mousemove",u),window.removeEventListener("mouseup",M)}function V(r,d){R=r,z(d.clientX),window.addEventListener("mousemove",u),window.addEventListener("mouseup",M)}function B(r){const d=g(r.clientX),f=Math.abs(d-k.value),P=Math.abs(d-w.value);f<=P?A(Math.min(d,w.value),w.value):A(k.value,Math.max(d,k.value))}function v(){y("change",{name:p.name,value:b.value})}function $(r){if(!r){n.value=[],b.value=n.value,y("change",{name:p.name,value:[]});return}const d=[r.min??null,r.max??null];n.value=d,b.value=d,y("change",{name:p.name,value:d})}function j(){n.value=[],b.value=n.value,y("clear",p.name)}return e.watch(()=>p.modelValue,r=>{r!==void 0?n.value=mt(r):(!Array.isArray(n.value)||n.value.length===0)&&(n.value=[])}),i({clear:j,currentValue:b}),e.onBeforeUnmount(()=>{M()}),(r,d)=>{var f,P;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[t.layout==="vertical"&&c.value.length>0?(e.openBlock(),e.createElementBlock("div",Yl,[e.createElementVNode("label",Xl,[e.createElementVNode("span",{class:e.normalizeClass(["flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-full border-2 border-slate-300 transition-colors duration-150",{"border-blue-600":N.value===null}])},[N.value===null?(e.openBlock(),e.createElementBlock("span",Jl)):e.createCommentVNode("",!0)],2),d[5]||(d[5]=e.createElementVNode("span",{class:"text-[15px] text-slate-700 transition-colors duration-150 group-hover:text-slate-900"},"Показати всі",-1)),e.createElementVNode("input",{type:"radio",class:"sr-only",checked:N.value===null,onChange:d[0]||(d[0]=Z=>$(null))},null,40,eo)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,Z=>(e.openBlock(),e.createElementBlock("label",{key:Z.key,class:"group flex cursor-pointer items-center gap-[10px] py-[2px]"},[e.createElementVNode("span",{class:e.normalizeClass(["flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-full border-2 border-slate-300 transition-colors duration-150",{"border-blue-600":N.value===Z.key}])},[N.value===Z.key?(e.openBlock(),e.createElementBlock("span",to)):e.createCommentVNode("",!0)],2),e.createElementVNode("span",lo,e.toDisplayString(Z.label),1),e.createElementVNode("input",{type:"radio",class:"sr-only",checked:N.value===Z.key,onChange:G=>$(Z)},null,40,oo)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout==="vertical"?"mb-2 flex items-center gap-2":"space-y-3 p-2")},[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",no,e.toDisplayString(e.unref(m)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(t.layout==="vertical"?"w-[72px] rounded-lg !border !border-solid !border-slate-200 bg-white px-[10px] py-2 text-[15px] text-slate-700 outline-none transition-[border-color,box-shadow] duration-150 [appearance:textfield] focus:!border-blue-600 focus:shadow-[0_0_0_3px_#2563eb1a] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none":e.unref(a)),placeholder:((f=t.placeholder)==null?void 0:f[0])??e.unref(m)("filter.min"),step:"1",style:{outline:"none"},"onUpdate:modelValue":d[1]||(d[1]=Z=>b.value[0]=Z),disabled:t.disabled},null,10,ro),[[e.vModelText,b.value[0]]]),t.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",ao,"до")):e.createCommentVNode("",!0),t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",io,e.toDisplayString(e.unref(m)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(t.layout==="vertical"?"w-[72px] rounded-lg !border !border-solid !border-slate-200 bg-white px-[10px] py-2 text-[15px] text-slate-700 outline-none transition-[border-color,box-shadow] duration-150 [appearance:textfield] focus:!border-blue-600 focus:shadow-[0_0_0_3px_#2563eb1a] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none":e.unref(a)),placeholder:((P=t.placeholder)==null?void 0:P[1])??e.unref(m)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":d[2]||(d[2]=Z=>b.value[1]=Z),disabled:t.disabled},null,10,so),[[e.vModelText,b.value[1]]]),["popover","inline","vertical"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:3,onClick:v,class:e.normalizeClass(t.layout==="vertical"?"cursor-pointer rounded-lg border border-slate-200 bg-slate-100 px-4 py-2 text-[13px] font-bold tracking-[0.04em] text-slate-700 transition-all duration-150 hover:bg-slate-200 hover:text-slate-900 active:scale-[0.97]":e.unref(l)+" bg-blue-100 hover:bg-blue-200")},e.toDisplayString(t.layout==="vertical"?"Застосувати":e.unref(m)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:4,disabled:!(b.value[0]||b.value[1]),onClick:j,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100")},e.toDisplayString(e.unref(m)("filter.clear")),11,co)):e.createCommentVNode("",!0)],2),t.layout==="vertical"?(e.openBlock(),e.createElementBlock("div",mo,[e.createElementVNode("div",po,[e.createElementVNode("div",{ref_key:"trackRef",ref:C,class:"relative h-1 w-full cursor-pointer rounded-[99px] bg-slate-200",onClick:B},[e.createElementVNode("div",{class:"pointer-events-none absolute top-0 h-full rounded-[99px] bg-blue-600",style:e.normalizeStyle({left:`${_.value}%`,width:`${s.value}%`})},null,4)],512),e.createElementVNode("div",{class:"group absolute top-1/2 z-[2] h-5 w-5 -translate-x-1/2 -translate-y-1/2 touch-none cursor-grab rounded-full border-[2.5px] border-blue-600 bg-white transition-[box-shadow,border-color] duration-150 hover:shadow-[0_0_0_5px_#2563eb26] focus:shadow-[0_0_0_5px_#2563eb26] active:cursor-grabbing active:border-blue-700",role:"slider","aria-valuenow":k.value,"aria-valuemin":L.value,"aria-valuemax":w.value-1,tabindex:"0",style:e.normalizeStyle({left:`${_.value}%`}),onMousedown:d[3]||(d[3]=e.withModifiers(Z=>V("min",Z),["prevent"]))},[e.createElementVNode("div",fo,e.toDisplayString(k.value),1)],44,uo),e.createElementVNode("div",{class:"group absolute top-1/2 z-[2] h-5 w-5 -translate-x-1/2 -translate-y-1/2 touch-none cursor-grab rounded-full border-[2.5px] border-blue-600 bg-white transition-[box-shadow,border-color] duration-150 hover:shadow-[0_0_0_5px_#2563eb26] focus:shadow-[0_0_0_5px_#2563eb26] active:cursor-grabbing active:border-blue-700",role:"slider","aria-valuenow":w.value,"aria-valuemin":k.value+1,"aria-valuemax":h.value,tabindex:"0",style:e.normalizeStyle({left:`${_.value+s.value}%`}),onMousedown:d[4]||(d[4]=e.withModifiers(Z=>V("max",Z),["prevent"]))},[e.createElementVNode("div",yo,e.toDisplayString(w.value),1)],44,go)]),e.createElementVNode("div",ho,[e.createElementVNode("span",null,e.toDisplayString(k.value),1),e.createElementVNode("span",null,e.toDisplayString(w.value),1)])])):e.createCommentVNode("",!0)]),(t.cleanable&&n.value.length,e.createCommentVNode("",!0))],64)}}});class de{static format(i){const o=i.getFullYear(),a=(i.getMonth()+1).toString().padStart(2,"0"),l=i.getDate().toString().padStart(2,"0");return`${o}-${a}-${l}`}static getShiftedDay(i,o=0){const a=i?new Date(i):new Date;return a.setDate(a.getDate()+o),this.format(a)}static getLastWeekRange(i,o,a=0){if(i&&o){const C=new Date(i),b=new Date(o);return C.setDate(C.getDate()+a*7),b.setDate(b.getDate()+a*7),[this.format(C),this.format(b)]}const l=new Date,m=l.getDay(),p=m===0?13:m-1+7,n=new Date(l);n.setDate(l.getDate()-p+a*7);const y=new Date(n);return y.setDate(n.getDate()+6),[this.format(n),this.format(y)]}static getMonthRange(i,o,a=0){let l;i?l=new Date(i):l=new Date,l=new Date(l.getFullYear(),l.getMonth()+a,1);const m=l,p=new Date(l.getFullYear(),l.getMonth()+1,0);return[this.format(m),this.format(p)]}static getQuarterRange(i,o,a=0){const l=i||o,m=l?new Date(l):new Date;let p=Math.floor(m.getMonth()/3);p+=a;const n=(p%4+4)%4*3,y=m.getFullYear()+Math.floor(p/4),C=new Date(y,n,1),b=new Date(y,n+3,0);return[this.format(C),this.format(b)]}static getYear(i,o=0){let a;return i&&/^\d{4}$/.test(i)?a=parseInt(i,10):i?a=new Date(i).getFullYear():a=new Date().getFullYear(),String(a+o)}static getYearRange(i,o=0){let a;return i&&/^\d{4}$/.test(i)?a=parseInt(i,10):i?a=new Date(i).getFullYear():a=new Date().getFullYear(),[this.format(new Date(a+o,0,1)),this.format(new Date(a+o+1,0,0))]}static getRangeFromDaysBefore(i){const o=new Date,a=new Date(o.getTime());return a.setDate(o.getDate()-i),[this.format(a),this.format(o)]}}function kt(t,i){function o(s){if(Array.isArray(s)){const x=s.map(A=>{var R;return((R=A==null?void 0:A.toString)==null?void 0:R.call(A))??""}).slice(0,2);return[x[0]??"",x[1]??""]}if(typeof s=="string"){const x=s.split(",").slice(0,2).map(A=>A.trim());return[x[0]??"",x[1]??""]}return["",""]}const{popoverRef:a}=t,l=ue(),m=e.ref(""),p=e.ref(o(t.modelValue??t.default??[])),n=e.ref(0);function y(){const s=de.getRangeFromDaysBefore(n.value);return p.value=[...s],s}function C(s){var A;m.value=s,(A=a.value)==null||A.close();const x=[];switch(m.value){case"today":x.push(de.getShiftedDay()),x.push(de.getShiftedDay());break;case"week":x.push(...de.getLastWeekRange());break;case"month":x.push(...de.getMonthRange());break;case"quarter":x.push(...de.getQuarterRange());break;case"year":x.push(...de.getYearRange());break;case"last_7_days":n.value=7,y();break;case"range":n.value=7,x.push(...y());break}p.value=[...x]}function b(){const s=[];switch(m.value){case"today":s.push(de.getShiftedDay(p.value[0],1));break;case"week":s.push(...de.getLastWeekRange(p.value[0],p.value[1],1));break;case"month":s.push(...de.getMonthRange(p.value[0],p.value[1],1));break;case"quarter":s.push(...de.getQuarterRange(p.value[0],p.value[1],1));break;case"year":s.push(...de.getYearRange(p.value[0],1));break}p.value=[...s]}function c(){const s=[];switch(m.value){case"today":s.push(de.getShiftedDay(p.value[0],-1));break;case"week":s.push(...de.getLastWeekRange(p.value[0],p.value[1],-1));break;case"month":s.push(...de.getMonthRange(p.value[0],p.value[1],-1));break;case"quarter":s.push(...de.getQuarterRange(p.value[0],p.value[1],-1));break;case"year":s.push(...de.getYearRange(p.value[0],-1));break}p.value=[...s]}const N=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function L(s){const[x,A,R]=s.split("-");return`${R}.${A}.${x}`}function h(s,x="long"){const A=new Date(Date.UTC(2e3,s-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:x,timeZone:"UTC"}).format(A)}function k(s){const{value:x}=p;switch(s){case"today":return L(x[0]);case"range":return"Період";case"week":return x[0]&&x[1]?`${L(x[0])} – ${L(x[1])}`:"";case"quarter":if(x[0]){const A=new Date(x[0]),R=A.getFullYear(),g=A.getMonth();return`${Math.floor(g/3)+1} ${l("filter.quarter")} ${R}`}return"";case"month":if(x[0]){const[A,R]=x[0].split("-");return`${h(parseInt(R,10))} ${A}`}return"";case"year":return x[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const w=e.computed(()=>m.value?k(m.value):t.label??"");function _(){m.value="",p.value=[],i("update:modelValue",[]),i("clear",t.name)}return{activeMode:m,innerValue:p,daysBefore:n,onDaysBeforeChange:y,onSelectChange:C,nextClick:b,prevClick:c,ukMonths:N,formatDisplayDate:L,getModeLabel:k,currentLabel:w,clear:_}}const bo={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},ko={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},wo=["max","disabled"],Bo=["min","disabled"],Co={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Vo=["max","disabled"],Eo={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},No={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},So=["min","disabled"],_o={key:1,class:"flex gap-1 px-2"},Mo=["title","onClick"],Lo={class:"pt-2 px-2"},Do=["disabled"],jo=e.defineComponent({__name:"date-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean,default:!1}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=pt(),m=_e(),p=xl(),n=ue(),y=o,C=e.ref(null),{activeMode:b,innerValue:c,onSelectChange:N,nextClick:L,prevClick:h,clear:k}=kt({...a,popoverRef:C},y);function w(R){if(Array.isArray(R)){const g=R.map(z=>{var u;return((u=z==null?void 0:z.toString)==null?void 0:u.call(z))??""}).slice(0,2);return[g[0]??"",g[1]??""]}if(typeof R=="string"){const g=R.split(",").slice(0,2).map(z=>z.trim());return[g[0]??"",g[1]??""]}return["",""]}e.watch(()=>a.modelValue,R=>{R!==void 0?c.value=w(R):(b.value="",c.value=[])}),e.watch(()=>w(c.value).join(","),()=>{const R=w(c.value),g=w(a.modelValue);R.join(",")!==g.join(",")&&(y("update:modelValue",R),y("change",{name:a.name,value:R}))});const _=["today","week","month","quarter","year"],s={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 x(R){var g;return((g=s[R])==null?void 0:g.label)??n(`filter.${R}`)}function A(R){var g;return((g=s[R])==null?void 0:g.title)??n(`filter.${R}`)}return i({clear:k,popoverRef:C}),(R,g)=>{var z;return e.openBlock(),e.createElementBlock(e.Fragment,null,[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",bo,[e.unref(b)!==""&&e.unref(b)==="range"?(e.openBlock(),e.createElementBlock("div",ko,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(c)[1],locale:"uk-UA","onUpdate:modelValue":g[0]||(g[0]=u=>e.unref(c)[0]=u),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,wo),[[e.vModelText,e.unref(c)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(c)[0],locale:"uk-UA","onUpdate:modelValue":g[1]||(g[1]=u=>e.unref(c)[1]=u),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,Bo),[[e.vModelText,e.unref(c)[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",Co,e.toDisplayString(e.unref(n)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(c)[1],locale:"uk-UA","onUpdate:modelValue":g[2]||(g[2]=u=>e.unref(c)[0]=u),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,Vo),[[e.vModelText,e.unref(c)[0]]])],2),t.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",Eo," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",No,e.toDisplayString(e.unref(n)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(c)[0],locale:"uk-UA","onUpdate:modelValue":g[3]||(g[3]=u=>e.unref(c)[1]=u),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,So),[[e.vModelText,e.unref(c)[1]]])],2)],2),t.hideQuickButtons?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",_o,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(_,u=>e.createElementVNode("button",{key:u,class:e.normalizeClass(e.unref(p)+(e.unref(b)===u?" bg-blue-100":"")),title:A(u),onClick:M=>e.unref(N)(u)},e.toDisplayString(x(u)),11,Mo)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(p)),onClick:g[4]||(g[4]=(...u)=>e.unref(h)&&e.unref(h)(...u))},"<",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(p)),onClick:g[5]||(g[5]=(...u)=>e.unref(L)&&e.unref(L)(...u))},">",2)])),e.createElementVNode("div",Lo,[["popover"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:!((z=e.unref(c))!=null&&z.length)||!e.unref(c)[0]&&!e.unref(c)[1],class:e.normalizeClass(e.unref(m)+"hover:bg-gray-100"),onClick:g[6]||(g[6]=(...u)=>e.unref(k)&&e.unref(k)(...u))},e.toDisplayString(e.unref(n)("filter.clear")),11,Do)):e.createCommentVNode("",!0)])],64)}}});function zo(t,i){const{api:o,options:a=[],limit:l=20,dataKey:m="data",data:p}=t,n=m??p??"data",y=t.multi;function C(T){return Array.isArray(T)?T.flatMap(I=>typeof I=="string"&&I.includes(",")?I.split(",").map(K=>K.trim()).filter(Boolean):I==null||I===""?[]:[I]):typeof T=="string"?T.split(",").map(I=>I.trim()).filter(Boolean):T==null||T===""?[]:[T]}function b(T){return y?C(T):Array.isArray(T)?T[0]:T}const c=e.ref(b(t.modelValue)),N=e.ref(""),L=e.ref(!1),h=e.ref(a),k=e.ref("id"),w=e.ref("text"),_=e.ref(!1),s=e.ref(t.layout!=="popover"&&a.length>l),x=e.ref([]),A=e.ref(0),R=e.ref([]);function g(T){const I=T.find(Boolean)??{},K=["id","value","code","key"].find(Q=>Q in I)??"id",q=["text","label","name","title"].find(Q=>Q in I)??"text";return{autoValueKey:K,autoLabelKey:q}}if(a.length>0){const T=g(a);k.value=T.autoValueKey,w.value=T.autoLabelKey}function z(){return y?C(c.value):c.value===void 0||c.value===null||c.value===""?[]:[c.value]}function u(T){const I=new Map;return T.forEach(K=>{I.set(K[k.value],K)}),Array.from(I.values())}function M(T){const I=z();if(I.length===0)return T;const K=new Set(I),q=T.filter(me=>K.has(me[k.value])),Q=u([...R.value,...q]).filter(me=>K.has(me[k.value])),re=new Set(Q.map(me=>me[k.value])),xe=T.filter(me=>!re.has(me[k.value]));return[...Q,...xe]}const V=e.computed(()=>{if(o)return M(h.value);const T=h.value;if(t.layout==="popover")return M(T);if(!N.value){const q=_.value?T:T.slice(0,l);return M(q)}const I=N.value.toLowerCase(),K=T.filter(q=>String(q[w.value]).toLowerCase().includes(I));return M(K)});let B=null;async function v(T){if(o){L.value=!0;try{const I=new URL(o,window.location.origin);I.searchParams.set("json","1"),I.searchParams.set("key",T),I.searchParams.set("limit",l.toString());const K=await fetch(I.toString());if(!K.ok){je({type:"error",title:"Error",message:"Failed to fetch remote options"}),h.value=[];return}const q=await K.json();if(!q[n]){je({type:"error",title:"Error",message:q}),h.value=[];return}if(h.value=q[n],h.value.length>0){const Q=g(h.value);k.value=Q.autoValueKey,w.value=Q.autoLabelKey}A.value=q.total}catch(I){console.error("Failed to fetch remote options:",I)}finally{L.value=!1}}}async function $(){if(!o)return;const T=z();if(T.length===0){R.value=[];return}try{const I=await Promise.all(T.map(async K=>{const q=new URL(o,window.location.origin);q.searchParams.set("json","1"),q.searchParams.set("val",String(K));const Q=await fetch(q.toString());if(!Q.ok)return[];const re=await Q.json(),xe=Array.isArray(re)?re:re[n];return Array.isArray(xe)?xe:[]}));R.value=u(I.flat())}catch(I){console.error("Failed to fetch pinned selected options:",I)}}e.watch(N,T=>{o&&(B&&clearTimeout(B),B=setTimeout(()=>{v(T)},200))}),e.watch(()=>t.modelValue,T=>{c.value=b(T)},{immediate:!0}),e.watch([c,()=>o],async()=>{o?await $():R.value=[]},{immediate:!0}),e.watch(c,T=>{y?(!Array.isArray(T)||T.length===0)&&(x.value=[]):(T==null||typeof T=="string"&&T==="")&&(x.value=[])});function j(T){return y&&Array.isArray(c.value)?c.value.includes(T[k.value]):c.value&&c.value===T[k.value]}function r(T){if(y&&!Array.isArray(c.value)&&(c.value=[]),y&&Array.isArray(c.value)){const I=c.value.includes(T[k.value]);c.value=I?c.value.filter(K=>K!==T[k.value]):[...c.value,T[k.value]],x.value=I?x.value.filter(K=>K!==T[w.value]):[...x.value,T[w.value]]}else c.value=T[k.value],x.value=T[w.value];i("update:modelValue",c.value),i("change",{name:t.name,value:c.value})}function d(){y?(c.value=[],x.value=[]):(c.value="",x.value=[]),i("update:modelValue",c.value),i("clear",t.name)}function f(){B&&clearTimeout(B),N.value="",_.value=!1}function P(){_.value=!_.value}e.onBeforeUnmount(()=>{B&&clearTimeout(B)});const Z=e.ref(-1);e.watch(V,()=>{Z.value=V.value.length>0?0:-1});function G(T){const I=V.value.length;if(T.key==="ArrowDown")T.preventDefault(),Z.value=(Z.value+1)%I;else if(T.key==="ArrowUp")T.preventDefault(),Z.value=(Z.value-1+I)%I;else if(T.key==="Enter"&&(T.preventDefault(),Z.value>=0&&Z.value<V.value.length)){const K=V.value[Z.value];r(K)}}function J(){o&&h.value.length===0&&N.value.length===0&&v(N.value)}return{innerValue:c,searchTerm:N,filteredOptions:V,isSelected:j,selectItem:r,clear:d,resetSearch:f,toggleShowAll:P,isReqProc:L,showAll:_,isEnableShowAll:s,labelKey:w,valueKey:k,allOptions:h,highlightedIndex:Z,onKeyDown:G,selectedLabels:x,totalCount:A,loadData:J}}const vo=["aria-disabled"],Po={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},Ao=["placeholder","disabled"],$o={key:0,class:"w-full"},Fo={class:"flex flex-col items-center justify-center p-5 text-center"},Ro={class:"max-w-sm mx-auto mt-6"},Zo={class:"font-medium text-gray-800 dark:text-neutral-200"},To={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Ko={key:1,class:"py-2 px-2 border-t"},Oo=["disabled"],Io={class:"text-xs text-gray-500"},Uo=e.defineComponent({__name:"select",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=ue(),l=_e(),m=t,p=o,n=e.ref(null),{innerValue:y,filteredOptions:C,isSelected:b,selectItem:c,clear:N,resetSearch:L,toggleShowAll:h,isReqProc:k,showAll:w,isEnableShowAll:_,searchTerm:s,labelKey:x,valueKey:A,highlightedIndex:R,onKeyDown:g,selectedLabels:z,totalCount:u,loadData:M}=zo({...m,modelValue:m.modelValue},p);function V(r){if(m.disabled){r.preventDefault();return}g(r)}function B(r){m.disabled||c(r)}const v=e.computed(()=>m.multi?Array.isArray(y.value)&&y.value.length>0:y.value!=null&&y.value!==""),$=e.computed(()=>m.multi&&Array.isArray(y.value)?y.value.length:y.value!=null&&y.value!==""?1:0);e.onMounted(()=>{L(),m.layout!=="inline"&&(M(),n.value&&m.layout==="popover"&&!m.disabled&&n.value.focus())}),e.watch(()=>m.modelValue,r=>{r===void 0&&(m.multi?y.value=[]:y.value=void 0)});const j=e.ref([]);return e.watch(R,r=>{var d;r>=0&&j.value[r]&&((d=j.value[r])==null||d.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(C,()=>{j.value=[]}),i({clear:N,inputTextRef:n,selectedLabels:z,loadData:M}),(r,d)=>{var f;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",t.disabled?"pointer-events-none opacity-50":""]),"aria-disabled":t.disabled?!0:void 0},[e.createElementVNode("div",Po,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=P=>e.isRef(s)?s.value=P:null),onKeydown:V,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 disabled:pointer-events-none",placeholder:e.unref(a)("filter.search"),type:"text",disabled:t.disabled,ref_key:"inputTextRef",ref:n},null,40,Ao),[[e.vModelText,e.unref(s)]]),e.createVNode(xt,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(s)!=""&&!t.disabled?(e.openBlock(),e.createBlock(ot,{key:0,onClick:d[1]||(d[1]=P=>s.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(C),(P,Z)=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,count:P.count,label:P[e.unref(x)],color:P.color,type:t.multi?"checkbox":"radio",value:P[e.unref(A)],disabled:t.disabled,"is-selected":e.unref(b)(P),highlighted:Z===e.unref(R),onItemClick:G=>B(P),ref_for:!0,ref:G=>j.value[Z]=G==null?void 0:G.el},null,8,["layout","count","label","color","type","value","disabled","is-selected","highlighted","onItemClick"]))),256))],2),t.type==="select"&&e.unref(C).length===0&&!e.unref(k)?(e.openBlock(),e.createElementBlock("div",$o,[e.createElementVNode("div",Fo,[e.createVNode(tt),e.createElementVNode("div",Ro,[e.createElementVNode("p",Zo,e.toDisplayString(e.unref(a)("filter.notfound")),1),d[6]||(d[6]=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(w)&&e.unref(_)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:d[2]||(d[2]=(...P)=>e.unref(h)&&e.unref(h)(...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(a)("filter.more"))+" ",1),e.createVNode(Ue)])):e.createCommentVNode("",!0),e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:d[3]||(d[3]=(...P)=>e.unref(h)&&e.unref(h)(...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(a)("filter.less"))+" ",1),e.createVNode(lt)])):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",To,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(y))?(f=e.unref(y))==null?void 0:f.length:e.unref(y)!==void 0&&(e.unref(y)||e.unref(y)===null)?1:0)+" / "+e.toDisplayString(e.unref(u))+" "+e.toDisplayString(e.unref(a)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:d[4]||(d[4]=(...P)=>e.unref(N)&&e.unref(N)(...P))},e.toDisplayString(e.unref(a)("filter.clear")),513),[[e.vShow,v.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Ko,[e.createElementVNode("button",{type:"button",disabled:t.disabled||!v.value,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:d[5]||(d[5]=(...P)=>e.unref(N)&&e.unref(N)(...P))},[e.createTextVNode(e.toDisplayString(e.unref(a)("filter.clear"))+" ",1),e.createElementVNode("span",Io,e.toDisplayString($.value)+" з "+e.toDisplayString(e.unref(u)),1)],10,Oo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],10,vo)}}}),Ho=["for","onClick"],Go=["id","name","value"],Wo={class:"block"},qo={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Qo={key:1,class:"pt-2 px-2 border-t"},Yo=["disabled"],Xo={class:"text-xs text-gray-500"},Jo=e.defineComponent({__name:"tag-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=_e(),p=ue(),{innerValue:n,isSelected:y,selectItem:C,clear:b,labelKey:c,valueKey:N,allOptions:L}=a.multi?yt({...a,modelValue:a.modelValue??a.default??[]},l):et({...a,modelValue:a.modelValue!==void 0?a.modelValue:a.default??""},l),h=e.computed(()=>a.multi?Array.isArray(n.value)&&n.value.length>0:n.value!=null&&n.value!==""),k=e.computed(()=>a.multi&&Array.isArray(n.value)?n.value.length:n.value!=null&&n.value!==""?1:0);return i({clear:b}),e.watch(()=>a.modelValue,w=>{w===void 0&&(a.multi?n.value=[]:n.value=void 0)}),(w,_)=>{var s;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(L),x=>(e.openBlock(),e.createElementBlock("label",{key:`item-${x[e.unref(N)]}`,for:`item-${x[e.unref(N)]}`,onClick:e.withModifiers(A=>e.unref(C)(x),["stop","prevent"]),class:e.normalizeClass([e.unref(y)(x)?"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-${x[e.unref(N)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${x[e.unref(N)]}`,value:x[e.unref(N)]},null,8,Go),e.createElementVNode("span",Wo,e.toDisplayString(x[e.unref(c)]),1)],10,Ho))),128))],2),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",qo,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(n))?(s=e.unref(n))==null?void 0:s.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(L).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:_[0]||(_[0]=(...x)=>e.unref(b)&&e.unref(b)(...x))}," Очистити ",512),[[e.vShow,h.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("button",{type:"button",disabled:!h.value,class:e.normalizeClass(e.unref(m)+" hover:bg-gray-100"),onClick:_[1]||(_[1]=(...x)=>e.unref(b)&&e.unref(b)(...x))},[e.createTextVNode(e.toDisplayString(e.unref(p)("filter.clear"))+" ",1),e.createElementVNode("span",Xo,e.toDisplayString(k.value)+" з "+e.toDisplayString(e.unref(L).length),1)],10,Yo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),en=["disabled","title"],tn={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},ln={class:"truncate text-ellipsis text-sm"},on={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"},nn={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"},rn={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"},nt=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:i}){const o=t,a=e.computed(()=>ut(o.mode)),l=e.ref(!1),m=e.ref({top:0,left:0}),p=e.ref(null),n=e.ref(null),y=e.ref(null);let C=null;function b(){const g=n.value,z=y.value;if(!g||!z)return;const u=g.getBoundingClientRect(),M=z.offsetWidth,V=z.offsetHeight,B=window.innerWidth,v=window.innerHeight,$=8;let j=u.bottom+$,{left:r}=u;const d=Math.max(B-M-10,10);if(r=Math.min(r,d),r=Math.max(r,10),j+V>v-10){const f=u.top-V-$;j=f>=10?f:Math.max(v-V-10,10)}j<10&&(j=10),m.value={top:j,left:r}}function c(){e.nextTick(()=>{b(),typeof window<"u"&&typeof window.requestAnimationFrame=="function"&&window.requestAnimationFrame(()=>b())})}function N(){l.value=!l.value,l.value&&(c(),e.nextTick(()=>{var g,z,u,M,V,B,v;(g=o.fieldRef)!=null&&g.inputTextRef&&((M=(u=(z=o.fieldRef)==null?void 0:z.inputTextRef)==null?void 0:u.focus)==null||M.call(u)),(V=o.fieldRef)!=null&&V.loadData&&Promise.resolve((v=(B=o.fieldRef)==null?void 0:B.loadData)==null?void 0:v.call(B)).finally(()=>{l.value&&c()})}))}function L(g){var z,u,M;!((z=p.value)!=null&&z.contains(g.target))&&!((u=y.value)!=null&&u.contains(g.target))&&!((M=n.value)!=null&&M.contains(g.target))&&(l.value=!1)}function h(g){g.key==="Escape"&&(l.value=!1)}const k=e.ref(!1),w=e.ref("ua"),_=g=>{g.detail.key==="locale"&&(w.value=g.detail.newValue)};e.onMounted(()=>{k.value=!0,w.value=localStorage.locale,window.addEventListener("storage",_),document.addEventListener("click",L,!0),document.addEventListener("keydown",h),window.addEventListener("scroll",b,!0),window.addEventListener("resize",b,!0),typeof ResizeObserver<"u"&&(C=new ResizeObserver(()=>{l.value&&c()}))}),e.onBeforeUnmount(()=>{window.removeEventListener("storage",_),document.removeEventListener("click",L,!0),document.removeEventListener("keydown",h),window.removeEventListener("scroll",b,!0),window.removeEventListener("resize",b,!0),C==null||C.disconnect(),C=null});function s(){l.value=!1}i({close:s}),e.watch([k,l,y],([g,z,u])=>{g&&z&&u&&(c(),C==null||C.observe(u))});function x(g){if(Array.isArray(g))return g.filter(z=>z!=null&&z!=="").length;if(g&&typeof g=="object")return Object.values(g).filter(z=>z!=null&&z!=="").length;if(typeof g=="string"){const z=g.split(",").map(u=>u.trim()).filter(Boolean);return z.length>0?z.length:0}return typeof g=="number"?Number.isNaN(g)?0:1:g===null||g!==void 0?1:0}const A=e.computed(()=>{var u;const g=(u=o.fieldRef)==null?void 0:u.selectedLabels,z=x(g);return z>0?z:x(o.currentValue)}),R=e.computed(()=>{var z;const g=(z=o.fieldRef)==null?void 0:z.selectedLabels;return!g||["inline"].includes(o.layout||"")?o[w.value]||(o.label??""):Array.isArray(g)?g.length>0?g.join(", "):o.label??"":String(g)});return(g,z)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:p},[e.createElementVNode("button",{onClick:N,disabled:t.disabled,ref_key:"triggerRef",ref:n,title:t.label,class:e.normalizeClass([a.value,t.width?e.unref(bt).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",tn,[e.createElementVNode("span",ln,e.toDisplayString(R.value),1),t.layout==="inline"&&A.value>0?(e.openBlock(),e.createElementBlock("span",on,e.toDisplayString(A.value),1)):e.createCommentVNode("",!0)]),e.createVNode(Ue,{class:"h-4 w-4 text-neutral-500"})],10,en),k.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:y,class:"vsTailwind vs-popover__content w-fit fixed z-[1000]",style:e.normalizeStyle({top:`${m.value.top}px`,left:`${m.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",nn,[e.createElementVNode("div",rn,[e.renderSlot(g.$slots,"default")])])],4),[[e.vShow,l.value]])])):e.createCommentVNode("",!0)],512))}}),an={},sn={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 cn(t,i){return e.openBlock(),e.createElementBlock("svg",sn,[...i[0]||(i[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const dn=he(an,[["render",cn]]),mn={},pn={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 un(t,i){return e.openBlock(),e.createElementBlock("svg",pn,[...i[0]||(i[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const fn=he(mn,[["render",un]]),gn={class:"flex gap-1"},yn={class:"mb-1"},hn={class:"mb-1"},xn={class:"inline-flex rounded-sm shrink-0 pl-1"},bn=["title"],kn={class:"inline-flex rounded-sm shrink-0 pl-1"},wn=["title"],Bn={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},Cn=["max","value","disabled"],Vn=["min","value","disabled"],En=e.defineComponent({__name:"date-input-inline",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=ue(),l=t,m=o,p=e.ref(null),{activeMode:n,innerValue:y,onSelectChange:C,nextClick:b,prevClick:c,currentLabel:N,clear:L}=kt({...l,popoverRef:p},m);function h(_){if(Array.isArray(_)){const s=_.map(x=>{var A;return((A=x==null?void 0:x.toString)==null?void 0:A.call(x))??""}).slice(0,2);return[s[0]??"",s[1]??""]}if(typeof _=="string"){const s=_.split(",").slice(0,2).map(x=>x.trim());return[s[0]??"",s[1]??""]}return["",""]}e.watch(()=>l.modelValue,_=>{_!==void 0?y.value=h(_):(n.value="",y.value=[])}),e.watch(()=>h(y.value).join(","),()=>{const _=h(y.value),s=h(l.modelValue);_.join(",")!==s.join(",")&&(m("update:modelValue",_),m("change",{name:l.name,value:_}))});function k(_){const s=Array.isArray(y.value)?[...y.value]:[];y.value=[_,s[1]||""]}function w(_){const s=Array.isArray(y.value)?[...y.value]:[];y.value=[s[0]||"",_]}return i({clear:L,popoverRef:p}),(_,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",gn,[e.createVNode(nt,{ref_key:"popoverRef",ref:p,label:e.unref(N),"current-value":e.unref(y),mode:t.mode,width:typeof t.width=="number"&&e.unref(y).length?t.width-70:t.width,onClear:e.unref(L),layout:t.layout,class:e.normalizeClass(t.itemClass)},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[0]||(s[0]=x=>e.unref(C)("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(a)("filter.period"))+" ",1),e.unref(n)==="range"?(e.openBlock(),e.createBlock(Ve,{key:0})):e.createCommentVNode("",!0)])]),s[12]||(s[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:s[1]||(s[1]=x=>e.unref(C)("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(a)("filter.today"))+" ",1),e.unref(n)==="today"?(e.openBlock(),e.createBlock(Ve,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[2]||(s[2]=x=>e.unref(C)("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(a)("filter.week"))+" ",1),e.unref(n)==="week"?(e.openBlock(),e.createBlock(Ve,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[3]||(s[3]=x=>e.unref(C)("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(a)("filter.month"))+" ",1),e.unref(n)==="month"?(e.openBlock(),e.createBlock(Ve,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[4]||(s[4]=x=>e.unref(C)("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(a)("filter.quarter"))+" ",1),e.unref(n)==="quarter"?(e.openBlock(),e.createBlock(Ve,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",yn,[e.createElementVNode("button",{type:"button",onClick:s[5]||(s[5]=x=>e.unref(C)("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(a)("filter.year"))+" ",1),e.unref(n)==="year"?(e.openBlock(),e.createBlock(Ve,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",hn,[e.createElementVNode("button",{type:"button",onClick:s[6]||(s[6]=x=>e.unref(L)()),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(a)("filter.alltime"))+" ",1),e.unref(y)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Ve,{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",xn,[e.createElementVNode("button",{type:"button",title:e.unref(a)("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:s[7]||(s[7]=(...x)=>e.unref(c)&&e.unref(c)(...x))},[e.createVNode(dn)],8,bn)]),e.createElementVNode("div",kn,[e.createElementVNode("button",{type:"button",title:e.unref(a)("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:s[8]||(s[8]=(...x)=>e.unref(b)&&e.unref(b)(...x))},[e.createVNode(fn)],8,wn)])],64)):e.createCommentVNode("",!0),e.unref(n)!==""&&e.unref(n)==="range"?(e.openBlock(),e.createElementBlock("div",Bn,[e.createElementVNode("input",{type:"date",max:e.unref(y)[1],locale:"uk-UA",value:e.unref(y)[0],onInput:s[9]||(s[9]=x=>k(x.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,Cn),e.createElementVNode("input",{type:"date",min:e.unref(y)[0],locale:"uk-UA",value:e.unref(y)[1],onInput:s[10]||(s[10]=x=>w(x.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,Vn)])):e.createCommentVNode("",!0)]),(t.cleanable,e.createCommentVNode("",!0))],64))}}),Nn=["disabled","onClick"],Sn={key:0,class:"pt-2 px-2 border-t"},_n=["disabled"],Mn=e.defineComponent({__name:"button-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=_e(),p=ue(),{innerValue:n,isSelected:y,selectItem:C,clear:b,labelKey:c,valueKey:N,allOptions:L}=et({...a,modelValue:a.modelValue??a.default??""},l),h=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value===""));function k(_){return y(_)?["bg-blue-600 text-white"].filter(s=>typeof s=="string"&&s.trim().length>0).join(" "):["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter(s=>typeof s=="string"&&s.trim().length>0).join(" ")}function w(_){a.disabled||C(_)}return i({clear:b}),e.watch(()=>a.modelValue,_=>{_===void 0&&(n.value=void 0)}),(_,s)=>(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(L),x=>(e.openBlock(),e.createElementBlock("button",{key:x[e.unref(N)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",k(x)]),disabled:t.disabled,onClick:A=>w(x)},e.toDisplayString(x[e.unref(c)]),11,Nn))),128))],2),t.cleanable&&t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Sn,[e.createElementVNode("button",{type:"button",disabled:!h.value,class:e.normalizeClass(e.unref(m)+" hover:bg-gray-100"),onClick:s[0]||(s[0]=(...x)=>e.unref(b)&&e.unref(b)(...x))},e.toDisplayString(e.unref(p)("filter.clear")),11,_n)])):e.createCommentVNode("",!0)],64))}}),wt={radio:zl,checkbox:ht,check:ht,text:Ql,range:xo,date:jo,select:Uo,tag:Jo,button:Mn,"date:inline":En};function rt(t,i){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"&&i&&i==="inline"&&(o="date:inline"),{component:wt[o]||wt.text,type:o}}const Ln={style:{display:"inline-flex",margin:"0px",width:"100%"}},Dn={class:"filter-card relative w-full mb-2 p-4 bg-white rounded-md shadow-sm"},jn={class:"rrf-header block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},zn={class:"flex items-center"},vn={class:"filter-title text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},Pn={class:"filter-layout__body"},An=e.defineComponent({__name:"vertical-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean},ignore:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=e.ref(),p=e.computed(()=>rt(a.type,a.layout)),n=e.computed({get:()=>a.modelValue,set:c=>l("update:modelValue",c)});function y(c){l("clear",c)}function C(c,N){l("change",{name:c,value:N}),a.modelValue!==void 0&&l("update:modelValue",N)}function b(){var c,N;(N=(c=m.value)==null?void 0:c.clear)==null||N.call(c),l("clear",a.name)}return e.watch(()=>a.default,c=>{n.value=c}),e.watch(()=>a.modelValue,c=>{n.value=c}),i({filterRef:m}),(c,N)=>{var L,h,k;return e.openBlock(),e.createElementBlock("div",Ln,[e.createElementVNode("div",Dn,[e.createElementVNode("div",jn,[e.createElementVNode("div",zn,[e.createElementVNode("span",vn,e.toDisplayString(t.label),1),N[4]||(N[4]=e.createStaticVNode('<div class="relative ml-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-help-circle text-slate-400 cursor-help"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg></div>',1))]),typeof n.value=="string"&&n.value.trim()!==""||Array.isArray(n.value)&&n.value.length>0&&n.value.some(w=>w!==void 0)||n.value===null?(e.openBlock(),e.createBlock(sl,{key:0,class:"text-slate-400 ml-auto cursor-pointer",onClick:b})):e.createCommentVNode("",!0)]),e.createElementVNode("div",Pn,[((L=p.value)==null?void 0:L.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((h=p.value)==null?void 0:h.component),e.mergeProps({key:0},a,{type:(k=p.value)==null?void 0:k.type,class:a.itemClass,onChange:N[0]||(N[0]=w=>C(w.name,w.value)),onClear:N[1]||(N[1]=w=>y(w)),ref_key:"filterRef",ref:m}),null,16,["type","class"])):(e.openBlock(),e.createBlock(nt,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:b,fieldRef:m.value,width:void 0,disabled:t.disabled,layout:"vertical"},{default:e.withCtx(()=>{var w,_;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((w=p.value)==null?void 0:w.component),e.mergeProps({ref_key:"filterRef",ref:m},a,{type:(_=p.value)==null?void 0:_.type,class:a.itemClass,onChange:N[2]||(N[2]=s=>C(s.name,s.value)),onClear:N[3]||(N[3]=s=>y(s))}),null,16,["type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),Bt=e.defineComponent({__name:"inline-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean},ignore:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=e.ref(),p=e.computed(()=>rt(a.type,a.layout)),n=e.computed({get:()=>a.modelValue,set:b=>l("update:modelValue",b)});function y(b=a.name){l("clear",b)}function C(b,c){l("change",{name:b,value:c}),a.modelValue!==void 0&&l("update:modelValue",c)}return e.watch(()=>a.default,b=>{n.value=b}),e.watch(()=>a.modelValue,b=>{n.value=b}),i({filterRef:m}),(b,c)=>{var N,L;return["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((N=p.value)==null?void 0:N.component),e.mergeProps({key:0},a,{type:(L=p.value)==null?void 0:L.type,class:t.itemClass,onChange:c[0]||(c[0]=h=>C(h.name,h.value)),onClear:c[1]||(c[1]=h=>y(h)),disabled:t.disabled,modelValue:n.value,"onUpdate:modelValue":c[2]||(c[2]=h=>n.value=h)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(nt,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:y,fieldRef:m.value,width:a.width,disabled:t.disabled,layout:"inline"},{default:e.withCtx(()=>{var h,k;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((h=p.value)==null?void 0:h.component),e.mergeProps({ref_key:"filterRef",ref:m},a,{modelValue:n.value,"onUpdate:modelValue":c[3]||(c[3]=w=>n.value=w),type:(k=p.value)==null?void 0:k.type,class:a.itemClass,onChange:c[4]||(c[4]=w=>C(w.name,w.value)),onClear:c[5]||(c[5]=w=>y(w))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),$n=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean},ignore:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=e.ref(),p=e.computed(()=>rt(a.type,a.layout)),n=e.computed({get:()=>a.modelValue,set:b=>l("update:modelValue",b)});function y(b){l("clear",b)}function C(b,c){l("change",{name:b,value:c}),a.modelValue!==void 0&&l("update:modelValue",c)}return e.watch(()=>a.default,b=>{n.value=b}),e.watch(()=>a.modelValue,b=>{n.value=b}),e.watch(()=>a,b=>{n.value=b}),i({filterRef:m}),(b,c)=>{var N,L;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((N=p.value)==null?void 0:N.component),e.mergeProps(a,{type:(L=p.value)==null?void 0:L.type,class:a.itemClass,modelValue:n.value,"onUpdate:modelValue":c[0]||(c[0]=h=>n.value=h),onChange:c[1]||(c[1]=h=>C(h.name,h.value)),onClear:c[2]||(c[2]=h=>y(h)),ref_key:"filterRef",ref:m}),null,16,["type","class","modelValue"])}}}),ie=e.defineComponent({__name:"filter-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},min:{},max:{},placeholder:{},api:{},data:{},parent:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},ignore:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean,default:!0},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{default:"name"},ua:{},itemClass:{},hideQuickButtons:{type:Boolean}},emits:["update:modelValue","change","clear"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=e.ref(),p=e.computed({get:()=>a.modelValue,set:b=>l("update:modelValue",b)});function n(b){l("clear",b)}function y(b,c){l("change",{name:b,value:c}),a.modelValue!==void 0&&l("update:modelValue",c)}e.watch(()=>a.default,b=>{p.value=b}),e.watch(()=>a.modelValue,b=>{p.value=b}),i({filterRef:m});function C(){switch(a.layout){case"inline":return Bt;case"vertical":return An;case"popover":return $n;default:return Bt}}return(b,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C()),e.mergeProps(a,{onChange:c[0]||(c[0]=N=>y(N.name,N.value)),onClear:c[1]||(c[1]=N=>n(N)),modelValue:p.value,"onUpdate:modelValue":c[2]||(c[2]=N=>p.value=N)}),null,16,["modelValue"]))}});function He(t,i){const{slots:o}=t,a=u=>u?JSON.parse(JSON.stringify(e.toRaw(u))):{},l=e.ref(a(t.value)),m=e.computed(()=>{var M;const u=((M=t.schema)==null?void 0:M.value)??t.schema??{};return u&&!Array.isArray(u)?u:{}});e.watch(()=>t.value,u=>{l.value=a(u)},{deep:!0,immediate:!0});const p=e.computed(()=>{var u;return(e.toRaw((u=o==null?void 0:o.default)==null?void 0:u.call(o))??[]).flatMap(M=>Array.isArray(M.children)?M.children:[M])}),n=e.computed(()=>Object.entries(m.value).filter(([,u])=>u==null?void 0:u.ignore)),y=e.computed(()=>Object.entries(m.value).filter(([,u])=>!(u!=null&&u.ignore))),C=e.computed(()=>p.value.filter(u=>{var M;return(M=u==null?void 0:u.props)==null?void 0:M.ignore})),b=e.computed(()=>p.value.filter(u=>{var M;return!((M=u==null?void 0:u.props)!=null&&M.ignore)}));function c(u){var M;return!!((M=m.value[u])!=null&&M.ignore)||!!p.value.find(V=>{var B,v;return((B=V==null?void 0:V.props)==null?void 0:B.name)===u&&((v=V==null?void 0:V.props)==null?void 0:v.ignore)})}function N(u){c(u)||(delete l.value[u],i("clear",{data:e.toRaw(l.value),name:u}))}function L(u,M){c(u)||(M===void 0?N(u):l.value={...l.value,[u]:M},i("change",{data:e.toRaw(l.value),name:u,value:M}))}const h=e.computed(()=>C.value.map(u=>{var B,v,$,j,r;const M=(B=u.props)==null?void 0:B.name,V=!!((v=u.props)!=null&&v.disabled||($=t.exclusiveDisabledKeys)!=null&&$[M]);return e.cloneVNode(u,{...u.props,layout:t.view,showClean:!0,disabled:V,class:[t.itemClass,(j=u.props)==null?void 0:j.class],itemClass:[t.itemClass,(r=u.props)==null?void 0:r.itemClass].filter(d=>typeof d=="string"&&d.trim().length>0).join(" ")||void 0})})),k=e.computed(()=>b.value.map(u=>{var B,v,$,j,r;const M=(B=u.props)==null?void 0:B.name,V=!!((v=u.props)!=null&&v.disabled||($=t.exclusiveDisabledKeys)!=null&&$[M]);return e.cloneVNode(u,{...u.props,layout:t.view,showClean:!0,disabled:V,modelValue:l.value[M],"onUpdate:modelValue":d=>{L(M,d)},onClear:()=>N(M),class:[t.itemClass,(j=u.props)==null?void 0:j.class],itemClass:[t.itemClass,(r=u.props)==null?void 0:r.itemClass].filter(d=>typeof d=="string"&&d.trim().length>0).join(" ")||void 0})})),w=e.computed(()=>new Map(k.value.map(u=>{var V;const M=(V=u.props)==null?void 0:V.name;return M?[M,u]:null}).filter(u=>u!==null)));function _(u=!1){l.value={},u||i("clearAll",{data:e.toRaw(l.value),name:"ALL"})}const s=e.ref(""),x=e.computed(()=>Object.keys(m.value).length?Object.entries(l.value).filter(([u,M])=>{var V;return!(u in m.value)||(V=m.value[u])!=null&&V.ignore?!1:Array.isArray(M)?M.some(B=>B!==""&&B!==void 0&&B!==null):M!==""&&M!==void 0&&M!==null}).length:0),A=e.ref();e.watch(s,async()=>{var u,M;await e.nextTick(),(M=(u=A==null?void 0:A.value)==null?void 0:u.filterRef)!=null&&M.inputTextRef&&A.value.filterRef.inputTextRef.focus()});const R=e.computed(()=>Object.keys(m.value).length?Object.fromEntries(y.value.slice(0,t.limit)):{}),g=e.computed(()=>{if(k.value.length===0)return[];let u=0;if(Object.keys(m.value).length){const M=y.value.length;t.limit&&M<t.limit?u=t.limit-M:u=0}return k.value.slice(0,u)}),z=e.computed(()=>k.value.length===0?[]:t.view!=="inline"?k.value:k.value.slice(g.value.length));return{activeFilter:l,activeFilterCount:x,onFilterChange:L,clearFilter:N,clearAllFilters:_,ignoredSchemaEntries:n,visibleSchemaEntries:y,limitedSchema:R,ignoredFiltersSlot:h,filtersSlot:k,limitedFiltersSlot:g,popoverFiltersSlot:z,vnodeMap:w,selectedFilter:s,filterRef:A}}const Fn=e.defineComponent({__name:"popover",emits:["open","close"],setup(t,{emit:i}){const o=e.ref(!1),a=e.ref(null),l=e.ref(null),m=e.ref(null),p=e.ref({top:"0px",left:"0px",position:"absolute"}),n=e.ref(!1);function y(){o.value=!o.value}function C(){const h=m.value,k=a.value;if(!h||!k)return;const{left:w,bottom:_}=h.getBoundingClientRect();requestAnimationFrame(()=>{if(!k)return;const{width:s}=k.getBoundingClientRect(),x=k.offsetWidth||s,A=window.innerWidth||document.documentElement.clientWidth,R=A-w;let g=w;x>R&&(g=A-x-18),g<18&&(g=18);const z=A-x-18;g>z&&(g=Math.max(18,z)),p.value={position:"fixed",top:`${_+18}px`,left:`${g}px`},n.value=!0})}const b=e.computed(()=>Object.entries(p.value).map(h=>h.join(":")).join(";"));function c(h){var w,_;const k=h.target;!((w=m.value)!=null&&w.contains(h.target))&&!((_=a.value)!=null&&_.contains(h.target))&&!k.closest("[data-inside-popover]")&&(o.value=!1)}const N=e.ref(!1);e.onMounted(()=>{N.value=!0}),e.onMounted(()=>{var h,k;m.value=((h=l.value)==null?void 0:h.querySelector("[data-popover-trigger]"))||null,(k=m.value)==null||k.addEventListener("click",y),document.addEventListener("click",c),window.addEventListener("resize",C),window.addEventListener("scroll",C,!0)}),e.onBeforeUnmount(()=>{var h;(h=m.value)==null||h.removeEventListener("click",y),document.removeEventListener("click",c),window.removeEventListener("resize",C),window.removeEventListener("scroll",C,!0)});const L=i;return e.watch(o,async h=>{h?(n.value=!1,L("open"),await e.nextTick(),requestAnimationFrame(()=>{C()})):(L("close"),n.value=!1)}),(h,k)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:l},[e.renderSlot(h.$slots,"trigger"),N.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:a,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([b.value,{visibility:n.value?"visible":"hidden",opacity:n.value?1:0}])},[e.renderSlot(h.$slots,"default")],4),[[e.vShow,o.value]])])):e.createCommentVNode("",!0)],512))}}),Rn={},Zn={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 Tn(t,i){return e.openBlock(),e.createElementBlock("svg",Zn,[...i[0]||(i[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)])])}const Ct=he(Rn,[["render",Tn]]),Kn={class:"flex items-center gap-2 overflow-hidden"},On={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"},In={class:"flex max-h-[400px] md:max-h-[400px]"},Un={class:"w-[150px] sm:w-[180px] md:w-64 border-r border-gray-200 overflow-y-auto"},Hn={class:"p-2 md:p-4 border-b"},Gn={class:"text-xs md:text-sm text-gray-600"},Wn={class:"p-1 md:p-2"},qn=["disabled","onClick"],Qn={class:"flex items-center gap-1.5 md:gap-2"},Yn={class:"text-xs md:text-sm font-medium truncate"},Xn={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"},Jn=["disabled","onClick"],er={class:"flex items-center gap-1.5 md:gap-2"},tr={class:"text-xs md:text-sm font-medium line-clamp-3"},lr={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"},or=["disabled","onClick"],nr={class:"flex items-center gap-1.5 md:gap-2"},rr={class:"text-xs md:text-sm font-medium line-clamp-3"},ar={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"},ir=["disabled","onClick"],sr={class:"flex items-center gap-1.5 md:gap-2"},cr={class:"text-xs md:text-sm font-medium truncate"},dr={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"},mr={key:0,class:"p-1 md:p-2 border-t"},pr={class:"flex-1 min-h-[250px] md:min-h-[300px] overflow-y-auto"},ur={key:0,class:"flex items-center justify-center h-full text-gray-500"},fr={class:"text-xs md:text-sm"},Vt=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:{},exclusiveGroups:{},exclusiveDisabledKeys:{}},emits:["change","clear","clearAll"],setup(t,{expose:i,emit:o}){const a=ue(),l=t,m=ut(l.mode),p=e.useSlots(),n=o,y=e.ref({}),{activeFilter:C,activeFilterCount:b,onFilterChange:c,clearFilter:N,clearAllFilters:L,ignoredSchemaEntries:h,visibleSchemaEntries:k,ignoredFiltersSlot:w,popoverFiltersSlot:_,selectedFilter:s,filterRef:x}=He({...l,schema:y,slots:p},n),A=e.computed(()=>l.badgeCount??b.value),R=e.computed(()=>w.value.find(j=>{var r;return((r=j.props)==null?void 0:r.name)===s.value})??null),g=e.computed(()=>h.value.find(([j])=>j===s.value)??null),z=e.computed(()=>k.value.find(([j])=>j===s.value)??null),u=e.computed(()=>_.value.find(j=>{var r;return((r=j.props)==null?void 0:r.name)===s.value})??null);function M(j){if(Array.isArray(j))return j.filter(r=>r!=null&&r!=="").length;if(j&&typeof j=="object")return Object.values(j).filter(r=>r!=null&&r!=="").length;if(typeof j=="string"){const r=j.split(",").map(d=>d.trim()).filter(Boolean);return r.length>0?r.length:0}return j===null||j!==void 0&&j!==""?1:0}function V(j){return C.value?M(C.value[j]):0}function B(j){return!!j&&typeof j=="object"&&!Array.isArray(j)}function v(j){var r;return((r=Object.entries(j).find(([,d])=>!(d!=null&&d.disabled)))==null?void 0:r[0])??""}function $(){var r,d,f,P,Z,G,J;if(w.value.length>0){const T=w.value.find(I=>{var K;return!((K=I.props)!=null&&K.disabled)});s.value=((r=T==null?void 0:T.props)==null?void 0:r.name)??((f=(d=w.value[0])==null?void 0:d.props)==null?void 0:f.name)??"";return}if(h.value.length>0){const T=h.value.find(([,I])=>!(I!=null&&I.disabled));s.value=(T==null?void 0:T[0])??((P=h.value[0])==null?void 0:P[0])??"";return}const j=Object.fromEntries(k.value);if(j&&B(j))s.value=v(j);else if(_.value.length>0){const T=_.value.find(I=>{var K;return!((K=I.props)!=null&&K.disabled)});s.value=((Z=T==null?void 0:T.props)==null?void 0:Z.name)??((J=(G=_.value[0])==null?void 0:G.props)==null?void 0:J.name)??""}else s.value=""}return e.watch([k,s],()=>{var d;const j=s.value,r=Object.fromEntries(k.value);!j||!r||!B(r)||(d=r[j])!=null&&d.disabled&&(s.value=v(r))},{deep:!0}),e.watch(()=>l.schema,j=>{y.value=j??{}},{deep:!0,immediate:!0}),i({clearFilter:N,clearAllFilters:L}),(j,r)=>(e.openBlock(),e.createBlock(Fn,{onOpen:$,onClose:r[7]||(r[7]=d=>s.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,e.unref(m),"flex items-center justify-between gap-2",A.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",Kn,[e.createVNode(Ct,{class:"h-4 w-4"}),r[8]||(r[8]=e.createElementVNode("span",{class:"text-sm font-medium"},"Фільтр",-1))]),A.value>0?(e.openBlock(),e.createElementBlock("span",On,e.toDisplayString(A.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>{var d,f,P,Z,G,J,T,I;return[e.createElementVNode("div",In,[e.createElementVNode("div",Un,[e.createElementVNode("div",Hn,[e.createElementVNode("p",Gn,e.toDisplayString(e.unref(a)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",Wn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(w),(K,q)=>{var Q;return e.openBlock(),e.createElementBlock("button",{key:"ignored-slot-"+q,type:"button",disabled:!!((Q=K.props)!=null&&Q.disabled),onClick:re=>s.value=K.props.name,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 disabled:pointer-events-none disabled:opacity-50",e.unref(s)===K.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Qn,[e.createElementVNode("span",Yn,e.toDisplayString(K.props.label),1)]),V(K.props.name)>0?(e.openBlock(),e.createElementBlock("div",Xn,e.toDisplayString(V(K.props.name)),1)):e.createCommentVNode("",!0)],10,qn)}),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),([K,q])=>(e.openBlock(),e.createElementBlock("button",{key:"ignored-schema-"+K,type:"button",disabled:!!(q!=null&&q.disabled),onClick:Q=>s.value=K,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 disabled:pointer-events-none disabled:opacity-50",e.unref(s)===K?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",er,[e.createElementVNode("span",tr,e.toDisplayString(q.label),1)]),V(K)>0?(e.openBlock(),e.createElementBlock("div",lr,e.toDisplayString(V(K)),1)):e.createCommentVNode("",!0)],10,Jn))),128)),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(k),([K,q])=>(e.openBlock(),e.createElementBlock("button",{key:K,type:"button",disabled:!!(q!=null&&q.disabled),onClick:Q=>s.value=K,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 disabled:pointer-events-none disabled:opacity-50",e.unref(s)===K?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",nr,[e.createElementVNode("span",rr,e.toDisplayString(q.label),1)]),V(K)>0?(e.openBlock(),e.createElementBlock("div",ar,e.toDisplayString(V(K)),1)):e.createCommentVNode("",!0)],10,or))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(_),(K,q)=>{var Q;return e.openBlock(),e.createElementBlock("button",{key:"slot-"+q,type:"button",disabled:!!((Q=K.props)!=null&&Q.disabled),onClick:re=>s.value=K.props.name,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 disabled:pointer-events-none disabled:opacity-50",e.unref(s)===K.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",sr,[e.createElementVNode("span",cr,e.toDisplayString(K.props.label),1)]),V(K.props.name)>0?(e.openBlock(),e.createElementBlock("div",dr,e.toDisplayString(V(K.props.name)),1)):e.createCommentVNode("",!0)],10,ir)}),128))]),e.unref(b)>0?(e.openBlock(),e.createElementBlock("div",mr,[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:r[0]||(r[0]=K=>e.unref(L)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",pr,[e.unref(s)===""?(e.openBlock(),e.createElementBlock("div",ur,[e.createElementVNode("p",fr,e.toDisplayString(e.unref(a)("filter.selectFieldHelp")),1)])):e.createCommentVNode("",!0),e.unref(s)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[R.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`ignored-slot-${R.value.props.name??""}`,layout:"popover",ref_key:"filterRef",ref:x},R.value.props,{class:[t.itemClass,(d=R.value.props)==null?void 0:d.class],"item-class":[t.itemClass,(f=R.value.props)==null?void 0:f.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])):g.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`ignored-schema-${g.value[0]}`,layout:"popover",ref_key:"filterRef",ref:x},g.value[1],{class:[t.itemClass,(P=g.value[1])==null?void 0:P.class],"item-class":[t.itemClass,(Z=g.value[1])==null?void 0:Z.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])):e.createCommentVNode("",!0),z.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`schema-${z.value[0]}`,layout:"popover",ref_key:"filterRef",ref:x},z.value[1],{class:[t.itemClass,(G=z.value[1])==null?void 0:G.class],"item-class":[t.itemClass,(J=z.value[1])==null?void 0:J.itemClass].filter(Boolean).join(" ")||void 0,onChange:r[1]||(r[1]=K=>e.unref(c)(K.name,K.value)),onClear:r[2]||(r[2]=K=>{e.unref(N)(K),e.unref(c)(K,void 0)}),modelValue:e.unref(C)[z.value[0]],"onUpdate:modelValue":r[3]||(r[3]=K=>e.unref(C)[z.value[0]]=K),cleanable:!0}),null,16,["class","item-class","modelValue"])):u.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`slot-${u.value.props.name??""}`,layout:"popover",ref_key:"filterRef",ref:x},u.value.props,{class:[t.itemClass,(T=u.value.props)==null?void 0:T.class],"item-class":[t.itemClass,(I=u.value.props)==null?void 0:I.itemClass].filter(Boolean).join(" ")||void 0,onChange:r[4]||(r[4]=K=>e.unref(c)(K.name,K.value)),onClear:r[5]||(r[5]=K=>{e.unref(N)(K),e.unref(c)(K,void 0)}),modelValue:e.unref(C)[u.value.props.name],"onUpdate:modelValue":r[6]||(r[6]=K=>e.unref(C)[u.value.props.name]=K),cleanable:!0}),null,16,["class","item-class","modelValue"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)])])]}),_:1}))}}),gr={class:"flex gap-1 items-center flex-wrap"},Et=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:{},exclusiveGroups:{},exclusiveDisabledKeys:{}},emits:["change","clear","clearAll"],setup(t,{expose:i,emit:o}){const a=ue(),l=t,m=o,p=e.useSlots(),n=e.ref({}),y=e.computed(()=>w.value.length>l.limit),{activeFilter:C,activeFilterCount:b,onFilterChange:c,clearFilter:N,clearAllFilters:L,ignoredSchemaEntries:h,ignoredFiltersSlot:k,visibleSchemaEntries:w,limitedSchema:_,filtersSlot:s,limitedFiltersSlot:x}=He({...l,schema:n,slots:p},m);function A(V){return Array.isArray(V)?V.some(B=>B!==""&&B!==void 0&&B!==null):V===null?!0:V&&typeof V=="object"?Object.values(V).some(B=>B!==""&&B!==void 0&&B!==null):V!==""&&V!==void 0}const R=e.computed(()=>{const V=[...h.value.map(([$])=>$),...Object.keys(_.value??{})],B=x.value.map($=>{var j;return(j=$.props)==null?void 0:j.name}).filter($=>typeof $=="string"),v=k.value.map($=>{var j;return(j=$.props)==null?void 0:j.name}).filter($=>typeof $=="string");return new Set([...V,...v,...B])}),g=e.computed(()=>Object.entries(C.value??{}).filter(([V,B])=>R.value.has(V)&&A(B)).length),z=e.computed(()=>{const V=b.value??0,B=g.value??0;return Math.max(V-B,0)}),u=e.ref();function M(){u.value&&u.value.clearAllFilters(!0),L()}return e.watch(()=>l.schema,V=>{n.value=V},{deep:!0,immediate:!0}),i({clearFilter:N,clearAllFilters:L}),(V,B)=>(e.openBlock(),e.createElementBlock("div",gr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),([v,$])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-schema-"+v,layout:"inline",mode:t.mode,width:t.width?t.width:$==null?void 0:$.width},{ref_for:!0},$,{class:[t.itemClass,$==null?void 0:$.class],"item-class":[t.itemClass,$==null?void 0:$.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["mode","width","class","item-class"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),(v,$)=>{var j,r;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-slot-"+$,layout:"inline"},{ref_for:!0},v.props,{class:[t.itemClass,(j=v.props)==null?void 0:j.class],"item-class":[t.itemClass,(r=v.props)==null?void 0:r.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])}),128)),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(_)),([v,$])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:v,mode:t.mode,width:t.width?t.width:$==null?void 0:$.width},{ref_for:!0},$,{class:[t.itemClass,$==null?void 0:$.class],"item-class":[t.itemClass,$==null?void 0:$.itemClass].filter(Boolean).join(" ")||void 0,onChange:B[0]||(B[0]=j=>e.unref(c)(j.name,j.value)),onClear:e.unref(N),layout:"inline",cleanable:!0,modelValue:e.unref(C)[v],"onUpdate:modelValue":j=>e.unref(C)[v]=j}),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(x),(v,$)=>{var j,r;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"slot-"+$,layout:"inline"},{ref_for:!0},v.props,{class:[t.itemClass,(j=v.props)==null?void 0:j.class],"item-class":[t.itemClass,(r=v.props)==null?void 0:r.itemClass].filter(Boolean).join(" ")||void 0,onChange:B[1]||(B[1]=d=>e.unref(c)(d.name,d.value)),onClear:B[2]||(B[2]=d=>{e.unref(N)(d),e.unref(c)(d,void 0)}),cleanable:!0,modelValue:e.unref(C)[v.props.name],"onUpdate:modelValue":d=>e.unref(C)[v.props.name]=d}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128)),y.value?(e.openBlock(),e.createBlock(Vt,e.mergeProps({key:1},l,{schema:t.schema,onChange:B[3]||(B[3]=v=>e.unref(c)(v.name,v.value)),onClearAll:B[4]||(B[4]=v=>e.unref(L)()),onClear:B[5]||(B[5]=v=>e.unref(N)(v.name)),mode:t.mode,ref_key:"popoverRef",ref:u,cleanable:!0,"badge-count":z.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),(v,$)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(v),e.mergeProps({key:"slot-"+$,layout:"popover"},{ref_for:!0},v.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(b)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:M,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(a)("filter.clear")),3)):e.createCommentVNode("",!0)]))}}),yr={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"},hr={class:"flex items-center vst-filters vsTailwind flex-col w-full"},xr=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:{},exclusiveGroups:{},exclusiveDisabledKeys:{}},emits:["change","clear","clearAll"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=e.useSlots(),{activeFilter:p,activeFilterCount:n,onFilterChange:y,clearFilter:C,clearAllFilters:b,ignoredSchemaEntries:c,ignoredFiltersSlot:N,filtersSlot:L}=He({...a,slots:m},l);return i({clearFilter:C,clearAllFilters:b}),(h,k)=>t.view==="vertical"?(e.openBlock(),e.createElementBlock("div",yr,[e.createElementVNode("div",hr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),([w,_])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-schema-"+w,layout:"vertical",mode:t.mode},{ref_for:!0},_,{class:[t.itemClass,_==null?void 0:_.class],"item-class":[t.itemClass,_==null?void 0:_.itemClass].filter(Boolean).join(" ")||void 0,showClean:!0}),null,16,["mode","class","item-class"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(N),(w,_)=>{var s,x;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-slot-"+_,layout:"vertical"},{ref_for:!0},w.props,{class:[t.itemClass,(s=w.props)==null?void 0:s.class],"item-class":[t.itemClass,(x=w.props)==null?void 0:x.itemClass].filter(Boolean).join(" ")||void 0,showClean:!0}),null,16,["class","item-class"])}),128)),e.unref(n)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:k[0]||(k[0]=w=>e.unref(b)()),"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),([w,_])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({layout:"vertical"},{ref_for:!0},_,{class:[t.itemClass,_==null?void 0:_.class],"item-class":[t.itemClass,_==null?void 0:_.itemClass].filter(Boolean).join(" ")||void 0,onChange:k[1]||(k[1]=s=>e.unref(y)(s.name,s.value)),onClear:k[2]||(k[2]=s=>{e.unref(C)(s),e.unref(y)(s,void 0)}),modelValue:e.unref(p)[w],"onUpdate:modelValue":s=>e.unref(p)[w]=s,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(L),(w,_)=>{var s,x;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"slot-"+_,layout:"vertical"},{ref_for:!0},w.props,{class:[t.itemClass,(s=w.props)==null?void 0:s.class],"item-class":[t.itemClass,(x=w.props)==null?void 0:x.itemClass].filter(Boolean).join(" ")||void 0,onChange:k[3]||(k[3]=A=>e.unref(y)(A.name,A.value)),onClear:k[4]||(k[4]=A=>{e.unref(C)(A),e.unref(y)(A,void 0)}),modelValue:e.unref(p)[w.props.name],"onUpdate:modelValue":A=>e.unref(p)[w.props.name]=A,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))])])):e.createCommentVNode("",!0)}}),br=["onKeydown"],kr=["disabled"],wr={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"},Br={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Cr={class:"mb-3 flex flex-col gap-2"},Vr={class:"mb-3 flex items-center justify-between"},Er={class:"text-[15px] font-semibold text-slate-800"},Nr={"aria-hidden":"true"},Sr={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},_r={key:0,class:"mt-3 flex justify-end"},Mr=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:{},exclusiveGroups:{},exclusiveDisabledKeys:{}},emits:["change","clear","clearAll"],setup(t,{emit:i}){const o=ue(),a=t,l=i,m=e.ref({}),p=e.useSlots(),{activeFilter:n,activeFilterCount:y,onFilterChange:C,clearFilter:b,clearAllFilters:c,ignoredSchemaEntries:N,visibleSchemaEntries:L,ignoredFiltersSlot:h,filtersSlot:k}=He({...a,schema:m.value,slots:p},l),w=e.ref(null),_=e.ref(null),s=e.reactive({open:!1,top:0,left:0}),x=e.computed(()=>s.open),A=e.computed(()=>!!a.disabled),R=e.computed(()=>a.title??"Фільтр"),g=e.computed(()=>!!p.trigger),z=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",A.value?"cursor-not-allowed opacity-60":"cursor-pointer"]),u=e.computed(()=>s.open?{position:"absolute",top:`${s.top}px`,left:`${s.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function M(){s.open=!1}function V(){if(!w.value)return;const r=w.value.getBoundingClientRect();s.top=r.bottom+window.scrollY+8,s.left=r.left+r.width/2+window.scrollX}function B(){s.open=!s.open,s.open&&e.nextTick(V)}function v(){A.value||B()}function $(){s.open&&V()}function j(){c()}return e.onMounted(()=>{window.addEventListener("resize",$),window.addEventListener("scroll",$,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",$),window.removeEventListener("scroll",$,!0)}),e.watch(()=>a.schema,r=>{if(!r){m.value={};return}if(Array.isArray(r)){const d=r.filter(f=>f&&(f.name||f.id)).map(f=>{const P=f.name||f.id;return[P,{...f,name:P}]});m.value=Object.fromEntries(d);return}m.value=r},{deep:!0,immediate:!0}),e.watch(()=>a.disabled,r=>{r&&M()}),(r,d)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:w},[g.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",A.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(v,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(v,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(v,["prevent","stop"]),["space"])]},[e.renderSlot(r.$slots,"trigger",{toggle:v,open:x.value,disabled:A.value,activeCount:e.unref(y)})],42,br)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(z.value),type:"button",disabled:A.value,onClick:e.withModifiers(v,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(Ct,{class:"h-4 w-4"}),e.unref(y)>0?(e.openBlock(),e.createElementBlock("div",wr,e.toDisplayString(e.unref(y)),1)):e.createCommentVNode("",!0)],10,kr)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[x.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof t.width=="number"?`min-w-[${t.width+32+(e.unref(L).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(u.value),ref_key:"panel",ref:_,onClick:d[4]||(d[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Br,[e.createElementVNode("div",Cr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(N),([f,P])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-schema-"+f,layout:"inline",mode:t.mode,width:t.width?t.width:P==null?void 0:P.width},{ref_for:!0},P,{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}),null,16,["mode","width","class","item-class"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),(f,P)=>{var Z,G;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-slot-"+P,layout:"inline"},{ref_for:!0},f.props,{class:[t.itemClass,(Z=f.props)==null?void 0:Z.class],"item-class":[t.itemClass,(G=f.props)==null?void 0:G.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])}),128))]),e.createElementVNode("div",Vr,[e.createElementVNode("h3",Er,e.toDisplayString(R.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:M},[e.createElementVNode("span",Nr,[e.createVNode(ot,{class:"h-4 w-4"})]),d[5]||(d[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",Sr,[e.unref(L).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(L),([f,P])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:f},{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)[f],"onUpdate:modelValue":Z=>e.unref(n)[f]=Z,onChange:d[0]||(d[0]=Z=>e.unref(C)(Z.name,Z.value)),onClear:d[1]||(d[1]=Z=>{e.unref(b)(Z),e.unref(C)(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(k),(f,P)=>{var Z,G;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"slot-"+P,ref_for:!0},{...f.props,layout:"inline"},{class:[t.itemClass,(Z=f.props)==null?void 0:Z.class],"item-class":[t.itemClass,(G=f.props)==null?void 0:G.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[f.props.name],"onUpdate:modelValue":J=>e.unref(n)[f.props.name]=J,onChange:d[2]||(d[2]=J=>e.unref(C)(J.name,J.value)),onClear:d[3]||(d[3]=J=>{e.unref(b)(J),e.unref(C)(J,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))]),e.unref(y)>0?(e.openBlock(),e.createElementBlock("div",_r,[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:j},e.toDisplayString(e.unref(o)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),Lr={class:"mb-6 flex flex-wrap gap-2"},Dr=["onClick"],jr={class:"mr-2 flex items-center gap-1"},zr={class:"font-semibold"},vr={class:"text-xs text-gray-500"},Ge=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:{},exclusiveGroups:{},exclusiveDisabledKeys:{}},emits:["change","clear","clearAll"],setup(t,{expose:i,emit:o}){const a=t,l=e.useAttrs(),m=e.ref(!1);function p(r){if(Array.isArray(r))return r.map(d=>p(d));if(r!==null&&typeof r=="object"){const d=e.toRaw(r),f={};for(const P in d)f[P]=p(d[P]);return f}return r}const n=e.ref();function y(r,d){if(d==null||!r)return d;const f=(r.type||"").toLowerCase();return f==="check"||f==="range"||f==="date"?dt(d):d}function C(r,d){const f=p(r??{}),P=d&&!Array.isArray(d)?d:{};return Object.entries(f).reduce((Z,[G,J])=>{const T=P[G];return Z[G]=y(T,J),Z},{})}const b=e.ref({}),c=e.ref({}),N=e.computed(()=>({...a,...l,value:c.value}));e.watch(()=>[a.value,a.schema],async([r])=>{var d,f;if(c.value=C(r??{},b.value),!r||Object.keys(r).length===0){await e.nextTick(),m.value=!0;try{(f=(d=n.value)==null?void 0:d.clearAllFilters)==null||f.call(d,!0)}finally{await e.nextTick(),m.value=!1}}},{deep:!0,immediate:!0});const L=o,h=e.useSlots();function k(r,d){m.value||(d!==void 0?c.value={...c.value,[r]:d}:delete c.value[r],L("change",{data:p(c.value),name:r,value:p(d)}))}function w(r){m.value||(delete c.value[r],L("clear",{data:p(c.value),name:r}),L("change",{data:p(c.value),name:r,value:null}))}function _(){m.value||(c.value={},L("clear",{data:p(c.value),name:"ALL"}),L("change",{data:p(c.value),name:"ALL",value:null}))}const s=e.computed(()=>a.teleportActive),x=e.computed(()=>{const r=nl(c.value,a.exclusiveGroups??[]);return{...a.exclusiveDisabledKeys??{},...r}}),A=e.computed(()=>{const r=b.value;if(!r||typeof r!="object")return r;if(Array.isArray(r)){const P=x.value;return r.map(Z=>({...Z,disabled:!!(Z.disabled||Z.name&&P[Z.name])}))}const d=x.value,f={};return Object.entries(r).forEach(([P,Z])=>{f[P]={...Z,disabled:!!(Z.disabled||d[P])}}),f});function R(){switch(a.view){case"inline":return Et;case"vertical":return xr;case"popover":return Vt;case"popover-inline":return Mr;default:return Et}}e.watch(()=>a.schema,r=>{if(!r){b.value={};return}if(Array.isArray(r)&&!r.length){b.value={};return}Array.isArray(r)?b.value=r.filter(d=>d.type).reduce((d,f)=>{if(Object.assign(f,{name:f.name||f.id,type:{datepicker:"date"}[f.type.toLowerCase()]||f.type.toLowerCase(),label:f.label||f.ua}),d[f.name]=f,f.data&&!f.api&&!f.options&&f.parent){const P=c.value[f.parent];Object.assign(f,{api:`/api/suggest/${f.data}${P?`?parent=${P}`:""}`})}return d},{}):(Object.entries(r).forEach(([d,f])=>{Object.assign(f,{name:d||f.name||f.id,type:f.type.toLowerCase()})}),b.value={...r}),c.value=C(c.value,b.value)},{immediate:!0,deep:!0});function g(r){n.value.clearFilter(r),w(r)}function z(){n.value.clearAllFilters(),_()}function u(r){g(r)}function M(r){return dt(r)}function V(r,d){var f,P;return r?((P=(f=r[d]??r.id??r.value??r.key)==null?void 0:f.toString)==null?void 0:P.call(f))??"":""}function B(r,d){var f,P;return r?((P=(f=r[d]??r.text??r.label??r.value??r.id)==null?void 0:f.toString)==null?void 0:P.call(f))??"":""}function v(r){const d=new Map,f=r.valueKey||"id",P=r.labelKey||"text";return(r.options??[]).forEach(Z=>{const G=V(Z,f),J=B(Z,P);G&&d.set(G,J||G)}),d}function $(r,d){if(!r||d===void 0||d===null)return"";const f=M(d);if(!f.length)return"";const P=v(r);return f.map(Z=>P.get(Z)??Z).filter(Boolean).join(", ")}const j=e.computed(()=>Object.entries(c.value).filter(([,r])=>r==null?!1:Array.isArray(r)?r.length>0:typeof r=="string"?r.trim().length>0:!0).map(([r,d])=>{const f=b.value[r],P=(f==null?void 0:f.label)||(f==null?void 0:f.title)||r,Z=$(f,d);return{key:r,label:P,value:Z}}));return e.watch(()=>c.value,r=>{if(a.history){const d=new URL(window.location.href),f=new URLSearchParams(window.location.search);Object.keys(r).length>0?f.set("filter",Object.entries(r).filter(([,P])=>P).map(([P,Z])=>`${P}=${Z}`).join("|")):f.delete("filter"),d.search=decodeURI(f.toString()),window.history.pushState({},"",d)}}),i({clearAllFilters:z,clearFilter:g}),(r,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(R()),e.mergeProps(N.value,{schema:A.value,"exclusive-disabled-keys":x.value,onChange:d[0]||(d[0]=f=>k(f.name,f.value)),onClear:d[1]||(d[1]=f=>w(f.name)),onClearAll:_,ref_key:"filterRef",ref:n}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:2},[e.unref(h).trigger?{name:"trigger",fn:e.withCtx(f=>[e.renderSlot(r.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(f)))]),key:"0"}:void 0]),1040,["schema","exclusive-disabled-keys"])),s.value&&j.value.length?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:s.value},[e.createElementVNode("div",Lr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j.value,f=>(e.openBlock(),e.createElementBlock("button",{key:f.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:P=>u(f.key)},[e.createElementVNode("span",jr,[e.createElementVNode("span",zr,e.toDisplayString(f.label),1),e.createElementVNode("span",vr,"· "+e.toDisplayString(f.value),1)]),d[2]||(d[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,Dr))),128))])],8,["to"])):e.createCommentVNode("",!0)],64))}});Ge.install=function(t){t.component("Filter",Ge),t.component("FilterField",ie)};function Nt(t){const{page:i,id:o,filter:a,filterByView:l}=t,m=new URL(window.location.href),p=new URLSearchParams(window.location.search);i?p.set("page",i.toString()):p.delete("page"),o?p.set("id",o.toString()):p.delete("id"),a?p.set("filter",a):p.delete("filter"),typeof l=="boolean"?p.set("bbox",l?"1":"0"):p.delete("bbox"),m.search=decodeURI(p.toString()),window.history.pushState({},"",m)}const Pr={class:"flex items-center justify-between w-full gap-x-1"},Ar={class:"flex items-center"},$r=["disabled"],Fr={class:"flex items-center gap-x-1"},Rr=["onClick"],Zr=["disabled"],Tr={class:"flex justify-center items-center gap-x-5 ml-3"},Kr={class:"relative"},Or={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"},Ir=["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"},at=e.defineComponent({__name:"pagination",props:{total:{},currentPage:{},pageSize:{}},emits:["update:currentPage","update:pageSize","pageChange","pageSizeChange"],setup(t,{emit:i}){const o=t,a=i,l=e.ref(o.currentPage),m=e.ref(o.pageSize),p=e.ref(!1);e.watch(()=>o.pageSize,L=>{m.value=L});const n=e.computed(()=>Math.ceil(o.total/o.pageSize)),y=e.computed(()=>{const h=Math.floor(3.5);let k=l.value-h,w=l.value+h;k<1&&(w+=1-k,k=1),w>n.value&&(k-=w-n.value,w=n.value),k=Math.max(1,k);const _=[];for(let s=k;s<=w;s+=1)_.push(s);return _}),C=()=>{l.value>1&&c(l.value-1)},b=()=>{l.value<n.value&&c(l.value+1)},c=L=>{l.value=L,a("update:currentPage",L),a("pageChange",L)},N=(L=m.value)=>{m.value=L,p.value=!1,a("update:pageSize",m.value),a("update:currentPage",1),a("pageSizeChange",m.value)};return e.watch(()=>o.currentPage,L=>{l.value=L}),(L,h)=>(e.openBlock(),e.createElementBlock("nav",Pr,[e.createElementVNode("div",Ar,[e.createElementVNode("button",{type:"button","aria-label":"Previous",onClick:C,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"},[...h[1]||(h[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,$r),e.createElementVNode("div",Fr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,k=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:k,onClick:w=>c(k),class:e.normalizeClass(l.value===k?"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(k),11,Rr))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:b,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"},[...h[2]||(h[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,Zr)]),e.createElementVNode("div",Tr,[e.createElementVNode("div",Kr,[e.withDirectives(e.createElementVNode("div",Or,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30],k=>e.createElementVNode("button",{type:"button",key:k,onClick:w=>N(k),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(k)+" ",1),m.value===k?(e.openBlock(),e.createElementBlock("svg",Ur,[...h[3]||(h[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,Ir)),64))],512),[[e.vShow,p.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:h[0]||(h[0]=k=>p.value=!p.value)},[e.createTextVNode(e.toDisplayString(m.value)+" ",1),h[4]||(h[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))])])])]))}}),ke=(t,i)=>{const o=t.__vccOpts||t;for(const[a,l]of i)o[a]=l;return o},Hr={},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 Wr(t,i){return e.openBlock(),e.createElementBlock("svg",Gr,[...i[0]||(i[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 it=ke(Hr,[["render",Wr]]),qr={},Qr={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 Yr(t,i){return e.openBlock(),e.createElementBlock("svg",Qr,[...i[0]||(i[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 Xr=ke(qr,[["render",Yr]]),Jr={},ea={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 ta(t,i){return e.openBlock(),e.createElementBlock("svg",ea,[...i[0]||(i[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 la=ke(Jr,[["render",ta]]),oa={},na={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 ra(t,i){return e.openBlock(),e.createElementBlock("svg",na,[...i[0]||(i[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 aa=ke(oa,[["render",ra]]),ia={},sa={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 ca(t,i){return e.openBlock(),e.createElementBlock("svg",sa,[...i[0]||(i[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 da=ke(ia,[["render",ca]]);function St(t,i){let o;return function(...a){clearTimeout(o),o=setTimeout(()=>t(...a),i)}}const ma={class:"fixed inset-0 z-50 pointer-events-none"},pa={class:"text-base font-semibold text-gray-900"},ua={class:"px-4 pb-3 min-h-0 shrink-0 overflow-hidden"},fa={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},ga={class:"text-base font-semibold text-gray-900"},ya={class:"flex-1 min-h-0 overflow-auto p-4"},ha=152,_t=96,xa=270,Mt=96,ze=ke(e.defineComponent({__name:"MobileModalShell",props:{open:{type:Boolean},title:{},topOffset:{},initialVariant:{},peekMode:{}},emits:["close","expand","collapse"],setup(t,{expose:i,emit:o}){const a=t,l=o,m=e.ref("full"),p=e.computed(()=>a.topOffset??"0px"),n=e.computed(()=>a.peekMode??"custom"),y=e.ref(!1),C=e.ref(0);let b=null,c=0,N=0;function L(M,V,B){return Math.max(M,Math.min(B,V))}function h(M){if(!M)return 0;const V=Number.parseFloat(M);return Number.isFinite(V)?V:0}function k(){if(typeof window>"u")return 0;const M=h(p.value);return Math.max(0,window.innerHeight-M)}function w(){const M=n.value==="custom",V=M?ha:xa,B=M?_t:Mt,v=M?40:60;if(typeof window>"u")return Math.max(B,V);const $=window.innerHeight*(v/100);return L(B,V,$)}function _(){return n.value==="custom"?_t:Mt}function s(M){const V=k(),B=w(),v=_(),$=m.value==="full"?V:B;return V<=0?Math.max(v,$):L(v,$-M,V)}const x=e.computed(()=>({height:`${s(C.value)}px`}));e.watch(()=>a.open,M=>{M&&(m.value=a.initialVariant??"full"),y.value=!1,C.value=0}),e.watch(()=>a.initialVariant,M=>{a.open&&M&&(m.value=M)});function A(){m.value!=="full"&&(m.value="full",l("expand")),y.value||(C.value=0)}function R(){m.value!=="peek"&&(m.value="peek",l("collapse")),y.value||(C.value=0)}function g(M){if(M.pointerId!==b)return;M.cancelable&&M.preventDefault();const V=M.clientY-c;C.value=N+V}function z(M){if(M.pointerId!==b)return;window.removeEventListener("pointermove",g),window.removeEventListener("pointerup",z),window.removeEventListener("pointercancel",z),b=null;const V=M.clientY-c,B=N+V;C.value=B;const v=s(B),j=(typeof window<"u"?window.innerHeight:0)*.6,r=j>0&&v>=j,d=j>0&&!r;if(!(m.value==="peek"&&r||m.value==="full"&&d)){y.value=!0;return}y.value=!1,C.value=0,m.value==="peek"&&r?A():m.value==="full"&&d&&R()}function u(M){var V,B;M.button!==0&&M.pointerType==="mouse"||(M.cancelable&&M.preventDefault(),b=M.pointerId,c=M.clientY,N=C.value,y.value=!0,(B=(V=M.currentTarget).setPointerCapture)==null||B.call(V,M.pointerId),window.addEventListener("pointermove",g,{passive:!1}),window.addEventListener("pointerup",z),window.addEventListener("pointercancel",z))}return e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",g),window.removeEventListener("pointerup",z),window.removeEventListener("pointercancel",z)}),i({expand:A,collapseToPeek:R}),(M,V)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",ma,[e.createElementVNode("div",{class:e.normalizeClass(["absolute inset-0 bg-black/40 transition-opacity duration-150",m.value==="peek"?"opacity-0 pointer-events-none":"opacity-100 pointer-events-auto"]),onClick:V[0]||(V[0]=e.withModifiers(B=>m.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",[m.value==="peek"?"rounded-t-2xl":"",y.value?"vs-mobile-modal-shell__panel--dragging":""]]),style:e.normalizeStyle(x.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:u},[...V[5]||(V[5]=[e.createElementVNode("div",{class:"h-1.5 w-10 rounded-full bg-stone-300","aria-hidden":"true"},null,-1)])],32),m.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:u},[e.createElementVNode("div",pa,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:V[1]||(V[1]=e.withModifiers(()=>{},["stop"])),onClick:V[2]||(V[2]=B=>l("close")),"aria-label":"Close"},[...V[6]||(V[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",ua,[e.renderSlot(M.$slots,"peek",{expand:A,collapse:R},()=>[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,m.value==="peek"&&n.value==="custom"]]),e.withDirectives(e.createElementVNode("div",fa,[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:u},[e.createElementVNode("div",ga,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:V[3]||(V[3]=e.withModifiers(()=>{},["stop"])),onClick:V[4]||(V[4]=B=>l("close")),"aria-label":"Close"},[...V[7]||(V[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",ya,[e.renderSlot(M.$slots,"default",{},void 0,!0)])],512),[[e.vShow,m.value==="full"||m.value==="peek"&&n.value==="clip-full"]])],6)],512)),[[e.vShow,t.open]])}}),[["__scopeId","data-v-74c152ea"]]),ba={class:"flex flex-col gap-2 pointer-events-auto self-end","data-peek-controls":"1"},ka=e.defineComponent({__name:"MapMobilePeekControlButtons",props:{onOpenLayers:{type:Function},onOpenLegend:{type:Function}},setup(t){return(i,o)=>(e.openBlock(),e.createElementBlock("div",ba,[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]=a=>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]=a=>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)])])]))}}),wa=["interpolate",["linear"],["zoom"],10,5,15,12],st=["interpolate",["linear"],["zoom"],10,11,12,12];function Lt(t,i,o=12,a=12){const l=i??"";return`${window.location.origin}/api/vtile/${t}/ua/{z}/{x}/{y}.vmt?pointZoom=${a}&clusterZoom=${o}&filter=${l}`}function Ba(t,i,o,a,l,m=12,p=12,n={}){if(!i)return;const{mixedGeom:y=!1,circleRadius:C=wa,circleStrokeWidth:b=1,geometryZoomBreakpoint:c,polygonZoom:N}=n,L=c??N??m,h=L-.01,k=L,w=Lt(t,l,m,p);i.addSource("vector",{type:"vector",tiles:[w],minzoom:0,maxzoom:22});const _=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],s=[">",_,1],x=["<=",_,1],A=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],R=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],g=["coalesce",["get","point_count_abbreviated"],["get","cluster_count_abbreviated"],["get","clusterCountAbbreviated"],_];i.addLayer({id:"vector-clusters",type:"circle",source:"vector","source-layer":t,filter:s,maxzoom:12,paint:{"circle-color":["step",_,"#51bbd6",100,"#f1f075",750,"#f28cb1"],"circle-radius":["step",_,18,100,26,750,32],"circle-opacity":.85}}),i.addLayer({id:"vector-cluster-count",type:"symbol",source:"vector","source-layer":t,filter:s,maxzoom:12,layout:{"text-field":["to-string",g],"text-font":["Noto Sans Regular"],"text-size":12},paint:{"text-color":"#1f2937"}});const z={id:"vector-circle",type:"circle",source:"vector","source-layer":t,filter:["all",x,A],paint:{"circle-color":o,"circle-stroke-color":a||"#eee","circle-stroke-width":b,"circle-radius":C}};y||(z.maxzoom=h),i.addLayer(z),i.addLayer({id:"vector-fill",type:"fill",minzoom:k,source:"vector","source-layer":t,filter:R,paint:{"fill-color":o,"fill-opacity":.6}}),i.addLayer({id:"vector-stroke",type:"line",minzoom:k,source:"vector","source-layer":t,filter:R,paint:{"line-color":a||o,"line-width":4,"line-opacity":1,"line-dasharray":[2,2]}})}const Ca=[{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"}],Va={class:"relative w-auto h-full"},Ea={key:0,class:"text-[0.875rem] font-medium text-stone-700"},Na={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"},Sa={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"},_a={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"},Ma={key:0,class:"mb-2"},La={class:"flex justify-start items-center gap-2"},Da={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},ja={class:"text-[0.875rem]"},za={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},va={class:"flex justify-start items-center gap-2"},Pa={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Aa={class:"text-[0.875rem]"},$a={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Fa={key:1,class:"p-[10px]"},Ra={key:0,class:"mb-2"},Za={class:"flex justify-start items-center gap-2"},Ta={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Ka={class:"text-[0.875rem]"},Oa={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Ia={class:"flex justify-start items-center gap-2"},Ua={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Ha={class:"text-[0.875rem]"},Ga={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},Wa={key:0,class:"vs-map-slot-layers z-10 select-none",style:{display:"flex"}},qa=["title","onClick"],Qa=["src"],Ya={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"},Xa={class:"vs-mobile-peek-controls px-3 pb-3"},Ja={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%"}},ei=["title","onClick"],ti=["src"],li={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"},oi={class:"vs-mobile-peek-controls flex justify-center w-full"},ni={class:"w-full"},ri={class:"legend-panel__header flex items-center justify-between gap-2 py-[7px] pl-[10px] pr-[7px] pb-[12px]"},ai={class:"text-[0.875rem] font-medium text-stone-700"},ii={class:"legend-panel__content overflow-hidden transition-all duration-200 ease-out"},si={class:"p-[10px] pt-0"},ci={class:"flex justify-start items-center gap-2"},di={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},mi={class:"text-[0.875rem]"},pi={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},ve="vector-clusters",Pe="selected-geometry-source",We="selected-geometry-fill",qe="selected-geometry-line",Fe="selected-geometry-point",we="vector-highlight-circle",Ee="vector-highlight-fill",Dt=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:i}){const o=t,a=i;let l,m=null;const p=e.getCurrentInstance(),n=e.ref(null),y=e.ref(!1),C=e.ref(!1),b=e.ref(!1),c=e.ref(!1);let N=null,L=null;const h=["vector-circle","vector-fill","vector-stroke"],k=e.ref(!1);function w(){C.value=!C.value}const _=e.computed(()=>{var S,O;return((O=(S=p==null?void 0:p.appContext.config.globalProperties)==null?void 0:S.$settings)==null?void 0:O.basemaps)||[]}),s=e.computed(()=>(o.layers&&o.layers.length?o.layers:_.value.length?_.value:Ca).map((O,H)=>{var le;const F=O.id||((le=O.name)==null?void 0:le.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${H}`,Y=O.name||O.id||`layer-${H}`;return{...O,id:F,name:Y}})),x=e.ref(""),A=e.computed(()=>s.value.find(S=>S.id===x.value)||s.value[0]);e.watch(s,S=>{var O;S.length&&(!x.value||!S.some(H=>H.id===x.value))&&(x.value=((O=S[0])==null?void 0:O.id)||"")},{immediate:!0});function R(S){return S?S.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const g=e.ref(null),z=e.ref(null),u=e.computed(()=>o.showPopup!==!1),M=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"],V=["#0a7a34","#7c3aed","#d97706","#dc2626"];let B,v=[];const $=[30,48];let j=null;const r=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],d=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]];let f=[];function P(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const S=new URLSearchParams(window.location.search),O=Number(S.get("z")),H=Number(S.get("y")),F=Number(S.get("x")),Y=S.has("x")&&S.has("y"),le=S.has("z");return{zoom:le?O:null,center:Y?[F,H]:null,hasQuery:Y||le}}function Z(S,O){if(!S||typeof window>"u")return;const H=new URL(window.location.href);H.searchParams.set("z",O.toFixed(2)),H.searchParams.set("x",S[0].toFixed(6)),H.searchParams.set("y",S[1].toFixed(6)),window.history.replaceState({},"",H)}let G=!1;function J(){if(!l||!G)return;const S=l.getCenter();Z([S.lng,S.lat],l.getZoom())}const T=()=>{G||(G=!0),J()};function I(){const S=o.geometryZoomBreakpoint;if(S==null)return null;const O=Number(S);return Number.isNaN(O)?null:O}function K(){const S=I();return S??(typeof o.polygonZoom=="number"?o.polygonZoom:typeof o.clusterZoom=="number"?o.clusterZoom:12)}function q(){return o.pointZoom??12}function Q(S){var O;return!S||typeof S!="object"?null:S.type==="FeatureCollection"?Q((O=S.features)==null?void 0:O[0]):S.type==="Feature"?Q(S.geometry):S.type&&S.coordinates?S:null}function re(){var S;return Q((S=o.selectedFeature)==null?void 0:S.geom)}function xe(S){return S==null||S===""?["==",["literal",1],0]:["==",["to-string",["get","id"]],String(S)]}function me(){return o.highlightCircleColor??"#ffffff"}function Re(){var O,H;const S=re();return S?{mode:"geometry",geometry:S}:((O=o.selectedFeature)==null?void 0:O.id)!=null&&((H=o.selectedFeature)==null?void 0:H.id)!==""?{mode:"id",geometry:null}:{mode:"none",geometry:null}}function Ye(){[We,qe,Fe,we,Ee].forEach(S=>{l!=null&&l.getLayer(S)&&l.removeLayer(S)}),l!=null&&l.getSource(Pe)&&l.removeSource(Pe)}function be(S){return{id:S.id,type:S.type,source:S.source,...S.sourceLayer?{"source-layer":S.sourceLayer}:{},...S.filter?{filter:S.filter}:{},...S.minzoom!=null?{minzoom:S.minzoom}:{},...S.maxzoom!=null?{maxzoom:S.maxzoom}:{},paint:S.paint}}function Ze(){const S=me(),O=o.highlightCircleRadius??o.circleRadius??st;return[be({id:We,type:"fill",source:Pe,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],paint:{"fill-color":S,"fill-opacity":.12,"fill-opacity-transition":{duration:800,delay:0}}}),be({id:qe,type:"line",source:Pe,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon","LineString","MultiLineString"]]],paint:{"line-color":S,"line-width":4,"line-opacity":.95,"line-opacity-transition":{duration:800,delay:0}}}),be({id:Fe,type:"circle",source:Pe,filter:["in",["geometry-type"],["literal",["Point","MultiPoint"]]],paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":S,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":O,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}})]}function Xe(){var Y,le;const S=me(),O=o.highlightCircleRadius??o.circleRadius??st,H=K(),F=H!=null?H-.01:24;return[be({id:we,type:"circle",source:"vector",sourceLayer:o.table,filter:["all",xe((Y=o.selectedFeature)==null?void 0:Y.id),r],maxzoom:o.mixedGeom?void 0:F,paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":S,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":O,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}}),be({id:Ee,type:"line",source:"vector",sourceLayer:o.table,filter:["all",xe((le=o.selectedFeature)==null?void 0:le.id),d],minzoom:H??24,paint:{"line-color":S,"line-width":4,"line-opacity":.9,"line-opacity-transition":{duration:800,delay:0}}})]}function Te(){var F,Y;if(!l)return"none";const{mode:S,geometry:O}=Re(),H=S==="geometry"?Ze():S==="id"?Xe():[];return Ye(),S==="geometry"&&l.addSource(Pe,{type:"geojson",data:{type:"FeatureCollection",features:[{type:"Feature",id:(F=o.selectedFeature)==null?void 0:F.id,properties:{id:(Y=o.selectedFeature)==null?void 0:Y.id},geometry:O}]}}),H.forEach(le=>l.addLayer(le)),S}function fe(){!l||!f.length||(l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-color",f),l.getLayer("vector-fill")&&l.setPaintProperty("vector-fill","fill-color",f))}function Ke(){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),Te())}function Oe(S){if(Me(),!l||S==="none")return;let O=!0;const H=o.highlightCircleRadius??o.circleRadius??st;j=window.setInterval(()=>{O=!O;const F=O?.95:.35,Y=O?H:H*1.12;S==="geometry"&&(l!=null&&l.getLayer(We)&&l.setPaintProperty(We,"fill-opacity",O?.14:.04),l!=null&&l.getLayer(qe)&&l.setPaintProperty(qe,"line-opacity",F),l!=null&&l.getLayer(Fe)&&(l.setPaintProperty(Fe,"circle-stroke-opacity",F),l.setPaintProperty(Fe,"circle-radius",Y))),S==="id"&&(l!=null&&l.getLayer(we)&&(l.setPaintProperty(we,"circle-stroke-opacity",F),l.setPaintProperty(we,"circle-radius",Y)),l!=null&&l.getLayer(Ee)&&l.setPaintProperty(Ee,"line-opacity",F))},800)}function Me(){j&&(clearInterval(j),j=null)}function Ae(){l&&(l.setCenter(o.center||$),l.setZoom(o.zoom||5))}function ge(){if(!(l!=null&&l.setLayerZoomRange))return;const S=o.minZoom??0,O=Math.min((o.maxZoom??18)+.01,24),F=(o.clusterZoom??12)-.01,Y=K(),le=Y-.01,Se=k.value&&!o.mixedGeom?le:O,Be=Y;o.alwaysShowPolygon?(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",S,0),l.getLayer(we)&&l.setLayerZoomRange(we,S,0),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",S,O),l.getLayer(Ee)&&l.setLayerZoomRange(Ee,S,O),l.getLayer(ve)&&l.setLayerZoomRange(ve,S,0),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",S,0)):(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",S,Se),l.getLayer(we)&&l.setLayerZoomRange(we,S,Se),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",Be,O),l.getLayer("vector-stroke")&&l.setLayerZoomRange("vector-stroke",Be,O),l.getLayer(Ee)&&l.setLayerZoomRange(Ee,Be,O),l.getLayer(ve)&&l.setLayerZoomRange(ve,S,F),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",S,F))}function $e(){if(l!=null&&l.getSource("vector")){try{const O=l.querySourceFeatures("vector",{sourceLayer:o.table}).some(H=>{var Y;const F=(Y=H.geometry)==null?void 0:Y.type;return F==="Polygon"||F==="MultiPolygon"});k.value=O}catch{}ge()}}const Le=P();G=Le.hasQuery,e.onMounted(async()=>{B=(await fetch(`/api/data/${o.table}/${o.colorAttr}`).then(te=>te.json())).rows,B.forEach((te,ee)=>{if(te.id==null||te.id===""){te.color="#808080";return}te.color||Object.assign(te,{color:M[ee%10]})});const O=o.strokeAttr;if(v=[],O){v=(await fetch(`/api/data/${o.table}/${O}`).then(X=>X.json())).rows||[];let ee=0;v.forEach((X,se)=>{X.color||!X.id||(Object.assign(X,{color:V[ee%V.length]}),ee+=1)})}m=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const H=A.value;if(!H)return;const F=Le.center||o.center||$,Y=Le.zoom||o.zoom||5;l=new maplibregl.Map({container:n.value,style:{version:8,sources:{[H.id]:{type:"raster",tiles:[H.url],tileSize:256},...H.overlayUrl?{[`${H.id}-overlay`]:{type:"raster",tiles:[H.overlayUrl],tileSize:256}}:{}},layers:[{id:H.id,type:"raster",source:H.id,minzoom:0,maxzoom:19},...H.overlayUrl?[{id:`${H.id}-overlay`,type:"raster",source:`${H.id}-overlay`,minzoom:0,maxzoom:19}]:[]]},center:F,zoom:Y,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),a("update:map",l);const le=o.mobilePeekControls?"bottom-right":"top-right";if(l.addControl(new maplibregl.NavigationControl,le),o.mobilePeekControls){const te={onAdd:()=>{const ee=document.createElement("div");return N=ee,L=e.createApp(ka,{onOpenLayers:()=>{b.value=!0},onOpenLegend:()=>{c.value=!0}}),L.mount(ee),ee},onRemove:()=>{L==null||L.unmount(),L=null,N=null}};l.addControl(te,"bottom-right"),l.once("render",()=>{if(!N)return;const ee=l.getContainer(),X=ee.querySelector(".maplibregl-ctrl-bottom-right"),se=ee.querySelector(".maplibregl-ctrl-zoom-in"),ye=se==null?void 0:se.closest(".maplibregl-ctrl-group");!X||!ye||N.parentElement===X&&(X.removeChild(N),X.insertBefore(N,ye.nextSibling))})}l.on("moveend",T),l.on("zoomend",T),G&&J(),l.on("load",()=>{l==null||l.resize(),y.value=!0;const te=B.filter(ne=>ne.id!=null&&ne.id!=="").reduce((ne,pe)=>[String(pe.id),pe.color].concat(ne),[]),ee=["match",["to-string",["get",o.colorAttr]],...te,"#808080"],X=(v||[]).filter(ne=>ne.id!=null&&ne.id!=="").reduce((ne,pe)=>[String(pe.id),pe.color].concat(ne),[]),se=O?["match",["to-string",["get",O]],...X,"rgba(0,0,0,0)"]:"rgba(0,0,0,0)";f=ee;const ye=I();Ba(o.table,l,ee,se,o.filter,o.clusterZoom,q(),{mixedGeom:o.mixedGeom,circleRadius:o.circleRadius,circleStrokeWidth:o.circleStrokeWidth,geometryZoomBreakpoint:ye??void 0,polygonZoom:ye==null?o.polygonZoom:void 0}),Oe(Te()),fe(),Ke(),ge(),l.on("sourcedata",ne=>{ne.sourceId==="vector"&&ne.isSourceLoaded&&K()!=null&&$e()})});const Se=te=>{var X,se;const ee=(X=te.features)==null?void 0:X[0];(se=ee==null?void 0:ee.properties)!=null&&se.id&&a("update:modelValue",ee.properties.id)};h.forEach(te=>{l.on("click",te,Se)}),l.on("click",ve,te=>{var ne,pe,E;const ee=(ne=te.features)==null?void 0:ne[0];if(!ee)return;const{geometry:X}=ee,se=(X==null?void 0:X.type)==="Point"?X.coordinates:(E=(pe=X==null?void 0:X.coordinates)==null?void 0:pe[0])==null?void 0:E[0];if(!se)return;const ye=Math.min(l.getZoom()+2,l.getMaxZoom());l.easeTo({center:se,zoom:ye})}),[...h,ve].forEach(te=>{l.on("mouseenter",te,()=>{l.getCanvas().style.cursor="pointer"}),l.on("mouseleave",te,()=>{l.getCanvas().style.cursor=""})}),l.on("mousemove",te=>{var ne,pe;if(!u.value){(ne=m==null?void 0:m.remove)==null||ne.call(m);return}if(!m)return;const ee=l.queryRenderedFeatures(te.point,{layers:h});if(!ee||!ee.length){m.remove();return}const X=ee[0],{coordinates:se}=X.geometry,ye=X.geometry.type==="Point"?se:se[0][0];z.value=X.properties,m.setLngLat(ye).setHTML((pe=g.value)==null?void 0:pe.innerHTML).addTo(l)})}),e.watch(()=>o.center,S=>{l&&l.setCenter(S||$)}),e.watch(()=>o.zoom,S=>{l&&l.setZoom(S)}),e.watch(()=>o.minZoom,S=>{l&&(l.setMinZoom(S??3),ge())}),e.watch(()=>o.maxZoom,S=>{l&&(l.setMaxZoom(S??18),ge())});function Ne(S,O,H){if(!(l!=null&&l.getSource("vector")))return;const F=Lt(o.table,S??o.filter,O??o.clusterZoom??12,q());l.getSource("vector").setTiles([F])}return e.watch(()=>o.filter,S=>{Ne(S)}),e.watch(()=>o.clusterZoom,S=>{Ne(void 0,S),ge()}),e.watch(()=>o.pointZoom,()=>{Ne()}),e.watch(()=>o.geometryZoomBreakpoint,()=>{Ne(),ge()}),e.watch(()=>o.alwaysShowPolygon,()=>{ge(),Ne()}),e.watch(()=>o.polygonZoom,()=>{$e()}),e.watch(()=>o.mixedGeom,()=>{ge()}),e.watch(()=>[o.circleRadius,o.circleStrokeWidth,o.highlightCircleRadius,o.highlightCircleColor],()=>{Ke()}),e.watch(()=>{var S,O;return[(S=o.selectedFeature)==null?void 0:S.id,(O=o.selectedFeature)==null?void 0:O.geom]},()=>{l&&Oe(Te())},{immediate:!0,deep:!0}),e.watch(x,(S,O)=>{if(!l||!S)return;const H=s.value.find(le=>le.id===S);if(!H)return;l.getLayer(O)&&l.removeLayer(O),l.getSource(O)&&l.removeSource(O);const F=`${O}-overlay`;l.getLayer(F)&&l.removeLayer(F),l.getSource(F)&&l.removeSource(F),l.addSource(S,{type:"raster",tiles:[H.url],tileSize:256}),H.overlayUrl&&l.addSource(`${S}-overlay`,{type:"raster",tiles:[H.overlayUrl],tileSize:256});const Y=l.getLayer("vector-clusters")?"vector-clusters":l.getLayer("vector-circle")?"vector-circle":void 0;l.addLayer({id:H.id,type:"raster",source:H.id,minzoom:0,maxzoom:19},Y),H.overlayUrl&&l.addLayer({id:`${S}-overlay`,type:"raster",source:`${S}-overlay`,minzoom:0,maxzoom:19},Y)}),e.onBeforeUnmount(()=>{Me(),l&&(l.off("moveend",T),l.off("zoomend",T),l.remove())}),(S,O)=>{const H=e.resolveDirective("tooltip");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Va,[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:Ae},[...O[3]||(O[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)])])),[[H,"Повернутися до базового вигляду"]]),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?C.value?"Згорнути легенду":"Розгорнути легенду":void 0,"aria-expanded":o.isCollapsible?String(C.value):void 0,onClick:O[0]||(O[0]=F=>o.isCollapsible?w():void 0)},{default:e.withCtx(()=>[o.legendTitle?(e.openBlock(),e.createElementBlock("span",Ea,e.toDisplayString(o.legendTitle),1)):e.createCommentVNode("",!0),o.isCollapsible?(e.openBlock(),e.createElementBlock("span",Na,[C.value?(e.openBlock(),e.createElementBlock("svg",Sa,[...O[4]||(O[4]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",_a,[...O[5]||(O[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&&!C.value?{maxHeight:"0",padding:"0",margin:"0",opacity:"0"}:{})},[e.createElementVNode("div",{class:e.normalizeClass(["p-[10px]",C.value&&(e.unref(B)||[]).length?"pt-0":"pt-2"])},[(e.unref(v)||[]).some(F=>F==null?void 0:F.id)?(e.openBlock(),e.createElementBlock("div",Ma,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((e.unref(v)||[]).filter(F=>F==null?void 0:F.id),F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${F.id}`},[e.createElementVNode("div",La,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:F.color||"#808080"})},null,4),e.createElementVNode("div",Da,[e.createElementVNode("span",ja,e.toDisplayString(F.text),1),F.count!=null?(e.openBlock(),e.createElementBlock("span",za,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B)||[],F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:F.id},[e.createElementVNode("div",va,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+F.color)},null,4),e.createElementVNode("div",Pa,[e.createElementVNode("span",Aa,e.toDisplayString(F.text),1),F.count!=null?(e.openBlock(),e.createElementBlock("span",$a,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))],2)],4)],64)):(e.openBlock(),e.createElementBlock("div",Fa,[(e.unref(v)||[]).some(F=>F==null?void 0:F.id)?(e.openBlock(),e.createElementBlock("div",Ra,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((e.unref(v)||[]).filter(F=>F==null?void 0:F.id),F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${F.id}`},[e.createElementVNode("div",Za,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:F.color||"#808080"})},null,4),e.createElementVNode("div",Ta,[e.createElementVNode("span",Ka,e.toDisplayString(F.text),1),F.count!=null?(e.openBlock(),e.createElementBlock("span",Oa,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B)||[],F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:F.id},[e.createElementVNode("div",Ia,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+F.color)},null,4),e.createElementVNode("div",Ua,[e.createElementVNode("span",Ha,e.toDisplayString(F.text??"Відсутні дані"),1),F.count!=null?(e.openBlock(),e.createElementBlock("span",Ga,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))]))],6),e.createElementVNode("div",{ref_key:"popupDiv",ref:g,style:{display:"none"}},[e.renderSlot(S.$slots,"default",{hoverData:z.value})],512),o.mobilePeekControls?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Wa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,F=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:F.id,title:F.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:x.value===F.id}]),onClick:Y=>x.value=F.id},[e.createElementVNode("img",{src:F.preview||R(F.url),class:"vs-map-slot-layers__image"},null,8,Qa),e.createElementVNode("div",Ya,e.toDisplayString(F.name),1)],10,qa)),[[H,F.name]])),128))])),o.mobilePeekControls?(e.openBlock(),e.createBlock(ze,{key:1,open:b.value,title:"Шари","initial-variant":"peek","peek-mode":"clip-full","allow-expand":!1,onClose:O[1]||(O[1]=F=>b.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",Xa,[e.createElementVNode("div",Ja,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,F=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:F.id,title:F.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:x.value===F.id}]),onClick:Y=>x.value=F.id},[e.createElementVNode("img",{src:F.preview||R(F.url),class:"vs-map-slot-layers__image",style:{width:"100%",height:"100","object-fit":"cover",display:"block"}},null,8,ti),e.createElementVNode("div",li,e.toDisplayString(F.name),1)],10,ei)),[[H,F.name]])),128))])])]),_:1},8,["open"])):e.createCommentVNode("",!0),o.mobilePeekControls?(e.openBlock(),e.createBlock(ze,{key:2,open:c.value,title:"Легенда","initial-variant":"peek","peek-mode":"clip-full","peek-height-px":200,onClose:O[2]||(O[2]=F=>c.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",oi,[e.createElementVNode("div",ni,[e.createElementVNode("div",ri,[e.createElementVNode("span",ai,e.toDisplayString(o.legendTitle||"Легенда"),1)]),e.createElementVNode("div",ii,[e.createElementVNode("div",si,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B)||[],F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:F.id},[e.createElementVNode("div",ci,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+F.color)},null,4),e.createElementVNode("div",di,[e.createElementVNode("span",mi,e.toDisplayString(F.text),1),F.count!=null?(e.openBlock(),e.createElementBlock("span",pi,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))])])])])]),_:1},8,["open"])):e.createCommentVNode("",!0)],512)),[[e.vShow,y.value]])}}}),jt={mounted(t,i){if(typeof document>"u")return;let o=null;const a=()=>{o=document.createElement("div"),o.textContent=i.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 m=t.getBoundingClientRect();o.style.left=`${m.left+window.scrollX}px`,o.style.top=`${m.top+window.scrollY-o.offsetHeight-5}px`},l=()=>{o&&o.parentNode&&(o.parentNode.removeChild(o),o=null)};t.addEventListener("mouseenter",a),t.addEventListener("mouseleave",l),Object.assign(t,{tooltipHandlers:{showTooltip:a,hideTooltip:l}})},unmounted(t){if(typeof document>"u")return;const i=t.tooltipHandlers;i&&(t.removeEventListener("mouseenter",i.showTooltip),t.removeEventListener("mouseleave",i.hideTooltip))}},ui={},fi={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 gi(t,i){return e.openBlock(),e.createElementBlock("svg",fi,[...i[0]||(i[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 yi=ke(ui,[["render",gi]]),hi={},xi={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 bi(t,i){return e.openBlock(),e.createElementBlock("svg",xi,[...i[0]||(i[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 ki=ke(hi,[["render",bi]]),wi={},Bi={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 Ci(t,i){return e.openBlock(),e.createElementBlock("svg",Bi,[...i[0]||(i[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 Vi=ke(wi,[["render",Ci]]),Ei={class:"absolute inset-x-0 top-[12px] z-40 px-[12px] pointer-events-none"},Ni={class:"flex flex-wrap gap-2"},Si=["disabled"],_i={key:0,class:"pointer-events-none absolute top-1 right-0.5 h-3 w-3 rounded-full bg-blue-400","aria-hidden":"true"},Mi=e.defineComponent({__name:"MobileOverlayActions",props:{activeModal:{},filtersDisabled:{type:Boolean},hasActiveFilters:{type:Boolean}},emits:["openSearch","openFilters","openTable"],setup(t){return(i,o)=>(e.openBlock(),e.createElementBlock("div",Ei,[e.createElementVNode("div",Ni,[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]=a=>i.$emit("openSearch"))},[e.createVNode(ki)],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]=a=>i.$emit("openFilters"))},[e.createVNode(yi,{"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",_i)):e.createCommentVNode("",!0)],10,Si),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]=a=>i.$emit("openTable"))},[e.createVNode(Vi,{"stroke-width":1,class:"text-gray-900"}),o[4]||(o[4]=e.createElementVNode("span",{class:"font-medium"},"Таблиця",-1))],2)])]))}}),Li={key:0,class:"relative w-full h-full vs-mobile-parts-map"},Di={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},ji={class:"flex flex-col min-h-0 gap-4"},zi={class:"flex flex-col min-h-0 flex-1"},vi={key:1,class:"wrapperTable flex flex-col min-h-0"},Pi={key:1,class:"text-center py-8"},Ai={key:2,class:"mt-4 pt-4 border-t border-stone-200 shrink-0"},$i={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},Fi={id:"active-filters"},Ri={class:"flex-1 min-h-0"},Zi={key:1,class:"text-sm text-stone-500"},Ti={class:"wrapperTable flex flex-col min-h-0"},Ki={key:1,class:"text-center py-12"},Oi={key:0,class:"mt-4 pt-4 border-t border-stone-200"},Ii=["onClick"],Ui={class:"w-full gap-5 inline-flex mb-[6px] pr-3"},Hi={class:"flex items-center"},Gi=["title"],Wi={class:"max-[1000px]:flex gap-2 min-[1001px]:hidden"},qi={class:"flex"},Qi={key:0,class:"flex items-center py-[15px] pb-[24px] pl-2 pr-6 gap-4"},Yi={class:"font-bold text-2xl mr-[10px]"},Xi={class:"text-sm text-stone-500 font-medium"},Ji={key:0,class:"inline-flex items-center gap-2 text-sm text-stone-700 select-none ml-auto mt-auto"},es={class:"wrapperTable flex flex-col",style:{height:"calc(100vh - 302px)"}},ts={key:1,class:"text-center py-28"},ls={key:1},os={key:2,class:"my-5 pr-2"},ns={class:"flex justify-between"},rs={class:"w-full lg:w-1/2 relative"},as={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},zt="(max-width: 999px)",Qe="0px",ct=e.defineComponent({__name:"vs-parts-map",props:e.mergeModels({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:{},filterState:{}},{filterState:{},filterStateModifiers:{}}),emits:e.mergeModels(["change:filter","update:map"],["update:filterState"]),setup(t,{emit:i}){var te,ee,X,se,ye,ne,pe;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=jt);function a(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(D=>D[0]);case"LineString":return E.coordinates;case"MultiLineString":return E.coordinates.flat();default:return[]}}function m(E){if(!E||E.type==="Point"||E.type==="MultiPoint")return null;const D=l(E);if(!D.length)return null;let W=1/0,U=1/0,ae=-1/0,oe=-1/0;return D.forEach(([ce,De])=>{ce<W&&(W=ce),De<U&&(U=De),ce>ae&&(ae=ce),De>oe&&(oe=De)}),[[W,U],[ae,oe]]}function p(E){return(E==null?void 0:E.type)==="Polygon"||(E==null?void 0:E.type)==="MultiPolygon"}const n=t,y=e.useSlots(),C=e.computed(()=>n.mobileFilterView??"vertical"),b=e.computed(()=>n.mobileFilterLimit!==void 0?{limit:n.mobileFilterLimit}:{}),c=e.useModel(t,"filterState"),N=i;function L(){const E=Object.fromEntries(Object.entries(B.value).map(([D,W])=>[D,Array.isArray(W)?[...W]:W]));c.value={state:E}}const h=e.ref(0);h.value=n.initTotal??((te=n.rows)==null?void 0:te.length)??0;const k=e.ref(""),w=e.ref(null),_=e.ref(!0),s=e.ref(((ee=n.rows)==null?void 0:ee.length)===1),x=e.ref(!1);let A=null;const R=e.ref(!1);typeof window<"u"&&(A=window.matchMedia(zt),R.value=A.matches,x.value=!0);const g=e.ref(n.rows),z=e.ref(1),u=e.ref(20),M=e.ref(n.filters||[]),V=e.ref(""),B=e.ref({}),v=e.computed(()=>Object.values(B.value).some(E=>Array.isArray(E)?E.some(D=>D!=null&&D!==""):E&&typeof E=="object"?Object.values(E).some(D=>D!=null&&D!==""):E===null?!0:E!==void 0&&E!==""));function $(E){return E&&(E.geom?E:{...E,geom:(E==null?void 0:E[n.geom])??null})}const j=e.ref(((X=n.rows)==null?void 0:X.length)===1?$(n.rows[0]):{}),r=e.ref(((se=n.rows)==null?void 0:se.length)===1?n.rows[0].id:""),d=e.ref(((ye=n.rows)==null?void 0:ye.length)===1?a((ne=n.rows[0])==null?void 0:ne[n.geom]):n.center||null),f=e.ref(((pe=n.rows)==null?void 0:pe.length)===1?14:n.zoom||5),P=e.ref(!1),Z=e.ref(!1),G=e.ref(""),J=e.ref(!1);let T=!1;const I=e.ref(null),K=e.ref(!1);function q(){if(!A)return;const E=R.value;R.value=A.matches,E!==R.value&&(I.value=null,e.nextTick(()=>{var D,W;(W=(D=w.value)==null?void 0:D.resize)==null||W.call(D)}))}const Q=e.ref(null),re=e.ref(null),xe=e.computed(()=>{if(n.alwaysShowPolygon)return 0;if(re.value!=null)return re.value;if(n.geometryZoomBreakpoint!=null){const E=Number(n.geometryZoomBreakpoint);if(!Number.isNaN(E))return E}return 12}),me=E=>(E==null?void 0:E.geom)??(E==null?void 0:E[n.geom])??null,Re=e.computed(()=>s.value&&!me(j.value)),Ye=e.computed(()=>s.value&&!J.value?j.value:null),be=e.computed({get:()=>Re.value?"":r.value,set:E=>{r.value=E,R.value&&(E?(K.value=!0,I.value="details"):I.value==="details"&&(I.value=null))}});function Ze(){var ce,De;if(n.alwaysShowPolygon){Q.value=null,re.value=null;return}const E=me(j.value);if(!n.polygonFitBbox||!w.value||!E){Q.value=null,re.value=null;return}const D=E;if(!p(D)){Q.value=null,re.value=null;return}const W=m(D);if(!W){Q.value=null,re.value=null;return}const U=(De=(ce=w.value).cameraForBounds)==null?void 0:De.call(ce,W,{padding:20,maxZoom:16}),ae=U==null?void 0:U.zoom,oe=n.clusterZoom??12;if(ae!=null&&ae<oe){const vt=Math.floor(ae);Q.value=vt,re.value=vt}else Q.value=null,re.value=null}function Xe(E){return Object.entries(E).filter(([,D])=>Array.isArray(D)?D.length:D).map(([D,W])=>`${D}=${W}`).join("|")}function Te(){var U,ae,oe,ce;if(!w.value||!Z.value)return;const E=(ae=(U=w.value).getBounds)==null?void 0:ae.call(U);if(!E)return;const D=(oe=E.getSouthWest)==null?void 0:oe.call(E),W=(ce=E.getNorthEast)==null?void 0:ce.call(E);!D||!W||(G.value=`${D.lng} ${D.lat},${W.lng} ${W.lat}`)}async function fe(E=!1){await e.nextTick();const D=Xe(B.value);V.value=D,Z.value?Te():G.value="";try{const W={search:k.value,limit:u.value.toString(),page:z.value.toString(),filter:D,...Z.value&&G.value?{bbox:G.value}:{}},U=new URL(`/api/data/${n.table}`,window.location.origin),ae=new URLSearchParams(W).toString(),oe=await fetch(`${U.toString()}?${ae}`).then(ce=>ce.json());Q.value=null,re.value=null,s.value=!1,P.value||(f.value=n.zoom||5),g.value=oe==null?void 0:oe.rows,P.value=!1,J.value=!1,h.value=oe.filtered,Nt({page:z.value,filter:D,id:"",filterByView:Z.value})}catch(W){console.error(W.message)}}async function Ke(E=!1){if(r.value){await e.nextTick();try{const D=new URL(`/api/data/${n.table}/${r.value}`,window.location.origin),W=await fetch(D.toString()).then(oe=>oe.json());let U;W.rows.length>1?U=W.rows.find(oe=>oe.id===r.value):[U]=W.rows,j.value=$(U);const ae=me(j.value);if(!E&&ae){const oe=n.polygonFitBbox?m(ae):null;oe&&w.value?w.value.fitBounds(oe,{padding:20,maxZoom:16,duration:500}):(d.value=a(ae),f.value=14)}else!E&&ae&&(d.value=a(ae),f.value=14);Ze(),s.value=!0,P.value=!1,h.value=W.filtered,Nt({page:z.value,filter:Xe(B.value),id:r.value,filterByView:Z.value})}catch(D){console.error(D.message)}}}const Oe=St(()=>fe(),300),Me=St(()=>{r.value||fe(!0)},400);function Ae(){!w.value||T||!Z.value||r.value||(w.value.on("moveend",Me),w.value.on("zoomend",Me),T=!0)}function ge(){!w.value||!T||(w.value.off("moveend",Me),w.value.off("zoomend",Me),T=!1)}function $e(E){u.value=E,z.value=1,fe()}function Le(E){z.value=E,fe()}function Ne(E){B.value=E.data,z.value=1,L(),r.value?(J.value=!0,r.value=""):(J.value=!1,fe()),N("change:filter",E)}async function S(){if(n.filters)return;const D=await(await fetch(`/api/filter/${n.table}`)).json();M.value=D.list}function O(){B.value={},k.value="",J.value=!1,L(),fe()}e.onMounted(async()=>{var W,U;A||(A=window.matchMedia(zt)),x.value||(R.value=A.matches,x.value=!0),A.addEventListener("change",q),R.value&&(_.value=!1);const E=new URLSearchParams(window.location.search);z.value=Number(E.get("page"))||1,u.value=Number(E.get("limit"))||u.value,r.value=E.get("id")||"",s.value=!!r.value,V.value=E.get("filter")||"";const D=E.get("bbox");D!==null?Z.value=D!=="0":Z.value=!1,(U=(W=E.get("filter"))==null?void 0:W.split("|"))==null||U.forEach(ae=>{const[oe,ce]=ae.split("=");oe&&(B.value[oe]=ce!=null&&ce.includes(",")?ce.split(","):[ce])}),await S(),L(),r.value?Ke():g.value||fe()}),e.onBeforeUnmount(()=>{A==null||A.removeEventListener("change",q),ge()});function H(){P.value=!0,s.value=!1,j.value=null,r.value="",J.value=!1,Q.value=null,re.value=null,Z.value&&Ae()}function F(E){I.value=E}function Y(){I.value=null}async function le(){var E,D;await e.nextTick(),(D=(E=w.value)==null?void 0:E.resize)==null||D.call(E)}function Se(){H(),Y()}function Be(E){K.value=!0;const D=me($(E));if(D){const W=n.polygonFitBbox?m(D):null;W&&w.value?w.value.fitBounds(W,{padding:20,maxZoom:16,duration:500}):(d.value=a(D),f.value=16)}else E!=null&&E[n.geom]&&(d.value=a(E[n.geom]),f.value=16);j.value=$(E),r.value=E.id,Ze(),R.value&&(I.value="details")}return e.watch(I,async()=>{var E,D;await e.nextTick(),(D=(E=w.value)==null?void 0:E.resize)==null||D.call(E)}),e.watch(w,E=>{N("update:map",E),E&&Z.value&&Ae(),E&&n.polygonFitBbox&&me(j.value)&&Ze()}),e.watch(k,E=>{E||fe()}),e.watch(r,()=>{r.value?(ge(),Ke()):(fe(),Z.value&&Ae())}),e.watch(Z,()=>{Z.value?Ae():ge(),fe()}),(E,D)=>{var W;return x.value?(e.openBlock(),e.createElementBlock("section",{key:0,class:e.normalizeClass(R.value?"":"pt-[20px]")},[R.value?(e.openBlock(),e.createElementBlock("div",Li,[e.createVNode(Dt,{table:n.table,selectedFeature:Ye.value,map:w.value,"onUpdate:map":D[0]||(D[0]=U=>w.value=U),zoom:f.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:V.value,center:d.value,clusterZoom:n.alwaysShowPolygon?0:Q.value??n.clusterZoom,pointZoom:xe.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:be.value,"onUpdate:modelValue":D[1]||(D[1]=U=>be.value=U),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!1,"mobile-peek-controls":!0},{default:e.withCtx(({hoverData:U})=>[e.renderSlot(E.$slots,"popup",{data:U})]),_: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"]),Re.value?(e.openBlock(),e.createElementBlock("div",Di,[...D[19]||(D[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"> Координати або межі об&#39;єкта не внесені до системи. Об&#39;єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0),e.createVNode(Mi,{"active-modal":I.value,"filters-disabled":!M.value.length,"has-active-filters":v.value,onOpenSearch:D[2]||(D[2]=U=>F("search")),onOpenFilters:D[3]||(D[3]=U=>F("filters")),onOpenTable:D[4]||(D[4]=U=>F("table"))},null,8,["active-modal","filters-disabled","has-active-filters"]),e.createVNode(ze,{open:I.value==="search",title:"Пошук","top-offset":Qe,"initial-variant":"full","peek-mode":"clip-full",onClose:Y,onExpand:le,onCollapse:le},{default:e.withCtx(()=>[e.createElementVNode("div",ji,[e.createVNode(e.unref(ie),{type:"text",modelValue:k.value,"onUpdate:modelValue":D[5]||(D[5]=U=>k.value=U),name:"search",label:"Пошук",onChange:e.unref(Oe)},null,8,["modelValue","onChange"]),e.createElementVNode("div",zi,[e.unref(y)["mobile-search-results"]?e.renderSlot(E.$slots,"mobile-search-results",{key:0,rows:g.value,selectRow:Be,closeModal:Y}):(e.openBlock(),e.createElementBlock("div",vi,[h.value>=1?e.renderSlot(E.$slots,"table",{key:0,rows:g.value,selectRow:Be,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",Pi,[e.createVNode(it),D[20]||(D[20]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),D[21]||(D[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:O}," Очистити дані пошуку ")]))])),h.value>=1?(e.openBlock(),e.createElementBlock("div",Ai,[e.createVNode(at,{total:h.value,currentPage:z.value??1,pageSize:u.value,onPageChange:D[6]||(D[6]=U=>Le(U)),onPageSizeChange:D[7]||(D[7]=U=>$e(U))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)])])]),_:3},8,["open"]),e.createVNode(ze,{open:I.value==="filters",title:"Фільтри","top-offset":Qe,"initial-variant":"full","peek-mode":"clip-full",onClose:Y,onExpand:le,onCollapse:le},{default:e.withCtx(()=>[e.createElementVNode("div",$i,[e.withDirectives(e.createElementVNode("div",Fi,null,512),[[e.vShow,I.value==="filters"]]),e.createElementVNode("div",Ri,[M.value.length?(e.openBlock(),e.createBlock(e.unref(Ge),e.mergeProps({key:0,schema:M.value,view:C.value},b.value,{value:B.value,teleportActive:"#active-filters",onChange:Ne}),null,16,["schema","view","value"])):(e.openBlock(),e.createElementBlock("p",Zi,"Фільтри недоступні для цього переліку."))])])]),_:1},8,["open"]),e.createVNode(ze,{open:I.value==="table",title:"Таблиця","top-offset":Qe,"initial-variant":"full","peek-mode":"clip-full",onClose:Y,onExpand:le,onCollapse:le},{default:e.withCtx(()=>[e.createElementVNode("div",Ti,[h.value>=1?e.renderSlot(E.$slots,"table",{key:0,rows:g.value,selectRow:Be,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",Ki,[e.createVNode(it),D[22]||(D[22]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),D[23]||(D[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:O}," Очистити дані пошуку ")]))]),h.value>=1?(e.openBlock(),e.createElementBlock("div",Oi,[e.createVNode(at,{total:h.value,currentPage:z.value??1,pageSize:u.value,onPageChange:D[8]||(D[8]=U=>Le(U)),onPageSizeChange:D[9]||(D[9]=U=>$e(U))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)]),_:3},8,["open"]),e.createVNode(ze,{open:I.value==="details",title:"Об'єкт","top-offset":Qe,"initial-variant":K.value?"peek":"full","peek-mode":"custom",onClose:Se,onExpand:le,onCollapse:le},{peek:e.withCtx(({expand:U})=>[e.unref(y)["mobile-details-peek"]?e.renderSlot(E.$slots,"mobile-details-peek",{key:0,selectedRow:j.value,expand:U,close:Se}):(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:U}," Деталі об'єкта ",8,Ii))]),default:e.withCtx(()=>[e.renderSlot(E.$slots,"details",{table:n.table,selectedRow:j.value,closeObjCard:Se})]),_:3},8,["open","initial-variant"]),e.renderSlot(E.$slots,"default",{table:n.table,map:w.value,selectedRow:j.value})])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(E.$slots,"header",{title:n.title,total:h.value}),e.createElementVNode("div",Ui,[e.createVNode(e.unref(ie),{type:"text",modelValue:k.value,"onUpdate:modelValue":D[10]||(D[10]=U=>k.value=U),name:"search",label:"Пошук",onChange:e.unref(Oe)},null,8,["modelValue","onChange"]),M.value.length?(e.openBlock(),e.createBlock(e.unref(Ge),{key:0,schema:M.value,view:"inline",onChange:Ne,limit:5,value:B.value,ref:"filterRef"},null,8,["schema","value"])):e.createCommentVNode("",!0),e.createElementVNode("div",Hi,[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:_.value?"Приховати карту":"Показати карту",onClick:D[11]||(D[11]=U=>_.value=!_.value)},[_.value?(e.openBlock(),e.createBlock(Xr,{key:0})):(e.openBlock(),e.createBlock(la,{key:1})),D[24]||(D[24]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,Gi),e.createElementVNode("div",Wi,[e.createElementVNode("button",{onClick:D[12]||(D[12]=U=>_.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(da)]),e.createElementVNode("button",{onClick:D[13]||(D[13]=U=>_.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(aa)])])])]),e.createElementVNode("div",qi,[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden shrink-0",_.value?"w-2/4 mr-0":"w-full mr-3",s.value?"hidden":""])},[(W=E.$slots)!=null&&W.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Qi,[e.createElementVNode("div",null,[e.createElementVNode("span",Yi,e.toDisplayString(n.title),1),e.createElementVNode("span",Xi,e.toDisplayString(h.value),1),D[25]||(D[25]=e.createElementVNode("span",{class:"text-sm text-stone-500 font-medium"}," об'єктів",-1))]),n.objectsInView?(e.openBlock(),e.createElementBlock("label",Ji,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"accent-blue-600 w-4 h-4","onUpdate:modelValue":D[14]||(D[14]=U=>Z.value=U)},null,512),[[e.vModelCheckbox,Z.value]]),D[26]||(D[26]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",es,[h.value>=1?e.renderSlot(E.$slots,"table",{key:0,rows:g.value,selectRow:Be}):(e.openBlock(),e.createElementBlock("div",ts,[e.createVNode(it),D[27]||(D[27]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),D[28]||(D[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:O}," Очистити дані пошуку ")]))]),h.value>=1?(e.openBlock(),e.createElementBlock("hr",ls)):e.createCommentVNode("",!0),h.value>=1?(e.openBlock(),e.createElementBlock("div",os,[e.createElementVNode("div",ns,[e.createVNode(at,{total:h.value,currentPage:z.value??1,pageSize:u.value,onPageChange:D[15]||(D[15]=U=>Le(U)),onPageSizeChange:D[16]||(D[16]=U=>$e(U))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(_.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:j.value,closeObjCard:H})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",rs,[e.createVNode(Dt,{table:n.table,selectedFeature:Ye.value,map:w.value,"onUpdate:map":D[17]||(D[17]=U=>w.value=U),zoom:f.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:V.value,center:d.value,clusterZoom:n.alwaysShowPolygon?0:Q.value??n.clusterZoom,pointZoom:xe.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:be.value,"onUpdate:modelValue":D[18]||(D[18]=U=>be.value=U),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!0},{default:e.withCtx(({hoverData:U})=>[e.renderSlot(E.$slots,"popup",{data:U})]),_: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(E.$slots,"default",{table:n.table,map:w.value,selectedRow:j.value}),Re.value?(e.openBlock(),e.createElementBlock("div",as,[...D[29]||(D[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"> Координати або межі об&#39;єкта не внесені до системи. Об&#39;єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0)],512),[[e.vShow,_.value]])])],64))],2)):e.createCommentVNode("",!0)}}});return ct.install=t=>{t.component("VsPartsMap",ct),t._context.directives.tooltip||t.directive("tooltip",jt)},ct});
1
+ (function(e,he){typeof exports=="object"&&typeof module<"u"?module.exports=he(require("vue")):typeof define=="function"&&define.amd?define(["vue"],he):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=he(e.Vue))})(this,function(e){"use strict";const he=(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 Pt={},Ft={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 $t(t,a){return e.openBlock(),e.createElementBlock("svg",Ft,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 At=he(Pt,[["render",$t]]),jt={},Rt={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 Zt(t,a){return e.openBlock(),e.createElementBlock("svg",Rt,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 Tt=he(jt,[["render",Zt]]),vt={},Ot={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 It(t,a){return e.openBlock(),e.createElementBlock("svg",Ot,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 Ut=he(vt,[["render",It]]),Kt={},Ht={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 Gt(t,a){return e.openBlock(),e.createElementBlock("svg",Ht,a[0]||(a[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)]))}const Wt=he(Kt,[["render",Gt]]),qt={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},Yt={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},Qt={class:"flex-1"},Xt={class:"font-medium text-gray-900"},Jt={class:"mt-0.5 text-sm text-gray-700"},el=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(t){const a={success:At,warning:Tt,error:Wt,info:Ut};return(o,r)=>(e.openBlock(),e.createElementBlock("div",qt,[e.createElementVNode("div",Yt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a[o.type]))),e.createElementVNode("div",Qt,[e.createElementVNode("strong",Xt,e.toDisplayString(o.title),1),e.createElementVNode("p",Jt,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 Ie={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"},_e=t=>{var m;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 ${Ie[l]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(s)),s.className.includes(Ie[l])||(Object.values(Ie).forEach(h=>{s.classList.remove(...h.split(" "))}),s.classList.add(...Ie[l].split(" ")));const x=document.createElement("div");s.appendChild(x);const n=e.createApp({render(){return e.h(el,{type:a,title:o,message:r,onClose:()=>{n.unmount(),x.remove()}})}});n.mount(x),(m=x.querySelector("button"))==null||m.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)},me=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o},tl={},ll={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 ol(t,a){return e.openBlock(),e.createElementBlock("svg",ll,[...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 nl=me(tl,[["render",ol]]),rl={},al={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 il(t,a){return e.openBlock(),e.createElementBlock("svg",al,[...a[0]||(a[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)])])}const ye=me(rl,[["render",il]]),sl={class:"flex items-center cursor-pointer w-full"},cl={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},dl=["value"],ml={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},pl={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},ul={key:1,class:"absolute right-2 flex size-3.5 items-center justify-center"},Je=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"),m=e.computed(()=>r.layout==="vertical"?"text-[13px]":"text-sm");return a({el:x}),(h,p)=>(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",m.value])},[e.createElementVNode("div",sl,[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},m.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",cl)):e.createCommentVNode("",!0)],2)),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:t.value},null,8,dl),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",ml,e.toDisplayString(t.label??"Відсутні дані"),1),t.count?(e.openBlock(),e.createElementBlock("div",pl," ("+e.toDisplayString(t.count)+") ",1)):e.createCommentVNode("",!0)],2),n.value&&t.isSelected?(e.openBlock(),e.createElementBlock("span",ul,[e.createVNode(ye)])):e.createCommentVNode("",!0)],2)])],2)],512))}});function et(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:x}=t,n=s??x??"data";function m(i){return Array.isArray(i)?i[0]:i}const h=e.ref(m(t.modelValue)),p=e.ref(""),f=e.ref(!1),V=e.ref([]),N=e.ref("id"),u=e.ref("text"),B=e.ref(!1),b=e.ref(t.layout!=="popover"&&r.length>l);function c(i){const E=i.find(Boolean)??{},w=["id","value","code","key"].find($=>$ in E)??"id",P=["text","label","name","title"].find($=>$ in E)??"text";return{autoValueKey:w,autoLabelKey:P}}function d(i){if(i.length>0){const w=c(i);N.value=w.autoValueKey,u.value=w.autoLabelKey}const E=[...i].sort((w,P)=>t.sort==="count"?P.count&&w.count?P.count-w.count:0:t.sort==="name"?String(w[u.value]??"").localeCompare(String(P[u.value]??"")):0);V.value=E}r.length>0&&d(r);const z=e.computed(()=>{const i=V.value;return t.layout==="popover"||B.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){_e({type:"error",title:"Error",message:"Failed to fetch remote options"}),V.value=[];return}const w=await E.json();if(!w[n]){_e({type:"error",title:"Error",message:w}),V.value=[];return}d(w[n])}catch(i){console.error("Failed to fetch remote options:",i)}finally{f.value=!1}}}function F(){o&&V.value.length===0&&A()}e.watch(()=>t.modelValue,i=>{h.value=m(i)},{immediate:!0}),o||d(r);function C(i){return h.value===i[N.value]}function k(i){h.value=i[N.value],a("update:modelValue",h.value),a("change",{name:t.name,value:h.value})}function L(){h.value=void 0,a("update:modelValue",h.value),a("clear",t.name)}function _(){B.value=!B.value}return{innerValue:h,searchTerm:p,filteredOptions:z,isSelected:C,selectItem:k,clear:L,toggleShowAll:_,isReqProc:f,showAll:B,isEnableShowAll:b,labelKey:u,valueKey:N,allOptions:V,loadData:F}}function dt(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 Ce(){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 fl(){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 mt(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 pt={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 ut(t){const a=t.split(".")[1],o=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(pt[o||navigator.language]||pt.uk)[a]}function ie(){const t=e.getCurrentInstance();if(!t.appContext.config.globalProperties.$i18n)return ut;const a=t.appContext.config.globalProperties.$t;return o=>{const r=a(o);return r===o?ut(o):r}}const gl={},hl={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function yl(t,a){return e.openBlock(),e.createElementBlock("svg",hl,[...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 tt=me(gl,[["render",yl]]),xl={},bl={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 kl(t,a){return e.openBlock(),e.createElementBlock("svg",bl,[...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=me(xl,[["render",kl]]),wl={},Cl={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 Vl(t,a){return e.openBlock(),e.createElementBlock("svg",Cl,[...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 lt=me(wl,[["render",Vl]]),Bl={key:0,class:"w-full"},El={class:"flex flex-col items-center justify-center p-5 text-center"},Nl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Sl={key:1,class:"py-2 px-2"},_l=["disabled"],Ml=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=Ce(),x=ie(),n=o,{innerValue:m,filteredOptions:h,isSelected:p,selectItem:f,clear:V,toggleShowAll:N,isReqProc:u,showAll:B,isEnableShowAll:b,labelKey:c,valueKey:d,allOptions:z,loadData:A}=et({...r,modelValue:r.modelValue??r.default??""},n);return e.onMounted(()=>{r.api&&A()}),a({clear:V,inputTextRef:l}),e.watch(()=>r.modelValue,F=>{F===void 0&&(m.value=void 0)}),(F,C)=>(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(Je,{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(p)(k),onItemClick:L=>e.unref(f)(k)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),t.type==="select"&&e.unref(h).length===0&&!e.unref(u)?(e.openBlock(),e.createElementBlock("div",Bl,[e.createElementVNode("div",El,[e.createVNode(tt),C[4]||(C[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(B)&&e.unref(b)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:C[0]||(C[0]=(...k)=>e.unref(N)&&e.unref(N)(...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"},[C[5]||(C[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(Ue)])):e.createCommentVNode("",!0),e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:C[1]||(C[1]=(...k)=>e.unref(N)&&e.unref(N)(...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"},[C[6]||(C[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(lt)])):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",Nl,[e.createTextVNode(e.toDisplayString(e.unref(m)||e.unref(m)===null?1:0)+" з "+e.toDisplayString(e.unref(z).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:C[2]||(C[2]=(...k)=>e.unref(V)&&e.unref(V)(...k))}," Очистити ",512),[[e.vShow,e.unref(m)!==""&&e.unref(m)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Sl,[e.createElementVNode("button",{type:"button",disabled:!(e.unref(m)!==""&&e.unref(m)!==void 0),class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:C[3]||(C[3]=(...k)=>e.unref(V)&&e.unref(V)(...k))},e.toDisplayString(e.unref(x)("filter.clear")),11,_l)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function ft(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:x}=t,n=s??x??"data";function m(i){return Array.isArray(i)?i:i?[i]:[]}const h=e.ref(m(t.modelValue)),p=e.ref(""),f=e.ref(!1),V=e.ref([]),N=e.ref("id"),u=e.ref("text"),B=e.ref(!1),b=e.ref(t.layout!=="popover"&&r.length>l);function c(i){const E=i.find(Boolean)??{},w=["id","value","code","key"].find($=>$ in E)??"id",P=["text","label","name","title"].find($=>$ in E)??"text";return{autoValueKey:w,autoLabelKey:P}}function d(i){if(i.length>0){const w=c(i);N.value=w.autoValueKey,u.value=w.autoLabelKey}const E=[...i].sort((w,P)=>t.sort==="count"?P.count&&w.count?P.count-w.count:0:t.sort==="name"?String(w[u.value]).localeCompare(String(P[u.value])):0);V.value=E}r.length>0&&d(r);const z=e.computed(()=>{const i=V.value;return t.layout==="popover"||B.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){_e({type:"error",title:"Error",message:"Failed to fetch remote options"}),V.value=[];return}const w=await E.json();if(!w[n]){_e({type:"error",title:"Error",message:w}),V.value=[];return}d(w[n])}catch(i){console.error("Failed to fetch remote options:",i)}finally{f.value=!1}}}function F(){o&&V.value.length===0&&A()}e.watch(()=>t.modelValue,i=>{h.value=m(i)},{immediate:!0}),o||d(r);function C(i){return h.value&&h.value.includes(i[N.value])}function k(i){const E=h.value.includes(i[N.value]);h.value=E?h.value.filter(w=>w!==i[N.value]):[...h.value,i[N.value]],a("update:modelValue",h.value),a("change",{name:t.name,value:h.value})}function L(){h.value=[],a("update:modelValue",h.value),a("clear",t.name)}function _(){B.value=!B.value}return{innerValue:h,searchTerm:p,filteredOptions:z,isSelected:C,selectItem:k,clear:L,toggleShowAll:_,isReqProc:f,showAll:B,isEnableShowAll:b,labelKey:u,valueKey:N,allOptions:V,loadData:F}}const Dl={key:0,class:"w-full"},Ll={class:"flex flex-col items-center justify-center p-5 text-center"},zl={class:"max-w-sm mx-auto mt-6"},Pl={class:"font-medium text-gray-800 dark:text-neutral-200"},Fl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},$l={key:1,class:"py-2 px-2 border-t"},Al=["disabled"],jl={class:"text-xs text-gray-500"},gt=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=ie(),l=Ce(),s=t,x=o,{innerValue:n,filteredOptions:m,isSelected:h,selectItem:p,clear:f,toggleShowAll:V,isReqProc:N,showAll:u,isEnableShowAll:B,labelKey:b,valueKey:c,allOptions:d,loadData:z}=ft({...s,modelValue:s.modelValue},x);return e.onMounted(()=>{s.api&&z()}),e.watch(()=>s.modelValue,A=>{A===void 0&&(n.value=[])}),a({clear:f}),(A,F)=>(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(m),C=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,count:C.count,label:C[e.unref(b)],color:C.color,type:"checkbox",value:C[e.unref(c)],"is-selected":e.unref(h)(C),onItemClick:k=>e.unref(p)(C)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),t.type==="select"&&e.unref(m).length===0&&!e.unref(N)?(e.openBlock(),e.createElementBlock("div",Dl,[e.createElementVNode("div",Ll,[e.createVNode(tt),e.createElementVNode("div",zl,[e.createElementVNode("p",Pl,e.toDisplayString(e.unref(r)("filter.notfound")),1),F[4]||(F[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(u)&&e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:F[0]||(F[0]=(...C)=>e.unref(V)&&e.unref(V)(...C)),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(Ue)])):e.createCommentVNode("",!0),e.unref(u)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:F[1]||(F[1]=(...C)=>e.unref(V)&&e.unref(V)(...C)),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(lt)])):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",Fl,[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:F[2]||(F[2]=(...C)=>e.unref(f)&&e.unref(f)(...C))},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",$l,[e.createElementVNode("button",{type:"button",disabled:e.unref(n).length===0,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:F[3]||(F[3]=(...C)=>e.unref(f)&&e.unref(f)(...C))},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.clear"))+" ",1),e.createElementVNode("span",jl,e.toDisplayString(e.unref(n).length)+" з "+e.toDisplayString(e.unref(d).length),1)],10,Al)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Rl={},Zl={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 Tl(t,a){return e.openBlock(),e.createElementBlock("svg",Zl,[...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 ht=me(Rl,[["render",Tl]]),vl={},Ol={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 Il(t,a){return e.openBlock(),e.createElementBlock("svg",Ol,[...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 ot=me(vl,[["render",Il]]);class yt{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 Ul={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},Kl=["placeholder"],Hl=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,p=>{p!==s.value&&(s.value=(p==null?void 0:p.toString())??"")});let x=null;function n(){if(s.value=s.value.trimStart(),s.value.length===0){m();return}x&&clearTimeout(x),x=setTimeout(()=>{l("update:modelValue",s.value),l("change",{name:o.name,value:s.value})},300)}function m(){s.value="",l("update:modelValue",""),l("clear",o.name)}return(p,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(yt).getWidthClass(t.width):"mb-2"+(t.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Ul,[e.createVNode(ht)]),s.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:m,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(ot)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":f[0]||(f[0]=V=>s.value=V),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,Kl),[[e.vModelText,s.value]])],2))}}),Gl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Wl=["placeholder","disabled"],ql={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Yl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Ql=["placeholder","disabled"],Xl=["disabled"],Jl=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=dt(),l=Ce(),s=ie(),x=t,n=e.ref(x.modelValue??x.default??[]),m=o,h=e.computed({get:()=>x.modelValue??n.value,set:V=>{x.modelValue!==void 0?m("update:modelValue",V):n.value=V}});function p(){m("change",{name:x.name,value:h.value||n.value})}function f(){n.value=[],h.value=n.value,m("clear",x.name)}return e.watch(()=>x.modelValue,V=>{V!==void 0&&x.layout!=="popover"?(n.value=V,m("update:modelValue",V)):n.value=[]}),a({clear:f,currentValue:h}),(V,N)=>{var u,B;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",Gl,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:((u=t.placeholder)==null?void 0:u[0])??e.unref(s)("filter.min"),step:"1",style:{outline:"none"},"onUpdate:modelValue":N[0]||(N[0]=b=>h.value[0]=b),disabled:t.disabled},null,10,Wl),[[e.vModelText,h.value[0]]])]),t.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",ql," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",Yl,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:((B=t.placeholder)==null?void 0:B[1])??e.unref(s)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":N[1]||(N[1]=b=>h.value[1]=b),disabled:t.disabled},null,10,Ql),[[e.vModelText,h.value[1]]])]),["popover","inline","vertical"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:p,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:f,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100")},e.toDisplayString(e.unref(s)("filter.clear")),11,Xl)):e.createCommentVNode("",!0)],2)]),(t.cleanable&&n.value.length,e.createCommentVNode("",!0))],64)}}});class te{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),p=new Date(o);return h.setDate(h.getDate()+r*7),p.setDate(p.getDate()+r*7),[this.format(h),this.format(p)]}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 m=new Date(n);return m.setDate(n.getDate()+6),[this.format(n),this.format(m)]}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,m=s.getFullYear()+Math.floor(x/4),h=new Date(m,n,1),p=new Date(m,n+3,0);return[this.format(h),this.format(p)]}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 xt(t,a){const{popoverRef:o}=t,r=ie(),l=e.ref(""),s=e.ref(t.modelValue??t.default??[]),x=e.ref(0);function n(){const c=te.getRangeFromDaysBefore(x.value);return s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value),c}function m(c){var z;l.value=c,(z=o.value)==null||z.close();const d=[];switch(l.value){case"today":d.push(te.getShiftedDay()),d.push(te.getShiftedDay());break;case"week":d.push(...te.getLastWeekRange());break;case"month":d.push(...te.getMonthRange());break;case"quarter":d.push(...te.getQuarterRange());break;case"year":d.push(...te.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(te.getShiftedDay(s.value[0],1));break;case"week":c.push(...te.getLastWeekRange(s.value[0],s.value[1],1));break;case"month":c.push(...te.getMonthRange(s.value[0],s.value[1],1));break;case"quarter":c.push(...te.getQuarterRange(s.value[0],s.value[1],1));break;case"year":c.push(...te.getYearRange(s.value[0],1));break}s.value=[...c],a("change",{name:t.name,value:s.value}),a("update:modelValue",s.value)}function p(){const c=[];switch(l.value){case"today":c.push(te.getShiftedDay(s.value[0],-1));break;case"week":c.push(...te.getLastWeekRange(s.value[0],s.value[1],-1));break;case"month":c.push(...te.getMonthRange(s.value[0],s.value[1],-1));break;case"quarter":c.push(...te.getQuarterRange(s.value[0],s.value[1],-1));break;case"year":c.push(...te.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 V(c){const[d,z,A]=c.split("-");return`${A}.${z}.${d}`}function N(c,d="long"){const z=new Date(Date.UTC(2e3,c-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:d,timeZone:"UTC"}).format(z)}function u(c){const{value:d}=s;switch(c){case"today":return V(d[0]);case"range":return"Період";case"week":return d[0]&&d[1]?`${V(d[0])} – ${V(d[1])}`:"";case"quarter":if(d[0]){const z=new Date(d[0]),A=z.getFullYear(),F=z.getMonth();return`${Math.floor(F/3)+1} ${r("filter.quarter")} ${A}`}return"";case"month":if(d[0]){const[z,A]=d[0].split("-");return`${N(parseInt(A,10))} ${z}`}return"";case"year":return d[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const B=e.computed(()=>l.value?u(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:m,nextClick:h,prevClick:p,ukMonths:f,formatDisplayDate:V,getModeLabel:u,currentLabel:B,clear:b}}const eo={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},to={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},lo=["max","disabled"],oo=["min","disabled"],no={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ro=["max","disabled"],ao={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},io={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},so=["min","disabled"],co={class:"flex gap-1 px-2"},mo=["title","onClick"],po={class:"pt-2 px-2"},uo=["disabled"],fo=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=dt(),s=Ce(),x=fl(),n=ie(),m=o,h=e.ref(null),{activeMode:p,innerValue:f,onSelectChange:V,nextClick:N,prevClick:u,clear:B}=xt({...r,popoverRef:h},m);e.watch(()=>r.modelValue,A=>{A!==void 0?(f.value=A,m("update:modelValue",A)):(p.value="",f.value=[])}),e.watch(f,A=>{m("update:modelValue",A),m("change",{name:r.name,value:A})},{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(A){var F;return((F=c[A])==null?void 0:F.label)??n(`filter.${A}`)}function z(A){var F;return((F=c[A])==null?void 0:F.title)??n(`filter.${A}`)}return a({clear:B,popoverRef:h}),(A,F)=>{var C;return e.openBlock(),e.createElementBlock(e.Fragment,null,[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",eo,[e.unref(p)!==""&&e.unref(p)==="range"?(e.openBlock(),e.createElementBlock("div",to,[F[7]||(F[7]=e.createTextVNode(" 1111 ",-1)),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(f)[1],locale:"uk-UA","onUpdate:modelValue":F[0]||(F[0]=k=>e.unref(f)[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,lo),[[e.vModelText,e.unref(f)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(f)[0],locale:"uk-UA","onUpdate:modelValue":F[1]||(F[1]=k=>e.unref(f)[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,oo),[[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",no,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":F[2]||(F[2]=k=>e.unref(f)[0]=k),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,ro),[[e.vModelText,e.unref(f)[0]]])],2),t.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",ao," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",io,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":F[3]||(F[3]=k=>e.unref(f)[1]=k),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,so),[[e.vModelText,e.unref(f)[1]]])],2)],2),e.createElementVNode("div",co,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(b,k=>e.createElementVNode("button",{key:k,class:e.normalizeClass(e.unref(x)+(e.unref(p)===k?" bg-blue-100":"")),title:z(k),onClick:L=>e.unref(V)(k)},e.toDisplayString(d(k)),11,mo)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(x)),onClick:F[4]||(F[4]=(...k)=>e.unref(u)&&e.unref(u)(...k))},"<",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(x)),onClick:F[5]||(F[5]=(...k)=>e.unref(N)&&e.unref(N)(...k))},">",2)]),e.createElementVNode("div",po,[["popover"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:!((C=e.unref(f))!=null&&C.length)||!e.unref(f)[0]&&!e.unref(f)[1],class:e.normalizeClass(e.unref(s)+"hover:bg-gray-100"),onClick:F[6]||(F[6]=(...k)=>e.unref(B)&&e.unref(B)(...k))},e.toDisplayString(e.unref(n)("filter.clear")),11,uo)):e.createCommentVNode("",!0)])],64)}}});function go(t,a){const{api:o,options:r=[],limit:l=20,dataKey:s="data",data:x}=t,n=s??x??"data",m=t.multi;function h(D){return m?Array.isArray(D)?D:D?[D]:[]:Array.isArray(D)?D[0]:D}const p=e.ref(h(t.modelValue)),f=e.ref(""),V=e.ref(!1),N=e.ref(r),u=e.ref("id"),B=e.ref("text"),b=e.ref(!1),c=e.ref(t.layout!=="popover"&&r.length>l),d=e.ref([]),z=e.ref(0);function A(D){const v=D.find(Boolean)??{},W=["id","value","code","key"].find(ne=>ne in v)??"id",U=["text","label","name","title"].find(ne=>ne in v)??"text";return{autoValueKey:W,autoLabelKey:U}}if(r.length>0){const D=A(r);u.value=D.autoValueKey,B.value=D.autoLabelKey}const F=e.computed(()=>{if(o)return N.value;const D=N.value;if(t.layout==="popover")return D;if(!f.value)return b.value?D:D.slice(0,l);const v=f.value.toLowerCase();return D.filter(W=>W[B.value].toLowerCase().includes(v))});let C=null;async function k(D){if(o){V.value=!0;try{const v=new URL(o,window.location.origin);v.searchParams.set("json","1"),v.searchParams.set("key",D),v.searchParams.set("limit",l.toString());const W=await fetch(v.toString());if(!W.ok){_e({type:"error",title:"Error",message:"Failed to fetch remote options"}),N.value=[];return}const U=await W.json();if(!U[n]){_e({type:"error",title:"Error",message:U}),N.value=[];return}if(N.value=U[n],N.value.length>0){const ne=A(N.value);u.value=ne.autoValueKey,B.value=ne.autoLabelKey}z.value=U.total}catch(v){console.error("Failed to fetch remote options:",v)}finally{V.value=!1}}}e.watch(f,D=>{o&&(C&&clearTimeout(C),C=setTimeout(()=>{k(D)},200))}),e.watch(()=>t.modelValue,D=>{p.value=h(D)},{immediate:!0}),e.watch(p,D=>{m?(!Array.isArray(D)||D.length===0)&&(d.value=[]):(D==null||typeof D=="string"&&D==="")&&(d.value=[])});function L(D){return m&&Array.isArray(p.value)?p.value.includes(D[u.value]):p.value&&p.value===D[u.value]}function _(D){if(m&&!Array.isArray(p.value)&&(p.value=[]),m&&Array.isArray(p.value)){const v=p.value.includes(D[u.value]);p.value=v?p.value.filter(W=>W!==D[u.value]):[...p.value,D[u.value]],d.value=v?d.value.filter(W=>W!==D[B.value]):[...d.value,D[B.value]]}else p.value=D[u.value],d.value=D[B.value];a("update:modelValue",p.value),a("change",{name:t.name,value:p.value})}function i(){m?(p.value=[],d.value=[]):(p.value=void 0,d.value=[]),a("update:modelValue",p.value),a("clear",t.name)}function E(){C&&clearTimeout(C),f.value="",b.value=!1}function w(){b.value=!b.value}e.onBeforeUnmount(()=>{C&&clearTimeout(C)});const P=e.ref(-1);e.watch(F,()=>{P.value=F.value.length>0?0:-1});function $(D){const v=F.value.length;if(D.key==="ArrowDown")D.preventDefault(),P.value=(P.value+1)%v;else if(D.key==="ArrowUp")D.preventDefault(),P.value=(P.value-1+v)%v;else if(D.key==="Enter"&&(D.preventDefault(),P.value>=0&&P.value<F.value.length)){const W=F.value[P.value];_(W)}}function R(){o&&N.value.length===0&&f.value.length===0&&k(f.value)}return{innerValue:p,searchTerm:f,filteredOptions:F,isSelected:L,selectItem:_,clear:i,resetSearch:E,toggleShowAll:w,isReqProc:V,showAll:b,isEnableShowAll:c,labelKey:B,valueKey:u,allOptions:N,highlightedIndex:P,onKeyDown:$,selectedLabels:d,totalCount:z,loadData:R}}const ho={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},yo=["placeholder"],xo={key:0,class:"w-full"},bo={class:"flex flex-col items-center justify-center p-5 text-center"},ko={class:"max-w-sm mx-auto mt-6"},wo={class:"font-medium text-gray-800 dark:text-neutral-200"},Co={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Vo={key:1,class:"py-2 px-2 border-t"},Bo=["disabled"],Eo={class:"text-xs text-gray-500"},No=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=ie(),l=Ce(),s=t,x=o,n=e.ref(null),{innerValue:m,filteredOptions:h,isSelected:p,selectItem:f,clear:V,resetSearch:N,toggleShowAll:u,isReqProc:B,showAll:b,isEnableShowAll:c,searchTerm:d,labelKey:z,valueKey:A,highlightedIndex:F,onKeyDown:C,selectedLabels:k,totalCount:L,loadData:_}=go({...s,modelValue:s.modelValue},x),i=e.computed(()=>s.multi?Array.isArray(m.value)&&m.value.length>0:m.value!=null&&m.value!==""),E=e.computed(()=>s.multi&&Array.isArray(m.value)?m.value.length:m.value!=null&&m.value!==""?1:0);e.onMounted(()=>{N(),s.layout!=="inline"&&(_(),n.value&&s.layout==="popover"&&n.value.focus())}),e.watch(()=>s.modelValue,P=>{P===void 0&&(s.multi?m.value=[]:m.value=void 0)});const w=e.ref([]);return e.watch(F,P=>{var $;P>=0&&w.value[P]&&(($=w.value[P])==null||$.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(h,()=>{w.value=[]}),a({clear:V,inputTextRef:n,selectedLabels:k,loadData:_}),(P,$)=>{var R;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",ho,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":$[0]||($[0]=D=>e.isRef(d)?d.value=D:null),onKeydown:$[1]||($[1]=(...D)=>e.unref(C)&&e.unref(C)(...D)),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,yo),[[e.vModelText,e.unref(d)]]),e.createVNode(ht,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(d)!=""?(e.openBlock(),e.createBlock(ot,{key:0,onClick:$[2]||($[2]=D=>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),(D,v)=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,count:D.count,label:D[e.unref(z)],color:D.color,type:t.multi?"checkbox":"radio",value:D[e.unref(A)],"is-selected":e.unref(p)(D),highlighted:v===e.unref(F),onItemClick:W=>e.unref(f)(D),ref_for:!0,ref:W=>w.value[v]=W==null?void 0:W.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(B)?(e.openBlock(),e.createElementBlock("div",xo,[e.createElementVNode("div",bo,[e.createVNode(tt),e.createElementVNode("div",ko,[e.createElementVNode("p",wo,e.toDisplayString(e.unref(r)("filter.notfound")),1),$[7]||($[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:$[3]||($[3]=(...D)=>e.unref(u)&&e.unref(u)(...D)),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(Ue)])):e.createCommentVNode("",!0),e.unref(b)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:$[4]||($[4]=(...D)=>e.unref(u)&&e.unref(u)(...D)),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(lt)])):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",Co,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(m))?(R=e.unref(m))==null?void 0:R.length:e.unref(m)!==void 0&&(e.unref(m)||e.unref(m)===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:$[5]||($[5]=(...D)=>e.unref(V)&&e.unref(V)(...D))},e.toDisplayString(e.unref(r)("filter.clear")),513),[[e.vShow,i.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Vo,[e.createElementVNode("button",{type:"button",disabled:!i.value,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:$[6]||($[6]=(...D)=>e.unref(V)&&e.unref(V)(...D))},[e.createTextVNode(e.toDisplayString(e.unref(r)("filter.clear"))+" ",1),e.createElementVNode("span",Eo,e.toDisplayString(E.value)+" з "+e.toDisplayString(e.unref(L)),1)],10,Bo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),So=["for","onClick"],_o=["id","name","value"],Mo={class:"block"},Do={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Lo={key:1,class:"pt-2 px-2 border-t"},zo=["disabled"],Po={class:"text-xs text-gray-500"},Fo=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=Ce(),x=ie(),{innerValue:n,isSelected:m,selectItem:h,clear:p,labelKey:f,valueKey:V,allOptions:N}=r.multi?ft({...r,modelValue:r.modelValue??r.default??[]},l):et({...r,modelValue:r.modelValue!==void 0?r.modelValue:r.default??""},l),u=e.computed(()=>r.multi?Array.isArray(n.value)&&n.value.length>0:n.value!=null&&n.value!==""),B=e.computed(()=>r.multi&&Array.isArray(n.value)?n.value.length:n.value!=null&&n.value!==""?1:0);return a({clear:p}),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(N),z=>(e.openBlock(),e.createElementBlock("label",{key:`item-${z[e.unref(V)]}`,for:`item-${z[e.unref(V)]}`,onClick:e.withModifiers(A=>e.unref(h)(z),["stop","prevent"]),class:e.normalizeClass([e.unref(m)(z)?"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-${z[e.unref(V)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${z[e.unref(V)]}`,value:z[e.unref(V)]},null,8,_o),e.createElementVNode("span",Mo,e.toDisplayString(z[e.unref(f)]),1)],10,So))),128))],2),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Do,[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(N).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:c[0]||(c[0]=(...z)=>e.unref(p)&&e.unref(p)(...z))}," Очистити ",512),[[e.vShow,u.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Lo,[e.createElementVNode("button",{type:"button",disabled:!u.value,class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:c[1]||(c[1]=(...z)=>e.unref(p)&&e.unref(p)(...z))},[e.createTextVNode(e.toDisplayString(e.unref(x)("filter.clear"))+" ",1),e.createElementVNode("span",Po,e.toDisplayString(B.value)+" з "+e.toDisplayString(e.unref(N).length),1)],10,zo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),$o=["disabled","title"],Ao={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},jo={class:"truncate text-ellipsis text-sm"},Ro={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"},Zo={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"},To={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"},nt=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(()=>mt(o.mode)),l=e.ref(!1),s=e.ref({top:0,left:0}),x=e.ref(null),n=e.ref(null),m=e.ref(null);let h=null;function p(){const C=n.value,k=m.value;if(!C||!k)return;const L=C.getBoundingClientRect(),_=k.offsetWidth,i=k.offsetHeight,E=window.innerWidth,w=window.innerHeight,P=8;let $=L.bottom+P,{left:R}=L;const D=Math.max(E-_-10,10);if(R=Math.min(R,D),R=Math.max(R,10),$+i>w-10){const v=L.top-i-P;$=v>=10?v:Math.max(w-i-10,10)}$<10&&($=10),s.value={top:$,left:R}}function f(){e.nextTick(()=>{p(),typeof window<"u"&&typeof window.requestAnimationFrame=="function"&&window.requestAnimationFrame(()=>p())})}function V(){l.value=!l.value,l.value&&(f(),e.nextTick(()=>{var C,k,L,_,i,E,w;(C=o.fieldRef)!=null&&C.inputTextRef&&((_=(L=(k=o.fieldRef)==null?void 0:k.inputTextRef)==null?void 0:L.focus)==null||_.call(L)),(i=o.fieldRef)!=null&&i.loadData&&Promise.resolve((w=(E=o.fieldRef)==null?void 0:E.loadData)==null?void 0:w.call(E)).finally(()=>{l.value&&f()})}))}function N(C){var k,L,_;!((k=x.value)!=null&&k.contains(C.target))&&!((L=m.value)!=null&&L.contains(C.target))&&!((_=n.value)!=null&&_.contains(C.target))&&(l.value=!1)}function u(C){C.key==="Escape"&&(l.value=!1)}const B=e.ref(!1),b=e.ref("ua"),c=C=>{C.detail.key==="locale"&&(b.value=C.detail.newValue)};e.onMounted(()=>{B.value=!0,b.value=localStorage.locale,window.addEventListener("storage",c),document.addEventListener("click",N,!0),document.addEventListener("keydown",u),window.addEventListener("scroll",p,!0),window.addEventListener("resize",p,!0),typeof ResizeObserver<"u"&&(h=new ResizeObserver(()=>{l.value&&f()}))}),e.onBeforeUnmount(()=>{window.removeEventListener("storage",c),document.removeEventListener("click",N,!0),document.removeEventListener("keydown",u),window.removeEventListener("scroll",p,!0),window.removeEventListener("resize",p,!0),h==null||h.disconnect(),h=null});function d(){l.value=!1}a({close:d}),e.watch([B,l,m],([C,k,L])=>{C&&k&&L&&(f(),h==null||h.observe(L))});function z(C){return Array.isArray(C)?C.filter(k=>k!=null&&k!=="").length:C&&typeof C=="object"?Object.values(C).filter(k=>k!=null&&k!=="").length:typeof C=="string"?C.trim()===""?0:1:typeof C=="number"?Number.isNaN(C)?0:1:C===null||C!==void 0?1:0}const A=e.computed(()=>{var L;const C=(L=o.fieldRef)==null?void 0:L.selectedLabels,k=z(C);return k>0?k:z(o.currentValue)}),F=e.computed(()=>{var k;const C=(k=o.fieldRef)==null?void 0:k.selectedLabels;return!C||["inline"].includes(o.layout||"")?o[b.value]||(o.label??""):Array.isArray(C)?C.length>0?C.join(", "):o.label??"":String(C)});return(C,k)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:x},[e.createElementVNode("button",{onClick:V,disabled:t.disabled,ref_key:"triggerRef",ref:n,title:t.label,class:e.normalizeClass([r.value,t.width?e.unref(yt).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",Ao,[e.createElementVNode("span",jo,e.toDisplayString(F.value),1),t.layout==="inline"&&A.value>0?(e.openBlock(),e.createElementBlock("span",Ro,e.toDisplayString(A.value),1)):e.createCommentVNode("",!0)]),e.createVNode(Ue,{class:"h-4 w-4 text-neutral-500"})],10,$o),B.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:m,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",Zo,[e.createElementVNode("div",To,[e.renderSlot(C.$slots,"default")])])],4),[[e.vShow,l.value]])])):e.createCommentVNode("",!0)],512))}}),vo={},Oo={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 Io(t,a){return e.openBlock(),e.createElementBlock("svg",Oo,[...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 Uo=me(vo,[["render",Io]]),Ko={},Ho={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 Go(t,a){return e.openBlock(),e.createElementBlock("svg",Ho,[...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 Wo=me(Ko,[["render",Go]]),qo={class:"flex gap-1"},Yo={class:"mb-1"},Qo={class:"mb-1"},Xo={class:"inline-flex rounded-sm shrink-0 pl-1"},Jo=["title"],en={class:"inline-flex rounded-sm shrink-0 pl-1"},tn=["title"],ln={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},on=["max","value","disabled"],nn=["min","value","disabled"],rn=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=ie(),l=t,s=o,x=e.ref(null),{activeMode:n,innerValue:m,onSelectChange:h,nextClick:p,prevClick:f,currentLabel:V,clear:N}=xt({...l,popoverRef:x},s);e.watch(()=>l.modelValue,b=>{b!==void 0?(m.value=b,s("update:modelValue",b)):(n.value="",m.value=[])}),e.watch(m,b=>{s("update:modelValue",b),s("change",{name:l.name,value:b})},{deep:!0});function u(b){const c=Array.isArray(m.value)?[...m.value]:[];m.value=[b,c[1]||""]}function B(b){const c=Array.isArray(m.value)?[...m.value]:[];m.value=[c[0]||"",b]}return a({clear:N,popoverRef:x}),(b,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",qo,[e.createVNode(nt,{ref_key:"popoverRef",ref:x,label:e.unref(V),"current-value":e.unref(m),mode:t.mode,width:typeof t.width=="number"&&e.unref(m).length?t.width-70:t.width,onClear:e.unref(N),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(ye,{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(ye,{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(ye,{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(ye,{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(ye,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Yo,[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(ye,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Qo,[e.createElementVNode("button",{type:"button",onClick:c[6]||(c[6]=d=>e.unref(N)()),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(m)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ye,{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",Xo,[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(Uo)],8,Jo)]),e.createElementVNode("div",en,[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(p)&&e.unref(p)(...d))},[e.createVNode(Wo)],8,tn)])],64)):e.createCommentVNode("",!0),e.unref(n)!==""&&e.unref(n)==="range"?(e.openBlock(),e.createElementBlock("div",ln,[e.createElementVNode("input",{type:"date",max:e.unref(m)[1],locale:"uk-UA",value:e.unref(m)[0],onInput:c[9]||(c[9]=d=>u(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,on),e.createElementVNode("input",{type:"date",min:e.unref(m)[0],locale:"uk-UA",value:e.unref(m)[1],onInput:c[10]||(c[10]=d=>B(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,nn)])):e.createCommentVNode("",!0)]),(t.cleanable,e.createCommentVNode("",!0))],64))}}),an=["disabled","onClick"],sn={key:0,class:"pt-2 px-2 border-t"},cn=["disabled"],dn=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=Ce(),x=ie(),{innerValue:n,isSelected:m,selectItem:h,clear:p,labelKey:f,valueKey:V,allOptions:N}=et({...r,modelValue:r.modelValue??r.default??""},l),u=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value===""));function B(c){return m(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:p}),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(N),z=>(e.openBlock(),e.createElementBlock("button",{key:z[e.unref(V)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",B(z)]),disabled:t.disabled,onClick:A=>b(z)},e.toDisplayString(z[e.unref(f)]),11,an))),128))],2),t.cleanable&&t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",sn,[e.createElementVNode("button",{type:"button",disabled:!u.value,class:e.normalizeClass(e.unref(s)+" hover:bg-gray-100"),onClick:d[0]||(d[0]=(...z)=>e.unref(p)&&e.unref(p)(...z))},e.toDisplayString(e.unref(x)("filter.clear")),11,cn)])):e.createCommentVNode("",!0)],64))}}),bt={radio:Ml,checkbox:gt,check:gt,text:Hl,range:Jl,date:fo,select:No,tag:Fo,button:dn,"date:inline":rn};function rt(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:bt[o]||bt.text,type:o}}const mn={style:{display:"inline-flex",margin:"0px",width:"100%"}},pn={class:"relative w-full mb-2 p-4 bg-white rounded-md shadow-sm"},un={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},fn={class:"flex items-center"},gn={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},hn={class:"filter-layout__body"},yn=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(()=>rt(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:f=>l("update:modelValue",f)});function m(f){l("clear",f)}function h(f,V){l("change",{name:f,value:V}),r.modelValue!==void 0&&l("update:modelValue",V)}function p(){var f,V;(V=(f=s.value)==null?void 0:f.clear)==null||V.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,V)=>{var N,u,B;return e.openBlock(),e.createElementBlock("div",mn,[e.createElementVNode("div",pn,[e.createElementVNode("div",un,[e.createElementVNode("div",fn,[e.createElementVNode("span",gn,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(nl,{key:0,onClick:p})):e.createCommentVNode("",!0)]),e.createElementVNode("div",hn,[((N=x.value)==null?void 0:N.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((u=x.value)==null?void 0:u.component),e.mergeProps({key:0},r,{type:(B=x.value)==null?void 0:B.type,class:r.itemClass,onChange:V[0]||(V[0]=b=>h(b.name,b.value)),onClear:V[1]||(V[1]=b=>m(b)),ref_key:"filterRef",ref:s}),null,16,["type","class"])):(e.openBlock(),e.createBlock(nt,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:p,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:V[2]||(V[2]=d=>h(d.name,d.value)),onClear:V[3]||(V[3]=d=>m(d))}),null,16,["type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),kt=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(()=>rt(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:p=>l("update:modelValue",p)});function m(p=r.name){l("clear",p)}function h(p,f){l("change",{name:p,value:f}),r.modelValue!==void 0&&l("update:modelValue",f)}return e.watch(()=>r.default,p=>{n.value=p}),e.watch(()=>r.modelValue,p=>{n.value=p}),a({filterRef:s}),(p,f)=>{var V,N;return["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((V=x.value)==null?void 0:V.component),e.mergeProps({key:0},r,{type:(N=x.value)==null?void 0:N.type,class:t.itemClass,onChange:f[0]||(f[0]=u=>h(u.name,u.value)),onClear:f[1]||(f[1]=u=>m(u)),disabled:t.disabled,modelValue:n.value,"onUpdate:modelValue":f[2]||(f[2]=u=>n.value=u)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(nt,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:m,fieldRef:s.value,width:r.width,disabled:t.disabled,layout:"inline"},{default:e.withCtx(()=>{var u,B;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((u=x.value)==null?void 0:u.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{modelValue:n.value,"onUpdate:modelValue":f[3]||(f[3]=b=>n.value=b),type:(B=x.value)==null?void 0:B.type,class:r.itemClass,onChange:f[4]||(f[4]=b=>h(b.name,b.value)),onClear:f[5]||(f[5]=b=>m(b))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),xn=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(()=>rt(r.type,r.layout)),n=e.computed({get:()=>r.modelValue,set:p=>l("update:modelValue",p)});function m(p){l("clear",p)}function h(p,f){l("change",{name:p,value:f}),r.modelValue!==void 0&&l("update:modelValue",f)}return e.watch(()=>r.default,p=>{n.value=p}),e.watch(()=>r.modelValue,p=>{n.value=p}),e.watch(()=>r,p=>{n.value=p}),a({filterRef:s}),(p,f)=>{var V,N;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((V=x.value)==null?void 0:V.component),e.mergeProps(r,{type:(N=x.value)==null?void 0:N.type,class:r.itemClass,modelValue:n.value,"onUpdate:modelValue":f[0]||(f[0]=u=>n.value=u),onChange:f[1]||(f[1]=u=>h(u.name,u.value)),onClear:f[2]||(f[2]=u=>m(u)),ref_key:"filterRef",ref:s}),null,16,["type","class","modelValue"])}}}),ce=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:p=>l("update:modelValue",p)});function n(p){l("clear",p)}function m(p,f){l("change",{name:p,value:f}),r.modelValue!==void 0&&l("update:modelValue",f)}e.watch(()=>r.default,p=>{x.value=p}),e.watch(()=>r.modelValue,p=>{x.value=p}),a({filterRef:s});function h(){switch(r.layout){case"inline":return kt;case"vertical":return yn;case"popover":return xn;default:return kt}}return(p,f)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(h()),e.mergeProps(r,{onChange:f[0]||(f[0]=V=>m(V.name,V.value)),onClear:f[1]||(f[1]=V=>n(V)),modelValue:x.value,"onUpdate:modelValue":f[2]||(f[2]=V=>x.value=V)}),null,16,["modelValue"]))}});function Ke(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 m=e.computed(()=>s.value.map(c=>{var z,A,F;const d=(z=c.props)==null?void 0:z.name;return e.cloneVNode(c,{...c.props,layout:t.view,showClean:!0,modelValue:l.value[d],"onUpdate:modelValue":C=>{n(d,C)},onClear:()=>x(d),class:[t.itemClass,(A=c.props)==null?void 0:A.class],itemClass:[t.itemClass,(F=c.props)==null?void 0:F.itemClass].filter(C=>typeof C=="string"&&C.trim().length>0).join(" ")||void 0})})),h=e.computed(()=>new Map(m.value.map(c=>{var z;const d=(z=c.props)==null?void 0:z.name;return d?[d,c]:null}).filter(c=>c!==null)));function p(c=!1){l.value={},c||a("clearAll",{data:e.toRaw(l.value),name:"ALL"})}const f=e.ref(""),V=e.computed(()=>{var c;return(c=t.schema)!=null&&c.value?Object.entries(l.value).filter(([d,z])=>t.schema&&!(d in t.schema.value)?!1:Array.isArray(z)?z.some(A=>A!==""&&A!==void 0):z!==""&&z!==void 0).length:0}),N=e.ref();e.watch(f,async()=>{var c,d;await e.nextTick(),(d=(c=N==null?void 0:N.value)==null?void 0:c.filterRef)!=null&&d.inputTextRef&&N.value.filterRef.inputTextRef.focus()});const u=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)):{}}),B=e.computed(()=>{var d;if(m.value.length===0)return[];let c=0;if((d=t.schema)!=null&&d.value){const z=Object.entries(t.schema.value).length;t.limit&&z<t.limit?c=t.limit-z:c=0}return m.value.slice(0,c)}),b=e.computed(()=>m.value.length===0?[]:t.view!=="inline"?m.value:m.value.slice(B.value.length));return{activeFilter:l,activeFilterCount:V,onFilterChange:n,clearFilter:x,clearAllFilters:p,limitedSchema:u,filtersSlot:m,limitedFiltersSlot:B,popoverFiltersSlot:b,vnodeMap:h,selectedFilter:f,filterRef:N}}const bn=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 m(){o.value=!o.value}function h(){const u=s.value,B=r.value;if(!u||!B)return;const{left:b,bottom:c}=u.getBoundingClientRect();requestAnimationFrame(()=>{if(!B)return;const{width:d}=B.getBoundingClientRect(),z=B.offsetWidth||d,A=window.innerWidth||document.documentElement.clientWidth,F=A-b;let C=b;z>F&&(C=A-z-18),C<18&&(C=18);const k=A-z-18;C>k&&(C=Math.max(18,k)),x.value={position:"fixed",top:`${c+18}px`,left:`${C}px`},n.value=!0})}const p=e.computed(()=>Object.entries(x.value).map(u=>u.join(":")).join(";"));function f(u){var b,c;const B=u.target;!((b=s.value)!=null&&b.contains(u.target))&&!((c=r.value)!=null&&c.contains(u.target))&&!B.closest("[data-inside-popover]")&&(o.value=!1)}const V=e.ref(!1);e.onMounted(()=>{V.value=!0}),e.onMounted(()=>{var u,B;s.value=((u=l.value)==null?void 0:u.querySelector("[data-popover-trigger]"))||null,(B=s.value)==null||B.addEventListener("click",m),document.addEventListener("click",f),window.addEventListener("resize",h),window.addEventListener("scroll",h,!0)}),e.onBeforeUnmount(()=>{var u;(u=s.value)==null||u.removeEventListener("click",m),document.removeEventListener("click",f),window.removeEventListener("resize",h),window.removeEventListener("scroll",h,!0)});const N=a;return e.watch(o,async u=>{u?(n.value=!1,N("open"),await e.nextTick(),requestAnimationFrame(()=>{h()})):(N("close"),n.value=!1)}),(u,B)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:l},[e.renderSlot(u.$slots,"trigger"),V.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([p.value,{visibility:n.value?"visible":"hidden",opacity:n.value?1:0}])},[e.renderSlot(u.$slots,"default")],4),[[e.vShow,o.value]])])):e.createCommentVNode("",!0)],512))}}),kn={},wn={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 Cn(t,a){return e.openBlock(),e.createElementBlock("svg",wn,[...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 wt=me(kn,[["render",Cn]]),Vn={class:"flex items-center gap-2 overflow-hidden"},Bn={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"},En={class:"flex max-h-[400px] md:max-h-[400px]"},Nn={class:"w-[150px] sm:w-[180px] md:w-64 border-r border-gray-200 overflow-y-auto"},Sn={class:"p-2 md:p-4 border-b"},_n={class:"text-xs md:text-sm text-gray-600"},Mn={class:"p-1 md:p-2"},Dn=["onClick"],Ln={class:"flex items-center gap-1.5 md:gap-2"},zn={class:"text-xs md:text-sm font-medium line-clamp-3"},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"},Fn=["onClick"],$n={class:"flex items-center gap-1.5 md:gap-2"},An={class:"text-xs md:text-sm font-medium truncate"},jn={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"},Rn={key:0,class:"p-1 md:p-2 border-t"},Zn={class:"flex-1 min-h-[250px] md:min-h-[300px] overflow-y-auto"},Tn={key:0,class:"flex items-center justify-center h-full text-gray-500"},vn={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=ie(),l=t,s=mt(l.mode),x=e.useSlots(),n=o,m=e.ref({}),h=e.computed(()=>m!=null&&m.value?l.view!=="inline"?m==null?void 0:m.value:Object.fromEntries(Object.entries(m==null?void 0:m.value).slice(l.limit)):{}),{activeFilter:p,activeFilterCount:f,onFilterChange:V,clearFilter:N,clearAllFilters:u,popoverFiltersSlot:B,selectedFilter:b,filterRef:c}=Ke({...l,schema:m,slots:x},n),d=e.computed(()=>l.badgeCount??f.value);function z(C){return Array.isArray(C)?C.filter(k=>k!=null&&k!=="").length:C&&typeof C=="object"?Object.values(C).filter(k=>k!=null&&k!=="").length:C===null||C!==void 0&&C!==""?1:0}function A(C){return p.value?z(p.value[C]):0}function F(){if(h.value){const[C]=Object.keys(h.value);b.value=C}else B.value.length>0?b.value=B.value[0].props.name:b.value=""}return e.watch(()=>l.schema,C=>{m.value=C??{}},{deep:!0,immediate:!0}),a({clearFilter:N,clearAllFilters:u}),(C,k)=>(e.openBlock(),e.createBlock(bn,{onOpen:F,onClose:k[5]||(k[5]=L=>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",Vn,[e.createVNode(wt,{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",Bn,e.toDisplayString(d.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",En,[e.createElementVNode("div",Nn,[e.createElementVNode("div",Sn,[e.createElementVNode("p",_n,e.toDisplayString(e.unref(r)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",Mn,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(h.value),([L,_])=>(e.openBlock(),e.createElementBlock("button",{key:L,onClick:()=>{b.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(b)===L?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Ln,[e.createElementVNode("span",zn,e.toDisplayString(_.label),1)]),A(L)>0?(e.openBlock(),e.createElementBlock("div",Pn,e.toDisplayString(A(L)),1)):e.createCommentVNode("",!0)],10,Dn))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),(L,_)=>(e.openBlock(),e.createElementBlock("button",{key:"slot-"+_,onClick:i=>b.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(b)===L.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",$n,[e.createElementVNode("span",An,e.toDisplayString(L.props.label),1)]),A(L.props.name)>0?(e.openBlock(),e.createElementBlock("div",jn,e.toDisplayString(A(L.props.name)),1)):e.createCommentVNode("",!0)],10,Fn))),128))]),e.unref(f)>0?(e.openBlock(),e.createElementBlock("div",Rn,[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]=L=>e.unref(u)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Zn,[e.unref(b)===""?(e.openBlock(),e.createElementBlock("div",Tn,[e.createElementVNode("p",vn,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),([L,_])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(b)===L?(e.openBlock(),e.createBlock(ce,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:k[1]||(k[1]=i=>e.unref(V)(i.name,i.value)),onClear:k[2]||(k[2]=i=>{e.unref(N)(i),e.unref(V)(i,void 0)}),modelValue:e.unref(p)[L],"onUpdate:modelValue":i=>e.unref(p)[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(B),(L,_)=>{var i,E;return e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+_},[e.unref(b)===L.props.name?(e.openBlock(),e.createBlock(ce,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:k[3]||(k[3]=w=>e.unref(V)(w.name,w.value)),onClear:k[4]||(k[4]=w=>{e.unref(N)(w),e.unref(V)(w,void 0)}),modelValue:e.unref(p)[L.props.name],"onUpdate:modelValue":w=>e.unref(p)[L.props.name]=w,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64)}),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),On={class:"flex gap-1 items-center flex-wrap"},Vt=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=ie(),l=t,s=o,x=e.useSlots(),n=e.ref({}),m=e.computed(()=>Object.keys(l.schema).length>l.limit),{activeFilter:h,activeFilterCount:p,onFilterChange:f,clearFilter:V,clearAllFilters:N,limitedSchema:u,filtersSlot:B,limitedFiltersSlot:b}=Ke({...l,schema:n,slots:x},s);function c(k){return Array.isArray(k)?k.some(L=>L!==""&&L!==void 0&&L!==null):k===null?!0:k&&typeof k=="object"?Object.values(k).some(L=>L!==""&&L!==void 0&&L!==null):k!==""&&k!==void 0}const d=e.computed(()=>{const k=Object.keys(u.value??{}),L=b.value.map(_=>{var i;return(i=_.props)==null?void 0:i.name}).filter(_=>typeof _=="string");return new Set([...k,...L])}),z=e.computed(()=>Object.entries(h.value??{}).filter(([k,L])=>d.value.has(k)&&c(L)).length),A=e.computed(()=>{const k=p.value??0,L=z.value??0;return Math.max(k-L,0)}),F=e.ref();function C(){F.value&&F.value.clearAllFilters(!0),N()}return e.watch(()=>l.schema,k=>{n.value=k},{deep:!0,immediate:!0}),a({clearFilter:V,clearAllFilters:N}),(k,L)=>(e.openBlock(),e.createElementBlock("div",On,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(u)),([_,i])=>(e.openBlock(),e.createBlock(ce,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(V),layout:"inline",cleanable:!0,modelValue:e.unref(h)[_],"onUpdate:modelValue":E=>e.unref(h)[_]=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(b),(_,i)=>{var E,w;return e.openBlock(),e.createBlock(ce,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,(w=_.props)==null?void 0:w.itemClass].filter(Boolean).join(" ")||void 0,onChange:L[1]||(L[1]=P=>e.unref(f)(P.name,P.value)),onClear:L[2]||(L[2]=P=>{e.unref(V)(P),e.unref(f)(P,void 0)}),cleanable:!0,modelValue:e.unref(h)[_.props.name],"onUpdate:modelValue":P=>e.unref(h)[_.props.name]=P}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128)),m.value?(e.openBlock(),e.createBlock(Ct,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(N)()),onClear:L[5]||(L[5]=_=>e.unref(V)(_.name)),mode:t.mode,ref_key:"popoverRef",ref:F,cleanable:!0,"badge-count":A.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),(_,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(p)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:C,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)]))}}),In={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"},Un={class:"flex items-center vst-filters vsTailwind flex-col w-full"},Kn=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:m,clearFilter:h,clearAllFilters:p,filtersSlot:f}=Ke({...r,slots:s},l);return a({clearFilter:h,clearAllFilters:p}),(V,N)=>t.view==="vertical"?(e.openBlock(),e.createElementBlock("div",In,[e.createElementVNode("div",Un,[e.unref(n)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:N[0]||(N[0]=u=>e.unref(p)()),"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),([u,B])=>(e.openBlock(),e.createBlock(ce,e.mergeProps({layout:"vertical"},{ref_for:!0},B,{class:[t.itemClass,B==null?void 0:B.class],"item-class":[t.itemClass,B==null?void 0:B.itemClass].filter(Boolean).join(" ")||void 0,onChange:N[1]||(N[1]=b=>e.unref(m)(b.name,b.value)),onClear:N[2]||(N[2]=b=>{e.unref(h)(b),e.unref(m)(b,void 0)}),modelValue:e.unref(x)[u],"onUpdate:modelValue":b=>e.unref(x)[u]=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(f),(u,B)=>{var b,c;return e.openBlock(),e.createBlock(ce,e.mergeProps({key:"slot-"+B,layout:"vertical"},{ref_for:!0},u.props,{class:[t.itemClass,(b=u.props)==null?void 0:b.class],"item-class":[t.itemClass,(c=u.props)==null?void 0:c.itemClass].filter(Boolean).join(" ")||void 0,onChange:N[3]||(N[3]=d=>e.unref(m)(d.name,d.value)),onClear:N[4]||(N[4]=d=>{e.unref(h)(d),e.unref(m)(d,void 0)}),modelValue:e.unref(x)[u.props.name],"onUpdate:modelValue":d=>e.unref(x)[u.props.name]=d,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))])])):e.createCommentVNode("",!0)}}),Hn=["onKeydown"],Gn=["disabled"],Wn={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"},qn={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Yn={class:"mb-3 flex items-center justify-between"},Qn={class:"text-[15px] font-semibold text-slate-800"},Xn={"aria-hidden":"true"},Jn={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},er={key:0,class:"mt-3 flex justify-end"},tr=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=ie(),r=t,l=a,s=e.ref({}),x=e.useSlots(),{activeFilter:n,activeFilterCount:m,onFilterChange:h,clearFilter:p,clearAllFilters:f,filtersSlot:V}=Ke({...r,schema:s.value,slots:x},l),N=e.ref(null),u=e.ref(null),B=e.reactive({open:!1,top:0,left:0}),b=e.computed(()=>B.open),c=e.computed(()=>!!r.disabled),d=e.computed(()=>s.value||{}),z=e.computed(()=>r.title??"Фільтр"),A=e.computed(()=>!!x.trigger),F=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"]),C=e.computed(()=>B.open?{position:"absolute",top:`${B.top}px`,left:`${B.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function k(){B.open=!1}function L(){if(!N.value)return;const P=N.value.getBoundingClientRect();B.top=P.bottom+window.scrollY+8,B.left=P.left+P.width/2+window.scrollX}function _(){B.open=!B.open,B.open&&e.nextTick(L)}function i(){c.value||_()}function E(){B.open&&L()}function w(){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,P=>{if(!P){s.value={};return}if(Array.isArray(P)){const $=P.filter(R=>R&&(R.name||R.id)).map(R=>{const D=R.name||R.id;return[D,{...R,name:D}]});s.value=Object.fromEntries($);return}s.value=P},{deep:!0,immediate:!0}),e.watch(()=>r.disabled,P=>{P&&k()}),(P,$)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:N},[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(P.$slots,"trigger",{toggle:i,open:b.value,disabled:c.value,activeCount:e.unref(m)})],42,Hn)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(F.value),type:"button",disabled:c.value,onClick:e.withModifiers(i,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(wt,{class:"h-4 w-4"}),e.unref(m)>0?(e.openBlock(),e.createElementBlock("div",Wn,e.toDisplayString(e.unref(m)),1)):e.createCommentVNode("",!0)],10,Gn)),(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(C.value),ref_key:"panel",ref:u,onClick:$[4]||($[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",qn,[e.createElementVNode("div",Yn,[e.createElementVNode("h3",Qn,e.toDisplayString(z.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",Xn,[e.createVNode(ot,{class:"h-4 w-4"})]),$[5]||($[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",Jn,[Object.keys(d.value).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(d.value),([R,D])=>(e.openBlock(),e.createBlock(ce,e.mergeProps({key:R},{ref_for:!0},{...D,layout:"inline"},{width:t.width?t.width:D==null?void 0:D.width,class:[t.itemClass,D==null?void 0:D.class],"item-class":[t.itemClass,D==null?void 0:D.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[R],"onUpdate:modelValue":v=>e.unref(n)[R]=v,onChange:$[0]||($[0]=v=>e.unref(h)(v.name,v.value)),onClear:$[1]||($[1]=v=>{e.unref(p)(v),e.unref(h)(v,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(V),(R,D)=>{var v,W;return e.openBlock(),e.createBlock(ce,e.mergeProps({key:"slot-"+D,ref_for:!0},{...R.props,layout:"inline"},{class:[t.itemClass,(v=R.props)==null?void 0:v.class],"item-class":[t.itemClass,(W=R.props)==null?void 0:W.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[R.props.name],"onUpdate:modelValue":U=>e.unref(n)[R.props.name]=U,onChange:$[2]||($[2]=U=>e.unref(h)(U.name,U.value)),onClear:$[3]||($[3]=U=>{e.unref(p)(U),e.unref(h)(U,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))]),e.unref(m)>0?(e.openBlock(),e.createElementBlock("div",er,[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:w},e.toDisplayString(e.unref(o)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),lr={class:"mb-6 flex flex-wrap gap-2"},or=["onClick"],nr={class:"mr-2 flex items-center gap-1"},rr={class:"font-semibold"},ar={class:"text-xs text-gray-500"},He=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(p(r.value??{}));e.watch(()=>r.value,async i=>{var E,w;x.value=p(i??{}),(!i||Object.keys(i).length===0)&&(await e.nextTick(),(w=(E=m.value)==null?void 0:E.clearAllFilters)==null||w.call(E,!0))},{deep:!0,immediate:!0});const n=o,m=e.ref(),h=e.useSlots();function p(i){if(Array.isArray(i))return i.map(E=>p(E));if(i!==null&&typeof i=="object"){const E=e.toRaw(i),w={};for(const P in E)w[P]=p(E[P]);return w}return i}function f(i,E){E!==void 0?x.value={...x.value,[i]:E}:delete x.value[i],n("change",{data:p(x.value),name:i,value:p(E)})}function V(i){delete x.value[i],n("clear",{data:p(x.value),name:i}),n("change",{data:p(x.value),name:i,value:null})}function N(){x.value={},n("clear",{data:p(x.value),name:"ALL"}),n("change",{data:p(x.value),name:"ALL",value:null})}const u=e.ref({}),B=e.computed(()=>r.teleportActive);function b(){switch(r.view){case"inline":return Vt;case"vertical":return Kn;case"popover":return Ct;case"popover-inline":return tr;default:return Vt}}e.watch(()=>r.schema,i=>{if(!i){u.value={};return}if(Array.isArray(i)&&!i.length){u.value={};return}Array.isArray(i)?u.value=i.filter(E=>E.type).reduce((E,w)=>(Object.assign(w,{name:w.id||w.name,type:{datepicker:"date"}[w.type.toLowerCase()]||w.type.toLowerCase(),label:w.label||w.ua}),E[w.name]=w,w.data&&!w.api&&!w.options&&Object.assign(w,{api:`/api/suggest/${w.data}`}),E),{}):(Object.entries(i).forEach(([E,w])=>{Object.assign(w,{name:E||w.name||w.id,type:w.type.toLowerCase()})}),u.value={...i})},{immediate:!0,deep:!0});function c(i){m.value.clearFilter(i),V(i)}function d(){m.value.clearAllFilters(),N()}const z=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,E])=>{const w=u.value[i],P=(w==null?void 0:w.label)||(w==null?void 0:w.title)||i,$=F(w,E);return{key:i,label:P,value:$}}));function A(i){c(i)}function F(i,E){if(!i||E===void 0||E===null)return"";const w=C(E);if(!w.length)return"";const P=k(i);return w.map($=>P.get($)??$).filter(Boolean).join(", ")}function C(i){return Array.isArray(i)?i.map(E=>{var w;return((w=E==null?void 0:E.toString)==null?void 0:w.call(E))??""}).filter(Boolean):typeof i=="string"?i.split(",").map(E=>E.trim()).filter(Boolean):[]}function k(i){const E=new Map,w=i.valueKey||"id",P=i.labelKey||"text";return(i.options??[]).forEach($=>{const R=L($,w),D=_($,P);R&&E.set(R,D||R)}),E}function L(i,E){var w,P;return i?((P=(w=i[E]??i.id??i.value??i.key)==null?void 0:w.toString)==null?void 0:P.call(w))??"":""}function _(i,E){var w,P;return i?((P=(w=i[E]??i.text??i.label??i.value??i.id)==null?void 0:w.toString)==null?void 0:P.call(w))??"":""}return e.watch(()=>x.value,i=>{if(r.history){const E=new URL(window.location.href),w=new URLSearchParams(window.location.search);Object.keys(i).length>0?w.set("filter",Object.entries(i).filter(([,P])=>P).map(([P,$])=>`${P}=${$}`).join("|")):w.delete("filter"),E.search=decodeURI(w.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(b()),e.mergeProps(s.value,{schema:u.value,onChange:E[0]||(E[0]=w=>f(w.name,w.value)),onClear:E[1]||(E[1]=w=>V(w.name)),onClearAll:N,ref_key:"filterRef",ref:m}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:2},[e.unref(h).trigger?{name:"trigger",fn:e.withCtx(w=>[e.renderSlot(i.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(w)))]),key:"0"}:void 0]),1040,["schema"])),B.value&&z.value.length?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:B.value},[e.createElementVNode("div",lr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,w=>(e.openBlock(),e.createElementBlock("button",{key:w.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:P=>A(w.key)},[e.createElementVNode("span",nr,[e.createElementVNode("span",rr,e.toDisplayString(w.label),1),e.createElementVNode("span",ar,"· "+e.toDisplayString(w.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,or))),128))])],8,["to"])):e.createCommentVNode("",!0)],64))}});He.install=function(t){t.component("Filter",He),t.component("FilterField",ce)};function Bt(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 ir={class:"flex items-center justify-between w-full gap-x-1"},sr={class:"flex items-center"},cr=["disabled"],dr={class:"flex items-center gap-x-1"},mr=["onClick"],pr=["disabled"],ur={class:"flex justify-center items-center gap-x-5 ml-3"},fr={class:"relative"},gr={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"},hr=["onClick"],yr={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"},at=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,N=>{s.value=N});const n=e.computed(()=>Math.ceil(o.total/o.pageSize)),m=e.computed(()=>{const u=Math.floor(3.5);let B=l.value-u,b=l.value+u;B<1&&(b+=1-B,B=1),b>n.value&&(B-=b-n.value,b=n.value),B=Math.max(1,B);const c=[];for(let d=B;d<=b;d+=1)c.push(d);return c}),h=()=>{l.value>1&&f(l.value-1)},p=()=>{l.value<n.value&&f(l.value+1)},f=N=>{l.value=N,r("update:currentPage",N),r("pageChange",N)},V=(N=s.value)=>{s.value=N,x.value=!1,r("update:pageSize",s.value),r("update:currentPage",1),r("pageSizeChange",s.value)};return e.watch(()=>o.currentPage,N=>{l.value=N}),(N,u)=>(e.openBlock(),e.createElementBlock("nav",ir,[e.createElementVNode("div",sr,[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"},[...u[1]||(u[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,cr),e.createElementVNode("div",dr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,B=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:B,onClick:b=>f(B),class:e.normalizeClass(l.value===B?"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(B),11,mr))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:p,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"},[...u[2]||(u[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,pr)]),e.createElementVNode("div",ur,[e.createElementVNode("div",fr,[e.withDirectives(e.createElementVNode("div",gr,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30],B=>e.createElementVNode("button",{type:"button",key:B,onClick:b=>V(B),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(B)+" ",1),s.value===B?(e.openBlock(),e.createElementBlock("svg",yr,[...u[3]||(u[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,hr)),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:u[0]||(u[0]=B=>x.value=!x.value)},[e.createTextVNode(e.toDisplayString(s.value)+" ",1),u[4]||(u[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))])])])]))}}),ue=(t,a)=>{const o=t.__vccOpts||t;for(const[r,l]of a)o[r]=l;return o},xr={},br={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 kr(t,a){return e.openBlock(),e.createElementBlock("svg",br,[...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 it=ue(xr,[["render",kr]]),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-collapse"};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:"M9 10l2 2l-2 2"},null,-1)])])}const Br=ue(wr,[["render",Vr]]),Er={},Nr={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 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:"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 _r=ue(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-map"};function Lr(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 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 zr=ue(Mr,[["render",Lr]]),Pr={},Fr={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 $r(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:"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 Ar=ue(Pr,[["render",$r]]);function Et(t,a){let o;return function(...r){clearTimeout(o),o=setTimeout(()=>t(...r),a)}}const jr={class:"fixed inset-0 z-50 pointer-events-none"},Rr={class:"text-base font-semibold text-gray-900"},Zr={class:"px-4 pb-3 min-h-0 shrink-0 overflow-hidden"},Tr={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},vr={class:"text-base font-semibold text-gray-900"},Or={class:"flex-1 min-h-0 overflow-auto p-4"},Ir=152,Nt=96,Ur=270,St=96,Me=ue(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"),m=e.ref(!1),h=e.ref(0);let p=null,f=0,V=0;function N(_,i,E){return Math.max(_,Math.min(E,i))}function u(_){if(!_)return 0;const i=Number.parseFloat(_);return Number.isFinite(i)?i:0}function B(){if(typeof window>"u")return 0;const _=u(x.value);return Math.max(0,window.innerHeight-_)}function b(){const _=n.value==="custom",i=_?Ir:Ur,E=_?Nt:St,w=_?40:60;if(typeof window>"u")return Math.max(E,i);const P=window.innerHeight*(w/100);return N(E,i,P)}function c(){return n.value==="custom"?Nt:St}function d(_){const i=B(),E=b(),w=c(),P=s.value==="full"?i:E;return i<=0?Math.max(w,P):N(w,P-_,i)}const z=e.computed(()=>({height:`${d(h.value)}px`}));e.watch(()=>r.open,_=>{_&&(s.value=r.initialVariant??"full"),m.value=!1,h.value=0}),e.watch(()=>r.initialVariant,_=>{r.open&&_&&(s.value=_)});function A(){s.value!=="full"&&(s.value="full",l("expand")),m.value||(h.value=0)}function F(){s.value!=="peek"&&(s.value="peek",l("collapse")),m.value||(h.value=0)}function C(_){if(_.pointerId!==p)return;_.cancelable&&_.preventDefault();const i=_.clientY-f;h.value=V+i}function k(_){if(_.pointerId!==p)return;window.removeEventListener("pointermove",C),window.removeEventListener("pointerup",k),window.removeEventListener("pointercancel",k),p=null;const i=_.clientY-f,E=V+i;h.value=E;const w=d(E),$=(typeof window<"u"?window.innerHeight:0)*.6,R=$>0&&w>=$,D=$>0&&!R;if(!(s.value==="peek"&&R||s.value==="full"&&D)){m.value=!0;return}m.value=!1,h.value=0,s.value==="peek"&&R?A():s.value==="full"&&D&&F()}function L(_){var i,E;_.button!==0&&_.pointerType==="mouse"||(_.cancelable&&_.preventDefault(),p=_.pointerId,f=_.clientY,V=h.value,m.value=!0,(E=(i=_.currentTarget).setPointerCapture)==null||E.call(i,_.pointerId),window.addEventListener("pointermove",C,{passive:!1}),window.addEventListener("pointerup",k),window.addEventListener("pointercancel",k))}return e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",C),window.removeEventListener("pointerup",k),window.removeEventListener("pointercancel",k)}),a({expand:A,collapseToPeek:F}),(_,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",jr,[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":"",m.value?"vs-mobile-modal-shell__panel--dragging":""]]),style:e.normalizeStyle(z.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",Rr,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",Zr,[e.renderSlot(_.$slots,"peek",{expand:A,collapse:F},()=>[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",Tr,[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",vr,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",Or,[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"]]),Kr={class:"flex flex-col gap-2 pointer-events-auto self-end","data-peek-controls":"1"},Hr=e.defineComponent({__name:"MapMobilePeekControlButtons",props:{onOpenLayers:{type:Function},onOpenLegend:{type:Function}},setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",Kr,[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)])])]))}}),Gr=["interpolate",["linear"],["zoom"],10,5,15,12],st=["interpolate",["linear"],["zoom"],10,11,12,12];function _t(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 Wr(t,a,o,r,l,s=12,x=12,n={}){if(!a)return;const{mixedGeom:m=!1,circleRadius:h=Gr,circleStrokeWidth:p=1,geometryZoomBreakpoint:f,polygonZoom:V}=n,N=f??V??s,u=N-.01,B=N,b=_t(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],z=["<=",c,1],A=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],F=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],C=["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",C],"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",z,A],paint:{"circle-color":o,"circle-stroke-color":r||"#eee","circle-stroke-width":p,"circle-radius":h}};m||(k.maxzoom=u),a.addLayer(k),a.addLayer({id:"vector-fill",type:"fill",minzoom:B,source:"vector","source-layer":t,filter:F,paint:{"fill-color":o,"fill-opacity":.6}}),a.addLayer({id:"vector-stroke",type:"line",minzoom:B,source:"vector","source-layer":t,filter:F,paint:{"line-color":r||o,"line-width":4,"line-opacity":1,"line-dasharray":[2,2]}})}const qr=[{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"}],Yr={class:"relative w-auto h-full"},Qr={key:0,class:"text-[0.875rem] font-medium text-stone-700"},Xr={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"},Jr={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"},ea={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"},ta={key:0,class:"mb-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={class:"flex justify-start items-center gap-2"},ia={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},sa={class:"text-[0.875rem]"},ca={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},da={key:1,class:"p-[10px]"},ma={key:0,class:"mb-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={class:"flex justify-start items-center gap-2"},ya={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},xa={class:"text-[0.875rem]"},ba={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},ka={key:0,class:"vs-map-slot-layers z-10 select-none",style:{display:"flex"}},wa=["title","onClick"],Ca=["src"],Va={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"},Ba={class:"vs-mobile-peek-controls px-3 pb-3"},Ea={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%"}},Na=["title","onClick"],Sa=["src"],_a={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"},Ma={class:"vs-mobile-peek-controls flex justify-center w-full"},Da={class:"w-full"},La={class:"legend-panel__header flex items-center justify-between gap-2 py-[7px] pl-[10px] pr-[7px] pb-[12px]"},za={class:"text-[0.875rem] font-medium text-stone-700"},Pa={class:"legend-panel__content overflow-hidden transition-all duration-200 ease-out"},Fa={class:"p-[10px] pt-0"},$a={class:"flex justify-start items-center gap-2"},Aa={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},ja={class:"text-[0.875rem]"},Ra={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},De="vector-clusters",Le="selected-geometry-source",Ge="selected-geometry-fill",We="selected-geometry-line",Ae="selected-geometry-point",fe="vector-highlight-circle",xe="vector-highlight-fill",Mt=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 x=e.getCurrentInstance(),n=e.ref(null),m=e.ref(!1),h=e.ref(!1),p=e.ref(!1),f=e.ref(!1);let V=null,N=null;const u=["vector-circle","vector-fill","vector-stroke"],B=e.ref(!1);function b(){h.value=!h.value}const c=e.computed(()=>{var y,j;return((j=(y=x==null?void 0:x.appContext.config.globalProperties)==null?void 0:y.$settings)==null?void 0:j.basemaps)||[]}),d=e.computed(()=>(o.layers&&o.layers.length?o.layers:c.value.length?c.value:qr).map((j,T)=>{var Q;const M=j.id||((Q=j.name)==null?void 0:Q.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${T}`,I=j.name||j.id||`layer-${T}`;return{...j,id:M,name:I}})),z=e.ref(""),A=e.computed(()=>d.value.find(y=>y.id===z.value)||d.value[0]);e.watch(d,y=>{var j;y.length&&(!z.value||!y.some(T=>T.id===z.value))&&(z.value=((j=y[0])==null?void 0:j.id)||"")},{immediate:!0});function F(y){return y?y.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const C=e.ref(null),k=e.ref(null),L=e.computed(()=>o.showPopup!==!1),_=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"],i=["#0a7a34","#7c3aed","#d97706","#dc2626"],E=o.strokeAttr,w=e.ref([]),P=e.ref([]);let $=0;const R=[30,48];let D=null;const v=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],W=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]];let U=[];function ne(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const y=new URLSearchParams(window.location.search),j=Number(y.get("z")),T=Number(y.get("y")),M=Number(y.get("x")),I=y.has("x")&&y.has("y"),Q=y.has("z");return{zoom:Q?j:null,center:I?[M,T]:null,hasQuery:I||Q}}function be(y,j){if(!y||typeof window>"u")return;const T=new URL(window.location.href);T.searchParams.set("z",j.toFixed(2)),T.searchParams.set("x",y[0].toFixed(6)),T.searchParams.set("y",y[1].toFixed(6)),window.history.replaceState({},"",T)}let pe=!1;function le(){if(!l||!pe)return;const y=l.getCenter();be([y.lng,y.lat],l.getZoom())}const ke=()=>{pe||(pe=!0),le()};function je(){const y=o.geometryZoomBreakpoint;if(y==null)return null;const j=Number(y);return Number.isNaN(j)?null:j}function oe(){const y=je();return y??(typeof o.polygonZoom=="number"?o.polygonZoom:typeof o.clusterZoom=="number"?o.clusterZoom:12)}function re(){return o.pointZoom??12}async function Re(y=o.filter){const j=++$,T=new URLSearchParams;y&&T.set("filter",y);const M=T.toString();try{const I=new URL(`/api/data/${o.table}/${o.colorAttr}`,window.location.origin);M&&(I.search=M);const Q=await fetch(I.toString()).then(K=>K.json());if(j!==$)return;if(w.value=Q.rows||[],w.value.forEach((K,H)=>{if(K.id==null||K.id===""){K.color="#808080";return}K.color||Object.assign(K,{color:_[H%10]})}),P.value=[],E){const K=new URL(`/api/data/${o.table}/${E}`,window.location.origin);M&&(K.search=M);const H=await fetch(K.toString()).then(q=>q.json());if(j!==$)return;P.value=H.rows||[];let G=0;P.value.forEach(q=>{q.color||!q.id||(Object.assign(q,{color:i[G%i.length]}),G+=1)})}}catch(I){if(j!==$)return;w.value=[],P.value=[],console.error("Failed to load legend data",I)}}function ge(y){var j;return!y||typeof y!="object"?null:y.type==="FeatureCollection"?ge((j=y.features)==null?void 0:j[0]):y.type==="Feature"?ge(y.geometry):y.type&&y.coordinates?y:null}function Ze(){var y;return ge((y=o.selectedFeature)==null?void 0:y.geom)}function Te(y){return y==null||y===""?["==",["literal",1],0]:["==",["to-string",["get","id"]],String(y)]}function Ve(){return o.highlightCircleColor??"#ffffff"}function ve(){var j,T;const y=Ze();return y?{mode:"geometry",geometry:y}:((j=o.selectedFeature)==null?void 0:j.id)!=null&&((T=o.selectedFeature)==null?void 0:T.id)!==""?{mode:"id",geometry:null}:{mode:"none",geometry:null}}function Ye(){[Ge,We,Ae,fe,xe].forEach(y=>{l!=null&&l.getLayer(y)&&l.removeLayer(y)}),l!=null&&l.getSource(Le)&&l.removeSource(Le)}function Be(y){return{id:y.id,type:y.type,source:y.source,...y.sourceLayer?{"source-layer":y.sourceLayer}:{},...y.filter?{filter:y.filter}:{},...y.minzoom!=null?{minzoom:y.minzoom}:{},...y.maxzoom!=null?{maxzoom:y.maxzoom}:{},paint:y.paint}}function se(){const y=Ve(),j=o.highlightCircleRadius??o.circleRadius??st;return[Be({id:Ge,type:"fill",source:Le,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],paint:{"fill-color":y,"fill-opacity":.12,"fill-opacity-transition":{duration:800,delay:0}}}),Be({id:We,type:"line",source:Le,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon","LineString","MultiLineString"]]],paint:{"line-color":y,"line-width":4,"line-opacity":.95,"line-opacity-transition":{duration:800,delay:0}}}),Be({id:Ae,type:"circle",source:Le,filter:["in",["geometry-type"],["literal",["Point","MultiPoint"]]],paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":y,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":j,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}})]}function Qe(){var I,Q;const y=Ve(),j=o.highlightCircleRadius??o.circleRadius??st,T=oe(),M=T!=null?T-.01:24;return[Be({id:fe,type:"circle",source:"vector",sourceLayer:o.table,filter:["all",Te((I=o.selectedFeature)==null?void 0:I.id),v],maxzoom:o.mixedGeom?void 0:M,paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":y,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":j,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}}),Be({id:xe,type:"line",source:"vector",sourceLayer:o.table,filter:["all",Te((Q=o.selectedFeature)==null?void 0:Q.id),W],minzoom:T??24,paint:{"line-color":y,"line-width":4,"line-opacity":.9,"line-opacity-transition":{duration:800,delay:0}}})]}function ze(){var M,I;if(!l)return"none";const{mode:y,geometry:j}=ve(),T=y==="geometry"?se():y==="id"?Qe():[];return Ye(),y==="geometry"&&l.addSource(Le,{type:"geojson",data:{type:"FeatureCollection",features:[{type:"Feature",id:(M=o.selectedFeature)==null?void 0:M.id,properties:{id:(I=o.selectedFeature)==null?void 0:I.id},geometry:j}]}}),T.forEach(Q=>l.addLayer(Q)),y}function Pe(){!l||!U.length||(l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-color",U),l.getLayer("vector-fill")&&l.setPaintProperty("vector-fill","fill-color",U))}function Ee(){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),ze())}function Fe(y){if($e(),!l||y==="none")return;let j=!0;const T=o.highlightCircleRadius??o.circleRadius??st;D=window.setInterval(()=>{j=!j;const M=j?.95:.35,I=j?T:T*1.12;y==="geometry"&&(l!=null&&l.getLayer(Ge)&&l.setPaintProperty(Ge,"fill-opacity",j?.14:.04),l!=null&&l.getLayer(We)&&l.setPaintProperty(We,"line-opacity",M),l!=null&&l.getLayer(Ae)&&(l.setPaintProperty(Ae,"circle-stroke-opacity",M),l.setPaintProperty(Ae,"circle-radius",I))),y==="id"&&(l!=null&&l.getLayer(fe)&&(l.setPaintProperty(fe,"circle-stroke-opacity",M),l.setPaintProperty(fe,"circle-radius",I)),l!=null&&l.getLayer(xe)&&l.setPaintProperty(xe,"line-opacity",M))},800)}function $e(){D&&(clearInterval(D),D=null)}function Oe(){l&&(l.setCenter(o.center||R),l.setZoom(o.zoom||5))}function de(){if(!(l!=null&&l.setLayerZoomRange))return;const y=o.minZoom??0,j=Math.min((o.maxZoom??18)+.01,24),M=(o.clusterZoom??12)-.01,I=oe(),Q=I-.01,K=B.value&&!o.mixedGeom?Q:j,H=I;o.alwaysShowPolygon?(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",y,0),l.getLayer(fe)&&l.setLayerZoomRange(fe,y,0),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",y,j),l.getLayer(xe)&&l.setLayerZoomRange(xe,y,j),l.getLayer(De)&&l.setLayerZoomRange(De,y,0),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",y,0)):(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",y,K),l.getLayer(fe)&&l.setLayerZoomRange(fe,y,K),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",H,j),l.getLayer("vector-stroke")&&l.setLayerZoomRange("vector-stroke",H,j),l.getLayer(xe)&&l.setLayerZoomRange(xe,H,j),l.getLayer(De)&&l.setLayerZoomRange(De,y,M),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",y,M))}function Xe(){if(l!=null&&l.getSource("vector")){try{const j=l.querySourceFeatures("vector",{sourceLayer:o.table}).some(T=>{var I;const M=(I=T.geometry)==null?void 0:I.type;return M==="Polygon"||M==="MultiPolygon"});B.value=j}catch{}de()}}const Ne=ne();pe=Ne.hasQuery,e.onMounted(async()=>{await Re(),s=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const y=A.value;if(!y)return;const j=Ne.center||o.center||R,T=Ne.zoom||o.zoom||5;l=new maplibregl.Map({container:n.value,style:{version:8,sources:{[y.id]:{type:"raster",tiles:[y.url],tileSize:256},...y.overlayUrl?{[`${y.id}-overlay`]:{type:"raster",tiles:[y.overlayUrl],tileSize:256}}:{}},layers:[{id:y.id,type:"raster",source:y.id,minzoom:0,maxzoom:19},...y.overlayUrl?[{id:`${y.id}-overlay`,type:"raster",source:`${y.id}-overlay`,minzoom:0,maxzoom:19}]:[]]},center:j,zoom:T,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),r("update:map",l);const M=o.mobilePeekControls?"bottom-right":"top-right";if(l.addControl(new maplibregl.NavigationControl,M),o.mobilePeekControls){const K={onAdd:()=>{const H=document.createElement("div");return V=H,N=e.createApp(Hr,{onOpenLayers:()=>{p.value=!0},onOpenLegend:()=>{f.value=!0}}),N.mount(H),H},onRemove:()=>{N==null||N.unmount(),N=null,V=null}};l.addControl(K,"bottom-right"),l.once("render",()=>{if(!V)return;const H=l.getContainer(),G=H.querySelector(".maplibregl-ctrl-bottom-right"),q=H.querySelector(".maplibregl-ctrl-zoom-in"),ae=q==null?void 0:q.closest(".maplibregl-ctrl-group");!G||!ae||V.parentElement===G&&(G.removeChild(V),G.insertBefore(V,ae.nextSibling))})}l.on("moveend",ke),l.on("zoomend",ke),pe&&le(),l.on("load",()=>{l==null||l.resize(),m.value=!0;const K=w.value.filter(X=>X.id!=null&&X.id!=="").reduce((X,g)=>[String(g.id),g.color].concat(X),[]),H=["match",["to-string",["get",o.colorAttr]],...K,"#808080"],G=(P.value||[]).filter(X=>X.id!=null&&X.id!=="").reduce((X,g)=>[String(g.id),g.color].concat(X),[]),q=E?["match",["to-string",["get",E]],...G,"rgba(0,0,0,0)"]:"rgba(0,0,0,0)";U=H;const ae=je();Wr(o.table,l,H,q,o.filter,o.clusterZoom,re(),{mixedGeom:o.mixedGeom,circleRadius:o.circleRadius,circleStrokeWidth:o.circleStrokeWidth,geometryZoomBreakpoint:ae??void 0,polygonZoom:ae==null?o.polygonZoom:void 0}),Fe(ze()),Pe(),Ee(),de(),l.on("sourcedata",X=>{X.sourceId==="vector"&&X.isSourceLoaded&&oe()!=null&&Xe()})});const I=K=>{var G,q;const H=(G=K.features)==null?void 0:G[0];(q=H==null?void 0:H.properties)!=null&&q.id&&r("update:modelValue",H.properties.id)};u.forEach(K=>{l.on("click",K,I)}),l.on("click",De,K=>{var X,g,S;const H=(X=K.features)==null?void 0:X[0];if(!H)return;const{geometry:G}=H,q=(G==null?void 0:G.type)==="Point"?G.coordinates:(S=(g=G==null?void 0:G.coordinates)==null?void 0:g[0])==null?void 0:S[0];if(!q)return;const ae=Math.min(l.getZoom()+2,l.getMaxZoom());l.easeTo({center:q,zoom:ae})}),[...u,De].forEach(K=>{l.on("mouseenter",K,()=>{l.getCanvas().style.cursor="pointer"}),l.on("mouseleave",K,()=>{l.getCanvas().style.cursor=""})}),l.on("mousemove",K=>{var g,S;if(!L.value){(g=s==null?void 0:s.remove)==null||g.call(s);return}if(!s)return;const H=u.filter(O=>l.getLayer(O));if(!H.length){s.remove();return}const G=l.queryRenderedFeatures(K.point,{layers:H});if(!G||!G.length){s.remove();return}const q=G[0],{coordinates:ae}=q.geometry,X=q.geometry.type==="Point"?ae:ae[0][0];k.value=q.properties,s.setLngLat(X).setHTML((S=C.value)==null?void 0:S.innerHTML).addTo(l)})}),e.watch(()=>o.center,y=>{l&&l.setCenter(y||R)}),e.watch(()=>o.zoom,y=>{l&&l.setZoom(y)}),e.watch(()=>o.minZoom,y=>{l&&(l.setMinZoom(y??3),de())}),e.watch(()=>o.maxZoom,y=>{l&&(l.setMaxZoom(y??18),de())});function we(y,j,T){if(!(l!=null&&l.getSource("vector")))return;const M=_t(o.table,y??o.filter,j??o.clusterZoom??12,re());l.getSource("vector").setTiles([M])}return e.watch(()=>o.filter,y=>{we(y),Re(y)}),e.watch(()=>o.clusterZoom,y=>{we(void 0,y),de()}),e.watch(()=>o.pointZoom,()=>{we()}),e.watch(()=>o.geometryZoomBreakpoint,()=>{we(),de()}),e.watch(()=>o.alwaysShowPolygon,()=>{de(),we()}),e.watch(()=>o.polygonZoom,()=>{Xe()}),e.watch(()=>o.mixedGeom,()=>{de()}),e.watch(()=>[o.circleRadius,o.circleStrokeWidth,o.highlightCircleRadius,o.highlightCircleColor],()=>{Ee()}),e.watch(()=>{var y,j;return[(y=o.selectedFeature)==null?void 0:y.id,(j=o.selectedFeature)==null?void 0:j.geom]},()=>{l&&Fe(ze())},{immediate:!0,deep:!0}),e.watch(z,(y,j)=>{if(!l||!y)return;const T=d.value.find(Q=>Q.id===y);if(!T)return;l.getLayer(j)&&l.removeLayer(j),l.getSource(j)&&l.removeSource(j);const M=`${j}-overlay`;l.getLayer(M)&&l.removeLayer(M),l.getSource(M)&&l.removeSource(M),l.addSource(y,{type:"raster",tiles:[T.url],tileSize:256}),T.overlayUrl&&l.addSource(`${y}-overlay`,{type:"raster",tiles:[T.overlayUrl],tileSize:256});const I=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},I),T.overlayUrl&&l.addLayer({id:`${y}-overlay`,type:"raster",source:`${y}-overlay`,minzoom:0,maxzoom:19},I)}),e.onBeforeUnmount(()=>{$e(),l&&(l.off("moveend",ke),l.off("zoomend",ke),l.remove())}),(y,j)=>{const T=e.resolveDirective("tooltip");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Yr,[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:Oe},[...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]=M=>o.isCollapsible?b():void 0)},{default:e.withCtx(()=>[o.legendTitle?(e.openBlock(),e.createElementBlock("span",Qr,e.toDisplayString(o.legendTitle),1)):e.createCommentVNode("",!0),o.isCollapsible?(e.openBlock(),e.createElementBlock("span",Xr,[h.value?(e.openBlock(),e.createElementBlock("svg",Jr,[...j[4]||(j[4]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",ea,[...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&&(w.value||[]).length?"pt-0":"pt-2"])},[(P.value||[]).some(M=>M==null?void 0:M.id)?(e.openBlock(),e.createElementBlock("div",ta,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((P.value||[]).filter(M=>M==null?void 0:M.id),M=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${M.id}`},[e.createElementVNode("div",la,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:M.color||"#808080"})},null,4),e.createElementVNode("div",oa,[e.createElementVNode("span",na,e.toDisplayString(M.text),1),M.count!=null?(e.openBlock(),e.createElementBlock("span",ra,e.toDisplayString(M.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value||[],M=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:M.id},[e.createElementVNode("div",aa,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+M.color)},null,4),e.createElementVNode("div",ia,[e.createElementVNode("span",sa,e.toDisplayString(M.text),1),M.count!=null?(e.openBlock(),e.createElementBlock("span",ca,e.toDisplayString(M.count),1)):e.createCommentVNode("",!0)])])]))),128))],2)],4)],64)):(e.openBlock(),e.createElementBlock("div",da,[(P.value||[]).some(M=>M==null?void 0:M.id)?(e.openBlock(),e.createElementBlock("div",ma,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((P.value||[]).filter(M=>M==null?void 0:M.id),M=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${M.id}`},[e.createElementVNode("div",pa,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:M.color||"#808080"})},null,4),e.createElementVNode("div",ua,[e.createElementVNode("span",fa,e.toDisplayString(M.text),1),M.count!=null?(e.openBlock(),e.createElementBlock("span",ga,e.toDisplayString(M.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value||[],M=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:M.id},[e.createElementVNode("div",ha,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+M.color)},null,4),e.createElementVNode("div",ya,[e.createElementVNode("span",xa,e.toDisplayString(M.text??"Відсутні дані"),1),M.count!=null?(e.openBlock(),e.createElementBlock("span",ba,e.toDisplayString(M.count),1)):e.createCommentVNode("",!0)])])]))),128))]))],6),e.createElementVNode("div",{ref_key:"popupDiv",ref:C,style:{display:"none"}},[e.renderSlot(y.$slots,"default",{hoverData:k.value})],512),o.mobilePeekControls?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ka,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,M=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:M.id,title:M.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:z.value===M.id}]),onClick:I=>z.value=M.id},[e.createElementVNode("img",{src:M.preview||F(M.url),class:"vs-map-slot-layers__image"},null,8,Ca),e.createElementVNode("div",Va,e.toDisplayString(M.name),1)],10,wa)),[[T,M.name]])),128))])),o.mobilePeekControls?(e.openBlock(),e.createBlock(Me,{key:1,open:p.value,title:"Шари","initial-variant":"peek","peek-mode":"clip-full","allow-expand":!1,onClose:j[1]||(j[1]=M=>p.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",Ba,[e.createElementVNode("div",Ea,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,M=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:M.id,title:M.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:z.value===M.id}]),onClick:I=>z.value=M.id},[e.createElementVNode("img",{src:M.preview||F(M.url),class:"vs-map-slot-layers__image",style:{width:"100%",height:"100","object-fit":"cover",display:"block"}},null,8,Sa),e.createElementVNode("div",_a,e.toDisplayString(M.name),1)],10,Na)),[[T,M.name]])),128))])])]),_:1},8,["open"])):e.createCommentVNode("",!0),o.mobilePeekControls?(e.openBlock(),e.createBlock(Me,{key:2,open:f.value,title:"Легенда","initial-variant":"peek","peek-mode":"clip-full","peek-height-px":200,onClose:j[2]||(j[2]=M=>f.value=!1)},{default:e.withCtx(()=>[e.createElementVNode("div",Ma,[e.createElementVNode("div",Da,[e.createElementVNode("div",La,[e.createElementVNode("span",za,e.toDisplayString(o.legendTitle||"Легенда"),1)]),e.createElementVNode("div",Pa,[e.createElementVNode("div",Fa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value||[],M=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:M.id},[e.createElementVNode("div",$a,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+M.color)},null,4),e.createElementVNode("div",Aa,[e.createElementVNode("span",ja,e.toDisplayString(M.text),1),M.count!=null?(e.openBlock(),e.createElementBlock("span",Ra,e.toDisplayString(M.count),1)):e.createCommentVNode("",!0)])])]))),128))])])])])]),_:1},8,["open"])):e.createCommentVNode("",!0)],512)),[[e.vShow,m.value]])}}}),Dt={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))}},Za={},Ta={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 va(t,a){return e.openBlock(),e.createElementBlock("svg",Ta,[...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 Oa=ue(Za,[["render",va]]),Ia={},Ua={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 Ka(t,a){return e.openBlock(),e.createElementBlock("svg",Ua,[...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 Ha=ue(Ia,[["render",Ka]]),Ga={},Wa={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 qa(t,a){return e.openBlock(),e.createElementBlock("svg",Wa,[...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 Ya=ue(Ga,[["render",qa]]),Qa={class:"absolute inset-x-0 top-[12px] z-40 px-[12px] pointer-events-none"},Xa={class:"flex flex-wrap gap-2"},Ja=["disabled"],ei={key:0,class:"pointer-events-none absolute top-1 right-0.5 h-3 w-3 rounded-full bg-blue-400","aria-hidden":"true"},ti=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",Qa,[e.createElementVNode("div",Xa,[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(Ha)],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(Oa,{"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",ei)):e.createCommentVNode("",!0)],10,Ja),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(Ya,{"stroke-width":1,class:"text-gray-900"}),o[4]||(o[4]=e.createElementVNode("span",{class:"font-medium"},"Таблиця",-1))],2)])]))}}),li={key:0,class:"relative w-full h-full vs-mobile-parts-map"},oi={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},ni={class:"flex flex-col min-h-0 gap-4"},ri={class:"flex flex-col min-h-0 flex-1"},ai={key:1,class:"wrapperTable flex flex-col min-h-0"},ii={key:1,class:"text-center py-8"},si={key:2,class:"mt-4 pt-4 border-t border-stone-200 shrink-0"},ci={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},di={id:"active-filters"},mi={class:"flex-1 min-h-0"},pi={key:1,class:"text-sm text-stone-500"},ui={class:"wrapperTable flex flex-col min-h-0"},fi={key:1,class:"text-center py-12"},gi={key:0,class:"mt-4 pt-4 border-t border-stone-200"},hi=["onClick"],yi={class:"w-full gap-5 inline-flex mb-[6px] pr-3"},xi={class:"flex items-center"},bi=["title"],ki={class:"max-[1000px]:flex gap-2 min-[1001px]:hidden"},wi={class:"flex"},Ci={key:0,class:"flex items-center py-[15px] pb-[24px] pl-2 pr-6 gap-4"},Vi={class:"font-bold text-2xl mr-[10px]"},Bi={class:"text-sm text-stone-500 font-medium"},Ei={key:0,class:"inline-flex items-center gap-2 text-sm text-stone-700 select-none ml-auto mt-auto"},Ni={class:"wrapperTable flex flex-col",style:{height:"calc(100vh - 302px)"}},Si={key:1,class:"text-center py-28"},_i={key:1},Mi={key:2,class:"my-5 pr-2"},Di={class:"flex justify-between"},Li={class:"w-full lg:w-1/2 relative"},zi={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},Lt="(max-width: 999px)",qe="0px",ct=e.defineComponent({__name:"vs-parts-map",props:e.mergeModels({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:{},filterState:{}},{filterState:{},filterStateModifiers:{}}),emits:e.mergeModels(["change:filter","update:map"],["update:filterState"]),setup(t,{emit:a}){var Q,K,H,G,q,ae,X;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=Dt);function r(g){return g?(g.type==="Point"?g.coordinates:null)||(g.type.includes("Multi")?g.coordinates[0][0][0]:g.coordinates[0][0]):null}function l(g){switch(g==null?void 0:g.type){case"Polygon":return g.coordinates[0];case"MultiPolygon":return g.coordinates.flatMap(S=>S[0]);case"LineString":return g.coordinates;case"MultiLineString":return g.coordinates.flat();default:return[]}}function s(g){if(!g||g.type==="Point"||g.type==="MultiPoint")return null;const S=l(g);if(!S.length)return null;let O=1/0,Z=1/0,J=-1/0,Y=-1/0;return S.forEach(([ee,Se])=>{ee<O&&(O=ee),Se<Z&&(Z=Se),ee>J&&(J=ee),Se>Y&&(Y=Se)}),[[O,Z],[J,Y]]}function x(g){return(g==null?void 0:g.type)==="Polygon"||(g==null?void 0:g.type)==="MultiPolygon"}const n=t,m=e.useSlots(),h=e.computed(()=>n.mobileFilterView??"vertical"),p=e.computed(()=>n.mobileFilterLimit!==void 0?{limit:n.mobileFilterLimit}:{}),f=e.useModel(t,"filterState"),V=a;function N(){const g=Object.fromEntries(Object.entries(E.value).map(([S,O])=>[S,Array.isArray(O)?[...O]:O]));f.value={state:g}}const u=e.ref(0);u.value=n.initTotal??((Q=n.rows)==null?void 0:Q.length)??0;const B=e.ref(""),b=e.ref(null),c=e.ref(!0),d=e.ref(((K=n.rows)==null?void 0:K.length)===1),z=e.ref(!1);let A=null;const F=e.ref(!1);typeof window<"u"&&(A=window.matchMedia(Lt),F.value=A.matches,z.value=!0);const C=e.ref(n.rows),k=e.ref(1),L=e.ref(20),_=e.ref(n.filters||[]),i=e.ref(""),E=e.ref({}),w=e.computed(()=>Object.values(E.value).some(g=>Array.isArray(g)?g.some(S=>S!=null&&S!==""):g&&typeof g=="object"?Object.values(g).some(S=>S!=null&&S!==""):g===null?!0:g!==void 0&&g!==""));function P(g){return g&&(g.geom?g:{...g,geom:(g==null?void 0:g[n.geom])??null})}const $=e.ref(((H=n.rows)==null?void 0:H.length)===1?P(n.rows[0]):{}),R=e.ref(((G=n.rows)==null?void 0:G.length)===1?n.rows[0].id:""),D=e.ref(((q=n.rows)==null?void 0:q.length)===1?r((ae=n.rows[0])==null?void 0:ae[n.geom]):n.center||null),v=e.ref(((X=n.rows)==null?void 0:X.length)===1?14:n.zoom||5),W=e.ref(!1),U=e.ref(!1),ne=e.ref(""),be=e.ref(!1);let pe=!1;const le=e.ref(null),ke=e.ref(!1);function je(){if(!A)return;const g=F.value;F.value=A.matches,g!==F.value&&(le.value=null,e.nextTick(()=>{var S,O;(O=(S=b.value)==null?void 0:S.resize)==null||O.call(S)}))}const oe=e.ref(null),re=e.ref(null),Re=e.computed(()=>{if(n.alwaysShowPolygon)return 0;if(re.value!=null)return re.value;if(n.geometryZoomBreakpoint!=null){const g=Number(n.geometryZoomBreakpoint);if(!Number.isNaN(g))return g}return 12}),ge=g=>(g==null?void 0:g.geom)??(g==null?void 0:g[n.geom])??null,Ze=e.computed(()=>d.value&&!ge($.value)),Te=e.computed(()=>d.value&&!be.value?$.value:null),Ve=e.computed({get:()=>Ze.value?"":R.value,set:g=>{R.value=g,F.value&&(g?(ke.value=!0,le.value="details"):le.value==="details"&&(le.value=null))}});function ve(){var ee,Se;if(n.alwaysShowPolygon){oe.value=null,re.value=null;return}const g=ge($.value);if(!n.polygonFitBbox||!b.value||!g){oe.value=null,re.value=null;return}const S=g;if(!x(S)){oe.value=null,re.value=null;return}const O=s(S);if(!O){oe.value=null,re.value=null;return}const Z=(Se=(ee=b.value).cameraForBounds)==null?void 0:Se.call(ee,O,{padding:20,maxZoom:16}),J=Z==null?void 0:Z.zoom,Y=n.clusterZoom??12;if(J!=null&&J<Y){const zt=Math.floor(J);oe.value=zt,re.value=zt}else oe.value=null,re.value=null}function Ye(g){return Object.entries(g).filter(([,S])=>Array.isArray(S)?S.length:S).map(([S,O])=>`${S}=${O}`).join("|")}function Be(){var Z,J,Y,ee;if(!b.value||!U.value)return;const g=(J=(Z=b.value).getBounds)==null?void 0:J.call(Z);if(!g)return;const S=(Y=g.getSouthWest)==null?void 0:Y.call(g),O=(ee=g.getNorthEast)==null?void 0:ee.call(g);!S||!O||(ne.value=`${S.lng} ${S.lat},${O.lng} ${O.lat}`)}async function se(g=!1){await e.nextTick();const S=Ye(E.value);i.value=S,U.value?Be():ne.value="";try{const O={search:B.value,limit:L.value.toString(),page:k.value.toString(),filter:S,...U.value&&ne.value?{bbox:ne.value}:{}},Z=new URL(`/api/data/${n.table}`,window.location.origin),J=new URLSearchParams(O).toString(),Y=await fetch(`${Z.toString()}?${J}`).then(ee=>ee.json());oe.value=null,re.value=null,d.value=!1,W.value||(v.value=n.zoom||5),C.value=Y==null?void 0:Y.rows,W.value=!1,be.value=!1,u.value=Y.filtered,Bt({page:k.value,filter:S,id:"",filterByView:U.value})}catch(O){console.error(O.message)}}async function Qe(g=!1){if(R.value){await e.nextTick();try{const S=new URL(`/api/data/${n.table}/${R.value}`,window.location.origin),O=await fetch(S.toString()).then(Y=>Y.json());let Z;O.rows.length>1?Z=O.rows.find(Y=>Y.id===R.value):[Z]=O.rows,$.value=P(Z);const J=ge($.value);if(!g&&J){const Y=n.polygonFitBbox?s(J):null;Y&&b.value?b.value.fitBounds(Y,{padding:20,maxZoom:16,duration:500}):(D.value=r(J),v.value=14)}else!g&&J&&(D.value=r(J),v.value=14);ve(),d.value=!0,W.value=!1,u.value=O.filtered,Bt({page:k.value,filter:Ye(E.value),id:R.value,filterByView:U.value})}catch(S){console.error(S.message)}}}const ze=Et(()=>se(),300),Pe=Et(()=>{R.value||se(!0)},400);function Ee(){!b.value||pe||!U.value||R.value||(b.value.on("moveend",Pe),b.value.on("zoomend",Pe),pe=!0)}function Fe(){!b.value||!pe||(b.value.off("moveend",Pe),b.value.off("zoomend",Pe),pe=!1)}function $e(g){L.value=g,k.value=1,se()}function Oe(g){k.value=g,se()}function de(g){E.value=g.data,k.value=1,N(),R.value?(be.value=!0,R.value=""):(be.value=!1,se()),V("change:filter",g)}async function Xe(){if(n.filters)return;const S=await(await fetch(`/api/filter/${n.table}`)).json();_.value=S.list}function Ne(){E.value={},B.value="",be.value=!1,N(),se()}e.onMounted(async()=>{var O,Z;A||(A=window.matchMedia(Lt)),z.value||(F.value=A.matches,z.value=!0),A.addEventListener("change",je),F.value&&(c.value=!1);const g=new URLSearchParams(window.location.search);k.value=Number(g.get("page"))||1,L.value=Number(g.get("limit"))||L.value,R.value=g.get("id")||"",d.value=!!R.value,i.value=g.get("filter")||"";const S=g.get("bbox");S!==null?U.value=S!=="0":U.value=!1,(Z=(O=g.get("filter"))==null?void 0:O.split("|"))==null||Z.forEach(J=>{const[Y,ee]=J.split("=");Y&&(E.value[Y]=ee!=null&&ee.includes(",")?ee.split(","):[ee])}),await Xe(),N(),R.value?Qe():C.value||se()}),e.onBeforeUnmount(()=>{A==null||A.removeEventListener("change",je),Fe()});function we(){W.value=!0,d.value=!1,$.value=null,R.value="",be.value=!1,oe.value=null,re.value=null,U.value&&Ee()}function y(g){le.value=g}function j(){le.value=null}async function T(){var g,S;await e.nextTick(),(S=(g=b.value)==null?void 0:g.resize)==null||S.call(g)}function M(){we(),j()}function I(g){ke.value=!0;const S=ge(P(g));if(S){const O=n.polygonFitBbox?s(S):null;O&&b.value?b.value.fitBounds(O,{padding:20,maxZoom:16,duration:500}):(D.value=r(S),v.value=16)}else g!=null&&g[n.geom]&&(D.value=r(g[n.geom]),v.value=16);$.value=P(g),R.value=g.id,ve(),F.value&&(le.value="details")}return e.watch(le,async()=>{var g,S;await e.nextTick(),(S=(g=b.value)==null?void 0:g.resize)==null||S.call(g)}),e.watch(b,g=>{V("update:map",g),g&&U.value&&Ee(),g&&n.polygonFitBbox&&ge($.value)&&ve()}),e.watch(B,g=>{g||se()}),e.watch(R,()=>{R.value?(Fe(),Qe()):(se(),U.value&&Ee())}),e.watch(U,()=>{U.value?Ee():Fe(),se()}),(g,S)=>{var O;return z.value?(e.openBlock(),e.createElementBlock("section",{key:0,class:e.normalizeClass(F.value?"":"pt-[20px]")},[F.value?(e.openBlock(),e.createElementBlock("div",li,[e.createVNode(Mt,{table:n.table,selectedFeature:Te.value,map:b.value,"onUpdate:map":S[0]||(S[0]=Z=>b.value=Z),zoom:v.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:i.value,center:D.value,clusterZoom:n.alwaysShowPolygon?0:oe.value??n.clusterZoom,pointZoom:Re.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:Ve.value,"onUpdate:modelValue":S[1]||(S[1]=Z=>Ve.value=Z),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!1,"mobile-peek-controls":!0},{default:e.withCtx(({hoverData:Z})=>[e.renderSlot(g.$slots,"popup",{data:Z})]),_: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"]),Ze.value?(e.openBlock(),e.createElementBlock("div",oi,[...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"> Координати або межі об&#39;єкта не внесені до системи. Об&#39;єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0),e.createVNode(ti,{"active-modal":le.value,"filters-disabled":!_.value.length,"has-active-filters":w.value,onOpenSearch:S[2]||(S[2]=Z=>y("search")),onOpenFilters:S[3]||(S[3]=Z=>y("filters")),onOpenTable:S[4]||(S[4]=Z=>y("table"))},null,8,["active-modal","filters-disabled","has-active-filters"]),e.createVNode(Me,{open:le.value==="search",title:"Пошук","top-offset":qe,"initial-variant":"full","peek-mode":"clip-full",onClose:j,onExpand:T,onCollapse:T},{default:e.withCtx(()=>[e.createElementVNode("div",ni,[e.createVNode(e.unref(ce),{type:"text",modelValue:B.value,"onUpdate:modelValue":S[5]||(S[5]=Z=>B.value=Z),name:"search",label:"Пошук",onChange:e.unref(ze)},null,8,["modelValue","onChange"]),e.createElementVNode("div",ri,[e.unref(m)["mobile-search-results"]?e.renderSlot(g.$slots,"mobile-search-results",{key:0,rows:C.value,selectRow:I,closeModal:j}):(e.openBlock(),e.createElementBlock("div",ai,[u.value>=1?e.renderSlot(g.$slots,"table",{key:0,rows:C.value,selectRow:I,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",ii,[e.createVNode(it),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:Ne}," Очистити дані пошуку ")]))])),u.value>=1?(e.openBlock(),e.createElementBlock("div",si,[e.createVNode(at,{total:u.value,currentPage:k.value??1,pageSize:L.value,onPageChange:S[6]||(S[6]=Z=>Oe(Z)),onPageSizeChange:S[7]||(S[7]=Z=>$e(Z))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)])])]),_:3},8,["open"]),e.createVNode(Me,{open:le.value==="filters",title:"Фільтри","top-offset":qe,"initial-variant":"full","peek-mode":"clip-full",onClose:j,onExpand:T,onCollapse:T},{default:e.withCtx(()=>[e.createElementVNode("div",ci,[e.withDirectives(e.createElementVNode("div",di,null,512),[[e.vShow,le.value==="filters"]]),e.createElementVNode("div",mi,[_.value.length?(e.openBlock(),e.createBlock(e.unref(He),e.mergeProps({key:0,schema:_.value,view:h.value},p.value,{value:E.value,teleportActive:"#active-filters",onChange:de}),null,16,["schema","view","value"])):(e.openBlock(),e.createElementBlock("p",pi,"Фільтри недоступні для цього переліку."))])])]),_:1},8,["open"]),e.createVNode(Me,{open:le.value==="table",title:"Таблиця","top-offset":qe,"initial-variant":"full","peek-mode":"clip-full",onClose:j,onExpand:T,onCollapse:T},{default:e.withCtx(()=>[e.createElementVNode("div",ui,[u.value>=1?e.renderSlot(g.$slots,"table",{key:0,rows:C.value,selectRow:I,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",fi,[e.createVNode(it),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:Ne}," Очистити дані пошуку ")]))]),u.value>=1?(e.openBlock(),e.createElementBlock("div",gi,[e.createVNode(at,{total:u.value,currentPage:k.value??1,pageSize:L.value,onPageChange:S[8]||(S[8]=Z=>Oe(Z)),onPageSizeChange:S[9]||(S[9]=Z=>$e(Z))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)]),_:3},8,["open"]),e.createVNode(Me,{open:le.value==="details",title:"Об'єкт","top-offset":qe,"initial-variant":ke.value?"peek":"full","peek-mode":"custom",onClose:M,onExpand:T,onCollapse:T},{peek:e.withCtx(({expand:Z})=>[e.unref(m)["mobile-details-peek"]?e.renderSlot(g.$slots,"mobile-details-peek",{key:0,selectedRow:$.value,expand:Z,close:M}):(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:Z}," Деталі об'єкта ",8,hi))]),default:e.withCtx(()=>[e.renderSlot(g.$slots,"details",{table:n.table,selectedRow:$.value,closeObjCard:M})]),_:3},8,["open","initial-variant"]),e.renderSlot(g.$slots,"default",{table:n.table,map:b.value,selectedRow:$.value})])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(g.$slots,"header",{title:n.title,total:u.value}),e.createElementVNode("div",yi,[e.createVNode(e.unref(ce),{type:"text",modelValue:B.value,"onUpdate:modelValue":S[10]||(S[10]=Z=>B.value=Z),name:"search",label:"Пошук",onChange:e.unref(ze)},null,8,["modelValue","onChange"]),_.value.length?(e.openBlock(),e.createBlock(e.unref(He),{key:0,schema:_.value,view:"inline",onChange:de,limit:5,value:E.value,ref:"filterRef"},null,8,["schema","value"])):e.createCommentVNode("",!0),e.createElementVNode("div",xi,[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]=Z=>c.value=!c.value)},[c.value?(e.openBlock(),e.createBlock(Br,{key:0})):(e.openBlock(),e.createBlock(_r,{key:1})),S[24]||(S[24]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,bi),e.createElementVNode("div",ki,[e.createElementVNode("button",{onClick:S[12]||(S[12]=Z=>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(Ar)]),e.createElementVNode("button",{onClick:S[13]||(S[13]=Z=>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(zr)])])])]),e.createElementVNode("div",wi,[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden shrink-0",c.value?"w-2/4 mr-0":"w-full mr-3",d.value?"hidden":""])},[(O=g.$slots)!=null&&O.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Ci,[e.createElementVNode("div",null,[e.createElementVNode("span",Vi,e.toDisplayString(n.title),1),e.createElementVNode("span",Bi,e.toDisplayString(u.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",Ei,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"accent-blue-600 w-4 h-4","onUpdate:modelValue":S[14]||(S[14]=Z=>U.value=Z)},null,512),[[e.vModelCheckbox,U.value]]),S[26]||(S[26]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",Ni,[u.value>=1?e.renderSlot(g.$slots,"table",{key:0,rows:C.value,selectRow:I}):(e.openBlock(),e.createElementBlock("div",Si,[e.createVNode(it),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:Ne}," Очистити дані пошуку ")]))]),u.value>=1?(e.openBlock(),e.createElementBlock("hr",_i)):e.createCommentVNode("",!0),u.value>=1?(e.openBlock(),e.createElementBlock("div",Mi,[e.createElementVNode("div",Di,[e.createVNode(at,{total:u.value,currentPage:k.value??1,pageSize:L.value,onPageChange:S[15]||(S[15]=Z=>Oe(Z)),onPageSizeChange:S[16]||(S[16]=Z=>$e(Z))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),d.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(g.$slots,"details",{table:n.table,selectedRow:$.value,closeObjCard:we})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",Li,[e.createVNode(Mt,{table:n.table,selectedFeature:Te.value,map:b.value,"onUpdate:map":S[17]||(S[17]=Z=>b.value=Z),zoom:v.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:i.value,center:D.value,clusterZoom:n.alwaysShowPolygon?0:oe.value??n.clusterZoom,pointZoom:Re.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:Ve.value,"onUpdate:modelValue":S[18]||(S[18]=Z=>Ve.value=Z),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!0},{default:e.withCtx(({hoverData:Z})=>[e.renderSlot(g.$slots,"popup",{data:Z})]),_: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(g.$slots,"default",{table:n.table,map:b.value,selectedRow:$.value}),Ze.value?(e.openBlock(),e.createElementBlock("div",zi,[...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"> Координати або межі об&#39;єкта не внесені до системи. Об&#39;єкт відображається лише у текстовому форматі. </p>',3)])])):e.createCommentVNode("",!0)],512),[[e.vShow,c.value]])])],64))],2)):e.createCommentVNode("",!0)}}});return ct.install=t=>{t.component("VsPartsMap",ct),t._context.directives.tooltip||t.directive("tooltip",Dt)},ct});