@opengis/partsmap 0.1.42 → 0.1.43

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,ke){typeof exports=="object"&&typeof module<"u"?module.exports=ke(require("vue")):typeof define=="function"&&define.amd?define(["vue"],ke):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=ke(e.Vue))})(this,function(e){"use strict";const ke=(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 Ft(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 $t=ke(Pt,[["render",Ft]]),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=ke(Rt,[["render",Tt]]),Ot={},Ut={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,i){return e.openBlock(),e.createElementBlock("svg",Ut,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=ke(Ot,[["render",It]]),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=ke(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:$t,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 Oe={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"},Le=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 ${Oe[l]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(m)),m.className.includes(Oe[l])||(Object.values(Oe).forEach(C=>{m.classList.remove(...C.split(" "))}),m.classList.add(...Oe[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 ye=(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=ye(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 we=ye(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(we)])):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(N){return Array.isArray(N)?N[0]:N}const C=e.ref(y(t.modelValue)),b=e.ref(""),d=e.ref(!1),S=e.ref([]),L=e.ref("id"),h=e.ref("text"),w=e.ref(!1),B=e.ref(t.layout!=="popover"&&a.length>l);function _(N){const E=N.find(Boolean)??{},z=["id","value","code","key"].find(D=>D in E)??"id",P=["text","label","name","title"].find(D=>D in E)??"text";return{autoValueKey:z,autoLabelKey:P}}function s(N){if(N.length>0){const z=_(N);L.value=z.autoValueKey,h.value=z.autoLabelKey}const E=[...N].sort((z,P)=>t.sort==="count"?P.count&&z.count?P.count-z.count:0:t.sort==="name"?String(z[h.value]??"").localeCompare(String(P[h.value]??"")):0);S.value=E}a.length>0&&s(a);const x=e.computed(()=>{const N=S.value;return t.layout==="popover"||w.value?N:N.slice(0,l)});async function $(){if(o){d.value=!0;try{const N=new URL(o,window.location.origin);N.searchParams.set("json","1"),N.searchParams.set("limit",l.toString());const E=await fetch(N.toString());if(!E.ok){Le({type:"error",title:"Error",message:"Failed to fetch remote options"}),S.value=[];return}const z=await E.json();if(!z[n]){Le({type:"error",title:"Error",message:z}),S.value=[];return}s(z[n])}catch(N){console.error("Failed to fetch remote options:",N)}finally{d.value=!1}}}function Z(){o&&S.value.length===0&&$()}e.watch(()=>t.modelValue,N=>{C.value=y(N)},{immediate:!0}),o||s(a);function g(N){return C.value===N[L.value]}function j(N){C.value=N[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(){w.value=!w.value}return{innerValue:C,searchTerm:b,filteredOptions:x,isSelected:g,selectItem:j,clear:u,toggleShowAll:M,isReqProc:d,showAll:w,isEnableShowAll:B,labelKey:h,valueKey:L,allOptions:S,loadData:Z}}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 Ve(){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=ye(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=ye(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=ye(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"},vl={key:1,class:"py-2 px-2"},Dl=["disabled"],jl=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=Ve(),p=ue(),n=o,{innerValue:y,filteredOptions:C,isSelected:b,selectItem:d,clear:S,toggleShowAll:L,isReqProc:h,showAll:w,isEnableShowAll:B,labelKey:_,valueKey:s,allOptions:x,loadData:$}=et({...a,modelValue:a.modelValue??a.default??""},n);return e.onMounted(()=>{a.api&&$()}),i({clear:S,inputTextRef:l}),e.watch(()=>a.modelValue,Z=>{Z===void 0&&(y.value=void 0)}),(Z,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),j=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,key:j[e.unref(s)],count:j.count,label:j[e.unref(_)],color:j.color,type:"radio",value:j[e.unref(s)],"is-selected":e.unref(b)(j),onItemClick:u=>e.unref(d)(j)},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(w)&&e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:g[0]||(g[0]=(...j)=>e.unref(L)&&e.unref(L)(...j)),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(w)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:g[1]||(g[1]=(...j)=>e.unref(L)&&e.unref(L)(...j)),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]=(...j)=>e.unref(S)&&e.unref(S)(...j))}," Очистити ",512),[[e.vShow,e.unref(y)!==""&&e.unref(y)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",vl,[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]=(...j)=>e.unref(S)&&e.unref(S)(...j))},e.toDisplayString(e.unref(p)("filter.clear")),11,Dl)])):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(E){return Array.isArray(E)?E:typeof E=="string"&&E.includes(",")?E.split(",").map(z=>z.trim()).filter(Boolean):E?[E]:[]}const C=e.ref(y(t.modelValue)),b=e.ref(""),d=e.ref(!1),S=e.ref([]),L=e.ref("id"),h=e.ref("text"),w=e.ref(!1),B=e.ref(t.layout!=="popover"&&a.length>l);function _(E){const z=E.find(Boolean)??{},P=["id","value","code","key"].find(r=>r in z)??"id",D=["text","label","name","title"].find(r=>r in z)??"text";return{autoValueKey:P,autoLabelKey:D}}function s(E){if(E.length>0){const P=_(E);L.value=P.autoValueKey,h.value=P.autoLabelKey}const z=[...E].sort((P,D)=>t.sort==="count"?D.count&&P.count?D.count-P.count:0:t.sort==="name"?String(P[h.value]).localeCompare(String(D[h.value])):0);S.value=z}a.length>0&&s(a);function x(E){if(!Array.isArray(C.value)||C.value.length===0)return E;const z=new Set(C.value),P=E.filter(c=>z.has(c[L.value])),D=new Set(P.map(c=>c[L.value])),r=E.filter(c=>!D.has(c[L.value]));return[...P,...r]}const $=e.computed(()=>{const E=S.value;if(t.layout==="popover")return x(E);const z=w.value?E:E.slice(0,l);return x(z)});async function Z(){if(o){d.value=!0;try{const E=new URL(o,window.location.origin);E.searchParams.set("json","1"),E.searchParams.set("limit",l.toString());const z=await fetch(E.toString());if(!z.ok){Le({type:"error",title:"Error",message:"Failed to fetch remote options"}),S.value=[];return}const P=await z.json();if(!P[n]){Le({type:"error",title:"Error",message:P}),S.value=[];return}s(P[n])}catch(E){console.error("Failed to fetch remote options:",E)}finally{d.value=!1}}}function g(){o&&S.value.length===0&&Z()}e.watch(()=>t.modelValue,E=>{C.value=y(E)},{immediate:!0}),o||s(a);function j(E){return C.value&&C.value.includes(E[L.value])}function u(E){const z=C.value.includes(E[L.value]);C.value=z?C.value.filter(P=>P!==E[L.value]):[...C.value,E[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 N(){w.value=!w.value}return{innerValue:C,searchTerm:b,filteredOptions:$,isSelected:j,selectItem:u,clear:M,toggleShowAll:N,isReqProc:d,showAll:w,isEnableShowAll:B,labelKey:h,valueKey:L,allOptions:S,loadData:g}}const zl={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"},Fl={class:"font-medium text-gray-800 dark:text-neutral-200"},$l={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=Ve(),m=t,p=o,{innerValue:n,filteredOptions:y,isSelected:C,selectItem:b,clear:d,toggleShowAll:S,isReqProc:L,showAll:h,isEnableShowAll:w,labelKey:B,valueKey:_,allOptions:s,loadData:x}=yt({...m,modelValue:m.modelValue},p);return e.onMounted(()=>{m.api&&x()}),e.watch(()=>m.modelValue,$=>{$===void 0&&(n.value=[])}),i({clear:d}),($,Z)=>(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(B)],color:g.color,type:"checkbox",value:g[e.unref(_)],"is-selected":e.unref(C)(g),onItemClick:j=>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",zl,[e.createElementVNode("div",Pl,[e.createVNode(tt),e.createElementVNode("div",Al,[e.createElementVNode("p",Fl,e.toDisplayString(e.unref(a)("filter.notfound")),1),Z[4]||(Z[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(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:Z[0]||(Z[0]=(...g)=>e.unref(S)&&e.unref(S)(...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:Z[1]||(Z[1]=(...g)=>e.unref(S)&&e.unref(S)(...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",$l,[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:Z[2]||(Z[2]=(...g)=>e.unref(d)&&e.unref(d)(...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:Z[3]||(Z[3]=(...g)=>e.unref(d)&&e.unref(d)(...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 Ul(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=ye(Kl,[["render",Ul]]),Il={},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=ye(Il,[["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,d)=>(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":d[0]||(d[0]=S=>m.value=S),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=Ve(),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)}}),d=e.computed(()=>(p.options??[]).filter(r=>{const c=r;return c.min!==void 0||c.max!==void 0}).map((r,c)=>{const f=r;return{key:String(f.id??c),min:f.min??null,max:f.max??null,label:f.label??f.text??`${f.min??""} - ${f.max??""}`}})),S=e.computed(()=>{var A;const r=b.value;if(!Array.isArray(r)||r.length===0)return null;const c=r[0]??null,f=r[1]??null;return((A=d.value.find(R=>String(R.min??"")===String(c??"")&&String(R.max??"")===String(f??"")))==null?void 0:A.key)??null}),L=e.computed(()=>{const r=Number(p.min);if(!Number.isNaN(r))return r;const c=d.value.map(f=>Number(f.min)).filter(f=>!Number.isNaN(f));return c.length?Math.min(...c):0}),h=e.computed(()=>{const r=Number(p.max);if(!Number.isNaN(r))return r;const c=d.value.map(R=>Number(R.max)).filter(R=>!Number.isNaN(R));if(c.length)return Math.max(...c);const f=x(b.value),A=Number(f[1]);return Number.isNaN(A)?100:A}),w=e.computed(()=>{const r=x(b.value),c=Number(r[0]);return Number.isNaN(c)?L.value:Math.max(L.value,Math.min(c,B.value))}),B=e.computed(()=>{const r=x(b.value),c=Number(r[1]);return Number.isNaN(c)?h.value:Math.min(h.value,Math.max(c,L.value))}),_=e.computed(()=>{const r=h.value-L.value;return r<=0?0:(w.value-L.value)/r*100}),s=e.computed(()=>{const r=h.value-L.value;return r<=0?100:(B.value-w.value)/r*100});function x(r){return Array.isArray(r)?r:[]}function $(r,c){const f=[r,c];n.value=f,b.value=f}let Z=null;function g(r){const c=C.value;if(!c)return L.value;const f=c.getBoundingClientRect(),A=(Math.min(Math.max(r,f.left),f.right)-f.left)/f.width,R=L.value+A*(h.value-L.value);return Math.round(R)}function j(r){const c=g(r);if(Z==="min"){$(Math.min(c,B.value),B.value);return}Z==="max"&&$(w.value,Math.max(c,w.value))}function u(r){Z&&j(r.clientX)}function M(){Z=null,window.removeEventListener("mousemove",u),window.removeEventListener("mouseup",M)}function N(r,c){Z=r,j(c.clientX),window.addEventListener("mousemove",u),window.addEventListener("mouseup",M)}function E(r){const c=g(r.clientX),f=Math.abs(c-w.value),A=Math.abs(c-B.value);f<=A?$(Math.min(c,B.value),B.value):$(w.value,Math.max(c,w.value))}function z(){y("change",{name:p.name,value:b.value})}function P(r){if(!r){n.value=[],b.value=n.value,y("change",{name:p.name,value:[]});return}const c=[r.min??null,r.max??null];n.value=c,b.value=c,y("change",{name:p.name,value:c})}function D(){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:D,currentValue:b}),e.onBeforeUnmount(()=>{M()}),(r,c)=>{var f,A;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[t.layout==="vertical"&&d.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":S.value===null}])},[S.value===null?(e.openBlock(),e.createElementBlock("span",Jl)):e.createCommentVNode("",!0)],2),c[5]||(c[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:S.value===null,onChange:c[0]||(c[0]=R=>P(null))},null,40,eo)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,R=>(e.openBlock(),e.createElementBlock("label",{key:R.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":S.value===R.key}])},[S.value===R.key?(e.openBlock(),e.createElementBlock("span",to)):e.createCommentVNode("",!0)],2),e.createElementVNode("span",lo,e.toDisplayString(R.label),1),e.createElementVNode("input",{type:"radio",class:"sr-only",checked:S.value===R.key,onChange:X=>P(R)},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":c[1]||(c[1]=R=>b.value[0]=R),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:((A=t.placeholder)==null?void 0:A[1])??e.unref(m)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":c[2]||(c[2]=R=>b.value[1]=R),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:z,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:D,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:E},[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":w.value,"aria-valuemin":L.value,"aria-valuemax":B.value-1,tabindex:"0",style:e.normalizeStyle({left:`${_.value}%`}),onMousedown:c[3]||(c[3]=e.withModifiers(R=>N("min",R),["prevent"]))},[e.createElementVNode("div",fo,e.toDisplayString(w.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":B.value,"aria-valuemin":w.value+1,"aria-valuemax":h.value,tabindex:"0",style:e.normalizeStyle({left:`${_.value+s.value}%`}),onMousedown:c[4]||(c[4]=e.withModifiers(R=>N("max",R),["prevent"]))},[e.createElementVNode("div",yo,e.toDisplayString(B.value),1)],44,go)]),e.createElementVNode("div",ho,[e.createElementVNode("span",null,e.toDisplayString(w.value),1),e.createElementVNode("span",null,e.toDisplayString(B.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($=>{var Z;return((Z=$==null?void 0:$.toString)==null?void 0:Z.call($))??""}).slice(0,2);return[x[0]??"",x[1]??""]}if(typeof s=="string"){const x=s.split(",").slice(0,2).map($=>$.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 $;m.value=s,($=a.value)==null||$.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 d(){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 S=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function L(s){const[x,$,Z]=s.split("-");return`${Z}.${$}.${x}`}function h(s,x="long"){const $=new Date(Date.UTC(2e3,s-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:x,timeZone:"UTC"}).format($)}function w(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 $=new Date(x[0]),Z=$.getFullYear(),g=$.getMonth();return`${Math.floor(g/3)+1} ${l("filter.quarter")} ${Z}`}return"";case"month":if(x[0]){const[$,Z]=x[0].split("-");return`${h(parseInt(Z,10))} ${$}`}return"";case"year":return x[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const B=e.computed(()=>m.value?w(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:d,ukMonths:S,formatDisplayDate:L,getModeLabel:w,currentLabel:B,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"},vo=["disabled"],Do=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=Ve(),p=xl(),n=ue(),y=o,C=e.ref(null),{activeMode:b,innerValue:d,onSelectChange:S,nextClick:L,prevClick:h,clear:w}=kt({...a,popoverRef:C},y);function B(Z){if(Array.isArray(Z)){const g=Z.map(j=>{var u;return((u=j==null?void 0:j.toString)==null?void 0:u.call(j))??""}).slice(0,2);return[g[0]??"",g[1]??""]}if(typeof Z=="string"){const g=Z.split(",").slice(0,2).map(j=>j.trim());return[g[0]??"",g[1]??""]}return["",""]}e.watch(()=>a.modelValue,Z=>{Z!==void 0?d.value=B(Z):(b.value="",d.value=[])}),e.watch(()=>B(d.value).join(","),()=>{const Z=B(d.value),g=B(a.modelValue);Z.join(",")!==g.join(",")&&(y("update:modelValue",Z),y("change",{name:a.name,value:Z}))});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(Z){var g;return((g=s[Z])==null?void 0:g.label)??n(`filter.${Z}`)}function $(Z){var g;return((g=s[Z])==null?void 0:g.title)??n(`filter.${Z}`)}return i({clear:w,popoverRef:C}),(Z,g)=>{var j;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(d)[1],locale:"uk-UA","onUpdate:modelValue":g[0]||(g[0]=u=>e.unref(d)[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(d)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(d)[0],locale:"uk-UA","onUpdate:modelValue":g[1]||(g[1]=u=>e.unref(d)[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(d)[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(d)[1],locale:"uk-UA","onUpdate:modelValue":g[2]||(g[2]=u=>e.unref(d)[0]=u),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,Vo),[[e.vModelText,e.unref(d)[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(d)[0],locale:"uk-UA","onUpdate:modelValue":g[3]||(g[3]=u=>e.unref(d)[1]=u),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,So),[[e.vModelText,e.unref(d)[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:$(u),onClick:M=>e.unref(S)(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:!((j=e.unref(d))!=null&&j.length)||!e.unref(d)[0]&&!e.unref(d)[1],class:e.normalizeClass(e.unref(m)+"hover:bg-gray-100"),onClick:g[6]||(g[6]=(...u)=>e.unref(w)&&e.unref(w)(...u))},e.toDisplayString(e.unref(n)("filter.clear")),11,vo)):e.createCommentVNode("",!0)])],64)}}});function jo(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(U=>typeof U=="string"&&U.includes(",")?U.split(",").map(O=>O.trim()).filter(Boolean):U==null||U===""?[]:[U]):typeof T=="string"?T.split(",").map(U=>U.trim()).filter(Boolean):T==null||T===""?[]:[T]}function b(T){return y?C(T):Array.isArray(T)?T[0]:T}const d=e.ref(b(t.modelValue)),S=e.ref(""),L=e.ref(!1),h=e.ref(a),w=e.ref("id"),B=e.ref("text"),_=e.ref(!1),s=e.ref(t.layout!=="popover"&&a.length>l),x=e.ref([]),$=e.ref(0),Z=e.ref([]);function g(T){const U=T.find(Boolean)??{},O=["id","value","code","key"].find(Q=>Q in U)??"id",W=["text","label","name","title"].find(Q=>Q in U)??"text";return{autoValueKey:O,autoLabelKey:W}}if(a.length>0){const T=g(a);w.value=T.autoValueKey,B.value=T.autoLabelKey}function j(){return y?C(d.value):d.value===void 0||d.value===null||d.value===""?[]:[d.value]}function u(T){const U=new Map;return T.forEach(O=>{U.set(O[w.value],O)}),Array.from(U.values())}function M(T){const U=j();if(U.length===0)return T;const O=new Set(U),W=T.filter(me=>O.has(me[w.value])),Q=u([...Z.value,...W]).filter(me=>O.has(me[w.value])),ne=new Set(Q.map(me=>me[w.value])),he=T.filter(me=>!ne.has(me[w.value]));return[...Q,...he]}const N=e.computed(()=>{if(o)return M(h.value);const T=h.value;if(t.layout==="popover")return M(T);if(!S.value){const W=_.value?T:T.slice(0,l);return M(W)}const U=S.value.toLowerCase(),O=T.filter(W=>String(W[B.value]).toLowerCase().includes(U));return M(O)});let E=null;async function z(T){if(o){L.value=!0;try{const U=new URL(o,window.location.origin);U.searchParams.set("json","1"),U.searchParams.set("key",T),U.searchParams.set("limit",l.toString());const O=await fetch(U.toString());if(!O.ok){Le({type:"error",title:"Error",message:"Failed to fetch remote options"}),h.value=[];return}const W=await O.json();if(!W[n]){Le({type:"error",title:"Error",message:W}),h.value=[];return}if(h.value=W[n],h.value.length>0){const Q=g(h.value);w.value=Q.autoValueKey,B.value=Q.autoLabelKey}$.value=W.total}catch(U){console.error("Failed to fetch remote options:",U)}finally{L.value=!1}}}async function P(){if(!o)return;const T=j();if(T.length===0){Z.value=[];return}try{const U=await Promise.all(T.map(async O=>{const W=new URL(o,window.location.origin);W.searchParams.set("json","1"),W.searchParams.set("val",String(O));const Q=await fetch(W.toString());if(!Q.ok)return[];const ne=await Q.json(),he=Array.isArray(ne)?ne:ne[n];return Array.isArray(he)?he:[]}));Z.value=u(U.flat())}catch(U){console.error("Failed to fetch pinned selected options:",U)}}e.watch(S,T=>{o&&(E&&clearTimeout(E),E=setTimeout(()=>{z(T)},200))}),e.watch(()=>t.modelValue,T=>{d.value=b(T)},{immediate:!0}),e.watch([d,()=>o],async()=>{o?await P():Z.value=[]},{immediate:!0}),e.watch(d,T=>{y?(!Array.isArray(T)||T.length===0)&&(x.value=[]):(T==null||typeof T=="string"&&T==="")&&(x.value=[])});function D(T){return y&&Array.isArray(d.value)?d.value.includes(T[w.value]):d.value&&d.value===T[w.value]}function r(T){if(y&&!Array.isArray(d.value)&&(d.value=[]),y&&Array.isArray(d.value)){const U=d.value.includes(T[w.value]);d.value=U?d.value.filter(O=>O!==T[w.value]):[...d.value,T[w.value]],x.value=U?x.value.filter(O=>O!==T[B.value]):[...x.value,T[B.value]]}else d.value=T[w.value],x.value=T[B.value];i("update:modelValue",d.value),i("change",{name:t.name,value:d.value})}function c(){y?(d.value=[],x.value=[]):(d.value="",x.value=[]),i("update:modelValue",d.value),i("clear",t.name)}function f(){E&&clearTimeout(E),S.value="",_.value=!1}function A(){_.value=!_.value}e.onBeforeUnmount(()=>{E&&clearTimeout(E)});const R=e.ref(-1);e.watch(N,()=>{R.value=N.value.length>0?0:-1});function X(T){const U=N.value.length;if(T.key==="ArrowDown")T.preventDefault(),R.value=(R.value+1)%U;else if(T.key==="ArrowUp")T.preventDefault(),R.value=(R.value-1+U)%U;else if(T.key==="Enter"&&(T.preventDefault(),R.value>=0&&R.value<N.value.length)){const O=N.value[R.value];r(O)}}function te(){o&&h.value.length===0&&S.value.length===0&&z(S.value)}return{innerValue:d,searchTerm:S,filteredOptions:N,isSelected:D,selectItem:r,clear:c,resetSearch:f,toggleShowAll:A,isReqProc:L,showAll:_,isEnableShowAll:s,labelKey:B,valueKey:w,allOptions:h,highlightedIndex:R,onKeyDown:X,selectedLabels:x,totalCount:$,loadData:te}}const zo=["aria-disabled"],Po={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},Ao=["placeholder","disabled"],Fo={key:0,class:"w-full"},$o={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"],Uo={class:"text-xs text-gray-500"},Io=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=Ve(),m=t,p=o,n=e.ref(null),{innerValue:y,filteredOptions:C,isSelected:b,selectItem:d,clear:S,resetSearch:L,toggleShowAll:h,isReqProc:w,showAll:B,isEnableShowAll:_,searchTerm:s,labelKey:x,valueKey:$,highlightedIndex:Z,onKeyDown:g,selectedLabels:j,totalCount:u,loadData:M}=jo({...m,modelValue:m.modelValue},p);function N(r){if(m.disabled){r.preventDefault();return}g(r)}function E(r){m.disabled||d(r)}const z=e.computed(()=>m.multi?Array.isArray(y.value)&&y.value.length>0:y.value!=null&&y.value!==""),P=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 D=e.ref([]);return e.watch(Z,r=>{var c;r>=0&&D.value[r]&&((c=D.value[r])==null||c.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(C,()=>{D.value=[]}),i({clear:S,inputTextRef:n,selectedLabels:j,loadData:M}),(r,c)=>{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":c[0]||(c[0]=A=>e.isRef(s)?s.value=A:null),onKeydown:N,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:c[1]||(c[1]=A=>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),(A,R)=>(e.openBlock(),e.createBlock(Je,{layout:t.layout,count:A.count,label:A[e.unref(x)],color:A.color,type:t.multi?"checkbox":"radio",value:A[e.unref($)],disabled:t.disabled,"is-selected":e.unref(b)(A),highlighted:R===e.unref(Z),onItemClick:X=>E(A),ref_for:!0,ref:X=>D.value[R]=X==null?void 0:X.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(w)?(e.openBlock(),e.createElementBlock("div",Fo,[e.createElementVNode("div",$o,[e.createVNode(tt),e.createElementVNode("div",Ro,[e.createElementVNode("p",Zo,e.toDisplayString(e.unref(a)("filter.notfound")),1),c[6]||(c[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(B)&&e.unref(_)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:c[2]||(c[2]=(...A)=>e.unref(h)&&e.unref(h)(...A)),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(B)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:c[3]||(c[3]=(...A)=>e.unref(h)&&e.unref(h)(...A)),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:c[4]||(c[4]=(...A)=>e.unref(S)&&e.unref(S)(...A))},e.toDisplayString(e.unref(a)("filter.clear")),513),[[e.vShow,z.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Ko,[e.createElementVNode("button",{type:"button",disabled:t.disabled||!z.value,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:c[5]||(c[5]=(...A)=>e.unref(S)&&e.unref(S)(...A))},[e.createTextVNode(e.toDisplayString(e.unref(a)("filter.clear"))+" ",1),e.createElementVNode("span",Uo,e.toDisplayString(P.value)+" з "+e.toDisplayString(e.unref(u)),1)],10,Oo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],10,zo)}}}),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=Ve(),p=ue(),{innerValue:n,isSelected:y,selectItem:C,clear:b,labelKey:d,valueKey:S,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!==""),w=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,B=>{B===void 0&&(a.multi?n.value=[]:n.value=void 0)}),(B,_)=>{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(S)]}`,for:`item-${x[e.unref(S)]}`,onClick:e.withModifiers($=>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(S)]}`,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(S)]}`,value:x[e.unref(S)]},null,8,Go),e.createElementVNode("span",Wo,e.toDisplayString(x[e.unref(d)]),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(w.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,j=y.value;if(!g||!j)return;const u=g.getBoundingClientRect(),M=j.offsetWidth,N=j.offsetHeight,E=window.innerWidth,z=window.innerHeight,P=8;let D=u.bottom+P,{left:r}=u;const c=Math.max(E-M-10,10);if(r=Math.min(r,c),r=Math.max(r,10),D+N>z-10){const f=u.top-N-P;D=f>=10?f:Math.max(z-N-10,10)}D<10&&(D=10),m.value={top:D,left:r}}function d(){e.nextTick(()=>{b(),typeof window<"u"&&typeof window.requestAnimationFrame=="function"&&window.requestAnimationFrame(()=>b())})}function S(){l.value=!l.value,l.value&&(d(),e.nextTick(()=>{var g,j,u,M,N,E,z;(g=o.fieldRef)!=null&&g.inputTextRef&&((M=(u=(j=o.fieldRef)==null?void 0:j.inputTextRef)==null?void 0:u.focus)==null||M.call(u)),(N=o.fieldRef)!=null&&N.loadData&&Promise.resolve((z=(E=o.fieldRef)==null?void 0:E.loadData)==null?void 0:z.call(E)).finally(()=>{l.value&&d()})}))}function L(g){var j,u,M;!((j=p.value)!=null&&j.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 w=e.ref(!1),B=e.ref("ua"),_=g=>{g.detail.key==="locale"&&(B.value=g.detail.newValue)};e.onMounted(()=>{w.value=!0,B.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&&d()}))}),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([w,l,y],([g,j,u])=>{g&&j&&u&&(d(),C==null||C.observe(u))});function x(g){if(Array.isArray(g))return g.filter(j=>j!=null&&j!=="").length;if(g&&typeof g=="object")return Object.values(g).filter(j=>j!=null&&j!=="").length;if(typeof g=="string"){const j=g.split(",").map(u=>u.trim()).filter(Boolean);return j.length>0?j.length:0}return typeof g=="number"?Number.isNaN(g)?0:1:g===null||g!==void 0?1:0}const $=e.computed(()=>{var u;const g=(u=o.fieldRef)==null?void 0:u.selectedLabels,j=x(g);return j>0?j:x(o.currentValue)}),Z=e.computed(()=>{var j;const g=(j=o.fieldRef)==null?void 0:j.selectedLabels;return!g||["inline"].includes(o.layout||"")?o[B.value]||(o.label??""):Array.isArray(g)?g.length>0?g.join(", "):o.label??"":String(g)});return(g,j)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:p},[e.createElementVNode("button",{onClick:S,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"&&$.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",tn,[e.createElementVNode("span",ln,e.toDisplayString(Z.value),1),t.layout==="inline"&&$.value>0?(e.openBlock(),e.createElementBlock("span",on,e.toDisplayString($.value),1)):e.createCommentVNode("",!0)]),e.createVNode(Ue,{class:"h-4 w-4 text-neutral-500"})],10,en),w.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=ye(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=ye(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:d,currentLabel:S,clear:L}=kt({...l,popoverRef:p},m);function h(_){if(Array.isArray(_)){const s=_.map(x=>{var $;return(($=x==null?void 0:x.toString)==null?void 0:$.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 w(_){const s=Array.isArray(y.value)?[...y.value]:[];y.value=[_,s[1]||""]}function B(_){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(S),"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(we,{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(we,{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(we,{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(we,{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(we,{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(we,{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(we,{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(d)&&e.unref(d)(...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=>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",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=>B(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=Ve(),p=ue(),{innerValue:n,isSelected:y,selectItem:C,clear:b,labelKey:d,valueKey:S,allOptions:L}=et({...a,modelValue:a.modelValue??a.default??""},l),h=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value===""));function w(_){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 B(_){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(S)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",w(x)]),disabled:t.disabled,onClick:$=>B(x)},e.toDisplayString(x[e.unref(d)]),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:jl,checkbox:ht,check:ht,text:Ql,range:xo,date:Do,select:Io,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%"}},vn={class:"filter-card relative w-full mb-2 p-4 bg-white rounded-md shadow-sm"},Dn={class:"rrf-header block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},jn={class:"flex items-center"},zn={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:d=>l("update:modelValue",d)});function y(d){l("clear",d)}function C(d,S){l("change",{name:d,value:S}),a.modelValue!==void 0&&l("update:modelValue",S)}function b(){var d,S;(S=(d=m.value)==null?void 0:d.clear)==null||S.call(d),l("clear",a.name)}return e.watch(()=>a.default,d=>{n.value=d}),e.watch(()=>a.modelValue,d=>{n.value=d}),i({filterRef:m}),(d,S)=>{var L,h,w;return e.openBlock(),e.createElementBlock("div",Ln,[e.createElementVNode("div",vn,[e.createElementVNode("div",Dn,[e.createElementVNode("div",jn,[e.createElementVNode("span",zn,e.toDisplayString(t.label),1),S[4]||(S[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(B=>B!==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:(w=p.value)==null?void 0:w.type,class:a.itemClass,onChange:S[0]||(S[0]=B=>C(B.name,B.value)),onClear:S[1]||(S[1]=B=>y(B)),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 B,_;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((B=p.value)==null?void 0:B.component),e.mergeProps({ref_key:"filterRef",ref:m},a,{type:(_=p.value)==null?void 0:_.type,class:a.itemClass,onChange:S[2]||(S[2]=s=>C(s.name,s.value)),onClear:S[3]||(S[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,d){l("change",{name:b,value:d}),a.modelValue!==void 0&&l("update:modelValue",d)}return e.watch(()=>a.default,b=>{n.value=b}),e.watch(()=>a.modelValue,b=>{n.value=b}),i({filterRef:m}),(b,d)=>{var S,L;return["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((S=p.value)==null?void 0:S.component),e.mergeProps({key:0},a,{type:(L=p.value)==null?void 0:L.type,class:t.itemClass,onChange:d[0]||(d[0]=h=>C(h.name,h.value)),onClear:d[1]||(d[1]=h=>y(h)),disabled:t.disabled,modelValue:n.value,"onUpdate:modelValue":d[2]||(d[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,w;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":d[3]||(d[3]=B=>n.value=B),type:(w=p.value)==null?void 0:w.type,class:a.itemClass,onChange:d[4]||(d[4]=B=>C(B.name,B.value)),onClear:d[5]||(d[5]=B=>y(B))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),Fn=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},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,d){l("change",{name:b,value:d}),a.modelValue!==void 0&&l("update:modelValue",d)}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,d)=>{var S,L;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((S=p.value)==null?void 0:S.component),e.mergeProps(a,{type:(L=p.value)==null?void 0:L.type,class:a.itemClass,modelValue:n.value,"onUpdate:modelValue":d[0]||(d[0]=h=>n.value=h),onChange:d[1]||(d[1]=h=>C(h.name,h.value)),onClear:d[2]||(d[2]=h=>y(h)),ref_key:"filterRef",ref:m}),null,16,["type","class","modelValue"])}}}),se=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,d){l("change",{name:b,value:d}),a.modelValue!==void 0&&l("update:modelValue",d)}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 Fn;default:return Bt}}return(b,d)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C()),e.mergeProps(a,{onChange:d[0]||(d[0]=S=>y(S.name,S.value)),onClear:d[1]||(d[1]=S=>n(S)),modelValue:p.value,"onUpdate:modelValue":d[2]||(d[2]=S=>p.value=S)}),null,16,["modelValue"]))}});function Ie(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 d(u){var M;return!!((M=m.value[u])!=null&&M.ignore)||!!p.value.find(N=>{var E,z;return((E=N==null?void 0:N.props)==null?void 0:E.name)===u&&((z=N==null?void 0:N.props)==null?void 0:z.ignore)})}function S(u){d(u)||(delete l.value[u],i("clear",{data:e.toRaw(l.value),name:u}))}function L(u,M){d(u)||(M===void 0?S(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 E,z,P,D,r;const M=(E=u.props)==null?void 0:E.name,N=!!((z=u.props)!=null&&z.disabled||(P=t.exclusiveDisabledKeys)!=null&&P[M]);return e.cloneVNode(u,{...u.props,layout:t.view,showClean:!0,disabled:N,class:[t.itemClass,(D=u.props)==null?void 0:D.class],itemClass:[t.itemClass,(r=u.props)==null?void 0:r.itemClass].filter(c=>typeof c=="string"&&c.trim().length>0).join(" ")||void 0})})),w=e.computed(()=>b.value.map(u=>{var E,z,P,D,r;const M=(E=u.props)==null?void 0:E.name,N=!!((z=u.props)!=null&&z.disabled||(P=t.exclusiveDisabledKeys)!=null&&P[M]);return e.cloneVNode(u,{...u.props,layout:t.view,showClean:!0,disabled:N,modelValue:l.value[M],"onUpdate:modelValue":c=>{L(M,c)},onClear:()=>S(M),class:[t.itemClass,(D=u.props)==null?void 0:D.class],itemClass:[t.itemClass,(r=u.props)==null?void 0:r.itemClass].filter(c=>typeof c=="string"&&c.trim().length>0).join(" ")||void 0})})),B=e.computed(()=>new Map(w.value.map(u=>{var N;const M=(N=u.props)==null?void 0:N.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 N;return!(u in m.value)||(N=m.value[u])!=null&&N.ignore?!1:Array.isArray(M)?M.some(E=>E!==""&&E!==void 0&&E!==null):M!==""&&M!==void 0&&M!==null}).length:0),$=e.ref();e.watch(s,async()=>{var u,M;await e.nextTick(),(M=(u=$==null?void 0:$.value)==null?void 0:u.filterRef)!=null&&M.inputTextRef&&$.value.filterRef.inputTextRef.focus()});const Z=e.computed(()=>Object.keys(m.value).length?Object.fromEntries(y.value.slice(0,t.limit)):{}),g=e.computed(()=>{if(w.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 w.value.slice(0,u)}),j=e.computed(()=>w.value.length===0?[]:t.view!=="inline"?w.value:w.value.slice(g.value.length));return{activeFilter:l,activeFilterCount:x,onFilterChange:L,clearFilter:S,clearAllFilters:_,ignoredSchemaEntries:n,visibleSchemaEntries:y,limitedSchema:Z,ignoredFiltersSlot:h,filtersSlot:w,limitedFiltersSlot:g,popoverFiltersSlot:j,vnodeMap:B,selectedFilter:s,filterRef:$}}const $n=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,w=a.value;if(!h||!w)return;const{left:B,bottom:_}=h.getBoundingClientRect();requestAnimationFrame(()=>{if(!w)return;const{width:s}=w.getBoundingClientRect(),x=w.offsetWidth||s,$=window.innerWidth||document.documentElement.clientWidth,Z=$-B;let g=B;x>Z&&(g=$-x-18),g<18&&(g=18);const j=$-x-18;g>j&&(g=Math.max(18,j)),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 d(h){var B,_;const w=h.target;!((B=m.value)!=null&&B.contains(h.target))&&!((_=a.value)!=null&&_.contains(h.target))&&!w.closest("[data-inside-popover]")&&(o.value=!1)}const S=e.ref(!1);e.onMounted(()=>{S.value=!0}),e.onMounted(()=>{var h,w;m.value=((h=l.value)==null?void 0:h.querySelector("[data-popover-trigger]"))||null,(w=m.value)==null||w.addEventListener("click",y),document.addEventListener("click",d),window.addEventListener("resize",C),window.addEventListener("scroll",C,!0)}),e.onBeforeUnmount(()=>{var h;(h=m.value)==null||h.removeEventListener("click",y),document.removeEventListener("click",d),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,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:l},[e.renderSlot(h.$slots,"trigger"),S.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=ye(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"},Un={class:"flex max-h-[400px] md:max-h-[400px]"},In={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:d,clearFilter:S,clearAllFilters:L,ignoredSchemaEntries:h,visibleSchemaEntries:w,ignoredFiltersSlot:B,popoverFiltersSlot:_,selectedFilter:s,filterRef:x}=Ie({...l,schema:y,slots:p},n),$=e.computed(()=>l.badgeCount??b.value),Z=e.computed(()=>B.value.find(D=>{var r;return((r=D.props)==null?void 0:r.name)===s.value})??null),g=e.computed(()=>h.value.find(([D])=>D===s.value)??null),j=e.computed(()=>w.value.find(([D])=>D===s.value)??null),u=e.computed(()=>_.value.find(D=>{var r;return((r=D.props)==null?void 0:r.name)===s.value})??null);function M(D){if(Array.isArray(D))return D.filter(r=>r!=null&&r!=="").length;if(D&&typeof D=="object")return Object.values(D).filter(r=>r!=null&&r!=="").length;if(typeof D=="string"){const r=D.split(",").map(c=>c.trim()).filter(Boolean);return r.length>0?r.length:0}return D===null||D!==void 0&&D!==""?1:0}function N(D){return C.value?M(C.value[D]):0}function E(D){return!!D&&typeof D=="object"&&!Array.isArray(D)}function z(D){var r;return((r=Object.entries(D).find(([,c])=>!(c!=null&&c.disabled)))==null?void 0:r[0])??""}function P(){var r,c,f,A,R,X,te;if(B.value.length>0){const T=B.value.find(U=>{var O;return!((O=U.props)!=null&&O.disabled)});s.value=((r=T==null?void 0:T.props)==null?void 0:r.name)??((f=(c=B.value[0])==null?void 0:c.props)==null?void 0:f.name)??"";return}if(h.value.length>0){const T=h.value.find(([,U])=>!(U!=null&&U.disabled));s.value=(T==null?void 0:T[0])??((A=h.value[0])==null?void 0:A[0])??"";return}const D=Object.fromEntries(w.value);if(D&&E(D))s.value=z(D);else if(_.value.length>0){const T=_.value.find(U=>{var O;return!((O=U.props)!=null&&O.disabled)});s.value=((R=T==null?void 0:T.props)==null?void 0:R.name)??((te=(X=_.value[0])==null?void 0:X.props)==null?void 0:te.name)??""}else s.value=""}return e.watch([w,s],()=>{var c;const D=s.value,r=Object.fromEntries(w.value);!D||!r||!E(r)||(c=r[D])!=null&&c.disabled&&(s.value=z(r))},{deep:!0}),e.watch(()=>l.schema,D=>{y.value=D??{}},{deep:!0,immediate:!0}),i({clearFilter:S,clearAllFilters:L}),(D,r)=>(e.openBlock(),e.createBlock($n,{onOpen:P,onClose:r[7]||(r[7]=c=>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",$.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))]),$.value>0?(e.openBlock(),e.createElementBlock("span",On,e.toDisplayString($.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>{var c,f,A,R,X,te,T,U;return[e.createElementVNode("div",Un,[e.createElementVNode("div",In,[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(B),(O,W)=>{var Q;return e.openBlock(),e.createElementBlock("button",{key:"ignored-slot-"+W,type:"button",disabled:!!((Q=O.props)!=null&&Q.disabled),onClick:ne=>s.value=O.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)===O.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(O.props.label),1)]),N(O.props.name)>0?(e.openBlock(),e.createElementBlock("div",Xn,e.toDisplayString(N(O.props.name)),1)):e.createCommentVNode("",!0)],10,qn)}),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),([O,W])=>(e.openBlock(),e.createElementBlock("button",{key:"ignored-schema-"+O,type:"button",disabled:!!(W!=null&&W.disabled),onClick:Q=>s.value=O,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)===O?"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(W.label),1)]),N(O)>0?(e.openBlock(),e.createElementBlock("div",lr,e.toDisplayString(N(O)),1)):e.createCommentVNode("",!0)],10,Jn))),128)),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(w),([O,W])=>(e.openBlock(),e.createElementBlock("button",{key:O,type:"button",disabled:!!(W!=null&&W.disabled),onClick:Q=>s.value=O,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)===O?"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(W.label),1)]),N(O)>0?(e.openBlock(),e.createElementBlock("div",ar,e.toDisplayString(N(O)),1)):e.createCommentVNode("",!0)],10,or))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(_),(O,W)=>{var Q;return e.openBlock(),e.createElementBlock("button",{key:"slot-"+W,type:"button",disabled:!!((Q=O.props)!=null&&Q.disabled),onClick:ne=>s.value=O.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)===O.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(O.props.label),1)]),N(O.props.name)>0?(e.openBlock(),e.createElementBlock("div",dr,e.toDisplayString(N(O.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]=O=>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},[Z.value?(e.openBlock(),e.createBlock(se,e.mergeProps({key:`ignored-slot-${Z.value.props.name??""}`,layout:"popover",ref_key:"filterRef",ref:x},Z.value.props,{class:[t.itemClass,(c=Z.value.props)==null?void 0:c.class],"item-class":[t.itemClass,(f=Z.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(se,e.mergeProps({key:`ignored-schema-${g.value[0]}`,layout:"popover",ref_key:"filterRef",ref:x},g.value[1],{class:[t.itemClass,(A=g.value[1])==null?void 0:A.class],"item-class":[t.itemClass,(R=g.value[1])==null?void 0:R.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])):e.createCommentVNode("",!0),j.value?(e.openBlock(),e.createBlock(se,e.mergeProps({key:`schema-${j.value[0]}`,layout:"popover",ref_key:"filterRef",ref:x},j.value[1],{class:[t.itemClass,(X=j.value[1])==null?void 0:X.class],"item-class":[t.itemClass,(te=j.value[1])==null?void 0:te.itemClass].filter(Boolean).join(" ")||void 0,onChange:r[1]||(r[1]=O=>e.unref(d)(O.name,O.value)),onClear:r[2]||(r[2]=O=>{e.unref(S)(O),e.unref(d)(O,void 0)}),modelValue:e.unref(C)[j.value[0]],"onUpdate:modelValue":r[3]||(r[3]=O=>e.unref(C)[j.value[0]]=O),cleanable:!0}),null,16,["class","item-class","modelValue"])):u.value?(e.openBlock(),e.createBlock(se,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,(U=u.value.props)==null?void 0:U.itemClass].filter(Boolean).join(" ")||void 0,onChange:r[4]||(r[4]=O=>e.unref(d)(O.name,O.value)),onClear:r[5]||(r[5]=O=>{e.unref(S)(O),e.unref(d)(O,void 0)}),modelValue:e.unref(C)[u.value.props.name],"onUpdate:modelValue":r[6]||(r[6]=O=>e.unref(C)[u.value.props.name]=O),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(()=>B.value.length>l.limit),{activeFilter:C,activeFilterCount:b,onFilterChange:d,clearFilter:S,clearAllFilters:L,ignoredSchemaEntries:h,ignoredFiltersSlot:w,visibleSchemaEntries:B,limitedSchema:_,filtersSlot:s,limitedFiltersSlot:x}=Ie({...l,schema:n,slots:p},m);function $(N){return Array.isArray(N)?N.some(E=>E!==""&&E!==void 0&&E!==null):N===null?!0:N&&typeof N=="object"?Object.values(N).some(E=>E!==""&&E!==void 0&&E!==null):N!==""&&N!==void 0}const Z=e.computed(()=>{const N=[...h.value.map(([P])=>P),...Object.keys(_.value??{})],E=x.value.map(P=>{var D;return(D=P.props)==null?void 0:D.name}).filter(P=>typeof P=="string"),z=w.value.map(P=>{var D;return(D=P.props)==null?void 0:D.name}).filter(P=>typeof P=="string");return new Set([...N,...z,...E])}),g=e.computed(()=>Object.entries(C.value??{}).filter(([N,E])=>Z.value.has(N)&&$(E)).length),j=e.computed(()=>{const N=b.value??0,E=g.value??0;return Math.max(N-E,0)}),u=e.ref();function M(){u.value&&u.value.clearAllFilters(!0),L()}return e.watch(()=>l.schema,N=>{n.value=N},{deep:!0,immediate:!0}),i({clearFilter:S,clearAllFilters:L}),(N,E)=>(e.openBlock(),e.createElementBlock("div",gr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),([z,P])=>(e.openBlock(),e.createBlock(se,e.mergeProps({key:"ignored-schema-"+z,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(w),(z,P)=>{var D,r;return e.openBlock(),e.createBlock(se,e.mergeProps({key:"ignored-slot-"+P,layout:"inline"},{ref_for:!0},z.props,{class:[t.itemClass,(D=z.props)==null?void 0:D.class],"item-class":[t.itemClass,(r=z.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(_)),([z,P])=>(e.openBlock(),e.createBlock(se,e.mergeProps({key:z,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,onChange:E[0]||(E[0]=D=>e.unref(d)(D.name,D.value)),onClear:e.unref(S),layout:"inline",cleanable:!0,modelValue:e.unref(C)[z],"onUpdate:modelValue":D=>e.unref(C)[z]=D}),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),(z,P)=>{var D,r;return e.openBlock(),e.createBlock(se,e.mergeProps({key:"slot-"+P,layout:"inline"},{ref_for:!0},z.props,{class:[t.itemClass,(D=z.props)==null?void 0:D.class],"item-class":[t.itemClass,(r=z.props)==null?void 0:r.itemClass].filter(Boolean).join(" ")||void 0,onChange:E[1]||(E[1]=c=>e.unref(d)(c.name,c.value)),onClear:E[2]||(E[2]=c=>{e.unref(S)(c),e.unref(d)(c,void 0)}),cleanable:!0,modelValue:e.unref(C)[z.props.name],"onUpdate:modelValue":c=>e.unref(C)[z.props.name]=c}),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:E[3]||(E[3]=z=>e.unref(d)(z.name,z.value)),onClearAll:E[4]||(E[4]=z=>e.unref(L)()),onClear:E[5]||(E[5]=z=>e.unref(S)(z.name)),mode:t.mode,ref_key:"popoverRef",ref:u,cleanable:!0,"badge-count":j.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),(z,P)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(z),e.mergeProps({key:"slot-"+P,layout:"popover"},{ref_for:!0},z.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:d,ignoredFiltersSlot:S,filtersSlot:L}=Ie({...a,slots:m},l);return i({clearFilter:C,clearAllFilters:b}),(h,w)=>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(d),([B,_])=>(e.openBlock(),e.createBlock(se,e.mergeProps({key:"ignored-schema-"+B,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(S),(B,_)=>{var s,x;return e.openBlock(),e.createBlock(se,e.mergeProps({key:"ignored-slot-"+_,layout:"vertical"},{ref_for:!0},B.props,{class:[t.itemClass,(s=B.props)==null?void 0:s.class],"item-class":[t.itemClass,(x=B.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:w[0]||(w[0]=B=>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),([B,_])=>(e.openBlock(),e.createBlock(se,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:w[1]||(w[1]=s=>e.unref(y)(s.name,s.value)),onClear:w[2]||(w[2]=s=>{e.unref(C)(s),e.unref(y)(s,void 0)}),modelValue:e.unref(p)[B],"onUpdate:modelValue":s=>e.unref(p)[B]=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),(B,_)=>{var s,x;return e.openBlock(),e.createBlock(se,e.mergeProps({key:"slot-"+_,layout:"vertical"},{ref_for:!0},B.props,{class:[t.itemClass,(s=B.props)==null?void 0:s.class],"item-class":[t.itemClass,(x=B.props)==null?void 0:x.itemClass].filter(Boolean).join(" ")||void 0,onChange:w[3]||(w[3]=$=>e.unref(y)($.name,$.value)),onClear:w[4]||(w[4]=$=>{e.unref(C)($),e.unref(y)($,void 0)}),modelValue:e.unref(p)[B.props.name],"onUpdate:modelValue":$=>e.unref(p)[B.props.name]=$,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:d,ignoredSchemaEntries:S,visibleSchemaEntries:L,ignoredFiltersSlot:h,filtersSlot:w}=Ie({...a,schema:m.value,slots:p},l),B=e.ref(null),_=e.ref(null),s=e.reactive({open:!1,top:0,left:0}),x=e.computed(()=>s.open),$=e.computed(()=>!!a.disabled),Z=e.computed(()=>a.title??"Фільтр"),g=e.computed(()=>!!p.trigger),j=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",$.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 N(){if(!B.value)return;const r=B.value.getBoundingClientRect();s.top=r.bottom+window.scrollY+8,s.left=r.left+r.width/2+window.scrollX}function E(){s.open=!s.open,s.open&&e.nextTick(N)}function z(){$.value||E()}function P(){s.open&&N()}function D(){d()}return e.onMounted(()=>{window.addEventListener("resize",P),window.addEventListener("scroll",P,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",P),window.removeEventListener("scroll",P,!0)}),e.watch(()=>a.schema,r=>{if(!r){m.value={};return}if(Array.isArray(r)){const c=r.filter(f=>f&&(f.name||f.id)).map(f=>{const A=f.name||f.id;return[A,{...f,name:A}]});m.value=Object.fromEntries(c);return}m.value=r},{deep:!0,immediate:!0}),e.watch(()=>a.disabled,r=>{r&&M()}),(r,c)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:B},[g.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",$.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(z,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(z,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(z,["prevent","stop"]),["space"])]},[e.renderSlot(r.$slots,"trigger",{toggle:z,open:x.value,disabled:$.value,activeCount:e.unref(y)})],42,br)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(j.value),type:"button",disabled:$.value,onClick:e.withModifiers(z,["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:c[4]||(c[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Br,[e.createElementVNode("div",Cr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(S),([f,A])=>(e.openBlock(),e.createBlock(se,e.mergeProps({key:"ignored-schema-"+f,layout:"inline",mode:t.mode,width:t.width?t.width:A==null?void 0:A.width},{ref_for:!0},A,{class:[t.itemClass,A==null?void 0:A.class],"item-class":[t.itemClass,A==null?void 0:A.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,A)=>{var R,X;return e.openBlock(),e.createBlock(se,e.mergeProps({key:"ignored-slot-"+A,layout:"inline"},{ref_for:!0},f.props,{class:[t.itemClass,(R=f.props)==null?void 0:R.class],"item-class":[t.itemClass,(X=f.props)==null?void 0:X.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])}),128))]),e.createElementVNode("div",Vr,[e.createElementVNode("h3",Er,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:M},[e.createElementVNode("span",Nr,[e.createVNode(ot,{class:"h-4 w-4"})]),c[5]||(c[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,A])=>(e.openBlock(),e.createBlock(se,e.mergeProps({key:f},{ref_for:!0},{...A,layout:"inline"},{width:t.width?t.width:A==null?void 0:A.width,class:[t.itemClass,A==null?void 0:A.class],"item-class":[t.itemClass,A==null?void 0:A.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[f],"onUpdate:modelValue":R=>e.unref(n)[f]=R,onChange:c[0]||(c[0]=R=>e.unref(C)(R.name,R.value)),onClear:c[1]||(c[1]=R=>{e.unref(b)(R),e.unref(C)(R,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(w),(f,A)=>{var R,X;return e.openBlock(),e.createBlock(se,e.mergeProps({key:"slot-"+A,ref_for:!0},{...f.props,layout:"inline"},{class:[t.itemClass,(R=f.props)==null?void 0:R.class],"item-class":[t.itemClass,(X=f.props)==null?void 0:X.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[f.props.name],"onUpdate:modelValue":te=>e.unref(n)[f.props.name]=te,onChange:c[2]||(c[2]=te=>e.unref(C)(te.name,te.value)),onClear:c[3]||(c[3]=te=>{e.unref(b)(te),e.unref(C)(te,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:D},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"},vr=["onClick"],Dr={class:"mr-2 flex items-center gap-1"},jr={class:"font-semibold"},zr={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:{},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(c=>p(c));if(r!==null&&typeof r=="object"){const c=e.toRaw(r),f={};for(const A in c)f[A]=p(c[A]);return f}return r}const n=e.ref();function y(r,c){if(c==null||!r)return c;const f=(r.type||"").toLowerCase();return f==="check"||f==="range"||f==="date"?dt(c):c}function C(r,c){const f=p(r??{}),A=c&&!Array.isArray(c)?c:{};return Object.entries(f).reduce((R,[X,te])=>{const T=A[X];return R[X]=y(T,te),R},{})}const b=e.ref({}),d=e.ref({}),S=e.computed(()=>({...a,...l,value:d.value}));e.watch(()=>[a.value,a.schema],async([r])=>{var c,f;if(d.value=C(r??{},b.value),!r||Object.keys(r).length===0){await e.nextTick(),m.value=!0;try{(f=(c=n.value)==null?void 0:c.clearAllFilters)==null||f.call(c,!0)}finally{await e.nextTick(),m.value=!1}}},{deep:!0,immediate:!0});const L=o,h=e.useSlots();function w(r,c){m.value||(c!==void 0?d.value={...d.value,[r]:c}:delete d.value[r],L("change",{data:p(d.value),name:r,value:p(c)}))}function B(r){m.value||(delete d.value[r],L("clear",{data:p(d.value),name:r}),L("change",{data:p(d.value),name:r,value:null}))}function _(){m.value||(d.value={},L("clear",{data:p(d.value),name:"ALL"}),L("change",{data:p(d.value),name:"ALL",value:null}))}const s=e.computed(()=>a.teleportActive),x=e.computed(()=>{const r=nl(d.value,a.exclusiveGroups??[]);return{...a.exclusiveDisabledKeys??{},...r}}),$=e.computed(()=>{const r=b.value;if(!r||typeof r!="object")return r;if(Array.isArray(r)){const A=x.value;return r.map(R=>({...R,disabled:!!(R.disabled||R.name&&A[R.name])}))}const c=x.value,f={};return Object.entries(r).forEach(([A,R])=>{f[A]={...R,disabled:!!(R.disabled||c[A])}}),f});function Z(){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(c=>c.type).reduce((c,f)=>{if(Object.assign(f,{name:f.name||f.id,type:{datepicker:"date"}[f.type.toLowerCase()]||f.type.toLowerCase(),label:f.label||f.ua}),c[f.name]=f,f.data&&!f.api&&!f.options&&f.parent){const A=d.value[f.parent];Object.assign(f,{api:`/api/suggest/${f.data}${A?`?parent=${A}`:""}`})}return c},{}):(Object.entries(r).forEach(([c,f])=>{Object.assign(f,{name:c||f.name||f.id,type:f.type.toLowerCase()})}),b.value={...r}),d.value=C(d.value,b.value)},{immediate:!0,deep:!0});function g(r){n.value.clearFilter(r),B(r)}function j(){n.value.clearAllFilters(),_()}function u(r){g(r)}function M(r){return dt(r)}function N(r,c){var f,A;return r?((A=(f=r[c]??r.id??r.value??r.key)==null?void 0:f.toString)==null?void 0:A.call(f))??"":""}function E(r,c){var f,A;return r?((A=(f=r[c]??r.text??r.label??r.value??r.id)==null?void 0:f.toString)==null?void 0:A.call(f))??"":""}function z(r){const c=new Map,f=r.valueKey||"id",A=r.labelKey||"text";return(r.options??[]).forEach(R=>{const X=N(R,f),te=E(R,A);X&&c.set(X,te||X)}),c}function P(r,c){if(!r||c===void 0||c===null)return"";const f=M(c);if(!f.length)return"";const A=z(r);return f.map(R=>A.get(R)??R).filter(Boolean).join(", ")}const D=e.computed(()=>Object.entries(d.value).filter(([,r])=>r==null?!1:Array.isArray(r)?r.length>0:typeof r=="string"?r.trim().length>0:!0).map(([r,c])=>{const f=b.value[r],A=(f==null?void 0:f.label)||(f==null?void 0:f.title)||r,R=P(f,c);return{key:r,label:A,value:R}}));return e.watch(()=>d.value,r=>{if(a.history){const c=new URL(window.location.href),f=new URLSearchParams(window.location.search);Object.keys(r).length>0?f.set("filter",Object.entries(r).filter(([,A])=>A).map(([A,R])=>`${A}=${R}`).join("|")):f.delete("filter"),c.search=decodeURI(f.toString()),window.history.pushState({},"",c)}}),i({clearAllFilters:j,clearFilter:g}),(r,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(Z()),e.mergeProps(S.value,{schema:$.value,"exclusive-disabled-keys":x.value,onChange:c[0]||(c[0]=f=>w(f.name,f.value)),onClear:c[1]||(c[1]=f=>B(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&&D.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(D.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:A=>u(f.key)},[e.createElementVNode("span",Dr,[e.createElementVNode("span",jr,e.toDisplayString(f.label),1),e.createElementVNode("span",zr,"· "+e.toDisplayString(f.value),1)]),c[2]||(c[2]=e.createElementVNode("span",{class:"g424j flex flex-col jkwm1 items-center b9gop aqyoh ad7q2 kghwt t4363 q7nhl dark:text-emerald-500"},[e.createElementVNode("svg",{class:"e731n u28hb",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})])],-1))],8,vr))),128))])],8,["to"])):e.createCommentVNode("",!0)],64))}});He.install=function(t){t.component("Filter",He),t.component("FilterField",se)};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"},Fr=["disabled"],$r={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"},Ur=["onClick"],Ir={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 w=l.value-h,B=l.value+h;w<1&&(B+=1-w,w=1),B>n.value&&(w-=B-n.value,B=n.value),w=Math.max(1,w);const _=[];for(let s=w;s<=B;s+=1)_.push(s);return _}),C=()=>{l.value>1&&d(l.value-1)},b=()=>{l.value<n.value&&d(l.value+1)},d=L=>{l.value=L,a("update:currentPage",L),a("pageChange",L)},S=(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,Fr),e.createElementVNode("div",$r,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,w=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:w,onClick:B=>d(w),class:e.normalizeClass(l.value===w?"flex justify-center items-center rounded-lg text-sm dark:text-neutral-300 py-2 px-3 focus:outline-none disabled:opacity-50 disabled:pointer-events-none bg-[#e5e7eb] dark:bg-[#242424] border border-gray-200 text-base h-[38px] min-w-[38px]":"flex justify-center items-center rounded-lg text-sm dark:text-neutral-400 hover:bg-gray-100 py-2 px-3 focus:outline-none focus:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:hover:bg-neutral-800 dark:focus:bg-neutral-800 text-base h-[38px] min-w-[38px]")},e.toDisplayString(w),11,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],w=>e.createElementVNode("button",{type:"button",key:w,onClick:B=>S(w),class:"w-full flex items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm text-gray-800 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 dark:text-neutral-400 dark:hover:bg-neutral-700 dark:hover:text-neutral-300 dark:focus:bg-neutral-700"},[e.createTextVNode(e.toDisplayString(w)+" ",1),m.value===w?(e.openBlock(),e.createElementBlock("svg",Ir,[...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,Ur)),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]=w=>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))])])])]))}}),xe=(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=xe(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=xe(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=xe(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=xe(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=xe(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,ve=xe(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,d=0,S=0;function L(M,N,E){return Math.max(M,Math.min(E,N))}function h(M){if(!M)return 0;const N=Number.parseFloat(M);return Number.isFinite(N)?N:0}function w(){if(typeof window>"u")return 0;const M=h(p.value);return Math.max(0,window.innerHeight-M)}function B(){const M=n.value==="custom",N=M?ha:xa,E=M?_t:Mt,z=M?40:60;if(typeof window>"u")return Math.max(E,N);const P=window.innerHeight*(z/100);return L(E,N,P)}function _(){return n.value==="custom"?_t:Mt}function s(M){const N=w(),E=B(),z=_(),P=m.value==="full"?N:E;return N<=0?Math.max(z,P):L(z,P-M,N)}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 $(){m.value!=="full"&&(m.value="full",l("expand")),y.value||(C.value=0)}function Z(){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 N=M.clientY-d;C.value=S+N}function j(M){if(M.pointerId!==b)return;window.removeEventListener("pointermove",g),window.removeEventListener("pointerup",j),window.removeEventListener("pointercancel",j),b=null;const N=M.clientY-d,E=S+N;C.value=E;const z=s(E),D=(typeof window<"u"?window.innerHeight:0)*.6,r=D>0&&z>=D,c=D>0&&!r;if(!(m.value==="peek"&&r||m.value==="full"&&c)){y.value=!0;return}y.value=!1,C.value=0,m.value==="peek"&&r?$():m.value==="full"&&c&&Z()}function u(M){var N,E;M.button!==0&&M.pointerType==="mouse"||(M.cancelable&&M.preventDefault(),b=M.pointerId,d=M.clientY,S=C.value,y.value=!0,(E=(N=M.currentTarget).setPointerCapture)==null||E.call(N,M.pointerId),window.addEventListener("pointermove",g,{passive:!1}),window.addEventListener("pointerup",j),window.addEventListener("pointercancel",j))}return e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",g),window.removeEventListener("pointerup",j),window.removeEventListener("pointercancel",j)}),i({expand:$,collapseToPeek:Z}),(M,N)=>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:N[0]||(N[0]=e.withModifiers(E=>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},[...N[5]||(N[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:N[1]||(N[1]=e.withModifiers(()=>{},["stop"])),onClick:N[2]||(N[2]=E=>l("close")),"aria-label":"Close"},[...N[6]||(N[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:$,collapse:Z},()=>[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:$},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:N[3]||(N[3]=e.withModifiers(()=>{},["stop"])),onClick:N[4]||(N[4]=E=>l("close")),"aria-label":"Close"},[...N[7]||(N[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:d,polygonZoom:S}=n,L=d??S??m,h=L-.01,w=L,B=Lt(t,l,m,p);i.addSource("vector",{type:"vector",tiles:[B],minzoom:0,maxzoom:22});const _=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],s=[">",_,1],x=["<=",_,1],$=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],Z=["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 j={id:"vector-circle",type:"circle",source:"vector","source-layer":t,filter:["all",x,$],paint:{"circle-color":o,"circle-stroke-color":a||"#eee","circle-stroke-width":b,"circle-radius":C}};y||(j.maxzoom=h),i.addLayer(j),i.addLayer({id:"vector-fill",type:"fill",minzoom:w,source:"vector","source-layer":t,filter:Z,paint:{"fill-color":o,"fill-opacity":.6}}),i.addLayer({id:"vector-stroke",type:"line",minzoom:w,source:"vector","source-layer":t,filter:Z,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"},va={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Da={class:"text-[0.875rem]"},ja={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},za={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]"},Fa={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},$a={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"},Ua={class:"flex justify-start items-center gap-2"},Ia={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"},De="vector-clusters",je="selected-geometry-source",Ge="selected-geometry-fill",We="selected-geometry-line",$e="selected-geometry-point",be="vector-highlight-circle",Be="vector-highlight-fill",vt=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),d=e.ref(!1);let S=null,L=null;const h=["vector-circle","vector-fill","vector-stroke"],w=e.ref(!1);function B(){C.value=!C.value}const _=e.computed(()=>{var V,K;return((K=(V=p==null?void 0:p.appContext.config.globalProperties)==null?void 0:V.$settings)==null?void 0:K.basemaps)||[]}),s=e.computed(()=>(o.layers&&o.layers.length?o.layers:_.value.length?_.value:Ca).map((K,H)=>{var ie;const F=K.id||((ie=K.name)==null?void 0:ie.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${H}`,q=K.name||K.id||`layer-${H}`;return{...K,id:F,name:q}})),x=e.ref(""),$=e.computed(()=>s.value.find(V=>V.id===x.value)||s.value[0]);e.watch(s,V=>{var K;V.length&&(!x.value||!V.some(H=>H.id===x.value))&&(x.value=((K=V[0])==null?void 0:K.id)||"")},{immediate:!0});function Z(V){return V?V.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const g=e.ref(null),j=e.ref(null),u=e.computed(()=>o.showPopup!==!1),M=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"],N=["#0a7a34","#7c3aed","#d97706","#dc2626"],E=o.strokeAttr,z=e.ref([]),P=e.ref([]);let D=0;const r=[30,48];let c=null;const f=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],A=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]];let R=[];function X(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const V=new URLSearchParams(window.location.search),K=Number(V.get("z")),H=Number(V.get("y")),F=Number(V.get("x")),q=V.has("x")&&V.has("y"),ie=V.has("z");return{zoom:ie?K:null,center:q?[F,H]:null,hasQuery:q||ie}}function te(V,K){if(!V||typeof window>"u")return;const H=new URL(window.location.href);H.searchParams.set("z",K.toFixed(2)),H.searchParams.set("x",V[0].toFixed(6)),H.searchParams.set("y",V[1].toFixed(6)),window.history.replaceState({},"",H)}let T=!1;function U(){if(!l||!T)return;const V=l.getCenter();te([V.lng,V.lat],l.getZoom())}const O=()=>{T||(T=!0),U()};function W(){const V=o.geometryZoomBreakpoint;if(V==null)return null;const K=Number(V);return Number.isNaN(K)?null:K}function Q(){const V=W();return V??(typeof o.polygonZoom=="number"?o.polygonZoom:typeof o.clusterZoom=="number"?o.clusterZoom:12)}function ne(){return o.pointZoom??12}async function he(V=o.filter){const K=++D,H=new URLSearchParams;V&&H.set("filter",V);const F=H.toString();try{const q=new URL(`/api/data/${o.table}/${o.colorAttr}`,window.location.origin);F&&(q.search=F);const ie=await fetch(q.toString()).then(J=>J.json());if(K!==D)return;if(z.value=ie.rows||[],z.value.forEach((J,ee)=>{if(J.id==null||J.id===""){J.color="#808080";return}J.color||Object.assign(J,{color:M[ee%10]})}),P.value=[],E){const J=new URL(`/api/data/${o.table}/${E}`,window.location.origin);F&&(J.search=F);const ee=await fetch(J.toString()).then(re=>re.json());if(K!==D)return;P.value=ee.rows||[];let Y=0;P.value.forEach(re=>{re.color||!re.id||(Object.assign(re,{color:N[Y%N.length]}),Y+=1)})}}catch(q){if(K!==D)return;z.value=[],P.value=[],console.error("Failed to load legend data",q)}}function me(V){var K;return!V||typeof V!="object"?null:V.type==="FeatureCollection"?me((K=V.features)==null?void 0:K[0]):V.type==="Feature"?me(V.geometry):V.type&&V.coordinates?V:null}function Re(){var V;return me((V=o.selectedFeature)==null?void 0:V.geom)}function Ze(V){return V==null||V===""?["==",["literal",1],0]:["==",["to-string",["get","id"]],String(V)]}function Ee(){return o.highlightCircleColor??"#ffffff"}function Te(){var K,H;const V=Re();return V?{mode:"geometry",geometry:V}:((K=o.selectedFeature)==null?void 0:K.id)!=null&&((H=o.selectedFeature)==null?void 0:H.id)!==""?{mode:"id",geometry:null}:{mode:"none",geometry:null}}function Qe(){[Ge,We,$e,be,Be].forEach(V=>{l!=null&&l.getLayer(V)&&l.removeLayer(V)}),l!=null&&l.getSource(je)&&l.removeSource(je)}function Ne(V){return{id:V.id,type:V.type,source:V.source,...V.sourceLayer?{"source-layer":V.sourceLayer}:{},...V.filter?{filter:V.filter}:{},...V.minzoom!=null?{minzoom:V.minzoom}:{},...V.maxzoom!=null?{maxzoom:V.maxzoom}:{},paint:V.paint}}function fe(){const V=Ee(),K=o.highlightCircleRadius??o.circleRadius??st;return[Ne({id:Ge,type:"fill",source:je,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],paint:{"fill-color":V,"fill-opacity":.12,"fill-opacity-transition":{duration:800,delay:0}}}),Ne({id:We,type:"line",source:je,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon","LineString","MultiLineString"]]],paint:{"line-color":V,"line-width":4,"line-opacity":.95,"line-opacity-transition":{duration:800,delay:0}}}),Ne({id:$e,type:"circle",source:je,filter:["in",["geometry-type"],["literal",["Point","MultiPoint"]]],paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":V,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":K,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}})]}function Ye(){var q,ie;const V=Ee(),K=o.highlightCircleRadius??o.circleRadius??st,H=Q(),F=H!=null?H-.01:24;return[Ne({id:be,type:"circle",source:"vector",sourceLayer:o.table,filter:["all",Ze((q=o.selectedFeature)==null?void 0:q.id),f],maxzoom:o.mixedGeom?void 0:F,paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":V,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":K,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}}),Ne({id:Be,type:"line",source:"vector",sourceLayer:o.table,filter:["all",Ze((ie=o.selectedFeature)==null?void 0:ie.id),A],minzoom:H??24,paint:{"line-color":V,"line-width":4,"line-opacity":.9,"line-opacity-transition":{duration:800,delay:0}}})]}function ze(){var F,q;if(!l)return"none";const{mode:V,geometry:K}=Te(),H=V==="geometry"?fe():V==="id"?Ye():[];return Qe(),V==="geometry"&&l.addSource(je,{type:"geojson",data:{type:"FeatureCollection",features:[{type:"Feature",id:(F=o.selectedFeature)==null?void 0:F.id,properties:{id:(q=o.selectedFeature)==null?void 0:q.id},geometry:K}]}}),H.forEach(ie=>l.addLayer(ie)),V}function Pe(){!l||!R.length||(l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-color",R),l.getLayer("vector-fill")&&l.setPaintProperty("vector-fill","fill-color",R))}function Se(){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 Ae(V){if(Fe(),!l||V==="none")return;let K=!0;const H=o.highlightCircleRadius??o.circleRadius??st;c=window.setInterval(()=>{K=!K;const F=K?.95:.35,q=K?H:H*1.12;V==="geometry"&&(l!=null&&l.getLayer(Ge)&&l.setPaintProperty(Ge,"fill-opacity",K?.14:.04),l!=null&&l.getLayer(We)&&l.setPaintProperty(We,"line-opacity",F),l!=null&&l.getLayer($e)&&(l.setPaintProperty($e,"circle-stroke-opacity",F),l.setPaintProperty($e,"circle-radius",q))),V==="id"&&(l!=null&&l.getLayer(be)&&(l.setPaintProperty(be,"circle-stroke-opacity",F),l.setPaintProperty(be,"circle-radius",q)),l!=null&&l.getLayer(Be)&&l.setPaintProperty(Be,"line-opacity",F))},800)}function Fe(){c&&(clearInterval(c),c=null)}function Ke(){l&&(l.setCenter(o.center||r),l.setZoom(o.zoom||5))}function ge(){if(!(l!=null&&l.setLayerZoomRange))return;const V=o.minZoom??0,K=Math.min((o.maxZoom??18)+.01,24),F=(o.clusterZoom??12)-.01,q=Q(),ie=q-.01,J=w.value&&!o.mixedGeom?ie:K,ee=q;o.alwaysShowPolygon?(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",V,0),l.getLayer(be)&&l.setLayerZoomRange(be,V,0),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",V,K),l.getLayer(Be)&&l.setLayerZoomRange(Be,V,K),l.getLayer(De)&&l.setLayerZoomRange(De,V,0),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",V,0)):(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",V,J),l.getLayer(be)&&l.setLayerZoomRange(be,V,J),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",ee,K),l.getLayer("vector-stroke")&&l.setLayerZoomRange("vector-stroke",ee,K),l.getLayer(Be)&&l.setLayerZoomRange(Be,ee,K),l.getLayer(De)&&l.setLayerZoomRange(De,V,F),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",V,F))}function Xe(){if(l!=null&&l.getSource("vector")){try{const K=l.querySourceFeatures("vector",{sourceLayer:o.table}).some(H=>{var q;const F=(q=H.geometry)==null?void 0:q.type;return F==="Polygon"||F==="MultiPolygon"});w.value=K}catch{}ge()}}const _e=X();T=_e.hasQuery,e.onMounted(async()=>{await he(),m=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const V=$.value;if(!V)return;const K=_e.center||o.center||r,H=_e.zoom||o.zoom||5;l=new maplibregl.Map({container:n.value,style:{version:8,sources:{[V.id]:{type:"raster",tiles:[V.url],tileSize:256},...V.overlayUrl?{[`${V.id}-overlay`]:{type:"raster",tiles:[V.overlayUrl],tileSize:256}}:{}},layers:[{id:V.id,type:"raster",source:V.id,minzoom:0,maxzoom:19},...V.overlayUrl?[{id:`${V.id}-overlay`,type:"raster",source:`${V.id}-overlay`,minzoom:0,maxzoom:19}]:[]]},center:K,zoom:H,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),a("update:map",l);const F=o.mobilePeekControls?"bottom-right":"top-right";if(l.addControl(new maplibregl.NavigationControl,F),o.mobilePeekControls){const J={onAdd:()=>{const ee=document.createElement("div");return S=ee,L=e.createApp(ka,{onOpenLayers:()=>{b.value=!0},onOpenLegend:()=>{d.value=!0}}),L.mount(ee),ee},onRemove:()=>{L==null||L.unmount(),L=null,S=null}};l.addControl(J,"bottom-right"),l.once("render",()=>{if(!S)return;const ee=l.getContainer(),Y=ee.querySelector(".maplibregl-ctrl-bottom-right"),re=ee.querySelector(".maplibregl-ctrl-zoom-in"),pe=re==null?void 0:re.closest(".maplibregl-ctrl-group");!Y||!pe||S.parentElement===Y&&(Y.removeChild(S),Y.insertBefore(S,pe.nextSibling))})}l.on("moveend",O),l.on("zoomend",O),T&&U(),l.on("load",()=>{l==null||l.resize(),y.value=!0;const J=z.value.filter(ae=>ae.id!=null&&ae.id!=="").reduce((ae,k)=>[String(k.id),k.color].concat(ae),[]),ee=["match",["to-string",["get",o.colorAttr]],...J,"#808080"],Y=(P.value||[]).filter(ae=>ae.id!=null&&ae.id!=="").reduce((ae,k)=>[String(k.id),k.color].concat(ae),[]),re=E?["match",["to-string",["get",E]],...Y,"rgba(0,0,0,0)"]:"rgba(0,0,0,0)";R=ee;const pe=W();Ba(o.table,l,ee,re,o.filter,o.clusterZoom,ne(),{mixedGeom:o.mixedGeom,circleRadius:o.circleRadius,circleStrokeWidth:o.circleStrokeWidth,geometryZoomBreakpoint:pe??void 0,polygonZoom:pe==null?o.polygonZoom:void 0}),Ae(ze()),Pe(),Se(),ge(),l.on("sourcedata",ae=>{ae.sourceId==="vector"&&ae.isSourceLoaded&&Q()!=null&&Xe()})});const q=J=>{var Y,re;const ee=(Y=J.features)==null?void 0:Y[0];(re=ee==null?void 0:ee.properties)!=null&&re.id&&a("update:modelValue",ee.properties.id)};h.forEach(J=>{l.on("click",J,q)}),l.on("click",De,J=>{var ae,k,v,G,I,le;const ee=(ae=J.features)==null?void 0:ae[0];if(!ee)return;const{geometry:Y}=ee,re=(Y==null?void 0:Y.type)==="Point"?Y.coordinates:(Y==null?void 0:Y.type)==="MultiPolygon"?(G=(v=(k=Y==null?void 0:Y.coordinates)==null?void 0:k[0])==null?void 0:v[0])==null?void 0:G[0]:(le=(I=Y==null?void 0:Y.coordinates)==null?void 0:I[0])==null?void 0:le[0],pe=Math.min(l.getZoom()+2,l.getMaxZoom());l.easeTo({center:re||J.lngLat,zoom:pe})}),[...h,De].forEach(J=>{l.on("mouseenter",J,()=>{l.getCanvas().style.cursor="pointer"}),l.on("mouseleave",J,()=>{l.getCanvas().style.cursor=""})}),l.on("mousemove",J=>{var pe,ae;if(!u.value){(pe=m==null?void 0:m.remove)==null||pe.call(m);return}if(!m)return;const ee=h.filter(k=>l.getLayer(k));if(!ee.length){m.remove();return}const Y=l.queryRenderedFeatures(J.point,{layers:ee});if(!Y||!Y.length){m.remove();return}const re=Y[0];j.value=re.properties,m.setLngLat(J.lngLat).setHTML((ae=g.value)==null?void 0:ae.innerHTML).addTo(l)})}),e.watch(()=>o.center,V=>{l&&l.setCenter(V||r)}),e.watch(()=>o.zoom,V=>{l&&l.setZoom(V)}),e.watch(()=>o.minZoom,V=>{l&&(l.setMinZoom(V??3),ge())}),e.watch(()=>o.maxZoom,V=>{l&&(l.setMaxZoom(V??18),ge())});function Ce(V,K,H){if(!(l!=null&&l.getSource("vector")))return;const F=Lt(o.table,V??o.filter,K??o.clusterZoom??12,ne());l.getSource("vector").setTiles([F])}return e.watch(()=>o.filter,V=>{Ce(V),he(V)}),e.watch(()=>o.clusterZoom,V=>{Ce(void 0,V),ge()}),e.watch(()=>o.pointZoom,()=>{Ce()}),e.watch(()=>o.geometryZoomBreakpoint,()=>{Ce(),ge()}),e.watch(()=>o.alwaysShowPolygon,()=>{ge(),Ce()}),e.watch(()=>o.polygonZoom,()=>{Xe()}),e.watch(()=>o.mixedGeom,()=>{ge()}),e.watch(()=>[o.circleRadius,o.circleStrokeWidth,o.highlightCircleRadius,o.highlightCircleColor],()=>{Se()}),e.watch(()=>{var V,K;return[(V=o.selectedFeature)==null?void 0:V.id,(K=o.selectedFeature)==null?void 0:K.geom]},()=>{l&&Ae(ze())},{immediate:!0,deep:!0}),e.watch(x,(V,K)=>{if(!l||!V)return;const H=s.value.find(ie=>ie.id===V);if(!H)return;l.getLayer(K)&&l.removeLayer(K),l.getSource(K)&&l.removeSource(K);const F=`${K}-overlay`;l.getLayer(F)&&l.removeLayer(F),l.getSource(F)&&l.removeSource(F),l.addSource(V,{type:"raster",tiles:[H.url],tileSize:256}),H.overlayUrl&&l.addSource(`${V}-overlay`,{type:"raster",tiles:[H.overlayUrl],tileSize:256});const q=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},q),H.overlayUrl&&l.addLayer({id:`${V}-overlay`,type:"raster",source:`${V}-overlay`,minzoom:0,maxzoom:19},q)}),e.onBeforeUnmount(()=>{Fe(),l&&(l.off("moveend",O),l.off("zoomend",O),l.remove())}),(V,K)=>{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:Ke},[...K[3]||(K[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:K[0]||(K[0]=F=>o.isCollapsible?B():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,[...K[4]||(K[4]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",_a,[...K[5]||(K[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&&(z.value||[]).length?"pt-0":"pt-2"])},[(P.value||[]).some(F=>F==null?void 0:F.id)?(e.openBlock(),e.createElementBlock("div",Ma,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((P.value||[]).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",va,[e.createElementVNode("span",Da,e.toDisplayString(F.text),1),F.count!=null?(e.openBlock(),e.createElementBlock("span",ja,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value||[],F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:F.id},[e.createElementVNode("div",za,[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",Fa,e.toDisplayString(F.count),1)):e.createCommentVNode("",!0)])])]))),128))],2)],4)],64)):(e.openBlock(),e.createElementBlock("div",$a,[(P.value||[]).some(F=>F==null?void 0:F.id)?(e.openBlock(),e.createElementBlock("div",Ra,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((P.value||[]).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(z.value||[],F=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:F.id},[e.createElementVNode("div",Ua,[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",Ia,[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(V.$slots,"default",{hoverData:j.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:q=>x.value=F.id},[e.createElementVNode("img",{src:F.preview||Z(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(ve,{key:1,open:b.value,title:"Шари","initial-variant":"peek","peek-mode":"clip-full","allow-expand":!1,onClose:K[1]||(K[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:q=>x.value=F.id},[e.createElementVNode("img",{src:F.preview||Z(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(ve,{key:2,open:d.value,title:"Легенда","initial-variant":"peek","peek-mode":"clip-full","peek-height-px":200,onClose:K[2]||(K[2]=F=>d.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(z.value||[],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]])}}}),Dt={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=xe(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=xe(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=xe(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"},vi={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},Di={class:"flex flex-col min-h-0 gap-4"},ji={class:"flex flex-col min-h-0 flex-1"},zi={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"},Fi={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},$i={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"},Ui=["onClick"],Ii={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]"},jt="(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 ie,J,ee,Y,re,pe,ae;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=Dt);function a(k){var v,G,I;if(!(k!=null&&k.coordinates))return null;switch(k.type){case"Point":return k.coordinates;case"MultiPoint":case"LineString":return k.coordinates[0];case"MultiLineString":case"Polygon":return(v=k.coordinates[0])==null?void 0:v[0];case"MultiPolygon":return(I=(G=k.coordinates[0])==null?void 0:G[0])==null?void 0:I[0];default:return null}}function l(k){switch(k==null?void 0:k.type){case"Polygon":return k.coordinates[0];case"MultiPolygon":return k.coordinates.flatMap(v=>v[0]);case"LineString":return k.coordinates;case"MultiLineString":return k.coordinates.flat();default:return[]}}function m(k){if(!k||k.type==="Point"||k.type==="MultiPoint")return null;const v=l(k);if(!v.length)return null;let G=1/0,I=1/0,le=-1/0,oe=-1/0;return v.forEach(([ce,Me])=>{ce<G&&(G=ce),Me<I&&(I=Me),ce>le&&(le=ce),Me>oe&&(oe=Me)}),[[G,I],[le,oe]]}function p(k){return(k==null?void 0:k.type)==="Polygon"||(k==null?void 0:k.type)==="MultiPolygon"}const n=t,y=e.useSlots(),C=e.computed(()=>n.mobileFilterView??"vertical"),b=e.computed(()=>n.mobileFilterLimit!==void 0?{limit:n.mobileFilterLimit}:{}),d=e.useModel(t,"filterState"),S=i;function L(){const k=Object.fromEntries(Object.entries(E.value).map(([v,G])=>[v,Array.isArray(G)?[...G]:G]));d.value={state:k}}const h=e.ref(0);h.value=n.initTotal??((ie=n.rows)==null?void 0:ie.length)??0;const w=e.ref(""),B=e.ref(null),_=e.ref(!0),s=e.ref(((J=n.rows)==null?void 0:J.length)===1),x=e.ref(!1);let $=null;const Z=e.ref(!1);typeof window<"u"&&($=window.matchMedia(jt),Z.value=$.matches,x.value=!0);const g=e.ref(n.rows),j=e.ref(1),u=e.ref(20),M=e.ref(n.filters||[]),N=e.ref(""),E=e.ref({}),z=e.computed(()=>Object.values(E.value).some(k=>Array.isArray(k)?k.some(v=>v!=null&&v!==""):k&&typeof k=="object"?Object.values(k).some(v=>v!=null&&v!==""):k===null?!0:k!==void 0&&k!==""));function P(k){return k&&(k.geom?k:{...k,geom:(k==null?void 0:k[n.geom])??null})}const D=e.ref(((ee=n.rows)==null?void 0:ee.length)===1?P(n.rows[0]):{}),r=e.ref(((Y=n.rows)==null?void 0:Y.length)===1?n.rows[0].id:""),c=e.ref(((re=n.rows)==null?void 0:re.length)===1?a((pe=n.rows[0])==null?void 0:pe[n.geom]):n.center||null),f=e.ref(((ae=n.rows)==null?void 0:ae.length)===1?14:n.zoom||5),A=e.ref(!1),R=e.ref(!1),X=e.ref(""),te=e.ref(!1);let T=!1;const U=e.ref(null),O=e.ref(!1);function W(){if(!$)return;const k=Z.value;Z.value=$.matches,k!==Z.value&&(U.value=null,e.nextTick(()=>{var v,G;(G=(v=B.value)==null?void 0:v.resize)==null||G.call(v)}))}const Q=e.ref(null),ne=e.ref(null),he=e.computed(()=>{if(n.alwaysShowPolygon)return 0;if(ne.value!=null)return ne.value;if(n.geometryZoomBreakpoint!=null){const k=Number(n.geometryZoomBreakpoint);if(!Number.isNaN(k))return k}return 12}),me=k=>(k==null?void 0:k.geom)??(k==null?void 0:k[n.geom])??null,Re=e.computed(()=>s.value&&!me(D.value)),Ze=e.computed(()=>s.value&&!te.value?D.value:null),Ee=e.computed({get:()=>Re.value?"":r.value,set:k=>{r.value=k,Z.value&&(k?(O.value=!0,U.value="details"):U.value==="details"&&(U.value=null))}});function Te(){var ce,Me;if(n.alwaysShowPolygon){Q.value=null,ne.value=null;return}const k=me(D.value);if(!n.polygonFitBbox||!B.value||!k){Q.value=null,ne.value=null;return}const v=k;if(!p(v)){Q.value=null,ne.value=null;return}const G=m(v);if(!G){Q.value=null,ne.value=null;return}const I=(Me=(ce=B.value).cameraForBounds)==null?void 0:Me.call(ce,G,{padding:20,maxZoom:16}),le=I==null?void 0:I.zoom,oe=n.clusterZoom??12;if(le!=null&&le<oe){const zt=Math.floor(le);Q.value=zt,ne.value=zt}else Q.value=null,ne.value=null}function Qe(k){return Object.entries(k).filter(([,v])=>Array.isArray(v)?v.length:v).map(([v,G])=>`${v}=${G}`).join("|")}function Ne(){var I,le,oe,ce;if(!B.value||!R.value)return;const k=(le=(I=B.value).getBounds)==null?void 0:le.call(I);if(!k)return;const v=(oe=k.getSouthWest)==null?void 0:oe.call(k),G=(ce=k.getNorthEast)==null?void 0:ce.call(k);!v||!G||(X.value=`${v.lng} ${v.lat},${G.lng} ${G.lat}`)}async function fe(k=!1){await e.nextTick();const v=Qe(E.value);N.value=v,R.value?Ne():X.value="";try{const G={search:w.value,limit:u.value.toString(),page:j.value.toString(),filter:v,...R.value&&X.value?{bbox:X.value}:{}},I=new URL(`/api/data/${n.table}`,window.location.origin),le=new URLSearchParams(G).toString(),oe=await fetch(`${I.toString()}?${le}`).then(ce=>ce.json());Q.value=null,ne.value=null,s.value=!1,A.value||(f.value=n.zoom||5),g.value=oe==null?void 0:oe.rows,A.value=!1,te.value=!1,h.value=oe.filtered,Nt({page:j.value,filter:v,id:"",filterByView:R.value})}catch(G){console.error(G.message)}}async function Ye(k=!1){if(r.value){await e.nextTick();try{const v=new URL(`/api/data/${n.table}/${r.value}`,window.location.origin),G=await fetch(v.toString()).then(oe=>oe.json());let I;G.rows.length>1?I=G.rows.find(oe=>oe.id===r.value):[I]=G.rows,D.value=P(I);const le=me(D.value);if(!k&&le){const oe=n.polygonFitBbox?m(le):null;oe&&B.value?B.value.fitBounds(oe,{padding:20,maxZoom:16,duration:500}):(c.value=a(le),f.value=14)}else!k&&le&&(c.value=a(le),f.value=14);Te(),s.value=!0,A.value=!1,h.value=G.filtered,Nt({page:j.value,filter:Qe(E.value),id:r.value,filterByView:R.value})}catch(v){console.error(v.message)}}}const ze=St(()=>fe(),300),Pe=St(()=>{r.value||fe(!0)},400);function Se(){!B.value||T||!R.value||r.value||(B.value.on("moveend",Pe),B.value.on("zoomend",Pe),T=!0)}function Ae(){!B.value||!T||(B.value.off("moveend",Pe),B.value.off("zoomend",Pe),T=!1)}function Fe(k){u.value=k,j.value=1,fe()}function Ke(k){j.value=k,fe()}function ge(k){E.value=k.data,j.value=1,L(),r.value?(te.value=!0,r.value=""):(te.value=!1,fe()),S("change:filter",k)}async function Xe(){if(n.filters)return;const v=await(await fetch(`/api/filter/${n.table}`)).json();M.value=v.list}function _e(){E.value={},w.value="",te.value=!1,L(),fe()}e.onMounted(async()=>{var G,I;$||($=window.matchMedia(jt)),x.value||(Z.value=$.matches,x.value=!0),$.addEventListener("change",W),Z.value&&(_.value=!1);const k=new URLSearchParams(window.location.search);j.value=Number(k.get("page"))||1,u.value=Number(k.get("limit"))||u.value,r.value=k.get("id")||"",s.value=!!r.value,N.value=k.get("filter")||"";const v=k.get("bbox");v!==null?R.value=v!=="0":R.value=!1,(I=(G=k.get("filter"))==null?void 0:G.split("|"))==null||I.forEach(le=>{const[oe,ce]=le.split("=");oe&&(E.value[oe]=ce!=null&&ce.includes(",")?ce.split(","):[ce])}),await Xe(),L(),r.value?Ye():g.value||fe()}),e.onBeforeUnmount(()=>{$==null||$.removeEventListener("change",W),Ae()});function Ce(){A.value=!0,s.value=!1,D.value=null,r.value="",te.value=!1,Q.value=null,ne.value=null,R.value&&Se()}function V(k){U.value=k}function K(){U.value=null}async function H(){var k,v;await e.nextTick(),(v=(k=B.value)==null?void 0:k.resize)==null||v.call(k)}function F(){Ce(),K()}function q(k){O.value=!0;const v=me(P(k));if(v){const G=n.polygonFitBbox?m(v):null;G&&B.value?B.value.fitBounds(G,{padding:20,maxZoom:16,duration:500}):(c.value=a(v),f.value=16)}else k!=null&&k[n.geom]&&(c.value=a(k[n.geom]),f.value=16);D.value=P(k),r.value=k.id,Te(),Z.value&&(U.value="details")}return e.watch(U,async()=>{var k,v;await e.nextTick(),(v=(k=B.value)==null?void 0:k.resize)==null||v.call(k)}),e.watch(B,k=>{S("update:map",k),k&&R.value&&Se(),k&&n.polygonFitBbox&&me(D.value)&&Te()}),e.watch(w,k=>{k||fe()}),e.watch(r,()=>{r.value?(Ae(),Ye()):(fe(),R.value&&Se())}),e.watch(R,()=>{R.value?Se():Ae(),fe()}),(k,v)=>{var G;return x.value?(e.openBlock(),e.createElementBlock("section",{key:0,class:e.normalizeClass(Z.value?"":"pt-[20px]")},[Z.value?(e.openBlock(),e.createElementBlock("div",Li,[e.createVNode(vt,{table:n.table,selectedFeature:Ze.value,map:B.value,"onUpdate:map":v[0]||(v[0]=I=>B.value=I),zoom:f.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:N.value,center:c.value,clusterZoom:n.alwaysShowPolygon?0:Q.value??n.clusterZoom,pointZoom:he.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:Ee.value,"onUpdate:modelValue":v[1]||(v[1]=I=>Ee.value=I),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!1,"mobile-peek-controls":!0},{default:e.withCtx(({hoverData:I})=>[e.renderSlot(k.$slots,"popup",{data:I})]),_: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",vi,[...v[19]||(v[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":U.value,"filters-disabled":!M.value.length,"has-active-filters":z.value,onOpenSearch:v[2]||(v[2]=I=>V("search")),onOpenFilters:v[3]||(v[3]=I=>V("filters")),onOpenTable:v[4]||(v[4]=I=>V("table"))},null,8,["active-modal","filters-disabled","has-active-filters"]),e.createVNode(ve,{open:U.value==="search",title:"Пошук","top-offset":qe,"initial-variant":"full","peek-mode":"clip-full",onClose:K,onExpand:H,onCollapse:H},{default:e.withCtx(()=>[e.createElementVNode("div",Di,[e.createVNode(e.unref(se),{type:"text",modelValue:w.value,"onUpdate:modelValue":v[5]||(v[5]=I=>w.value=I),name:"search",label:"Пошук",onChange:e.unref(ze)},null,8,["modelValue","onChange"]),e.createElementVNode("div",ji,[e.unref(y)["mobile-search-results"]?e.renderSlot(k.$slots,"mobile-search-results",{key:0,rows:g.value,selectRow:q,closeModal:K}):(e.openBlock(),e.createElementBlock("div",zi,[h.value>=1?e.renderSlot(k.$slots,"table",{key:0,rows:g.value,selectRow:q,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",Pi,[e.createVNode(it),v[20]||(v[20]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),v[21]||(v[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:_e}," Очистити дані пошуку ")]))])),h.value>=1?(e.openBlock(),e.createElementBlock("div",Ai,[e.createVNode(at,{total:h.value,currentPage:j.value??1,pageSize:u.value,onPageChange:v[6]||(v[6]=I=>Ke(I)),onPageSizeChange:v[7]||(v[7]=I=>Fe(I))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)])])]),_:3},8,["open"]),e.createVNode(ve,{open:U.value==="filters",title:"Фільтри","top-offset":qe,"initial-variant":"full","peek-mode":"clip-full",onClose:K,onExpand:H,onCollapse:H},{default:e.withCtx(()=>[e.createElementVNode("div",Fi,[e.withDirectives(e.createElementVNode("div",$i,null,512),[[e.vShow,U.value==="filters"]]),e.createElementVNode("div",Ri,[M.value.length?(e.openBlock(),e.createBlock(e.unref(He),e.mergeProps({key:0,schema:M.value,view:C.value},b.value,{value:E.value,teleportActive:"#active-filters",onChange:ge}),null,16,["schema","view","value"])):(e.openBlock(),e.createElementBlock("p",Zi,"Фільтри недоступні для цього переліку."))])])]),_:1},8,["open"]),e.createVNode(ve,{open:U.value==="table",title:"Таблиця","top-offset":qe,"initial-variant":"full","peek-mode":"clip-full",onClose:K,onExpand:H,onCollapse:H},{default:e.withCtx(()=>[e.createElementVNode("div",Ti,[h.value>=1?e.renderSlot(k.$slots,"table",{key:0,rows:g.value,selectRow:q,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",Ki,[e.createVNode(it),v[22]||(v[22]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),v[23]||(v[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:_e}," Очистити дані пошуку ")]))]),h.value>=1?(e.openBlock(),e.createElementBlock("div",Oi,[e.createVNode(at,{total:h.value,currentPage:j.value??1,pageSize:u.value,onPageChange:v[8]||(v[8]=I=>Ke(I)),onPageSizeChange:v[9]||(v[9]=I=>Fe(I))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)]),_:3},8,["open"]),e.createVNode(ve,{open:U.value==="details",title:"Об'єкт","top-offset":qe,"initial-variant":O.value?"peek":"full","peek-mode":"custom",onClose:F,onExpand:H,onCollapse:H},{peek:e.withCtx(({expand:I})=>[e.unref(y)["mobile-details-peek"]?e.renderSlot(k.$slots,"mobile-details-peek",{key:0,selectedRow:D.value,expand:I,close:F}):(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:I}," Деталі об'єкта ",8,Ui))]),default:e.withCtx(()=>[e.renderSlot(k.$slots,"details",{table:n.table,selectedRow:D.value,closeObjCard:F})]),_:3},8,["open","initial-variant"]),e.renderSlot(k.$slots,"default",{table:n.table,map:B.value,selectedRow:D.value})])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(k.$slots,"header",{title:n.title,total:h.value}),e.createElementVNode("div",Ii,[e.createVNode(e.unref(se),{type:"text",modelValue:w.value,"onUpdate:modelValue":v[10]||(v[10]=I=>w.value=I),name:"search",label:"Пошук",onChange:e.unref(ze)},null,8,["modelValue","onChange"]),M.value.length?(e.openBlock(),e.createBlock(e.unref(He),{key:0,schema:M.value,view:"inline",onChange:ge,limit:5,value:E.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:v[11]||(v[11]=I=>_.value=!_.value)},[_.value?(e.openBlock(),e.createBlock(Xr,{key:0})):(e.openBlock(),e.createBlock(la,{key:1})),v[24]||(v[24]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,Gi),e.createElementVNode("div",Wi,[e.createElementVNode("button",{onClick:v[12]||(v[12]=I=>_.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:v[13]||(v[13]=I=>_.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":""])},[(G=k.$slots)!=null&&G.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),v[25]||(v[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":v[14]||(v[14]=I=>R.value=I)},null,512),[[e.vModelCheckbox,R.value]]),v[26]||(v[26]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",es,[h.value>=1?e.renderSlot(k.$slots,"table",{key:0,rows:g.value,selectRow:q}):(e.openBlock(),e.createElementBlock("div",ts,[e.createVNode(it),v[27]||(v[27]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),v[28]||(v[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:_e}," Очистити дані пошуку ")]))]),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:j.value??1,pageSize:u.value,onPageChange:v[15]||(v[15]=I=>Ke(I)),onPageSizeChange:v[16]||(v[16]=I=>Fe(I))},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(k.$slots,"details",{table:n.table,selectedRow:D.value,closeObjCard:Ce})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",rs,[e.createVNode(vt,{table:n.table,selectedFeature:Ze.value,map:B.value,"onUpdate:map":v[17]||(v[17]=I=>B.value=I),zoom:f.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:N.value,center:c.value,clusterZoom:n.alwaysShowPolygon?0:Q.value??n.clusterZoom,pointZoom:he.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:Ee.value,"onUpdate:modelValue":v[18]||(v[18]=I=>Ee.value=I),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!0},{default:e.withCtx(({hoverData:I})=>[e.renderSlot(k.$slots,"popup",{data:I})]),_: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(k.$slots,"default",{table:n.table,map:B.value,selectedRow:D.value}),Re.value?(e.openBlock(),e.createElementBlock("div",as,[...v[29]||(v[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",Dt)},ct});
1
+ (function(e,ke){typeof exports=="object"&&typeof module<"u"?module.exports=ke(require("vue")):typeof define=="function"&&define.amd?define(["vue"],ke):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=ke(e.Vue))})(this,function(e){"use strict";const ke=(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 Ft(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 $t=ke(Pt,[["render",Ft]]),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=ke(Rt,[["render",Tt]]),Ot={},Ut={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,i){return e.openBlock(),e.createElementBlock("svg",Ut,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=ke(Ot,[["render",It]]),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=ke(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:$t,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 Ze={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"},Se=t=>{var x;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 ${Ze[l]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(m)),m.className.includes(Ze[l])||(Object.values(Ze).forEach(V=>{m.classList.remove(...V.split(" "))}),m.classList.add(...Ze[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),(x=p.querySelector("button"))==null||x.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 fe=(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=fe(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 we=fe(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"},Xe=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"),x=e.computed(()=>a.layout==="vertical"?"text-[13px]":"text-sm");return i({el:p}),(V,w)=>(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",x.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},x.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(we)])):e.createCommentVNode("",!0)],2)])],2)],512))}});function Je(t,i){const{api:o,options:a=[],limit:l=20,dataKey:m="data",data:p}=t,n=m??p??"data";function x(N){return Array.isArray(N)?N[0]:N}const V=e.ref(x(t.modelValue)),w=e.ref(""),d=e.ref(!1),S=e.ref([]),v=e.ref("id"),b=e.ref("text"),B=e.ref(!1),C=e.ref(t.layout!=="popover"&&a.length>l);function M(N){const E=N.find(Boolean)??{},P=["id","value","code","key"].find(D=>D in E)??"id",A=["text","label","name","title"].find(D=>D in E)??"text";return{autoValueKey:P,autoLabelKey:A}}function s(N){if(N.length>0){const P=M(N);v.value=P.autoValueKey,b.value=P.autoLabelKey}const E=[...N].sort((P,A)=>t.sort==="count"?A.count&&P.count?A.count-P.count:0:t.sort==="name"?String(P[b.value]??"").localeCompare(String(A[b.value]??"")):0);S.value=E}a.length>0&&s(a);const k=e.computed(()=>{const N=S.value;return t.layout==="popover"||B.value?N:N.slice(0,l)});async function R(){if(o){d.value=!0;try{const N=new URL(o,window.location.origin);N.searchParams.set("json","1"),N.searchParams.set("limit",l.toString());const E=await fetch(N.toString());if(!E.ok){Se({type:"error",title:"Error",message:"Failed to fetch remote options"}),S.value=[];return}const P=await E.json();if(!P[n]){Se({type:"error",title:"Error",message:P}),S.value=[];return}s(P[n])}catch(N){console.error("Failed to fetch remote options:",N)}finally{d.value=!1}}}function T(){o&&S.value.length===0&&R()}e.watch(()=>t.modelValue,N=>{V.value=x(N)},{immediate:!0}),o||s(a);function y(N){return V.value===N[v.value]}function j(N){V.value=N[v.value],i("update:modelValue",V.value),i("change",{name:t.name,value:V.value})}function u(){V.value=void 0,i("update:modelValue",V.value),i("clear",t.name)}function L(){B.value=!B.value}return{innerValue:V,searchTerm:w,filteredOptions:k,isSelected:y,selectItem:j,clear:u,toggleShowAll:L,isReqProc:d,showAll:B,isEnableShowAll:C,labelKey:b,valueKey:v,allOptions:S,loadData:T}}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 Ve(){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 pe(){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 et=fe(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 Te=fe(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 tt=fe(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"},vl={key:1,class:"py-2 px-2"},Dl=["disabled"],jl=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=Ve(),p=pe(),n=o,{innerValue:x,filteredOptions:V,isSelected:w,selectItem:d,clear:S,toggleShowAll:v,isReqProc:b,showAll:B,isEnableShowAll:C,labelKey:M,valueKey:s,allOptions:k,loadData:R}=Je({...a,modelValue:a.modelValue??a.default??""},n);return e.onMounted(()=>{a.api&&R()}),i({clear:S,inputTextRef:l}),e.watch(()=>a.modelValue,T=>{T===void 0&&(x.value=void 0)}),(T,y)=>(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(V),j=>(e.openBlock(),e.createBlock(Xe,{layout:t.layout,key:j[e.unref(s)],count:j.count,label:j[e.unref(M)],color:j.color,type:"radio",value:j[e.unref(s)],"is-selected":e.unref(w)(j),onItemClick:u=>e.unref(d)(j)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),t.type==="select"&&e.unref(V).length===0&&!e.unref(b)?(e.openBlock(),e.createElementBlock("div",_l,[e.createElementVNode("div",Ml,[e.createVNode(et),y[4]||(y[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(C)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:y[0]||(y[0]=(...j)=>e.unref(v)&&e.unref(v)(...j)),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"},[y[5]||(y[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(Te)])):e.createCommentVNode("",!0),e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:y[1]||(y[1]=(...j)=>e.unref(v)&&e.unref(v)(...j)),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"},[y[6]||(y[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(tt)])):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(x)||e.unref(x)===null?1:0)+" з "+e.toDisplayString(e.unref(k).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[2]||(y[2]=(...j)=>e.unref(S)&&e.unref(S)(...j))}," Очистити ",512),[[e.vShow,e.unref(x)!==""&&e.unref(x)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",vl,[e.createElementVNode("button",{type:"button",disabled:!(e.unref(x)!==""&&e.unref(x)!==void 0),class:e.normalizeClass(e.unref(m)+" hover:bg-gray-100"),onClick:y[3]||(y[3]=(...j)=>e.unref(S)&&e.unref(S)(...j))},e.toDisplayString(e.unref(p)("filter.clear")),11,Dl)])):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 x(E){return Array.isArray(E)?E:typeof E=="string"&&E.includes(",")?E.split(",").map(P=>P.trim()).filter(Boolean):E?[E]:[]}const V=e.ref(x(t.modelValue)),w=e.ref(""),d=e.ref(!1),S=e.ref([]),v=e.ref("id"),b=e.ref("text"),B=e.ref(!1),C=e.ref(t.layout!=="popover"&&a.length>l);function M(E){const P=E.find(Boolean)??{},A=["id","value","code","key"].find(r=>r in P)??"id",D=["text","label","name","title"].find(r=>r in P)??"text";return{autoValueKey:A,autoLabelKey:D}}function s(E){if(E.length>0){const A=M(E);v.value=A.autoValueKey,b.value=A.autoLabelKey}const P=[...E].sort((A,D)=>t.sort==="count"?D.count&&A.count?D.count-A.count:0:t.sort==="name"?String(A[b.value]).localeCompare(String(D[b.value])):0);S.value=P}a.length>0&&s(a);function k(E){if(!Array.isArray(V.value)||V.value.length===0)return E;const P=new Set(V.value),A=E.filter(c=>P.has(c[v.value])),D=new Set(A.map(c=>c[v.value])),r=E.filter(c=>!D.has(c[v.value]));return[...A,...r]}const R=e.computed(()=>{const E=S.value;if(t.layout==="popover")return k(E);const P=B.value?E:E.slice(0,l);return k(P)});async function T(){if(o){d.value=!0;try{const E=new URL(o,window.location.origin);E.searchParams.set("json","1"),E.searchParams.set("limit",l.toString());const P=await fetch(E.toString());if(!P.ok){Se({type:"error",title:"Error",message:"Failed to fetch remote options"}),S.value=[];return}const A=await P.json();if(!A[n]){Se({type:"error",title:"Error",message:A}),S.value=[];return}s(A[n])}catch(E){console.error("Failed to fetch remote options:",E)}finally{d.value=!1}}}function y(){o&&S.value.length===0&&T()}e.watch(()=>t.modelValue,E=>{V.value=x(E)},{immediate:!0}),o||s(a);function j(E){return V.value&&V.value.includes(E[v.value])}function u(E){const P=V.value.includes(E[v.value]);V.value=P?V.value.filter(A=>A!==E[v.value]):[...V.value,E[v.value]],i("update:modelValue",V.value),i("change",{name:t.name,value:V.value})}function L(){V.value=[],i("update:modelValue",V.value),i("clear",t.name)}function N(){B.value=!B.value}return{innerValue:V,searchTerm:w,filteredOptions:R,isSelected:j,selectItem:u,clear:L,toggleShowAll:N,isReqProc:d,showAll:B,isEnableShowAll:C,labelKey:b,valueKey:v,allOptions:S,loadData:y}}const zl={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"},Fl={class:"font-medium text-gray-800 dark:text-neutral-200"},$l={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=pe(),l=Ve(),m=t,p=o,{innerValue:n,filteredOptions:x,isSelected:V,selectItem:w,clear:d,toggleShowAll:S,isReqProc:v,showAll:b,isEnableShowAll:B,labelKey:C,valueKey:M,allOptions:s,loadData:k}=yt({...m,modelValue:m.modelValue},p);return e.onMounted(()=>{m.api&&k()}),e.watch(()=>m.modelValue,R=>{R===void 0&&(n.value=[])}),i({clear:d}),(R,T)=>(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(x),y=>(e.openBlock(),e.createBlock(Xe,{layout:t.layout,count:y.count,label:y[e.unref(C)],color:y.color,type:"checkbox",value:y[e.unref(M)],"is-selected":e.unref(V)(y),onItemClick:j=>e.unref(w)(y)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),t.type==="select"&&e.unref(x).length===0&&!e.unref(v)?(e.openBlock(),e.createElementBlock("div",zl,[e.createElementVNode("div",Pl,[e.createVNode(et),e.createElementVNode("div",Al,[e.createElementVNode("p",Fl,e.toDisplayString(e.unref(a)("filter.notfound")),1),T[4]||(T[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(b)&&e.unref(B)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:T[0]||(T[0]=(...y)=>e.unref(S)&&e.unref(S)(...y)),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(Te)])):e.createCommentVNode("",!0),e.unref(b)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:T[1]||(T[1]=(...y)=>e.unref(S)&&e.unref(S)(...y)),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(tt)])):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",$l,[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:T[2]||(T[2]=(...y)=>e.unref(d)&&e.unref(d)(...y))},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:T[3]||(T[3]=(...y)=>e.unref(d)&&e.unref(d)(...y))},[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 Ul(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=fe(Kl,[["render",Ul]]),Il={},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 lt=fe(Il,[["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 V;const o=t,a=e.ref((o.placeholder||o.label||o.title||o.name||"search").toString()),l=i,m=e.ref(((V=o.modelValue)==null?void 0:V.toString())??"");e.watch(()=>o.modelValue,w=>{w!==m.value&&(m.value=(w==null?void 0:w.toString())??"")});let p=null;function n(){if(m.value=m.value.trimStart(),m.value.length===0){x();return}p&&clearTimeout(p),p=setTimeout(()=>{l("update:modelValue",m.value),l("change",{name:o.name,value:m.value})},750)}function x(){m.value="",l("update:modelValue",""),l("clear",o.name)}return(w,d)=>(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:x,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(lt)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":d[0]||(d[0]=S=>m.value=S),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=Ve(),m=pe(),p=t,n=e.ref(mt(p.modelValue??p.default??[])),x=o,V=e.ref(null),w=e.computed({get:()=>n.value,set:r=>{n.value=r,x("update:modelValue",r)}}),d=e.computed(()=>(p.options??[]).filter(r=>{const c=r;return c.min!==void 0||c.max!==void 0}).map((r,c)=>{const f=r;return{key:String(f.id??c),min:f.min??null,max:f.max??null,label:f.label??f.text??`${f.min??""} - ${f.max??""}`}})),S=e.computed(()=>{var F;const r=w.value;if(!Array.isArray(r)||r.length===0)return null;const c=r[0]??null,f=r[1]??null;return((F=d.value.find(Z=>String(Z.min??"")===String(c??"")&&String(Z.max??"")===String(f??"")))==null?void 0:F.key)??null}),v=e.computed(()=>{const r=Number(p.min);if(!Number.isNaN(r))return r;const c=d.value.map(f=>Number(f.min)).filter(f=>!Number.isNaN(f));return c.length?Math.min(...c):0}),b=e.computed(()=>{const r=Number(p.max);if(!Number.isNaN(r))return r;const c=d.value.map(Z=>Number(Z.max)).filter(Z=>!Number.isNaN(Z));if(c.length)return Math.max(...c);const f=k(w.value),F=Number(f[1]);return Number.isNaN(F)?100:F}),B=e.computed(()=>{const r=k(w.value),c=Number(r[0]);return Number.isNaN(c)?v.value:Math.max(v.value,Math.min(c,C.value))}),C=e.computed(()=>{const r=k(w.value),c=Number(r[1]);return Number.isNaN(c)?b.value:Math.min(b.value,Math.max(c,v.value))}),M=e.computed(()=>{const r=b.value-v.value;return r<=0?0:(B.value-v.value)/r*100}),s=e.computed(()=>{const r=b.value-v.value;return r<=0?100:(C.value-B.value)/r*100});function k(r){return Array.isArray(r)?r:[]}function R(r,c){const f=[r,c];n.value=f,w.value=f}let T=null;function y(r){const c=V.value;if(!c)return v.value;const f=c.getBoundingClientRect(),F=(Math.min(Math.max(r,f.left),f.right)-f.left)/f.width,Z=v.value+F*(b.value-v.value);return Math.round(Z)}function j(r){const c=y(r);if(T==="min"){R(Math.min(c,C.value),C.value);return}T==="max"&&R(B.value,Math.max(c,B.value))}function u(r){T&&j(r.clientX)}function L(){T=null,window.removeEventListener("mousemove",u),window.removeEventListener("mouseup",L)}function N(r,c){T=r,j(c.clientX),window.addEventListener("mousemove",u),window.addEventListener("mouseup",L)}function E(r){const c=y(r.clientX),f=Math.abs(c-B.value),F=Math.abs(c-C.value);f<=F?R(Math.min(c,C.value),C.value):R(B.value,Math.max(c,B.value))}function P(){x("change",{name:p.name,value:w.value})}function A(r){if(!r){n.value=[],w.value=n.value,x("change",{name:p.name,value:[]});return}const c=[r.min??null,r.max??null];n.value=c,w.value=c,x("change",{name:p.name,value:c})}function D(){n.value=[],w.value=n.value,x("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:D,currentValue:w}),e.onBeforeUnmount(()=>{L()}),(r,c)=>{var f,F;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[t.layout==="vertical"&&d.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":S.value===null}])},[S.value===null?(e.openBlock(),e.createElementBlock("span",Jl)):e.createCommentVNode("",!0)],2),c[5]||(c[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:S.value===null,onChange:c[0]||(c[0]=Z=>A(null))},null,40,eo)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.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":S.value===Z.key}])},[S.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:S.value===Z.key,onChange:Y=>A(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":c[1]||(c[1]=Z=>w.value[0]=Z),disabled:t.disabled},null,10,ro),[[e.vModelText,w.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:((F=t.placeholder)==null?void 0:F[1])??e.unref(m)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":c[2]||(c[2]=Z=>w.value[1]=Z),disabled:t.disabled},null,10,so),[[e.vModelText,w.value[1]]]),["popover","inline","vertical"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:3,onClick:P,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:!(w.value[0]||w.value[1]),onClick:D,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:V,class:"relative h-1 w-full cursor-pointer rounded-[99px] bg-slate-200",onClick:E},[e.createElementVNode("div",{class:"pointer-events-none absolute top-0 h-full rounded-[99px] bg-blue-600",style:e.normalizeStyle({left:`${M.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":B.value,"aria-valuemin":v.value,"aria-valuemax":C.value-1,tabindex:"0",style:e.normalizeStyle({left:`${M.value}%`}),onMousedown:c[3]||(c[3]=e.withModifiers(Z=>N("min",Z),["prevent"]))},[e.createElementVNode("div",fo,e.toDisplayString(B.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":C.value,"aria-valuemin":B.value+1,"aria-valuemax":b.value,tabindex:"0",style:e.normalizeStyle({left:`${M.value+s.value}%`}),onMousedown:c[4]||(c[4]=e.withModifiers(Z=>N("max",Z),["prevent"]))},[e.createElementVNode("div",yo,e.toDisplayString(C.value),1)],44,go)]),e.createElementVNode("div",ho,[e.createElementVNode("span",null,e.toDisplayString(B.value),1),e.createElementVNode("span",null,e.toDisplayString(C.value),1)])])):e.createCommentVNode("",!0)]),(t.cleanable&&n.value.length,e.createCommentVNode("",!0))],64)}}});class ce{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 V=new Date(i),w=new Date(o);return V.setDate(V.getDate()+a*7),w.setDate(w.getDate()+a*7),[this.format(V),this.format(w)]}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 x=new Date(n);return x.setDate(n.getDate()+6),[this.format(n),this.format(x)]}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,x=m.getFullYear()+Math.floor(p/4),V=new Date(x,n,1),w=new Date(x,n+3,0);return[this.format(V),this.format(w)]}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 k=s.map(R=>{var T;return((T=R==null?void 0:R.toString)==null?void 0:T.call(R))??""}).slice(0,2);return[k[0]??"",k[1]??""]}if(typeof s=="string"){const k=s.split(",").slice(0,2).map(R=>R.trim());return[k[0]??"",k[1]??""]}return["",""]}const{popoverRef:a}=t,l=pe(),m=e.ref(""),p=e.ref(o(t.modelValue??t.default??[])),n=e.ref(0);function x(){const s=ce.getRangeFromDaysBefore(n.value);return p.value=[...s],s}function V(s){var R;m.value=s,(R=a.value)==null||R.close();const k=[];switch(m.value){case"today":k.push(ce.getShiftedDay()),k.push(ce.getShiftedDay());break;case"week":k.push(...ce.getLastWeekRange());break;case"month":k.push(...ce.getMonthRange());break;case"quarter":k.push(...ce.getQuarterRange());break;case"year":k.push(...ce.getYearRange());break;case"last_7_days":n.value=7,x();break;case"range":n.value=7,k.push(...x());break}p.value=[...k]}function w(){const s=[];switch(m.value){case"today":s.push(ce.getShiftedDay(p.value[0],1));break;case"week":s.push(...ce.getLastWeekRange(p.value[0],p.value[1],1));break;case"month":s.push(...ce.getMonthRange(p.value[0],p.value[1],1));break;case"quarter":s.push(...ce.getQuarterRange(p.value[0],p.value[1],1));break;case"year":s.push(...ce.getYearRange(p.value[0],1));break}p.value=[...s]}function d(){const s=[];switch(m.value){case"today":s.push(ce.getShiftedDay(p.value[0],-1));break;case"week":s.push(...ce.getLastWeekRange(p.value[0],p.value[1],-1));break;case"month":s.push(...ce.getMonthRange(p.value[0],p.value[1],-1));break;case"quarter":s.push(...ce.getQuarterRange(p.value[0],p.value[1],-1));break;case"year":s.push(...ce.getYearRange(p.value[0],-1));break}p.value=[...s]}const S=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function v(s){const[k,R,T]=s.split("-");return`${T}.${R}.${k}`}function b(s,k="long"){const R=new Date(Date.UTC(2e3,s-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:k,timeZone:"UTC"}).format(R)}function B(s){const{value:k}=p;switch(s){case"today":return v(k[0]);case"range":return"Період";case"week":return k[0]&&k[1]?`${v(k[0])} – ${v(k[1])}`:"";case"quarter":if(k[0]){const R=new Date(k[0]),T=R.getFullYear(),y=R.getMonth();return`${Math.floor(y/3)+1} ${l("filter.quarter")} ${T}`}return"";case"month":if(k[0]){const[R,T]=k[0].split("-");return`${b(parseInt(T,10))} ${R}`}return"";case"year":return k[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const C=e.computed(()=>m.value?B(m.value):t.label??"");function M(){m.value="",p.value=[],i("update:modelValue",[]),i("clear",t.name)}return{activeMode:m,innerValue:p,daysBefore:n,onDaysBeforeChange:x,onSelectChange:V,nextClick:w,prevClick:d,ukMonths:S,formatDisplayDate:v,getModeLabel:B,currentLabel:C,clear:M}}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"},vo=["disabled"],Do=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=Ve(),p=xl(),n=pe(),x=o,V=e.ref(null),{activeMode:w,innerValue:d,onSelectChange:S,nextClick:v,prevClick:b,clear:B}=kt({...a,popoverRef:V},x);function C(T){if(Array.isArray(T)){const y=T.map(j=>{var u;return((u=j==null?void 0:j.toString)==null?void 0:u.call(j))??""}).slice(0,2);return[y[0]??"",y[1]??""]}if(typeof T=="string"){const y=T.split(",").slice(0,2).map(j=>j.trim());return[y[0]??"",y[1]??""]}return["",""]}e.watch(()=>a.modelValue,T=>{T!==void 0?d.value=C(T):(w.value="",d.value=[])}),e.watch(()=>C(d.value).join(","),()=>{const T=C(d.value),y=C(a.modelValue);T.join(",")!==y.join(",")&&(x("update:modelValue",T),x("change",{name:a.name,value:T}))});const M=["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 k(T){var y;return((y=s[T])==null?void 0:y.label)??n(`filter.${T}`)}function R(T){var y;return((y=s[T])==null?void 0:y.title)??n(`filter.${T}`)}return i({clear:B,popoverRef:V}),(T,y)=>{var j;return e.openBlock(),e.createElementBlock(e.Fragment,null,[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",bo,[e.unref(w)!==""&&e.unref(w)==="range"?(e.openBlock(),e.createElementBlock("div",ko,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(d)[1],locale:"uk-UA","onUpdate:modelValue":y[0]||(y[0]=u=>e.unref(d)[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(d)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(d)[0],locale:"uk-UA","onUpdate:modelValue":y[1]||(y[1]=u=>e.unref(d)[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(d)[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(d)[1],locale:"uk-UA","onUpdate:modelValue":y[2]||(y[2]=u=>e.unref(d)[0]=u),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,Vo),[[e.vModelText,e.unref(d)[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(d)[0],locale:"uk-UA","onUpdate:modelValue":y[3]||(y[3]=u=>e.unref(d)[1]=u),class:e.normalizeClass(e.unref(l)),disabled:t.disabled},null,10,So),[[e.vModelText,e.unref(d)[1]]])],2)],2),t.hideQuickButtons?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",_o,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(M,u=>e.createElementVNode("button",{key:u,class:e.normalizeClass(e.unref(p)+(e.unref(w)===u?" bg-blue-100":"")),title:R(u),onClick:L=>e.unref(S)(u)},e.toDisplayString(k(u)),11,Mo)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(p)),onClick:y[4]||(y[4]=(...u)=>e.unref(b)&&e.unref(b)(...u))},"<",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(p)),onClick:y[5]||(y[5]=(...u)=>e.unref(v)&&e.unref(v)(...u))},">",2)])),e.createElementVNode("div",Lo,[["popover"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",disabled:!((j=e.unref(d))!=null&&j.length)||!e.unref(d)[0]&&!e.unref(d)[1],class:e.normalizeClass(e.unref(m)+"hover:bg-gray-100"),onClick:y[6]||(y[6]=(...u)=>e.unref(B)&&e.unref(B)(...u))},e.toDisplayString(e.unref(n)("filter.clear")),11,vo)):e.createCommentVNode("",!0)])],64)}}});function jo(t,i){const{api:o,options:a=[],limit:l=20,dataKey:m="data",data:p}=t,n=m??p??"data",x=t.multi;function V(K){return Array.isArray(K)?K.flatMap(U=>typeof U=="string"&&U.includes(",")?U.split(",").map(O=>O.trim()).filter(Boolean):U==null||U===""?[]:[U]):typeof K=="string"?K.split(",").map(U=>U.trim()).filter(Boolean):K==null||K===""?[]:[K]}function w(K){return x?V(K):Array.isArray(K)?K[0]:K}const d=e.ref(w(t.modelValue)),S=e.ref(""),v=e.ref(!1),b=e.ref(a),B=e.ref("id"),C=e.ref("text"),M=e.ref(!1),s=e.ref(t.layout!=="popover"&&a.length>l),k=e.ref([]),R=e.ref(0),T=e.ref([]);function y(K){const U=K.find(Boolean)??{},O=["id","value","code","key"].find(Q=>Q in U)??"id",q=["text","label","name","title"].find(Q=>Q in U)??"text";return{autoValueKey:O,autoLabelKey:q}}if(a.length>0){const K=y(a);B.value=K.autoValueKey,C.value=K.autoLabelKey}function j(){return x?V(d.value):d.value===void 0||d.value===null||d.value===""?[]:[d.value]}function u(K){const U=new Map;return K.forEach(O=>{U.set(O[B.value],O)}),Array.from(U.values())}function L(K){const U=j();if(U.length===0)return K;const O=new Set(U),q=K.filter(de=>O.has(de[B.value])),Q=u([...T.value,...q]).filter(de=>O.has(de[B.value])),ne=new Set(Q.map(de=>de[B.value])),ge=K.filter(de=>!ne.has(de[B.value]));return[...Q,...ge]}const N=e.computed(()=>{if(o)return L(b.value);const K=b.value;if(t.layout==="popover")return L(K);if(!S.value){const q=M.value?K:K.slice(0,l);return L(q)}const U=S.value.toLowerCase(),O=K.filter(q=>String(q[C.value]).toLowerCase().includes(U));return L(O)});let E=null;async function P(K){if(o){v.value=!0;try{const U=new URL(o,window.location.origin);U.searchParams.set("json","1"),U.searchParams.set("key",K),U.searchParams.set("limit",l.toString());const O=await fetch(U.toString());if(!O.ok){Se({type:"error",title:"Error",message:"Failed to fetch remote options"}),b.value=[];return}const q=await O.json();if(!q[n]){Se({type:"error",title:"Error",message:q}),b.value=[];return}if(b.value=q[n],b.value.length>0){const Q=y(b.value);B.value=Q.autoValueKey,C.value=Q.autoLabelKey}R.value=q.total}catch(U){console.error("Failed to fetch remote options:",U)}finally{v.value=!1}}}async function A(){if(!o)return;const K=j();if(K.length===0){T.value=[];return}try{const U=await Promise.all(K.map(async O=>{const q=new URL(o,window.location.origin);q.searchParams.set("json","1"),q.searchParams.set("val",String(O));const Q=await fetch(q.toString());if(!Q.ok)return[];const ne=await Q.json(),ge=Array.isArray(ne)?ne:ne[n];return Array.isArray(ge)?ge:[]}));T.value=u(U.flat())}catch(U){console.error("Failed to fetch pinned selected options:",U)}}e.watch(S,K=>{o&&(E&&clearTimeout(E),E=setTimeout(()=>{P(K)},200))}),e.watch(()=>t.modelValue,K=>{d.value=w(K)},{immediate:!0}),e.watch([d,()=>o],async()=>{o?await A():T.value=[]},{immediate:!0}),e.watch(d,K=>{x?(!Array.isArray(K)||K.length===0)&&(k.value=[]):(K==null||typeof K=="string"&&K==="")&&(k.value=[])});function D(K){return x&&Array.isArray(d.value)?d.value.includes(K[B.value]):d.value&&d.value===K[B.value]}function r(K){if(x&&!Array.isArray(d.value)&&(d.value=[]),x&&Array.isArray(d.value)){const U=d.value.includes(K[B.value]);d.value=U?d.value.filter(O=>O!==K[B.value]):[...d.value,K[B.value]],k.value=U?k.value.filter(O=>O!==K[C.value]):[...k.value,K[C.value]]}else d.value=K[B.value],k.value=K[C.value];i("update:modelValue",d.value),i("change",{name:t.name,value:d.value})}function c(){x?(d.value=[],k.value=[]):(d.value="",k.value=[]),i("update:modelValue",d.value),i("clear",t.name)}function f(){E&&clearTimeout(E),S.value="",M.value=!1}function F(){M.value=!M.value}e.onBeforeUnmount(()=>{E&&clearTimeout(E)});const Z=e.ref(-1);e.watch(N,()=>{Z.value=N.value.length>0?0:-1});function Y(K){const U=N.value.length;if(K.key==="ArrowDown")K.preventDefault(),Z.value=(Z.value+1)%U;else if(K.key==="ArrowUp")K.preventDefault(),Z.value=(Z.value-1+U)%U;else if(K.key==="Enter"&&(K.preventDefault(),Z.value>=0&&Z.value<N.value.length)){const O=N.value[Z.value];r(O)}}function ee(){o&&b.value.length===0&&S.value.length===0&&P(S.value)}return{innerValue:d,searchTerm:S,filteredOptions:N,isSelected:D,selectItem:r,clear:c,resetSearch:f,toggleShowAll:F,isReqProc:v,showAll:M,isEnableShowAll:s,labelKey:C,valueKey:B,allOptions:b,highlightedIndex:Z,onKeyDown:Y,selectedLabels:k,totalCount:R,loadData:ee}}const zo=["aria-disabled"],Po={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},Ao=["placeholder","disabled"],Fo={key:0,class:"w-full"},$o={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"],Uo={class:"text-xs text-gray-500"},Io=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=pe(),l=Ve(),m=t,p=o,n=e.ref(null),{innerValue:x,filteredOptions:V,isSelected:w,selectItem:d,clear:S,resetSearch:v,toggleShowAll:b,isReqProc:B,showAll:C,isEnableShowAll:M,searchTerm:s,labelKey:k,valueKey:R,highlightedIndex:T,onKeyDown:y,selectedLabels:j,totalCount:u,loadData:L}=jo({...m,modelValue:m.modelValue},p);function N(r){if(m.disabled){r.preventDefault();return}y(r)}function E(r){m.disabled||d(r)}const P=e.computed(()=>m.multi?Array.isArray(x.value)&&x.value.length>0:x.value!=null&&x.value!==""),A=e.computed(()=>m.multi&&Array.isArray(x.value)?x.value.length:x.value!=null&&x.value!==""?1:0);e.onMounted(()=>{v(),m.layout!=="inline"&&(L(),n.value&&m.layout==="popover"&&!m.disabled&&n.value.focus())}),e.watch(()=>m.modelValue,r=>{r===void 0&&(m.multi?x.value=[]:x.value=void 0)});const D=e.ref([]);return e.watch(T,r=>{var c;r>=0&&D.value[r]&&((c=D.value[r])==null||c.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(V,()=>{D.value=[]}),i({clear:S,inputTextRef:n,selectedLabels:j,loadData:L}),(r,c)=>{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":c[0]||(c[0]=F=>e.isRef(s)?s.value=F:null),onKeydown:N,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(lt,{key:0,onClick:c[1]||(c[1]=F=>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(V),(F,Z)=>(e.openBlock(),e.createBlock(Xe,{layout:t.layout,count:F.count,label:F[e.unref(k)],color:F.color,type:t.multi?"checkbox":"radio",value:F[e.unref(R)],disabled:t.disabled,"is-selected":e.unref(w)(F),highlighted:Z===e.unref(T),onItemClick:Y=>E(F),ref_for:!0,ref:Y=>D.value[Z]=Y==null?void 0:Y.el},null,8,["layout","count","label","color","type","value","disabled","is-selected","highlighted","onItemClick"]))),256))],2),t.type==="select"&&e.unref(V).length===0&&!e.unref(B)?(e.openBlock(),e.createElementBlock("div",Fo,[e.createElementVNode("div",$o,[e.createVNode(et),e.createElementVNode("div",Ro,[e.createElementVNode("p",Zo,e.toDisplayString(e.unref(a)("filter.notfound")),1),c[6]||(c[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(C)&&e.unref(M)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:c[2]||(c[2]=(...F)=>e.unref(b)&&e.unref(b)(...F)),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(Te)])):e.createCommentVNode("",!0),e.unref(C)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:c[3]||(c[3]=(...F)=>e.unref(b)&&e.unref(b)(...F)),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(tt)])):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(x))?(f=e.unref(x))==null?void 0:f.length:e.unref(x)!==void 0&&(e.unref(x)||e.unref(x)===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:c[4]||(c[4]=(...F)=>e.unref(S)&&e.unref(S)(...F))},e.toDisplayString(e.unref(a)("filter.clear")),513),[[e.vShow,P.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Ko,[e.createElementVNode("button",{type:"button",disabled:t.disabled||!P.value,class:e.normalizeClass(e.unref(l)+" hover:bg-gray-100"),onClick:c[5]||(c[5]=(...F)=>e.unref(S)&&e.unref(S)(...F))},[e.createTextVNode(e.toDisplayString(e.unref(a)("filter.clear"))+" ",1),e.createElementVNode("span",Uo,e.toDisplayString(A.value)+" з "+e.toDisplayString(e.unref(u)),1)],10,Oo)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],10,zo)}}}),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=Ve(),p=pe(),{innerValue:n,isSelected:x,selectItem:V,clear:w,labelKey:d,valueKey:S,allOptions:v}=a.multi?yt({...a,modelValue:a.modelValue??a.default??[]},l):Je({...a,modelValue:a.modelValue!==void 0?a.modelValue:a.default??""},l),b=e.computed(()=>a.multi?Array.isArray(n.value)&&n.value.length>0:n.value!=null&&n.value!==""),B=e.computed(()=>a.multi&&Array.isArray(n.value)?n.value.length:n.value!=null&&n.value!==""?1:0);return i({clear:w}),e.watch(()=>a.modelValue,C=>{C===void 0&&(a.multi?n.value=[]:n.value=void 0)}),(C,M)=>{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(v),k=>(e.openBlock(),e.createElementBlock("label",{key:`item-${k[e.unref(S)]}`,for:`item-${k[e.unref(S)]}`,onClick:e.withModifiers(R=>e.unref(V)(k),["stop","prevent"]),class:e.normalizeClass([e.unref(x)(k)?"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-${k[e.unref(S)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${k[e.unref(S)]}`,value:k[e.unref(S)]},null,8,Go),e.createElementVNode("span",Wo,e.toDisplayString(k[e.unref(d)]),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(v).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:M[0]||(M[0]=(...k)=>e.unref(w)&&e.unref(w)(...k))}," Очистити ",512),[[e.vShow,b.value]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("button",{type:"button",disabled:!b.value,class:e.normalizeClass(e.unref(m)+" hover:bg-gray-100"),onClick:M[1]||(M[1]=(...k)=>e.unref(w)&&e.unref(w)(...k))},[e.createTextVNode(e.toDisplayString(e.unref(p)("filter.clear"))+" ",1),e.createElementVNode("span",Xo,e.toDisplayString(B.value)+" з "+e.toDisplayString(e.unref(v).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"},ot=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),x=e.ref(null);let V=null;function w(){const y=n.value,j=x.value;if(!y||!j)return;const u=y.getBoundingClientRect(),L=j.offsetWidth,N=j.offsetHeight,E=window.innerWidth,P=window.innerHeight,A=8;let D=u.bottom+A,{left:r}=u;const c=Math.max(E-L-10,10);if(r=Math.min(r,c),r=Math.max(r,10),D+N>P-10){const f=u.top-N-A;D=f>=10?f:Math.max(P-N-10,10)}D<10&&(D=10),m.value={top:D,left:r}}function d(){e.nextTick(()=>{w(),typeof window<"u"&&typeof window.requestAnimationFrame=="function"&&window.requestAnimationFrame(()=>w())})}function S(){l.value=!l.value,l.value&&(d(),e.nextTick(()=>{var y,j,u,L,N,E,P;(y=o.fieldRef)!=null&&y.inputTextRef&&((L=(u=(j=o.fieldRef)==null?void 0:j.inputTextRef)==null?void 0:u.focus)==null||L.call(u)),(N=o.fieldRef)!=null&&N.loadData&&Promise.resolve((P=(E=o.fieldRef)==null?void 0:E.loadData)==null?void 0:P.call(E)).finally(()=>{l.value&&d()})}))}function v(y){var j,u,L;!((j=p.value)!=null&&j.contains(y.target))&&!((u=x.value)!=null&&u.contains(y.target))&&!((L=n.value)!=null&&L.contains(y.target))&&(l.value=!1)}function b(y){y.key==="Escape"&&(l.value=!1)}const B=e.ref(!1),C=e.ref("ua"),M=y=>{y.detail.key==="locale"&&(C.value=y.detail.newValue)};e.onMounted(()=>{B.value=!0,C.value=localStorage.locale,window.addEventListener("storage",M),document.addEventListener("click",v,!0),document.addEventListener("keydown",b),window.addEventListener("scroll",w,!0),window.addEventListener("resize",w,!0),typeof ResizeObserver<"u"&&(V=new ResizeObserver(()=>{l.value&&d()}))}),e.onBeforeUnmount(()=>{window.removeEventListener("storage",M),document.removeEventListener("click",v,!0),document.removeEventListener("keydown",b),window.removeEventListener("scroll",w,!0),window.removeEventListener("resize",w,!0),V==null||V.disconnect(),V=null});function s(){l.value=!1}i({close:s}),e.watch([B,l,x],([y,j,u])=>{y&&j&&u&&(d(),V==null||V.observe(u))});function k(y){if(Array.isArray(y))return y.filter(j=>j!=null&&j!=="").length;if(y&&typeof y=="object")return Object.values(y).filter(j=>j!=null&&j!=="").length;if(typeof y=="string"){const j=y.split(",").map(u=>u.trim()).filter(Boolean);return j.length>0?j.length:0}return typeof y=="number"?Number.isNaN(y)?0:1:y===null||y!==void 0?1:0}const R=e.computed(()=>{var u;const y=(u=o.fieldRef)==null?void 0:u.selectedLabels,j=k(y);return j>0?j:k(o.currentValue)}),T=e.computed(()=>{var j;const y=(j=o.fieldRef)==null?void 0:j.selectedLabels;return!y||["inline"].includes(o.layout||"")?o[C.value]||(o.label??""):Array.isArray(y)?y.length>0?y.join(", "):o.label??"":String(y)});return(y,j)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:p},[e.createElementVNode("button",{onClick:S,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"&&R.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",tn,[e.createElementVNode("span",ln,e.toDisplayString(T.value),1),t.layout==="inline"&&R.value>0?(e.openBlock(),e.createElementBlock("span",on,e.toDisplayString(R.value),1)):e.createCommentVNode("",!0)]),e.createVNode(Te,{class:"h-4 w-4 text-neutral-500"})],10,en),B.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:x,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(y.$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=fe(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=fe(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=pe(),l=t,m=o,p=e.ref(null),{activeMode:n,innerValue:x,onSelectChange:V,nextClick:w,prevClick:d,currentLabel:S,clear:v}=kt({...l,popoverRef:p},m);function b(M){if(Array.isArray(M)){const s=M.map(k=>{var R;return((R=k==null?void 0:k.toString)==null?void 0:R.call(k))??""}).slice(0,2);return[s[0]??"",s[1]??""]}if(typeof M=="string"){const s=M.split(",").slice(0,2).map(k=>k.trim());return[s[0]??"",s[1]??""]}return["",""]}e.watch(()=>l.modelValue,M=>{M!==void 0?x.value=b(M):(n.value="",x.value=[])}),e.watch(()=>b(x.value).join(","),()=>{const M=b(x.value),s=b(l.modelValue);M.join(",")!==s.join(",")&&(m("update:modelValue",M),m("change",{name:l.name,value:M}))});function B(M){const s=Array.isArray(x.value)?[...x.value]:[];x.value=[M,s[1]||""]}function C(M){const s=Array.isArray(x.value)?[...x.value]:[];x.value=[s[0]||"",M]}return i({clear:v,popoverRef:p}),(M,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",gn,[e.createVNode(ot,{ref_key:"popoverRef",ref:p,label:e.unref(S),"current-value":e.unref(x),mode:t.mode,width:typeof t.width=="number"&&e.unref(x).length?t.width-70:t.width,onClear:e.unref(v),layout:t.layout,class:e.normalizeClass(t.itemClass)},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[0]||(s[0]=k=>e.unref(V)("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(we,{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]=k=>e.unref(V)("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(we,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[2]||(s[2]=k=>e.unref(V)("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(we,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[3]||(s[3]=k=>e.unref(V)("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(we,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:s[4]||(s[4]=k=>e.unref(V)("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(we,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",yn,[e.createElementVNode("button",{type:"button",onClick:s[5]||(s[5]=k=>e.unref(V)("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(we,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",hn,[e.createElementVNode("button",{type:"button",onClick:s[6]||(s[6]=k=>e.unref(v)()),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(a)("filter.alltime"))+" ",1),e.unref(x)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(we,{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]=(...k)=>e.unref(d)&&e.unref(d)(...k))},[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]=(...k)=>e.unref(w)&&e.unref(w)(...k))},[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(x)[1],locale:"uk-UA",value:e.unref(x)[0],onInput:s[9]||(s[9]=k=>B(k.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(x)[0],locale:"uk-UA",value:e.unref(x)[1],onInput:s[10]||(s[10]=k=>C(k.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=Ve(),p=pe(),{innerValue:n,isSelected:x,selectItem:V,clear:w,labelKey:d,valueKey:S,allOptions:v}=Je({...a,modelValue:a.modelValue??a.default??""},l),b=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value===""));function B(M){return x(M)?["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 C(M){a.disabled||V(M)}return i({clear:w}),e.watch(()=>a.modelValue,M=>{M===void 0&&(n.value=void 0)}),(M,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(v),k=>(e.openBlock(),e.createElementBlock("button",{key:k[e.unref(S)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",B(k)]),disabled:t.disabled,onClick:R=>C(k)},e.toDisplayString(k[e.unref(d)]),11,Nn))),128))],2),t.cleanable&&t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Sn,[e.createElementVNode("button",{type:"button",disabled:!b.value,class:e.normalizeClass(e.unref(m)+" hover:bg-gray-100"),onClick:s[0]||(s[0]=(...k)=>e.unref(w)&&e.unref(w)(...k))},e.toDisplayString(e.unref(p)("filter.clear")),11,_n)])):e.createCommentVNode("",!0)],64))}}),wt={radio:jl,checkbox:ht,check:ht,text:Ql,range:xo,date:Do,select:Io,tag:Jo,button:Mn,"date:inline":En};function nt(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%"}},vn={class:"filter-card relative w-full mb-2 p-4 bg-white rounded-md shadow-sm"},Dn={class:"rrf-header block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},jn={class:"flex items-center"},zn={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(()=>nt(a.type,a.layout)),n=e.computed({get:()=>a.modelValue,set:d=>l("update:modelValue",d)});function x(d){l("clear",d)}function V(d,S){l("change",{name:d,value:S}),a.modelValue!==void 0&&l("update:modelValue",S)}function w(){var d,S;(S=(d=m.value)==null?void 0:d.clear)==null||S.call(d),l("clear",a.name)}return e.watch(()=>a.default,d=>{n.value=d}),e.watch(()=>a.modelValue,d=>{n.value=d}),i({filterRef:m}),(d,S)=>{var v,b,B;return e.openBlock(),e.createElementBlock("div",Ln,[e.createElementVNode("div",vn,[e.createElementVNode("div",Dn,[e.createElementVNode("div",jn,[e.createElementVNode("span",zn,e.toDisplayString(t.label),1),S[4]||(S[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(C=>C!==void 0)||n.value===null?(e.openBlock(),e.createBlock(sl,{key:0,class:"text-slate-400 ml-auto cursor-pointer",onClick:w})):e.createCommentVNode("",!0)]),e.createElementVNode("div",Pn,[((v=p.value)==null?void 0:v.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((b=p.value)==null?void 0:b.component),e.mergeProps({key:0},a,{type:(B=p.value)==null?void 0:B.type,class:a.itemClass,onChange:S[0]||(S[0]=C=>V(C.name,C.value)),onClear:S[1]||(S[1]=C=>x(C)),ref_key:"filterRef",ref:m}),null,16,["type","class"])):(e.openBlock(),e.createBlock(ot,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:w,fieldRef:m.value,width:void 0,disabled:t.disabled,layout:"vertical"},{default:e.withCtx(()=>{var C,M;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((C=p.value)==null?void 0:C.component),e.mergeProps({ref_key:"filterRef",ref:m},a,{type:(M=p.value)==null?void 0:M.type,class:a.itemClass,onChange:S[2]||(S[2]=s=>V(s.name,s.value)),onClear:S[3]||(S[3]=s=>x(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(()=>nt(a.type,a.layout)),n=e.computed({get:()=>a.modelValue,set:w=>l("update:modelValue",w)});function x(w=a.name){l("clear",w)}function V(w,d){l("change",{name:w,value:d}),a.modelValue!==void 0&&l("update:modelValue",d)}return e.watch(()=>a.default,w=>{n.value=w}),e.watch(()=>a.modelValue,w=>{n.value=w}),i({filterRef:m}),(w,d)=>{var S,v;return["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((S=p.value)==null?void 0:S.component),e.mergeProps({key:0},a,{type:(v=p.value)==null?void 0:v.type,class:t.itemClass,onChange:d[0]||(d[0]=b=>V(b.name,b.value)),onClear:d[1]||(d[1]=b=>x(b)),disabled:t.disabled,modelValue:n.value,"onUpdate:modelValue":d[2]||(d[2]=b=>n.value=b)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(ot,{key:1,"current-value":n.value,label:t.label,mode:t.mode,onClear:x,fieldRef:m.value,width:a.width,disabled:t.disabled,layout:"inline"},{default:e.withCtx(()=>{var b,B;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((b=p.value)==null?void 0:b.component),e.mergeProps({ref_key:"filterRef",ref:m},a,{modelValue:n.value,"onUpdate:modelValue":d[3]||(d[3]=C=>n.value=C),type:(B=p.value)==null?void 0:B.type,class:a.itemClass,onChange:d[4]||(d[4]=C=>V(C.name,C.value)),onClear:d[5]||(d[5]=C=>x(C))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),Fn=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},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(()=>nt(a.type,a.layout)),n=e.computed({get:()=>a.modelValue,set:w=>l("update:modelValue",w)});function x(w){l("clear",w)}function V(w,d){l("change",{name:w,value:d}),a.modelValue!==void 0&&l("update:modelValue",d)}return e.watch(()=>a.default,w=>{n.value=w}),e.watch(()=>a.modelValue,w=>{n.value=w}),e.watch(()=>a,w=>{n.value=w}),i({filterRef:m}),(w,d)=>{var S,v;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((S=p.value)==null?void 0:S.component),e.mergeProps(a,{type:(v=p.value)==null?void 0:v.type,class:a.itemClass,modelValue:n.value,"onUpdate:modelValue":d[0]||(d[0]=b=>n.value=b),onChange:d[1]||(d[1]=b=>V(b.name,b.value)),onClear:d[2]||(d[2]=b=>x(b)),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:w=>l("update:modelValue",w)});function n(w){l("clear",w)}function x(w,d){l("change",{name:w,value:d}),a.modelValue!==void 0&&l("update:modelValue",d)}e.watch(()=>a.default,w=>{p.value=w}),e.watch(()=>a.modelValue,w=>{p.value=w}),i({filterRef:m});function V(){switch(a.layout){case"inline":return Bt;case"vertical":return An;case"popover":return Fn;default:return Bt}}return(w,d)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(V()),e.mergeProps(a,{onChange:d[0]||(d[0]=S=>x(S.name,S.value)),onClear:d[1]||(d[1]=S=>n(S)),modelValue:p.value,"onUpdate:modelValue":d[2]||(d[2]=S=>p.value=S)}),null,16,["modelValue"]))}});function Ke(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 L;const u=((L=t.schema)==null?void 0:L.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(L=>Array.isArray(L.children)?L.children:[L])}),n=e.computed(()=>Object.entries(m.value).filter(([,u])=>u==null?void 0:u.ignore)),x=e.computed(()=>Object.entries(m.value).filter(([,u])=>!(u!=null&&u.ignore))),V=e.computed(()=>p.value.filter(u=>{var L;return(L=u==null?void 0:u.props)==null?void 0:L.ignore})),w=e.computed(()=>p.value.filter(u=>{var L;return!((L=u==null?void 0:u.props)!=null&&L.ignore)}));function d(u){var L;return!!((L=m.value[u])!=null&&L.ignore)||!!p.value.find(N=>{var E,P;return((E=N==null?void 0:N.props)==null?void 0:E.name)===u&&((P=N==null?void 0:N.props)==null?void 0:P.ignore)})}function S(u){d(u)||(delete l.value[u],i("clear",{data:e.toRaw(l.value),name:u}))}function v(u,L){d(u)||(L===void 0?S(u):l.value={...l.value,[u]:L},i("change",{data:e.toRaw(l.value),name:u,value:L}))}const b=e.computed(()=>V.value.map(u=>{var E,P,A,D,r;const L=(E=u.props)==null?void 0:E.name,N=!!((P=u.props)!=null&&P.disabled||(A=t.exclusiveDisabledKeys)!=null&&A[L]);return e.cloneVNode(u,{...u.props,layout:t.view,showClean:!0,disabled:N,class:[t.itemClass,(D=u.props)==null?void 0:D.class],itemClass:[t.itemClass,(r=u.props)==null?void 0:r.itemClass].filter(c=>typeof c=="string"&&c.trim().length>0).join(" ")||void 0})})),B=e.computed(()=>w.value.map(u=>{var E,P,A,D,r;const L=(E=u.props)==null?void 0:E.name,N=!!((P=u.props)!=null&&P.disabled||(A=t.exclusiveDisabledKeys)!=null&&A[L]);return e.cloneVNode(u,{...u.props,layout:t.view,showClean:!0,disabled:N,modelValue:l.value[L],"onUpdate:modelValue":c=>{v(L,c)},onClear:()=>S(L),class:[t.itemClass,(D=u.props)==null?void 0:D.class],itemClass:[t.itemClass,(r=u.props)==null?void 0:r.itemClass].filter(c=>typeof c=="string"&&c.trim().length>0).join(" ")||void 0})})),C=e.computed(()=>new Map(B.value.map(u=>{var N;const L=(N=u.props)==null?void 0:N.name;return L?[L,u]:null}).filter(u=>u!==null)));function M(u=!1){l.value={},u||i("clearAll",{data:e.toRaw(l.value),name:"ALL"})}const s=e.ref(""),k=e.computed(()=>Object.keys(m.value).length?Object.entries(l.value).filter(([u,L])=>{var N;return!(u in m.value)||(N=m.value[u])!=null&&N.ignore?!1:Array.isArray(L)?L.some(E=>E!==""&&E!==void 0&&E!==null):L!==""&&L!==void 0&&L!==null}).length:0),R=e.ref();e.watch(s,async()=>{var u,L;await e.nextTick(),(L=(u=R==null?void 0:R.value)==null?void 0:u.filterRef)!=null&&L.inputTextRef&&R.value.filterRef.inputTextRef.focus()});const T=e.computed(()=>Object.keys(m.value).length?Object.fromEntries(x.value.slice(0,t.limit)):{}),y=e.computed(()=>{if(B.value.length===0)return[];let u=0;if(Object.keys(m.value).length){const L=x.value.length;t.limit&&L<t.limit?u=t.limit-L:u=0}return B.value.slice(0,u)}),j=e.computed(()=>B.value.length===0?[]:t.view!=="inline"?B.value:B.value.slice(y.value.length));return{activeFilter:l,activeFilterCount:k,onFilterChange:v,clearFilter:S,clearAllFilters:M,ignoredSchemaEntries:n,visibleSchemaEntries:x,limitedSchema:T,ignoredFiltersSlot:b,filtersSlot:B,limitedFiltersSlot:y,popoverFiltersSlot:j,vnodeMap:C,selectedFilter:s,filterRef:R}}const $n=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 x(){o.value=!o.value}function V(){const b=m.value,B=a.value;if(!b||!B)return;const{left:C,bottom:M}=b.getBoundingClientRect();requestAnimationFrame(()=>{if(!B)return;const{width:s}=B.getBoundingClientRect(),k=B.offsetWidth||s,R=window.innerWidth||document.documentElement.clientWidth,T=R-C;let y=C;k>T&&(y=R-k-18),y<18&&(y=18);const j=R-k-18;y>j&&(y=Math.max(18,j)),p.value={position:"fixed",top:`${M+18}px`,left:`${y}px`},n.value=!0})}const w=e.computed(()=>Object.entries(p.value).map(b=>b.join(":")).join(";"));function d(b){var C,M;const B=b.target;!((C=m.value)!=null&&C.contains(b.target))&&!((M=a.value)!=null&&M.contains(b.target))&&!B.closest("[data-inside-popover]")&&(o.value=!1)}const S=e.ref(!1);e.onMounted(()=>{S.value=!0}),e.onMounted(()=>{var b,B;m.value=((b=l.value)==null?void 0:b.querySelector("[data-popover-trigger]"))||null,(B=m.value)==null||B.addEventListener("click",x),document.addEventListener("click",d),window.addEventListener("resize",V),window.addEventListener("scroll",V,!0)}),e.onBeforeUnmount(()=>{var b;(b=m.value)==null||b.removeEventListener("click",x),document.removeEventListener("click",d),window.removeEventListener("resize",V),window.removeEventListener("scroll",V,!0)});const v=i;return e.watch(o,async b=>{b?(n.value=!1,v("open"),await e.nextTick(),requestAnimationFrame(()=>{V()})):(v("close"),n.value=!1)}),(b,B)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:l},[e.renderSlot(b.$slots,"trigger"),S.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([w.value,{visibility:n.value?"visible":"hidden",opacity:n.value?1:0}])},[e.renderSlot(b.$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=fe(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"},Un={class:"flex max-h-[400px] md:max-h-[400px]"},In={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=pe(),l=t,m=ut(l.mode),p=e.useSlots(),n=o,x=e.ref({}),{activeFilter:V,activeFilterCount:w,onFilterChange:d,clearFilter:S,clearAllFilters:v,ignoredSchemaEntries:b,visibleSchemaEntries:B,ignoredFiltersSlot:C,popoverFiltersSlot:M,selectedFilter:s,filterRef:k}=Ke({...l,schema:x,slots:p},n),R=e.computed(()=>l.badgeCount??w.value),T=e.computed(()=>C.value.find(D=>{var r;return((r=D.props)==null?void 0:r.name)===s.value})??null),y=e.computed(()=>b.value.find(([D])=>D===s.value)??null),j=e.computed(()=>B.value.find(([D])=>D===s.value)??null),u=e.computed(()=>M.value.find(D=>{var r;return((r=D.props)==null?void 0:r.name)===s.value})??null);function L(D){if(Array.isArray(D))return D.filter(r=>r!=null&&r!=="").length;if(D&&typeof D=="object")return Object.values(D).filter(r=>r!=null&&r!=="").length;if(typeof D=="string"){const r=D.split(",").map(c=>c.trim()).filter(Boolean);return r.length>0?r.length:0}return D===null||D!==void 0&&D!==""?1:0}function N(D){return V.value?L(V.value[D]):0}function E(D){return!!D&&typeof D=="object"&&!Array.isArray(D)}function P(D){var r;return((r=Object.entries(D).find(([,c])=>!(c!=null&&c.disabled)))==null?void 0:r[0])??""}function A(){var r,c,f,F,Z,Y,ee;if(C.value.length>0){const K=C.value.find(U=>{var O;return!((O=U.props)!=null&&O.disabled)});s.value=((r=K==null?void 0:K.props)==null?void 0:r.name)??((f=(c=C.value[0])==null?void 0:c.props)==null?void 0:f.name)??"";return}if(b.value.length>0){const K=b.value.find(([,U])=>!(U!=null&&U.disabled));s.value=(K==null?void 0:K[0])??((F=b.value[0])==null?void 0:F[0])??"";return}const D=Object.fromEntries(B.value);if(D&&E(D))s.value=P(D);else if(M.value.length>0){const K=M.value.find(U=>{var O;return!((O=U.props)!=null&&O.disabled)});s.value=((Z=K==null?void 0:K.props)==null?void 0:Z.name)??((ee=(Y=M.value[0])==null?void 0:Y.props)==null?void 0:ee.name)??""}else s.value=""}return e.watch([B,s],()=>{var c;const D=s.value,r=Object.fromEntries(B.value);!D||!r||!E(r)||(c=r[D])!=null&&c.disabled&&(s.value=P(r))},{deep:!0}),e.watch(()=>l.schema,D=>{x.value=D??{}},{deep:!0,immediate:!0}),i({clearFilter:S,clearAllFilters:v}),(D,r)=>(e.openBlock(),e.createBlock($n,{onOpen:A,onClose:r[7]||(r[7]=c=>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",R.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))]),R.value>0?(e.openBlock(),e.createElementBlock("span",On,e.toDisplayString(R.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>{var c,f,F,Z,Y,ee,K,U;return[e.createElementVNode("div",Un,[e.createElementVNode("div",In,[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(C),(O,q)=>{var Q;return e.openBlock(),e.createElementBlock("button",{key:"ignored-slot-"+q,type:"button",disabled:!!((Q=O.props)!=null&&Q.disabled),onClick:ne=>s.value=O.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)===O.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(O.props.label),1)]),N(O.props.name)>0?(e.openBlock(),e.createElementBlock("div",Xn,e.toDisplayString(N(O.props.name)),1)):e.createCommentVNode("",!0)],10,qn)}),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),([O,q])=>(e.openBlock(),e.createElementBlock("button",{key:"ignored-schema-"+O,type:"button",disabled:!!(q!=null&&q.disabled),onClick:Q=>s.value=O,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)===O?"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)]),N(O)>0?(e.openBlock(),e.createElementBlock("div",lr,e.toDisplayString(N(O)),1)):e.createCommentVNode("",!0)],10,Jn))),128)),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(B),([O,q])=>(e.openBlock(),e.createElementBlock("button",{key:O,type:"button",disabled:!!(q!=null&&q.disabled),onClick:Q=>s.value=O,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)===O?"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)]),N(O)>0?(e.openBlock(),e.createElementBlock("div",ar,e.toDisplayString(N(O)),1)):e.createCommentVNode("",!0)],10,or))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(M),(O,q)=>{var Q;return e.openBlock(),e.createElementBlock("button",{key:"slot-"+q,type:"button",disabled:!!((Q=O.props)!=null&&Q.disabled),onClick:ne=>s.value=O.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)===O.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(O.props.label),1)]),N(O.props.name)>0?(e.openBlock(),e.createElementBlock("div",dr,e.toDisplayString(N(O.props.name)),1)):e.createCommentVNode("",!0)],10,ir)}),128))]),e.unref(w)>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]=O=>e.unref(v)()),"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},[T.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`ignored-slot-${T.value.props.name??""}`,layout:"popover",ref_key:"filterRef",ref:k},T.value.props,{class:[t.itemClass,(c=T.value.props)==null?void 0:c.class],"item-class":[t.itemClass,(f=T.value.props)==null?void 0:f.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])):y.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`ignored-schema-${y.value[0]}`,layout:"popover",ref_key:"filterRef",ref:k},y.value[1],{class:[t.itemClass,(F=y.value[1])==null?void 0:F.class],"item-class":[t.itemClass,(Z=y.value[1])==null?void 0:Z.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])):e.createCommentVNode("",!0),j.value?(e.openBlock(),e.createBlock(ie,e.mergeProps({key:`schema-${j.value[0]}`,layout:"popover",ref_key:"filterRef",ref:k},j.value[1],{class:[t.itemClass,(Y=j.value[1])==null?void 0:Y.class],"item-class":[t.itemClass,(ee=j.value[1])==null?void 0:ee.itemClass].filter(Boolean).join(" ")||void 0,onChange:r[1]||(r[1]=O=>e.unref(d)(O.name,O.value)),onClear:r[2]||(r[2]=O=>{e.unref(S)(O),e.unref(d)(O,void 0)}),modelValue:e.unref(V)[j.value[0]],"onUpdate:modelValue":r[3]||(r[3]=O=>e.unref(V)[j.value[0]]=O),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:k},u.value.props,{class:[t.itemClass,(K=u.value.props)==null?void 0:K.class],"item-class":[t.itemClass,(U=u.value.props)==null?void 0:U.itemClass].filter(Boolean).join(" ")||void 0,onChange:r[4]||(r[4]=O=>e.unref(d)(O.name,O.value)),onClear:r[5]||(r[5]=O=>{e.unref(S)(O),e.unref(d)(O,void 0)}),modelValue:e.unref(V)[u.value.props.name],"onUpdate:modelValue":r[6]||(r[6]=O=>e.unref(V)[u.value.props.name]=O),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=pe(),l=t,m=o,p=e.useSlots(),n=e.ref({}),x=e.computed(()=>C.value.length>l.limit),{activeFilter:V,activeFilterCount:w,onFilterChange:d,clearFilter:S,clearAllFilters:v,ignoredSchemaEntries:b,ignoredFiltersSlot:B,visibleSchemaEntries:C,limitedSchema:M,filtersSlot:s,limitedFiltersSlot:k}=Ke({...l,schema:n,slots:p},m);function R(N){return Array.isArray(N)?N.some(E=>E!==""&&E!==void 0&&E!==null):N===null?!0:N&&typeof N=="object"?Object.values(N).some(E=>E!==""&&E!==void 0&&E!==null):N!==""&&N!==void 0}const T=e.computed(()=>{const N=[...b.value.map(([A])=>A),...Object.keys(M.value??{})],E=k.value.map(A=>{var D;return(D=A.props)==null?void 0:D.name}).filter(A=>typeof A=="string"),P=B.value.map(A=>{var D;return(D=A.props)==null?void 0:D.name}).filter(A=>typeof A=="string");return new Set([...N,...P,...E])}),y=e.computed(()=>Object.entries(V.value??{}).filter(([N,E])=>T.value.has(N)&&R(E)).length),j=e.computed(()=>{const N=w.value??0,E=y.value??0;return Math.max(N-E,0)}),u=e.ref();function L(){u.value&&u.value.clearAllFilters(!0),v()}return e.watch(()=>l.schema,N=>{n.value=N},{deep:!0,immediate:!0}),i({clearFilter:S,clearAllFilters:v}),(N,E)=>(e.openBlock(),e.createElementBlock("div",gr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(b),([P,A])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-schema-"+P,layout:"inline",mode:t.mode,width:t.width?t.width:A==null?void 0:A.width},{ref_for:!0},A,{class:[t.itemClass,A==null?void 0:A.class],"item-class":[t.itemClass,A==null?void 0:A.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(B),(P,A)=>{var D,r;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-slot-"+A,layout:"inline"},{ref_for:!0},P.props,{class:[t.itemClass,(D=P.props)==null?void 0:D.class],"item-class":[t.itemClass,(r=P.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(M)),([P,A])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:P,mode:t.mode,width:t.width?t.width:A==null?void 0:A.width},{ref_for:!0},A,{class:[t.itemClass,A==null?void 0:A.class],"item-class":[t.itemClass,A==null?void 0:A.itemClass].filter(Boolean).join(" ")||void 0,onChange:E[0]||(E[0]=D=>e.unref(d)(D.name,D.value)),onClear:e.unref(S),layout:"inline",cleanable:!0,modelValue:e.unref(V)[P],"onUpdate:modelValue":D=>e.unref(V)[P]=D}),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(k),(P,A)=>{var D,r;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"slot-"+A,layout:"inline"},{ref_for:!0},P.props,{class:[t.itemClass,(D=P.props)==null?void 0:D.class],"item-class":[t.itemClass,(r=P.props)==null?void 0:r.itemClass].filter(Boolean).join(" ")||void 0,onChange:E[1]||(E[1]=c=>e.unref(d)(c.name,c.value)),onClear:E[2]||(E[2]=c=>{e.unref(S)(c),e.unref(d)(c,void 0)}),cleanable:!0,modelValue:e.unref(V)[P.props.name],"onUpdate:modelValue":c=>e.unref(V)[P.props.name]=c}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128)),x.value?(e.openBlock(),e.createBlock(Vt,e.mergeProps({key:1},l,{schema:t.schema,onChange:E[3]||(E[3]=P=>e.unref(d)(P.name,P.value)),onClearAll:E[4]||(E[4]=P=>e.unref(v)()),onClear:E[5]||(E[5]=P=>e.unref(S)(P.name)),mode:t.mode,ref_key:"popoverRef",ref:u,cleanable:!0,"badge-count":j.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),(P,A)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(P),e.mergeProps({key:"slot-"+A,layout:"popover"},{ref_for:!0},P.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(w)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:L,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:x,clearFilter:V,clearAllFilters:w,ignoredSchemaEntries:d,ignoredFiltersSlot:S,filtersSlot:v}=Ke({...a,slots:m},l);return i({clearFilter:V,clearAllFilters:w}),(b,B)=>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(d),([C,M])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-schema-"+C,layout:"vertical",mode:t.mode},{ref_for:!0},M,{class:[t.itemClass,M==null?void 0:M.class],"item-class":[t.itemClass,M==null?void 0:M.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(S),(C,M)=>{var s,k;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-slot-"+M,layout:"vertical"},{ref_for:!0},C.props,{class:[t.itemClass,(s=C.props)==null?void 0:s.class],"item-class":[t.itemClass,(k=C.props)==null?void 0:k.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:B[0]||(B[0]=C=>e.unref(w)()),"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),([C,M])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({layout:"vertical"},{ref_for:!0},M,{class:[t.itemClass,M==null?void 0:M.class],"item-class":[t.itemClass,M==null?void 0:M.itemClass].filter(Boolean).join(" ")||void 0,onChange:B[1]||(B[1]=s=>e.unref(x)(s.name,s.value)),onClear:B[2]||(B[2]=s=>{e.unref(V)(s),e.unref(x)(s,void 0)}),modelValue:e.unref(p)[C],"onUpdate:modelValue":s=>e.unref(p)[C]=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(v),(C,M)=>{var s,k;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"slot-"+M,layout:"vertical"},{ref_for:!0},C.props,{class:[t.itemClass,(s=C.props)==null?void 0:s.class],"item-class":[t.itemClass,(k=C.props)==null?void 0:k.itemClass].filter(Boolean).join(" ")||void 0,onChange:B[3]||(B[3]=R=>e.unref(x)(R.name,R.value)),onClear:B[4]||(B[4]=R=>{e.unref(V)(R),e.unref(x)(R,void 0)}),modelValue:e.unref(p)[C.props.name],"onUpdate:modelValue":R=>e.unref(p)[C.props.name]=R,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=pe(),a=t,l=i,m=e.ref({}),p=e.useSlots(),{activeFilter:n,activeFilterCount:x,onFilterChange:V,clearFilter:w,clearAllFilters:d,ignoredSchemaEntries:S,visibleSchemaEntries:v,ignoredFiltersSlot:b,filtersSlot:B}=Ke({...a,schema:m.value,slots:p},l),C=e.ref(null),M=e.ref(null),s=e.reactive({open:!1,top:0,left:0}),k=e.computed(()=>s.open),R=e.computed(()=>!!a.disabled),T=e.computed(()=>a.title??"Фільтр"),y=e.computed(()=>!!p.trigger),j=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",R.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 L(){s.open=!1}function N(){if(!C.value)return;const r=C.value.getBoundingClientRect();s.top=r.bottom+window.scrollY+8,s.left=r.left+r.width/2+window.scrollX}function E(){s.open=!s.open,s.open&&e.nextTick(N)}function P(){R.value||E()}function A(){s.open&&N()}function D(){d()}return e.onMounted(()=>{window.addEventListener("resize",A),window.addEventListener("scroll",A,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",A),window.removeEventListener("scroll",A,!0)}),e.watch(()=>a.schema,r=>{if(!r){m.value={};return}if(Array.isArray(r)){const c=r.filter(f=>f&&(f.name||f.id)).map(f=>{const F=f.name||f.id;return[F,{...f,name:F}]});m.value=Object.fromEntries(c);return}m.value=r},{deep:!0,immediate:!0}),e.watch(()=>a.disabled,r=>{r&&L()}),(r,c)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:C},[y.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",R.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(P,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(P,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(P,["prevent","stop"]),["space"])]},[e.renderSlot(r.$slots,"trigger",{toggle:P,open:k.value,disabled:R.value,activeCount:e.unref(x)})],42,br)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(j.value),type:"button",disabled:R.value,onClick:e.withModifiers(P,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(Ct,{class:"h-4 w-4"}),e.unref(x)>0?(e.openBlock(),e.createElementBlock("div",wr,e.toDisplayString(e.unref(x)),1)):e.createCommentVNode("",!0)],10,kr)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[k.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof t.width=="number"?`min-w-[${t.width+32+(e.unref(v).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(u.value),ref_key:"panel",ref:M,onClick:c[4]||(c[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Br,[e.createElementVNode("div",Cr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(S),([f,F])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-schema-"+f,layout:"inline",mode:t.mode,width:t.width?t.width:F==null?void 0:F.width},{ref_for:!0},F,{class:[t.itemClass,F==null?void 0:F.class],"item-class":[t.itemClass,F==null?void 0:F.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(b),(f,F)=>{var Z,Y;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"ignored-slot-"+F,layout:"inline"},{ref_for:!0},f.props,{class:[t.itemClass,(Z=f.props)==null?void 0:Z.class],"item-class":[t.itemClass,(Y=f.props)==null?void 0:Y.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0}),null,16,["class","item-class"])}),128))]),e.createElementVNode("div",Vr,[e.createElementVNode("h3",Er,e.toDisplayString(T.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:L},[e.createElementVNode("span",Nr,[e.createVNode(lt,{class:"h-4 w-4"})]),c[5]||(c[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",Sr,[e.unref(v).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(v),([f,F])=>(e.openBlock(),e.createBlock(ie,e.mergeProps({key:f},{ref_for:!0},{...F,layout:"inline"},{width:t.width?t.width:F==null?void 0:F.width,class:[t.itemClass,F==null?void 0:F.class],"item-class":[t.itemClass,F==null?void 0:F.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[f],"onUpdate:modelValue":Z=>e.unref(n)[f]=Z,onChange:c[0]||(c[0]=Z=>e.unref(V)(Z.name,Z.value)),onClear:c[1]||(c[1]=Z=>{e.unref(w)(Z),e.unref(V)(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(B),(f,F)=>{var Z,Y;return e.openBlock(),e.createBlock(ie,e.mergeProps({key:"slot-"+F,ref_for:!0},{...f.props,layout:"inline"},{class:[t.itemClass,(Z=f.props)==null?void 0:Z.class],"item-class":[t.itemClass,(Y=f.props)==null?void 0:Y.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(n)[f.props.name],"onUpdate:modelValue":ee=>e.unref(n)[f.props.name]=ee,onChange:c[2]||(c[2]=ee=>e.unref(V)(ee.name,ee.value)),onClear:c[3]||(c[3]=ee=>{e.unref(w)(ee),e.unref(V)(ee,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))]),e.unref(x)>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:D},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"},vr=["onClick"],Dr={class:"mr-2 flex items-center gap-1"},jr={class:"font-semibold"},zr={class:"text-xs text-gray-500"},Oe=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(c=>p(c));if(r!==null&&typeof r=="object"){const c=e.toRaw(r),f={};for(const F in c)f[F]=p(c[F]);return f}return r}const n=e.ref();function x(r,c){if(c==null||!r)return c;const f=(r.type||"").toLowerCase();return f==="check"||f==="range"||f==="date"?dt(c):c}function V(r,c){const f=p(r??{}),F=c&&!Array.isArray(c)?c:{};return Object.entries(f).reduce((Z,[Y,ee])=>{const K=F[Y];return Z[Y]=x(K,ee),Z},{})}const w=e.ref({}),d=e.ref({}),S=e.computed(()=>({...a,...l,value:d.value}));e.watch(()=>[a.value,a.schema],async([r])=>{var c,f;if(d.value=V(r??{},w.value),!r||Object.keys(r).length===0){await e.nextTick(),m.value=!0;try{(f=(c=n.value)==null?void 0:c.clearAllFilters)==null||f.call(c,!0)}finally{await e.nextTick(),m.value=!1}}},{deep:!0,immediate:!0});const v=o,b=e.useSlots();function B(r,c){m.value||(c!==void 0?d.value={...d.value,[r]:c}:delete d.value[r],v("change",{data:p(d.value),name:r,value:p(c)}))}function C(r){m.value||(delete d.value[r],v("clear",{data:p(d.value),name:r}),v("change",{data:p(d.value),name:r,value:null}))}function M(){m.value||(d.value={},v("clear",{data:p(d.value),name:"ALL"}),v("change",{data:p(d.value),name:"ALL",value:null}))}const s=e.computed(()=>a.teleportActive),k=e.computed(()=>{const r=nl(d.value,a.exclusiveGroups??[]);return{...a.exclusiveDisabledKeys??{},...r}}),R=e.computed(()=>{const r=w.value;if(!r||typeof r!="object")return r;if(Array.isArray(r)){const F=k.value;return r.map(Z=>({...Z,disabled:!!(Z.disabled||Z.name&&F[Z.name])}))}const c=k.value,f={};return Object.entries(r).forEach(([F,Z])=>{f[F]={...Z,disabled:!!(Z.disabled||c[F])}}),f});function T(){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){w.value={};return}if(Array.isArray(r)&&!r.length){w.value={};return}Array.isArray(r)?w.value=r.filter(c=>c.type).reduce((c,f)=>{if(Object.assign(f,{name:f.name||f.id,type:{datepicker:"date"}[f.type.toLowerCase()]||f.type.toLowerCase(),label:f.label||f.ua}),c[f.name]=f,f.data&&!f.api&&!f.options&&f.parent){const F=d.value[f.parent];Object.assign(f,{api:`/api/suggest/${f.data}${F?`?parent=${F}`:""}`})}return c},{}):(Object.entries(r).forEach(([c,f])=>{Object.assign(f,{name:c||f.name||f.id,type:f.type.toLowerCase()})}),w.value={...r}),d.value=V(d.value,w.value)},{immediate:!0,deep:!0});function y(r){n.value.clearFilter(r),C(r)}function j(){n.value.clearAllFilters(),M()}function u(r){y(r)}function L(r){return dt(r)}function N(r,c){var f,F;return r?((F=(f=r[c]??r.id??r.value??r.key)==null?void 0:f.toString)==null?void 0:F.call(f))??"":""}function E(r,c){var f,F;return r?((F=(f=r[c]??r.text??r.label??r.value??r.id)==null?void 0:f.toString)==null?void 0:F.call(f))??"":""}function P(r){const c=new Map,f=r.valueKey||"id",F=r.labelKey||"text";return(r.options??[]).forEach(Z=>{const Y=N(Z,f),ee=E(Z,F);Y&&c.set(Y,ee||Y)}),c}function A(r,c){if(!r||c===void 0||c===null)return"";const f=L(c);if(!f.length)return"";const F=P(r);return f.map(Z=>F.get(Z)??Z).filter(Boolean).join(", ")}const D=e.computed(()=>Object.entries(d.value).filter(([,r])=>r==null?!1:Array.isArray(r)?r.length>0:typeof r=="string"?r.trim().length>0:!0).map(([r,c])=>{const f=w.value[r],F=(f==null?void 0:f.label)||(f==null?void 0:f.title)||r,Z=A(f,c);return{key:r,label:F,value:Z}}));return e.watch(()=>d.value,r=>{if(a.history){const c=new URL(window.location.href),f=new URLSearchParams(window.location.search);Object.keys(r).length>0?f.set("filter",Object.entries(r).filter(([,F])=>F).map(([F,Z])=>`${F}=${Z}`).join("|")):f.delete("filter"),c.search=decodeURI(f.toString()),window.history.pushState({},"",c)}}),i({clearAllFilters:j,clearFilter:y}),(r,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(T()),e.mergeProps(S.value,{schema:R.value,"exclusive-disabled-keys":k.value,onChange:c[0]||(c[0]=f=>B(f.name,f.value)),onClear:c[1]||(c[1]=f=>C(f.name)),onClearAll:M,ref_key:"filterRef",ref:n}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:2},[e.unref(b).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&&D.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(D.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:F=>u(f.key)},[e.createElementVNode("span",Dr,[e.createElementVNode("span",jr,e.toDisplayString(f.label),1),e.createElementVNode("span",zr,"· "+e.toDisplayString(f.value),1)]),c[2]||(c[2]=e.createElementVNode("span",{class:"g424j flex flex-col jkwm1 items-center b9gop aqyoh ad7q2 kghwt t4363 q7nhl dark:text-emerald-500"},[e.createElementVNode("svg",{class:"e731n u28hb",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})])],-1))],8,vr))),128))])],8,["to"])):e.createCommentVNode("",!0)],64))}});Oe.install=function(t){t.component("Filter",Oe),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"},Fr=["disabled"],$r={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"},Ur=["onClick"],Ir={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"},rt=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,v=>{m.value=v});const n=e.computed(()=>Math.ceil(o.total/o.pageSize)),x=e.computed(()=>{const b=Math.floor(3.5);let B=l.value-b,C=l.value+b;B<1&&(C+=1-B,B=1),C>n.value&&(B-=C-n.value,C=n.value),B=Math.max(1,B);const M=[];for(let s=B;s<=C;s+=1)M.push(s);return M}),V=()=>{l.value>1&&d(l.value-1)},w=()=>{l.value<n.value&&d(l.value+1)},d=v=>{l.value=v,a("update:currentPage",v),a("pageChange",v)},S=(v=m.value)=>{m.value=v,p.value=!1,a("update:pageSize",m.value),a("update:currentPage",1),a("pageSizeChange",m.value)};return e.watch(()=>o.currentPage,v=>{l.value=v}),(v,b)=>(e.openBlock(),e.createElementBlock("nav",Pr,[e.createElementVNode("div",Ar,[e.createElementVNode("button",{type:"button","aria-label":"Previous",onClick:V,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"},[...b[1]||(b[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,Fr),e.createElementVNode("div",$r,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,B=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:B,onClick:C=>d(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,Rr))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:w,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"},[...b[2]||(b[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],B=>e.createElementVNode("button",{type:"button",key:B,onClick:C=>S(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),m.value===B?(e.openBlock(),e.createElementBlock("svg",Ir,[...b[3]||(b[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,Ur)),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:b[0]||(b[0]=B=>p.value=!p.value)},[e.createTextVNode(e.toDisplayString(m.value)+" ",1),b[4]||(b[4]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down",height:"16",width:"16"},[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"})],-1))])])])]))}}),he=(t,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 at=he(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=he(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=he(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=he(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=he(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,_e=he(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"),x=e.ref(!1),V=e.ref(0);let w=null,d=0,S=0;function v(L,N,E){return Math.max(L,Math.min(E,N))}function b(L){if(!L)return 0;const N=Number.parseFloat(L);return Number.isFinite(N)?N:0}function B(){if(typeof window>"u")return 0;const L=b(p.value);return Math.max(0,window.innerHeight-L)}function C(){const L=n.value==="custom",N=L?ha:xa,E=L?_t:Mt,P=L?40:60;if(typeof window>"u")return Math.max(E,N);const A=window.innerHeight*(P/100);return v(E,N,A)}function M(){return n.value==="custom"?_t:Mt}function s(L){const N=B(),E=C(),P=M(),A=m.value==="full"?N:E;return N<=0?Math.max(P,A):v(P,A-L,N)}const k=e.computed(()=>({height:`${s(V.value)}px`}));e.watch(()=>a.open,L=>{L&&(m.value=a.initialVariant??"full"),x.value=!1,V.value=0}),e.watch(()=>a.initialVariant,L=>{a.open&&L&&(m.value=L)});function R(){m.value!=="full"&&(m.value="full",l("expand")),x.value||(V.value=0)}function T(){m.value!=="peek"&&(m.value="peek",l("collapse")),x.value||(V.value=0)}function y(L){if(L.pointerId!==w)return;L.cancelable&&L.preventDefault();const N=L.clientY-d;V.value=S+N}function j(L){if(L.pointerId!==w)return;window.removeEventListener("pointermove",y),window.removeEventListener("pointerup",j),window.removeEventListener("pointercancel",j),w=null;const N=L.clientY-d,E=S+N;V.value=E;const P=s(E),D=(typeof window<"u"?window.innerHeight:0)*.6,r=D>0&&P>=D,c=D>0&&!r;if(!(m.value==="peek"&&r||m.value==="full"&&c)){x.value=!0;return}x.value=!1,V.value=0,m.value==="peek"&&r?R():m.value==="full"&&c&&T()}function u(L){var N,E;L.button!==0&&L.pointerType==="mouse"||(L.cancelable&&L.preventDefault(),w=L.pointerId,d=L.clientY,S=V.value,x.value=!0,(E=(N=L.currentTarget).setPointerCapture)==null||E.call(N,L.pointerId),window.addEventListener("pointermove",y,{passive:!1}),window.addEventListener("pointerup",j),window.addEventListener("pointercancel",j))}return e.onBeforeUnmount(()=>{window.removeEventListener("pointermove",y),window.removeEventListener("pointerup",j),window.removeEventListener("pointercancel",j)}),i({expand:R,collapseToPeek:T}),(L,N)=>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:N[0]||(N[0]=e.withModifiers(E=>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":"",x.value?"vs-mobile-modal-shell__panel--dragging":""]]),style:e.normalizeStyle(k.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},[...N[5]||(N[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:N[1]||(N[1]=e.withModifiers(()=>{},["stop"])),onClick:N[2]||(N[2]=E=>l("close")),"aria-label":"Close"},[...N[6]||(N[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(L.$slots,"peek",{expand:R,collapse:T},()=>[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:R},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:N[3]||(N[3]=e.withModifiers(()=>{},["stop"])),onClick:N[4]||(N[4]=E=>l("close")),"aria-label":"Close"},[...N[7]||(N[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(L.$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],it=["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:x=!1,circleRadius:V=wa,circleStrokeWidth:w=1,geometryZoomBreakpoint:d,polygonZoom:S}=n,v=d??S??m,b=v-.01,B=v,C=Lt(t,l,m,p);i.addSource("vector",{type:"vector",tiles:[C],minzoom:0,maxzoom:22});const M=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],s=[">",M,1],k=["<=",M,1],R=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],T=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],y=["coalesce",["get","point_count_abbreviated"],["get","cluster_count_abbreviated"],["get","clusterCountAbbreviated"],M];i.addLayer({id:"vector-clusters",type:"circle",source:"vector","source-layer":t,filter:s,maxzoom:12,paint:{"circle-color":["step",M,"#51bbd6",100,"#f1f075",750,"#f28cb1"],"circle-radius":["step",M,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",y],"text-font":["Noto Sans Regular"],"text-size":12},paint:{"text-color":"#1f2937"}});const j={id:"vector-circle",type:"circle",source:"vector","source-layer":t,filter:["all",k,R],paint:{"circle-color":o,"circle-stroke-color":a||"#eee","circle-stroke-width":w,"circle-radius":V}};x||(j.maxzoom=b),i.addLayer(j),i.addLayer({id:"vector-fill",type:"fill",minzoom:B,source:"vector","source-layer":t,filter:T,paint:{"fill-color":o,"fill-opacity":.6}}),i.addLayer({id:"vector-stroke",type:"line",minzoom:B,source:"vector","source-layer":t,filter:T,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"},va={class:"flex-1 flex justify-between items-center min-w-0 ml-1"},Da={class:"text-[0.875rem]"},ja={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},za={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]"},Fa={key:0,class:"text-[0.8rem] text-stone-500 shrink-0 ml-2"},$a={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"},Ua={class:"flex justify-start items-center gap-2"},Ia={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"},Me="vector-clusters",Le="selected-geometry-source",Ue="selected-geometry-fill",Ie="selected-geometry-line",$e="selected-geometry-point",xe="vector-highlight-circle",Be="vector-highlight-fill",vt=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),x=e.ref(!1),V=e.ref(!1),w=e.ref(!1),d=e.ref(!1);let S=null,v=null;const b=["vector-circle","vector-fill","vector-stroke"],B=e.ref(!1);function C(){V.value=!V.value}const M=e.computed(()=>{var h,$;return(($=(h=p==null?void 0:p.appContext.config.globalProperties)==null?void 0:h.$settings)==null?void 0:$.basemaps)||[]}),s=e.computed(()=>(o.layers&&o.layers.length?o.layers:M.value.length?M.value:Ca).map(($,H)=>{var re;const z=$.id||((re=$.name)==null?void 0:re.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${H}`,W=$.name||$.id||`layer-${H}`;return{...$,id:z,name:W}})),k=e.ref(""),R=e.computed(()=>s.value.find(h=>h.id===k.value)||s.value[0]);e.watch(s,h=>{var $;h.length&&(!k.value||!h.some(H=>H.id===k.value))&&(k.value=(($=h[0])==null?void 0:$.id)||"")},{immediate:!0});function T(h){return h?h.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const y=e.ref(null),j=e.ref(null),u=e.computed(()=>o.showPopup!==!1),L=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"],N=["#0a7a34","#7c3aed","#d97706","#dc2626"],E=o.strokeAttr,P=e.ref([]),A=e.ref([]);let D=0;const r=[30,48];let c=null;const f=["in",["geometry-type"],["literal",["Point","MultiPoint"]]],F=["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]];let Z=[];function Y(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const h=new URLSearchParams(window.location.search),$=Number(h.get("z")),H=Number(h.get("y")),z=Number(h.get("x")),W=h.has("x")&&h.has("y"),re=h.has("z");return{zoom:re?$:null,center:W?[z,H]:null,hasQuery:W||re}}function ee(h,$){if(!h||typeof window>"u")return;const H=new URL(window.location.href);H.searchParams.set("z",$.toFixed(2)),H.searchParams.set("x",h[0].toFixed(6)),H.searchParams.set("y",h[1].toFixed(6)),window.history.replaceState({},"",H)}let K=!1;function U(){if(!l||!K)return;const h=l.getCenter();ee([h.lng,h.lat],l.getZoom())}const O=()=>{K||(K=!0),U()};function q(){const h=o.geometryZoomBreakpoint;if(h==null)return null;const $=Number(h);return Number.isNaN($)?null:$}function Q(){const h=q();return h??(typeof o.polygonZoom=="number"?o.polygonZoom:typeof o.clusterZoom=="number"?o.clusterZoom:12)}function ne(){return o.pointZoom??12}async function ge(h=o.filter){const $=++D,H=new URLSearchParams;h&&H.set("filter",h);const z=H.toString();try{const W=new URL(`/api/data/${o.table}/${o.colorAttr}`,window.location.origin);z&&(W.search=z);const re=await fetch(W.toString()).then(X=>X.json());if($!==D)return;if(P.value=re.rows||[],P.value.forEach((X,J)=>{if(X.id==null||X.id===""){X.color="#808080";return}X.color||Object.assign(X,{color:L[J%10]})}),A.value=[],E){const X=new URL(`/api/data/${o.table}/${E}`,window.location.origin);z&&(X.search=z);const J=await fetch(X.toString()).then(oe=>oe.json());if($!==D)return;A.value=J.rows||[];let le=0;A.value.forEach(oe=>{oe.color||!oe.id||(Object.assign(oe,{color:N[le%N.length]}),le+=1)})}}catch(W){if($!==D)return;P.value=[],A.value=[],console.error("Failed to load legend data",W)}}function de(h){var $;return!h||typeof h!="object"?null:h.type==="FeatureCollection"?de(($=h.features)==null?void 0:$[0]):h.type==="Feature"?de(h.geometry):h.type&&h.coordinates?h:null}function Re(h){var H,z,W;if(!(h!=null&&h.coordinates))return null;const $=h.coordinates;switch(h.type){case"Point":return Array.isArray($)&&typeof $[0]=="number"?$:null;case"MultiPoint":case"LineString":return Array.isArray($==null?void 0:$[0])&&typeof $[0][0]=="number"?$[0]:null;case"MultiLineString":case"Polygon":return Array.isArray((H=$==null?void 0:$[0])==null?void 0:H[0])&&typeof $[0][0][0]=="number"?$[0][0]:null;case"MultiPolygon":return Array.isArray((W=(z=$==null?void 0:$[0])==null?void 0:z[0])==null?void 0:W[0])&&typeof $[0][0][0][0]=="number"?$[0][0][0]:null;default:return null}}function Ge(){var h;return de((h=o.selectedFeature)==null?void 0:h.geom)}function Ee(h){return h==null||h===""?["==",["literal",1],0]:["==",["to-string",["get","id"]],String(h)]}function ve(){return o.highlightCircleColor??"#ffffff"}function We(){var $,H;const h=Ge();return h?{mode:"geometry",geometry:h}:(($=o.selectedFeature)==null?void 0:$.id)!=null&&((H=o.selectedFeature)==null?void 0:H.id)!==""?{mode:"id",geometry:null}:{mode:"none",geometry:null}}function ct(){[Ue,Ie,$e,xe,Be].forEach(h=>{l!=null&&l.getLayer(h)&&l.removeLayer(h)}),l!=null&&l.getSource(Le)&&l.removeSource(Le)}function me(h){return{id:h.id,type:h.type,source:h.source,...h.sourceLayer?{"source-layer":h.sourceLayer}:{},...h.filter?{filter:h.filter}:{},...h.minzoom!=null?{minzoom:h.minzoom}:{},...h.maxzoom!=null?{maxzoom:h.maxzoom}:{},paint:h.paint}}function qe(){const h=ve(),$=o.highlightCircleRadius??o.circleRadius??it;return[me({id:Ue,type:"fill",source:Le,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon"]]],paint:{"fill-color":h,"fill-opacity":.12,"fill-opacity-transition":{duration:800,delay:0}}}),me({id:Ie,type:"line",source:Le,filter:["in",["geometry-type"],["literal",["Polygon","MultiPolygon","LineString","MultiLineString"]]],paint:{"line-color":h,"line-width":4,"line-opacity":.95,"line-opacity-transition":{duration:800,delay:0}}}),me({id:$e,type:"circle",source:Le,filter:["in",["geometry-type"],["literal",["Point","MultiPoint"]]],paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":h,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":$,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}})]}function Qe(){var W,re;const h=ve(),$=o.highlightCircleRadius??o.circleRadius??it,H=Q(),z=H!=null?H-.01:24;return[me({id:xe,type:"circle",source:"vector",sourceLayer:o.table,filter:["all",Ee((W=o.selectedFeature)==null?void 0:W.id),f],maxzoom:o.mixedGeom?void 0:z,paint:{"circle-color":"#ffffff","circle-opacity":0,"circle-stroke-color":h,"circle-stroke-width":3,"circle-stroke-opacity":.95,"circle-radius":$,"circle-stroke-opacity-transition":{duration:800,delay:0},"circle-radius-transition":{duration:800,delay:0}}}),me({id:Be,type:"line",source:"vector",sourceLayer:o.table,filter:["all",Ee((re=o.selectedFeature)==null?void 0:re.id),F],minzoom:H??24,paint:{"line-color":h,"line-width":4,"line-opacity":.9,"line-opacity-transition":{duration:800,delay:0}}})]}function Ce(){var z,W;if(!l)return"none";const{mode:h,geometry:$}=We(),H=h==="geometry"?qe():h==="id"?Qe():[];return ct(),h==="geometry"&&l.addSource(Le,{type:"geojson",data:{type:"FeatureCollection",features:[{type:"Feature",id:(z=o.selectedFeature)==null?void 0:z.id,properties:{id:(W=o.selectedFeature)==null?void 0:W.id},geometry:$}]}}),H.forEach(re=>l.addLayer(re)),h}function De(){!l||!Z.length||(l.getLayer("vector-circle")&&l.setPaintProperty("vector-circle","circle-color",Z),l.getLayer("vector-fill")&&l.setPaintProperty("vector-fill","fill-color",Z))}function je(){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),Ce())}function ze(h){if(Pe(),!l||h==="none")return;let $=!0;const H=o.highlightCircleRadius??o.circleRadius??it;c=window.setInterval(()=>{$=!$;const z=$?.95:.35,W=$?H:H*1.12;h==="geometry"&&(l!=null&&l.getLayer(Ue)&&l.setPaintProperty(Ue,"fill-opacity",$?.14:.04),l!=null&&l.getLayer(Ie)&&l.setPaintProperty(Ie,"line-opacity",z),l!=null&&l.getLayer($e)&&(l.setPaintProperty($e,"circle-stroke-opacity",z),l.setPaintProperty($e,"circle-radius",W))),h==="id"&&(l!=null&&l.getLayer(xe)&&(l.setPaintProperty(xe,"circle-stroke-opacity",z),l.setPaintProperty(xe,"circle-radius",W)),l!=null&&l.getLayer(Be)&&l.setPaintProperty(Be,"line-opacity",z))},800)}function Pe(){c&&(clearInterval(c),c=null)}function Ye(){l&&(l.setCenter(o.center||r),l.setZoom(o.zoom||5))}function ye(){if(!(l!=null&&l.setLayerZoomRange))return;const h=o.minZoom??0,$=Math.min((o.maxZoom??18)+.01,24),z=(o.clusterZoom??12)-.01,W=Q(),re=W-.01,X=B.value&&!o.mixedGeom?re:$,J=W;o.alwaysShowPolygon?(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",h,0),l.getLayer(xe)&&l.setLayerZoomRange(xe,h,0),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",h,$),l.getLayer(Be)&&l.setLayerZoomRange(Be,h,$),l.getLayer(Me)&&l.setLayerZoomRange(Me,h,0),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",h,0)):(l.getLayer("vector-circle")&&l.setLayerZoomRange("vector-circle",h,X),l.getLayer(xe)&&l.setLayerZoomRange(xe,h,X),l.getLayer("vector-fill")&&l.setLayerZoomRange("vector-fill",J,$),l.getLayer("vector-stroke")&&l.setLayerZoomRange("vector-stroke",J,$),l.getLayer(Be)&&l.setLayerZoomRange(Be,J,$),l.getLayer(Me)&&l.setLayerZoomRange(Me,h,z),l.getLayer("vector-cluster-count")&&l.setLayerZoomRange("vector-cluster-count",h,z))}function Ae(){if(l!=null&&l.getSource("vector")){try{const $=l.querySourceFeatures("vector",{sourceLayer:o.table}).some(H=>{var W;const z=(W=H.geometry)==null?void 0:W.type;return z==="Polygon"||z==="MultiPolygon"});B.value=$}catch{}ye()}}const Fe=Y();K=Fe.hasQuery,e.onMounted(async()=>{await ge(),m=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const h=R.value;if(!h)return;const $=Fe.center||o.center||r,H=Fe.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:$,zoom:H,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),a("update:map",l);const z=o.mobilePeekControls?"bottom-right":"top-right";if(l.addControl(new maplibregl.NavigationControl,z),o.mobilePeekControls){const X={onAdd:()=>{const J=document.createElement("div");return S=J,v=e.createApp(ka,{onOpenLayers:()=>{w.value=!0},onOpenLegend:()=>{d.value=!0}}),v.mount(J),J},onRemove:()=>{v==null||v.unmount(),v=null,S=null}};l.addControl(X,"bottom-right"),l.once("render",()=>{if(!S)return;const J=l.getContainer(),le=J.querySelector(".maplibregl-ctrl-bottom-right"),oe=J.querySelector(".maplibregl-ctrl-zoom-in"),ue=oe==null?void 0:oe.closest(".maplibregl-ctrl-group");!le||!ue||S.parentElement===le&&(le.removeChild(S),le.insertBefore(S,ue.nextSibling))})}l.on("moveend",O),l.on("zoomend",O),K&&U(),l.on("load",()=>{l==null||l.resize(),x.value=!0;const X=P.value.filter(g=>g.id!=null&&g.id!=="").reduce((g,_)=>[String(_.id),_.color].concat(g),[]),J=["match",["to-string",["get",o.colorAttr]],...X,"#808080"],le=(A.value||[]).filter(g=>g.id!=null&&g.id!=="").reduce((g,_)=>[String(_.id),_.color].concat(g),[]),oe=E?["match",["to-string",["get",E]],...le,"rgba(0,0,0,0)"]:"rgba(0,0,0,0)";Z=J;const ue=q();Ba(o.table,l,J,oe,o.filter,o.clusterZoom,ne(),{mixedGeom:o.mixedGeom,circleRadius:o.circleRadius,circleStrokeWidth:o.circleStrokeWidth,geometryZoomBreakpoint:ue??void 0,polygonZoom:ue==null?o.polygonZoom:void 0}),ze(Ce()),De(),je(),ye(),l.on("sourcedata",g=>{g.sourceId==="vector"&&g.isSourceLoaded&&Q()!=null&&Ae()})});const W=X=>{var le,oe;const J=(le=X.features)==null?void 0:le[0];(oe=J==null?void 0:J.properties)!=null&&oe.id&&a("update:modelValue",J.properties.id)};b.forEach(X=>{l.on("click",X,W)}),l.on("click",Me,X=>{var oe;const J=(oe=X.features)==null?void 0:oe[0];if(!J)return;const le=Math.min(l.getZoom()+2,l.getMaxZoom());l.easeTo({center:Re(J.geometry)||X.lngLat,zoom:le})}),[...b,Me].forEach(X=>{l.on("mouseenter",X,()=>{l.getCanvas().style.cursor="pointer"}),l.on("mouseleave",X,()=>{l.getCanvas().style.cursor=""})}),l.on("mousemove",X=>{var ue,g;if(!u.value){(ue=m==null?void 0:m.remove)==null||ue.call(m);return}if(!m)return;const J=b.filter(_=>l.getLayer(_));if(!J.length){m.remove();return}const le=l.queryRenderedFeatures(X.point,{layers:J});if(!le||!le.length){m.remove();return}const oe=le[0];j.value=oe.properties,m.setLngLat(X.lngLat).setHTML((g=y.value)==null?void 0:g.innerHTML).addTo(l)})}),e.watch(()=>o.center,h=>{l&&l.setCenter(h||r)}),e.watch(()=>o.zoom,h=>{l&&l.setZoom(h)}),e.watch(()=>o.minZoom,h=>{l&&(l.setMinZoom(h??3),ye())}),e.watch(()=>o.maxZoom,h=>{l&&(l.setMaxZoom(h??18),ye())});function be(h,$,H){if(!(l!=null&&l.getSource("vector")))return;const z=Lt(o.table,h??o.filter,$??o.clusterZoom??12,ne());l.getSource("vector").setTiles([z])}return e.watch(()=>o.filter,h=>{be(h),ge(h)}),e.watch(()=>o.clusterZoom,h=>{be(void 0,h),ye()}),e.watch(()=>o.pointZoom,()=>{be()}),e.watch(()=>o.geometryZoomBreakpoint,()=>{be(),ye()}),e.watch(()=>o.alwaysShowPolygon,()=>{ye(),be()}),e.watch(()=>o.polygonZoom,()=>{Ae()}),e.watch(()=>o.mixedGeom,()=>{ye()}),e.watch(()=>[o.circleRadius,o.circleStrokeWidth,o.highlightCircleRadius,o.highlightCircleColor],()=>{je()}),e.watch(()=>{var h,$;return[(h=o.selectedFeature)==null?void 0:h.id,($=o.selectedFeature)==null?void 0:$.geom]},()=>{l&&ze(Ce())},{immediate:!0,deep:!0}),e.watch(k,(h,$)=>{if(!l||!h)return;const H=s.value.find(re=>re.id===h);if(!H)return;l.getLayer($)&&l.removeLayer($),l.getSource($)&&l.removeSource($);const z=`${$}-overlay`;l.getLayer(z)&&l.removeLayer(z),l.getSource(z)&&l.removeSource(z),l.addSource(h,{type:"raster",tiles:[H.url],tileSize:256}),H.overlayUrl&&l.addSource(`${h}-overlay`,{type:"raster",tiles:[H.overlayUrl],tileSize:256});const W=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},W),H.overlayUrl&&l.addLayer({id:`${h}-overlay`,type:"raster",source:`${h}-overlay`,minzoom:0,maxzoom:19},W)}),e.onBeforeUnmount(()=>{Pe(),l&&(l.off("moveend",O),l.off("zoomend",O),l.remove())}),(h,$)=>{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:Ye},[...$[3]||($[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?V.value?"Згорнути легенду":"Розгорнути легенду":void 0,"aria-expanded":o.isCollapsible?String(V.value):void 0,onClick:$[0]||($[0]=z=>o.isCollapsible?C():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,[V.value?(e.openBlock(),e.createElementBlock("svg",Sa,[...$[4]||($[4]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",_a,[...$[5]||($[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&&!V.value?{maxHeight:"0",padding:"0",margin:"0",opacity:"0"}:{})},[e.createElementVNode("div",{class:e.normalizeClass(["p-[10px]",V.value&&(P.value||[]).length?"pt-0":"pt-2"])},[(A.value||[]).some(z=>z==null?void 0:z.id)?(e.openBlock(),e.createElementBlock("div",Ma,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((A.value||[]).filter(z=>z==null?void 0:z.id),z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${z.id}`},[e.createElementVNode("div",La,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:z.color||"#808080"})},null,4),e.createElementVNode("div",va,[e.createElementVNode("span",Da,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",ja,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",za,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",Pa,[e.createElementVNode("span",Aa,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",Fa,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))],2)],4)],64)):(e.openBlock(),e.createElementBlock("div",$a,[(A.value||[]).some(z=>z==null?void 0:z.id)?(e.openBlock(),e.createElementBlock("div",Ra,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((A.value||[]).filter(z=>z==null?void 0:z.id),z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:`stroke-${z.id}`},[e.createElementVNode("div",Za,[e.createElementVNode("span",{class:"inline-block w-[22px] border-t-[4px] border-dashed",style:e.normalizeStyle({borderTopColor:z.color||"#808080"})},null,4),e.createElementVNode("div",Ta,[e.createElementVNode("span",Ka,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",Oa,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",Ua,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",Ia,[e.createElementVNode("span",Ha,e.toDisplayString(z.text??"Відсутні дані"),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",Ga,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))]))],6),e.createElementVNode("div",{ref_key:"popupDiv",ref:y,style:{display:"none"}},[e.renderSlot(h.$slots,"default",{hoverData:j.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,z=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:z.id,title:z.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:k.value===z.id}]),onClick:W=>k.value=z.id},[e.createElementVNode("img",{src:z.preview||T(z.url),class:"vs-map-slot-layers__image"},null,8,Qa),e.createElementVNode("div",Ya,e.toDisplayString(z.name),1)],10,qa)),[[H,z.name]])),128))])),o.mobilePeekControls?(e.openBlock(),e.createBlock(_e,{key:1,open:w.value,title:"Шари","initial-variant":"peek","peek-mode":"clip-full","allow-expand":!1,onClose:$[1]||($[1]=z=>w.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,z=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:z.id,title:z.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:k.value===z.id}]),onClick:W=>k.value=z.id},[e.createElementVNode("img",{src:z.preview||T(z.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(z.name),1)],10,ei)),[[H,z.name]])),128))])])]),_:1},8,["open"])):e.createCommentVNode("",!0),o.mobilePeekControls?(e.openBlock(),e.createBlock(_e,{key:2,open:d.value,title:"Легенда","initial-variant":"peek","peek-mode":"clip-full","peek-height-px":200,onClose:$[2]||($[2]=z=>d.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(P.value||[],z=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:z.id},[e.createElementVNode("div",ci,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+z.color)},null,4),e.createElementVNode("div",di,[e.createElementVNode("span",mi,e.toDisplayString(z.text),1),z.count!=null?(e.openBlock(),e.createElementBlock("span",pi,e.toDisplayString(z.count),1)):e.createCommentVNode("",!0)])])]))),128))])])])])]),_:1},8,["open"])):e.createCommentVNode("",!0)],512)),[[e.vShow,x.value]])}}}),Dt={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=he(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=he(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=he(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"},vi={key:0,class:"absolute inset-0 z-20 flex flex-col items-center justify-center bg-black/40 backdrop-blur-[2px]"},Di={class:"flex flex-col min-h-0 gap-4"},ji={class:"flex flex-col min-h-0 flex-1"},zi={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"},Fi={class:"flex flex-col flex-1 min-h-0 overflow-hidden"},$i={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"},Ui=["onClick"],Ii={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]"},jt="(max-width: 999px)",He="0px",st=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 W,re,X,J,le,oe,ue;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=Dt);function a(g){var _,G,I;if(!(g!=null&&g.coordinates))return null;switch(g.type){case"Point":return g.coordinates;case"MultiPoint":case"LineString":return g.coordinates[0];case"MultiLineString":case"Polygon":return(_=g.coordinates[0])==null?void 0:_[0];case"MultiPolygon":return(I=(G=g.coordinates[0])==null?void 0:G[0])==null?void 0:I[0];default:return null}}function l(g){switch(g==null?void 0:g.type){case"MultiPoint":case"LineString":return g.coordinates;case"Polygon":return g.coordinates[0];case"MultiPolygon":return g.coordinates.flatMap(_=>_[0]);case"MultiLineString":return g.coordinates.flat();default:return[]}}function m(g){if(!g||g.type==="Point"||g.type==="MultiPoint")return null;const _=l(g);if(!_.length)return null;let G=1/0,I=1/0,ae=-1/0,te=-1/0;return _.forEach(([se,Ne])=>{se<G&&(G=se),Ne<I&&(I=Ne),se>ae&&(ae=se),Ne>te&&(te=Ne)}),[[G,I],[ae,te]]}function p(g){return(g==null?void 0:g.type)==="Polygon"||(g==null?void 0:g.type)==="MultiPolygon"}const n=t,x=e.useSlots(),V=e.computed(()=>n.mobileFilterView??"vertical"),w=e.computed(()=>n.mobileFilterLimit!==void 0?{limit:n.mobileFilterLimit}:{}),d=e.useModel(t,"filterState"),S=i;function v(){const g=Object.fromEntries(Object.entries(E.value).map(([_,G])=>[_,Array.isArray(G)?[...G]:G]));d.value={state:g}}const b=e.ref(0);b.value=n.initTotal??((W=n.rows)==null?void 0:W.length)??0;const B=e.ref(""),C=e.ref(null),M=e.ref(!0),s=e.ref(((re=n.rows)==null?void 0:re.length)===1),k=e.ref(!1);let R=null;const T=e.ref(!1);typeof window<"u"&&(R=window.matchMedia(jt),T.value=R.matches,k.value=!0);const y=e.ref(n.rows),j=e.ref(1),u=e.ref(20),L=e.ref(n.filters||[]),N=e.ref(""),E=e.ref({}),P=e.computed(()=>Object.values(E.value).some(g=>Array.isArray(g)?g.some(_=>_!=null&&_!==""):g&&typeof g=="object"?Object.values(g).some(_=>_!=null&&_!==""):g===null?!0:g!==void 0&&g!==""));function A(g){return g&&(g.geom?g:{...g,geom:(g==null?void 0:g[n.geom])??null})}const D=e.ref(((X=n.rows)==null?void 0:X.length)===1?A(n.rows[0]):{}),r=e.ref(((J=n.rows)==null?void 0:J.length)===1?n.rows[0].id:""),c=e.ref(((le=n.rows)==null?void 0:le.length)===1?a((oe=n.rows[0])==null?void 0:oe[n.geom]):n.center||null),f=e.ref(((ue=n.rows)==null?void 0:ue.length)===1?14:n.zoom||5),F=e.ref(!1),Z=e.ref(!1),Y=e.ref(""),ee=e.ref(!1);let K=!1;const U=e.ref(null),O=e.ref(!1);function q(){if(!R)return;const g=T.value;T.value=R.matches,g!==T.value&&(U.value=null,e.nextTick(()=>{var _,G;(G=(_=C.value)==null?void 0:_.resize)==null||G.call(_)}))}const Q=e.ref(null),ne=e.ref(null),ge=e.computed(()=>{if(n.alwaysShowPolygon)return 0;if(ne.value!=null)return ne.value;if(n.geometryZoomBreakpoint!=null){const g=Number(n.geometryZoomBreakpoint);if(!Number.isNaN(g))return g}return 12}),de=g=>(g==null?void 0:g.geom)??(g==null?void 0:g[n.geom])??null,Re=e.computed(()=>s.value&&!de(D.value)),Ge=e.computed(()=>s.value&&!ee.value?D.value:null),Ee=e.computed({get:()=>Re.value?"":r.value,set:g=>{r.value=g,T.value&&(g?(O.value=!0,U.value="details"):U.value==="details"&&(U.value=null))}});function ve(){var se,Ne;if(n.alwaysShowPolygon){Q.value=null,ne.value=null;return}const g=de(D.value);if(!n.polygonFitBbox||!C.value||!g){Q.value=null,ne.value=null;return}const _=g;if(!p(_)){Q.value=null,ne.value=null;return}const G=m(_);if(!G){Q.value=null,ne.value=null;return}const I=(Ne=(se=C.value).cameraForBounds)==null?void 0:Ne.call(se,G,{padding:20,maxZoom:16}),ae=I==null?void 0:I.zoom,te=n.clusterZoom??12;if(ae!=null&&ae<te){const zt=Math.floor(ae);Q.value=zt,ne.value=zt}else Q.value=null,ne.value=null}function We(g){return Object.entries(g).filter(([,_])=>Array.isArray(_)?_.length:_).map(([_,G])=>`${_}=${G}`).join("|")}function ct(){var I,ae,te,se;if(!C.value||!Z.value)return;const g=(ae=(I=C.value).getBounds)==null?void 0:ae.call(I);if(!g)return;const _=(te=g.getSouthWest)==null?void 0:te.call(g),G=(se=g.getNorthEast)==null?void 0:se.call(g);!_||!G||(Y.value=`${_.lng} ${_.lat},${G.lng} ${G.lat}`)}async function me(g=!1){await e.nextTick();const _=We(E.value);N.value=_,Z.value?ct():Y.value="";try{const G={search:B.value,limit:u.value.toString(),page:j.value.toString(),filter:_,...Z.value&&Y.value?{bbox:Y.value}:{}},I=new URL(`/api/data/${n.table}`,window.location.origin),ae=new URLSearchParams(G).toString(),te=await fetch(`${I.toString()}?${ae}`).then(se=>se.json());Q.value=null,ne.value=null,s.value=!1,F.value||(f.value=n.zoom||5),y.value=te==null?void 0:te.rows,F.value=!1,ee.value=!1,b.value=te.filtered,Nt({page:j.value,filter:_,id:"",filterByView:Z.value})}catch(G){console.error(G.message)}}async function qe(g=!1){if(r.value){await e.nextTick();try{const _=new URL(`/api/data/${n.table}/${r.value}`,window.location.origin),G=await fetch(_.toString()).then(te=>te.json());let I;G.rows.length>1?I=G.rows.find(te=>te.id===r.value):[I]=G.rows,D.value=A(I);const ae=de(D.value);if(!g&&ae){const te=n.polygonFitBbox?m(ae):null;te&&C.value?C.value.fitBounds(te,{padding:20,maxZoom:16,duration:500}):(c.value=a(ae),f.value=14)}else!g&&ae&&(c.value=a(ae),f.value=14);ve(),s.value=!0,F.value=!1,b.value=G.filtered,Nt({page:j.value,filter:We(E.value),id:r.value,filterByView:Z.value})}catch(_){console.error(_.message)}}}const Qe=St(()=>me(),300),Ce=St(()=>{r.value||me(!0)},400);function De(){!C.value||K||!Z.value||r.value||(C.value.on("moveend",Ce),C.value.on("zoomend",Ce),K=!0)}function je(){!C.value||!K||(C.value.off("moveend",Ce),C.value.off("zoomend",Ce),K=!1)}function ze(g){u.value=g,j.value=1,me()}function Pe(g){j.value=g,me()}function Ye(g){E.value=g.data,j.value=1,v(),r.value?(ee.value=!0,r.value=""):(ee.value=!1,me()),S("change:filter",g)}async function ye(){if(n.filters)return;const _=await(await fetch(`/api/filter/${n.table}`)).json();L.value=_.list}function Ae(){E.value={},B.value="",ee.value=!1,v(),me()}e.onMounted(async()=>{var G,I;R||(R=window.matchMedia(jt)),k.value||(T.value=R.matches,k.value=!0),R.addEventListener("change",q),T.value&&(M.value=!1);const g=new URLSearchParams(window.location.search);j.value=Number(g.get("page"))||1,u.value=Number(g.get("limit"))||u.value,r.value=g.get("id")||"",s.value=!!r.value,N.value=g.get("filter")||"";const _=g.get("bbox");_!==null?Z.value=_!=="0":Z.value=!1,(I=(G=g.get("filter"))==null?void 0:G.split("|"))==null||I.forEach(ae=>{const[te,se]=ae.split("=");te&&(E.value[te]=se!=null&&se.includes(",")?se.split(","):[se])}),await ye(),v(),r.value?qe():y.value||me()}),e.onBeforeUnmount(()=>{R==null||R.removeEventListener("change",q),je()});function Fe(){F.value=!0,s.value=!1,D.value=null,r.value="",ee.value=!1,Q.value=null,ne.value=null,Z.value&&De()}function be(g){U.value=g}function h(){U.value=null}async function $(){var g,_;await e.nextTick(),(_=(g=C.value)==null?void 0:g.resize)==null||_.call(g)}function H(){Fe(),h()}function z(g){O.value=!0;const _=de(A(g));if(_){const G=n.polygonFitBbox?m(_):null;G&&C.value?C.value.fitBounds(G,{padding:20,maxZoom:16,duration:500}):(c.value=a(_),f.value=16)}else g!=null&&g[n.geom]&&(c.value=a(g[n.geom]),f.value=16);D.value=A(g),r.value=g.id,ve(),T.value&&(U.value="details")}return e.watch(U,async()=>{var g,_;await e.nextTick(),(_=(g=C.value)==null?void 0:g.resize)==null||_.call(g)}),e.watch(C,g=>{S("update:map",g),g&&Z.value&&De(),g&&n.polygonFitBbox&&de(D.value)&&ve()}),e.watch(B,g=>{g||me()}),e.watch(r,()=>{r.value?(je(),qe()):(me(),Z.value&&De())}),e.watch(Z,()=>{Z.value?De():je(),me()}),(g,_)=>{var G;return k.value?(e.openBlock(),e.createElementBlock("section",{key:0,class:e.normalizeClass(T.value?"":"pt-[20px]")},[T.value?(e.openBlock(),e.createElementBlock("div",Li,[e.createVNode(vt,{table:n.table,selectedFeature:Ge.value,map:C.value,"onUpdate:map":_[0]||(_[0]=I=>C.value=I),zoom:f.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:N.value,center:c.value,clusterZoom:n.alwaysShowPolygon?0:Q.value??n.clusterZoom,pointZoom:ge.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:Ee.value,"onUpdate:modelValue":_[1]||(_[1]=I=>Ee.value=I),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!1,"mobile-peek-controls":!0},{default:e.withCtx(({hoverData:I})=>[e.renderSlot(g.$slots,"popup",{data:I})]),_: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",vi,[..._[19]||(_[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":U.value,"filters-disabled":!L.value.length,"has-active-filters":P.value,onOpenSearch:_[2]||(_[2]=I=>be("search")),onOpenFilters:_[3]||(_[3]=I=>be("filters")),onOpenTable:_[4]||(_[4]=I=>be("table"))},null,8,["active-modal","filters-disabled","has-active-filters"]),e.createVNode(_e,{open:U.value==="search",title:"Пошук","top-offset":He,"initial-variant":"full","peek-mode":"clip-full",onClose:h,onExpand:$,onCollapse:$},{default:e.withCtx(()=>[e.createElementVNode("div",Di,[e.createVNode(e.unref(ie),{type:"text",modelValue:B.value,"onUpdate:modelValue":_[5]||(_[5]=I=>B.value=I),name:"search",label:"Пошук",onChange:e.unref(Qe)},null,8,["modelValue","onChange"]),e.createElementVNode("div",ji,[e.unref(x)["mobile-search-results"]?e.renderSlot(g.$slots,"mobile-search-results",{key:0,rows:y.value,selectRow:z,closeModal:h}):(e.openBlock(),e.createElementBlock("div",zi,[b.value>=1?e.renderSlot(g.$slots,"table",{key:0,rows:y.value,selectRow:z,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",Pi,[e.createVNode(at),_[20]||(_[20]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),_[21]||(_[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:Ae}," Очистити дані пошуку ")]))])),b.value>=1?(e.openBlock(),e.createElementBlock("div",Ai,[e.createVNode(rt,{total:b.value,currentPage:j.value??1,pageSize:u.value,onPageChange:_[6]||(_[6]=I=>Pe(I)),onPageSizeChange:_[7]||(_[7]=I=>ze(I))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)])])]),_:3},8,["open"]),e.createVNode(_e,{open:U.value==="filters",title:"Фільтри","top-offset":He,"initial-variant":"full","peek-mode":"clip-full",onClose:h,onExpand:$,onCollapse:$},{default:e.withCtx(()=>[e.createElementVNode("div",Fi,[e.withDirectives(e.createElementVNode("div",$i,null,512),[[e.vShow,U.value==="filters"]]),e.createElementVNode("div",Ri,[L.value.length?(e.openBlock(),e.createBlock(e.unref(Oe),e.mergeProps({key:0,schema:L.value,view:V.value},w.value,{value:E.value,teleportActive:"#active-filters",onChange:Ye}),null,16,["schema","view","value"])):(e.openBlock(),e.createElementBlock("p",Zi,"Фільтри недоступні для цього переліку."))])])]),_:1},8,["open"]),e.createVNode(_e,{open:U.value==="table",title:"Таблиця","top-offset":He,"initial-variant":"full","peek-mode":"clip-full",onClose:h,onExpand:$,onCollapse:$},{default:e.withCtx(()=>[e.createElementVNode("div",Ti,[b.value>=1?e.renderSlot(g.$slots,"table",{key:0,rows:y.value,selectRow:z,isMapVisible:!1}):(e.openBlock(),e.createElementBlock("div",Ki,[e.createVNode(at),_[22]||(_[22]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),_[23]||(_[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:Ae}," Очистити дані пошуку ")]))]),b.value>=1?(e.openBlock(),e.createElementBlock("div",Oi,[e.createVNode(rt,{total:b.value,currentPage:j.value??1,pageSize:u.value,onPageChange:_[8]||(_[8]=I=>Pe(I)),onPageSizeChange:_[9]||(_[9]=I=>ze(I))},null,8,["total","currentPage","pageSize"])])):e.createCommentVNode("",!0)]),_:3},8,["open"]),e.createVNode(_e,{open:U.value==="details",title:"Об'єкт","top-offset":He,"initial-variant":O.value?"peek":"full","peek-mode":"custom",onClose:H,onExpand:$,onCollapse:$},{peek:e.withCtx(({expand:I})=>[e.unref(x)["mobile-details-peek"]?e.renderSlot(g.$slots,"mobile-details-peek",{key:0,selectedRow:D.value,expand:I,close:H}):(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:I}," Деталі об'єкта ",8,Ui))]),default:e.withCtx(()=>[e.renderSlot(g.$slots,"details",{table:n.table,selectedRow:D.value,closeObjCard:H})]),_:3},8,["open","initial-variant"]),e.renderSlot(g.$slots,"default",{table:n.table,map:C.value,selectedRow:D.value})])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(g.$slots,"header",{title:n.title,total:b.value}),e.createElementVNode("div",Ii,[e.createVNode(e.unref(ie),{type:"text",modelValue:B.value,"onUpdate:modelValue":_[10]||(_[10]=I=>B.value=I),name:"search",label:"Пошук",onChange:e.unref(Qe)},null,8,["modelValue","onChange"]),L.value.length?(e.openBlock(),e.createBlock(e.unref(Oe),{key:0,schema:L.value,view:"inline",onChange:Ye,limit:5,value:E.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:M.value?"Приховати карту":"Показати карту",onClick:_[11]||(_[11]=I=>M.value=!M.value)},[M.value?(e.openBlock(),e.createBlock(Xr,{key:0})):(e.openBlock(),e.createBlock(la,{key:1})),_[24]||(_[24]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,Gi),e.createElementVNode("div",Wi,[e.createElementVNode("button",{onClick:_[12]||(_[12]=I=>M.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:_[13]||(_[13]=I=>M.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",M.value?"w-2/4 mr-0":"w-full mr-3",s.value?"hidden":""])},[(G=g.$slots)!=null&&G.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(b.value),1),_[25]||(_[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":_[14]||(_[14]=I=>Z.value=I)},null,512),[[e.vModelCheckbox,Z.value]]),_[26]||(_[26]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",es,[b.value>=1?e.renderSlot(g.$slots,"table",{key:0,rows:y.value,selectRow:z}):(e.openBlock(),e.createElementBlock("div",ts,[e.createVNode(at),_[27]||(_[27]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),_[28]||(_[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:Ae}," Очистити дані пошуку ")]))]),b.value>=1?(e.openBlock(),e.createElementBlock("hr",ls)):e.createCommentVNode("",!0),b.value>=1?(e.openBlock(),e.createElementBlock("div",os,[e.createElementVNode("div",ns,[e.createVNode(rt,{total:b.value,currentPage:j.value??1,pageSize:u.value,onPageChange:_[15]||(_[15]=I=>Pe(I)),onPageSizeChange:_[16]||(_[16]=I=>ze(I))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(M.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:D.value,closeObjCard:Fe})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",rs,[e.createVNode(vt,{table:n.table,selectedFeature:Ge.value,map:C.value,"onUpdate:map":_[17]||(_[17]=I=>C.value=I),zoom:f.value,minZoom:n.minZoom,maxZoom:n.maxZoom,colorAttr:n.colorAttr,strokeAttr:n.strokeAttr,filter:N.value,center:c.value,clusterZoom:n.alwaysShowPolygon?0:Q.value??n.clusterZoom,pointZoom:ge.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:Ee.value,"onUpdate:modelValue":_[18]||(_[18]=I=>Ee.value=I),layers:n.layers,isCollapsible:n.isCollapsible,legendTitle:n.legendTitle,legendWidth:n.legendWidth,"show-popup":!0},{default:e.withCtx(({hoverData:I})=>[e.renderSlot(g.$slots,"popup",{data:I})]),_: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:C.value,selectedRow:D.value}),Re.value?(e.openBlock(),e.createElementBlock("div",as,[..._[29]||(_[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,M.value]])])],64))],2)):e.createCommentVNode("",!0)}}});return st.install=t=>{t.component("VsPartsMap",st),t._context.directives.tooltip||t.directive("tooltip",Dt)},st});