@opengis/partsmap 0.1.13 → 0.1.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -84
- package/dist/index.js +3058 -2300
- package/dist/index.umd.cjs +2 -1
- package/package.json +48 -48
package/dist/index.umd.cjs
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
(function(e,oe){typeof exports=="object"&&typeof module<"u"?module.exports=oe(require("vue")):typeof define=="function"&&define.amd?define(["vue"],oe):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=oe(e.Vue))})(this,function(e){"use strict";const oe={class:"flex items-center justify-between w-full text-sm"},Fe={class:"flex items-center cursor-pointer w-full"},Le={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},Re=["value"],Ae={class:"w-[calc(100%-18px)] flex flex-row items-center justify-between pl-[10px]"},je={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},Pe={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},se=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(a,{expose:n,emit:o}){const r=a,t=o;function s(){t("itemClick",r.value)}const c=e.ref(null);return n({el:c}),(u,f)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-lg group hover:bg-gray-100",ref_key:"el",ref:c},[e.createElementVNode("div",oe,[e.createElementVNode("div",Fe,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(u.layout)?"text-sm 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-sm text-gray-500 cursor-pointer",{"bg-blue-100":u.highlighted}]),onClick:e.withModifiers(s,["stop","prevent"])},[e.createElementVNode("div",{class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[u.type=="checkbox"?"rounded-[4px]":"rounded-full",u.color?`bg-[${u.color}] border-[#ffffff]`:u.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[u.isSelected?(e.openBlock(),e.createElementBlock("img",Le)):e.createCommentVNode("",!0)],2),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:u.value},null,8,Re),e.createElementVNode("div",Ae,[e.createElementVNode("span",je,e.toDisplayString(u.label??"Відсутні данні"),1),u.count?(e.openBlock(),e.createElementBlock("div",Pe," ("+e.toDisplayString(u.count)+") ",1)):e.createCommentVNode("",!0)])],2)])])],512))}});function be(a,n){const{options:o=[],limit:r=20}=a;function t(i){return Array.isArray(i)?i[0]:i}const s=e.ref(t(a.modelValue)),c=e.ref(""),u=e.ref(!1),f=e.ref([]),b=e.ref("id"),h=e.ref("text"),d=e.ref(!1),g=e.ref(a.layout!=="popover"&&o.length>r);function k(i){const x=i.find(Boolean)??{},C=["id","value","code","key"].find(S=>S in x)??"id",E=["text","label","name","title"].find(S=>S in x)??"text";return{autoValueKey:C,autoLabelKey:E}}if(o.length>0){const i=k(o);b.value=i.autoValueKey,h.value=i.autoLabelKey}const p=e.computed(()=>{const i=f.value;return a.layout==="popover"||d.value?i:i.slice(0,r)});e.watch(()=>a.modelValue,i=>{s.value=t(i)},{immediate:!0}),f.value=[...o].sort((i,x)=>a.sort==="count"?x.count&&i.count?x.count-i.count:0:a.sort==="name"?String(i[h.value]??"").localeCompare(String(x[h.value]??"")):0);function m(i){return s.value===i[b.value]}function l(i){s.value=i[b.value],n("update:modelValue",s.value),n("change",{name:a.name,value:s.value})}function w(){s.value=void 0,n("update:modelValue",s.value),n("clear",a.name)}function y(){d.value=!d.value}return{innerValue:s,searchTerm:c,filteredOptions:p,isSelected:m,selectItem:l,clear:w,toggleShowAll:y,isReqProc:u,showAll:d,isEnableShowAll:g,labelKey:h,valueKey:b,allOptions:f}}const G=(a,n)=>{const o=a.__vccOpts||a;for(const[r,t]of n)o[r]=t;return o},Te={},Ke={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function Ue(a,n){return e.openBlock(),e.createElementBlock("svg",Ke,n[0]||(n[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 de=G(Te,[["render",Ue]]),Ie={},Ze={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 Oe(a,n){return e.openBlock(),e.createElementBlock("svg",Ze,n[0]||(n[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const ae=G(Ie,[["render",Oe]]),He={},We={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 Ye(a,n){return e.openBlock(),e.createElementBlock("svg",We,n[0]||(n[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const me=G(He,[["render",Ye]]),qe={key:0,class:"w-full"},Qe={class:"flex flex-col items-center justify-center p-5 text-center"},Ge={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Je={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Xe=e.defineComponent({__name:"radio",props:{id:{},name:{},type:{},label:{},width:{},options:{default:()=>[]},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=e.ref(null),s=o,{innerValue:c,filteredOptions:u,isSelected:f,selectItem:b,clear:h,toggleShowAll:d,isReqProc:g,showAll:k,isEnableShowAll:p,labelKey:m,valueKey:l,allOptions:w}=be({...r,modelValue:r.modelValue??r.default??""},s);return n({clear:h,inputTextRef:t}),e.watch(()=>r.modelValue,y=>{y===void 0&&(c.value=void 0)}),(y,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([y.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([y.layout==="popover"?"flex-1 overflow-y-auto max-h-64 p-2":"",y.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),x=>(e.openBlock(),e.createBlock(se,{layout:y.layout,key:x[e.unref(l)],count:x.count,label:x[e.unref(m)],color:x.color,type:"radio",value:x[e.unref(l)],"is-selected":e.unref(f)(x),onItemClick:C=>e.unref(b)(x)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),y.type==="select"&&e.unref(u).length===0&&!e.unref(g)?(e.openBlock(),e.createElementBlock("div",qe,[e.createElementVNode("div",Qe,[e.createVNode(de),i[4]||(i[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),y.layout!=="popover"&&y.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(k)&&e.unref(p)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:i[0]||(i[0]=(...x)=>e.unref(d)&&e.unref(d)(...x)),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"},[i[5]||(i[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(ae)])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:i[1]||(i[1]=(...x)=>e.unref(d)&&e.unref(d)(...x)),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"},[i[6]||(i[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(me)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),y.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[y.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Ge,[e.createTextVNode(e.toDisplayString(e.unref(c)||e.unref(c)===null?1:0)+" з "+e.toDisplayString(e.unref(w).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:i[2]||(i[2]=(...x)=>e.unref(h)&&e.unref(h)(...x))}," Очистити ",512),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0]])])):e.createCommentVNode("",!0),y.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Je,[e.createElementVNode("span",null,e.toDisplayString(e.unref(c)||e.unref(c)===null?1:0)+" з "+e.toDisplayString(e.unref(w).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:i[3]||(i[3]=(...x)=>e.unref(h)&&e.unref(h)(...x))}," Очистити ",512),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function xe(a,n){const{options:o=[],limit:r=20}=a;function t(i){return Array.isArray(i)?i:i?[i]:[]}const s=e.ref(t(a.modelValue)),c=e.ref(""),u=e.ref(!1),f=e.ref([]),b=e.ref("id"),h=e.ref("text"),d=e.ref(!1),g=e.ref(a.layout!=="popover"&&o.length>r);function k(i){const x=i.find(Boolean)??{},C=["id","value","code","key"].find(S=>S in x)??"id",E=["text","label","name","title"].find(S=>S in x)??"text";return{autoValueKey:C,autoLabelKey:E}}if(o.length>0){const i=k(o);b.value=i.autoValueKey,h.value=i.autoLabelKey}const p=e.computed(()=>{const i=f.value;return a.layout==="popover"||d.value?i:i.slice(0,r)});e.watch(()=>a.modelValue,i=>{s.value=t(i)},{immediate:!0}),f.value=[...o].sort((i,x)=>a.sort==="count"?x.count&&i.count?x.count-i.count:0:a.sort==="name"?String(i[h.value]).localeCompare(String(x[h.value])):0);function m(i){return s.value&&s.value.includes(i[b.value])}function l(i){const x=s.value.includes(i[b.value]);s.value=x?s.value.filter(C=>C!==i[b.value]):[...s.value,i[b.value]],n("update:modelValue",s.value),n("change",{name:a.name,value:s.value})}function w(){s.value=[],n("update:modelValue",s.value),n("clear",a.name)}function y(){d.value=!d.value}return{innerValue:s,searchTerm:c,filteredOptions:p,isSelected:m,selectItem:l,clear:w,toggleShowAll:y,isReqProc:u,showAll:d,isEnableShowAll:g,labelKey:h,valueKey:b,allOptions:f}}const ve={key:0,class:"w-full"},et={class:"flex flex-col items-center justify-center p-5 text-center"},tt={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},lt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},ke=e.defineComponent({__name:"checkbox",props:{id:{},name:{},type:{},label:{},width:{},options:{default:()=>[]},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,{innerValue:s,filteredOptions:c,isSelected:u,selectItem:f,clear:b,toggleShowAll:h,isReqProc:d,showAll:g,isEnableShowAll:k,labelKey:p,valueKey:m,allOptions:l}=xe({...r,modelValue:r.modelValue},t);return e.watch(()=>r.modelValue,w=>{w===void 0&&(s.value=[])}),n({clear:b}),(w,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([w.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([w.layout==="popover"?"flex-1 overflow-y-auto max-h-64 p-2":"",w.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),i=>(e.openBlock(),e.createBlock(se,{layout:w.layout,count:i.count,label:i[e.unref(p)],color:i.color,type:"checkbox",value:i[e.unref(m)],"is-selected":e.unref(u)(i),onItemClick:x=>e.unref(f)(i)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),w.type==="select"&&e.unref(c).length===0&&!e.unref(d)?(e.openBlock(),e.createElementBlock("div",ve,[e.createElementVNode("div",et,[e.createVNode(de),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),w.layout!=="popover"&&w.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(g)&&e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:y[0]||(y[0]=(...i)=>e.unref(h)&&e.unref(h)(...i)),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(ae)])):e.createCommentVNode("",!0),e.unref(g)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:y[1]||(y[1]=(...i)=>e.unref(h)&&e.unref(h)(...i)),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(me)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),w.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[w.layout==="inline"?(e.openBlock(),e.createElementBlock("div",tt,[e.createTextVNode(e.toDisplayString(e.unref(s).length)+" з "+e.toDisplayString(e.unref(l).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[2]||(y[2]=(...i)=>e.unref(b)&&e.unref(b)(...i))}," Очистити ",512),[[e.vShow,e.unref(s).length!==0]])])):e.createCommentVNode("",!0),w.layout==="popover"?(e.openBlock(),e.createElementBlock("div",lt,[e.createElementVNode("span",null,e.toDisplayString(e.unref(s).length)+" з "+e.toDisplayString(e.unref(l).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[3]||(y[3]=(...i)=>e.unref(b)&&e.unref(b)(...i))}," Очистити ",512),[[e.vShow,e.unref(s).length!==0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),ot={},rt={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 nt(a,n){return e.openBlock(),e.createElementBlock("svg",rt,n[0]||(n[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 we=G(ot,[["render",nt]]),at={},it={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 ct(a,n){return e.openBlock(),e.createElementBlock("svg",it,n[0]||(n[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 Ve=G(at,[["render",ct]]);class pe{static getWidthClass(n){return typeof n=="number"?`max-w-[${n}px]`:typeof n=="string"?n.endsWith("%")||n.endsWith("px")?`max-w-[${n}]`:`max-w-${n}`:"w-full"}}const st={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},dt=["placeholder"],mt=e.defineComponent({__name:"text-input",props:{id:{},name:{},type:{},label:{},width:{default:220},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{emit:n}){const o=a,r=e.ref((o.placeHolder||o.label||o.name||"search").toString()),t=n,s=e.ref(o.modelValue??"");e.watch(()=>o.modelValue,f=>{f!==s.value&&(s.value=f??"")});function c(){t("update:modelValue",s.value),t("change",{name:o.name,value:s.value})}function u(){s.value="",t("update:modelValue",""),t("clear",o.name),t("change",{name:o.name,value:null})}return(f,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vs-form-text relative bg-white rounded-lg [&>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]:rounded-lg [&>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",f.layout==="inline"?e.unref(pe).getWidthClass(f.width):"mb-2"+(f.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",st,[e.createVNode(we)]),s.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:u,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(Ve)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":b[0]||(b[0]=h=>s.value=h),onInput:c,placeholder:r.value,class:"!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 rounded-lg 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"},null,40,dt),[[e.vModelText,s.value]])],2))}});function Be(a={color:"blue"}){return e.computed(()=>{const n=`w-full px-3 py-2 border-solid border border-gray-300 text-sm rounded focus:outline-none focus:ring-2 focus:ring-${a.color}-500 focus:border-transparent`;return(a==null?void 0:a.size)==="sm"?`${n}h-[32px]`:`${n}h-[38px]`})}function pt(){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 ft(){return"font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 border h-7 rounded-md text-xs px-2 py-1 hover:bg-gray-100"}function Ce(a){return a==="ghost"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent 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":a==="soft"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent bg-gray-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-2 bg-transparent h-[38px]"}const ut={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ht=["placeholder","disabled"],gt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},yt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},bt=["placeholder","disabled"],xt=["disabled"],kt=e.defineComponent({__name:"range-input",props:{id:{},name:{},type:{},label:{},width:{},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=Be(),t=pt(),s=a,c=e.ref(s.modelValue??s.default??[]),u=o,f=e.computed({get:()=>s.modelValue??c.value,set:d=>{s.modelValue!==void 0?u("update:modelValue",d):c.value=d}});function b(){u("change",{name:s.name,value:f.value||c.value})}function h(){c.value=[],f.value=c.value,u("clear",s.name)}return e.watch(()=>s.modelValue,d=>{d!==void 0&&s.layout!=="popover"?(c.value=d,u("update:modelValue",d)):c.value=[]}),n({clear:h,currentValue:f}),(d,g)=>{var k,p;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(d.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[d.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",ut,"Від")):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(r)),placeholder:((k=d.placeHolder)==null?void 0:k[0])??"min",step:"1",style:{outline:"none"},"onUpdate:modelValue":g[0]||(g[0]=m=>f.value[0]=m),disabled:d.disabled},null,10,ht),[[e.vModelText,f.value[0]]])]),d.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",gt," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[d.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",yt,"До")):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(r)),placeholder:((p=d.placeHolder)==null?void 0:p[1])??"max",min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":g[1]||(g[1]=m=>f.value[1]=m),disabled:d.disabled},null,10,bt),[[e.vModelText,f.value[1]]])]),["popover","inline","vertical"].includes(d.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:b,class:e.normalizeClass(e.unref(t)+(d.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(d.layout==="vertical"?"Ok":"Застосувати"),3)):e.createCommentVNode("",!0),["popover","inline"].includes(d.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(f.value[0]||f.value[1]),onClick:h,class:e.normalizeClass(e.unref(t)+" hover:bg-gray-100")},"Очистити",10,xt)):e.createCommentVNode("",!0)],2)]),(d.cleanable&&c.value.length,e.createCommentVNode("",!0))],64)}}}),wt=["disabled","title"],Vt={key:0,class:"absolute top-0 end-0 inline-flex min-h-[10px] min-w-[10px] z-10 items-center py-0.5 rounded-full text-xs font-medium transform -translate-y-1/2 translate-x-1/2 bg-blue-600 text-white px-1"},Bt={class:"w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg 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"},Ct={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"},fe=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(a,{expose:n}){const o=a,r=e.computed(()=>Ce(o.mode)),t=e.ref(!1),s=e.ref({top:0,left:0}),c=e.ref(null),u=e.ref(null),f=e.ref(null);function b(){const l=u.value,w=f.value;if(!l||!w)return;const y=l.getBoundingClientRect(),i=w.offsetWidth,x=window.innerWidth,C=y.bottom+8;let{left:E}=y;E+i>x&&(E=Math.max(x-i-10,10)),s.value={top:C,left:E}}function h(){t.value=!t.value,t.value&&e.nextTick(()=>{var l,w;b(),(l=o.fieldRef)!=null&&l.inputTextRef&&((w=o.fieldRef)==null||w.inputTextRef.focus())})}function d(l){var w,y;!((w=c.value)!=null&&w.contains(l.target))&&!((y=f.value)!=null&&y.contains(l.target))&&(t.value=!1)}function g(l){l.key==="Escape"&&(t.value=!1)}const k=e.ref(!1);e.onMounted(()=>{k.value=!0}),e.onMounted(()=>{document.addEventListener("click",d,!0),document.addEventListener("keydown",g),window.addEventListener("scroll",b,!0)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",d,!0),document.removeEventListener("keydown",g),window.removeEventListener("scroll",b,!0)});function p(){t.value=!1}n({close:p});const m=e.computed(()=>{var w;const l=(w=o.fieldRef)==null?void 0:w.selectedLabels;return l?Array.isArray(l)?l.length>0?l.join(", "):o.label??"":String(l):o.label??""});return(l,w)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{onClick:h,disabled:l.disabled,ref_key:"triggerRef",ref:u,title:l.label,class:e.normalizeClass(r.value+" "+(l.width?e.unref(pe).getWidthClass(l.width):"w-full"))},[e.createElementVNode("span",{class:e.normalizeClass(["truncate text-ellipsis block",l.width?e.unref(pe).getWidthClass(l.width-50):"w-full"])},e.toDisplayString(m.value),3),e.createVNode(ae,{class:"h-4 w-4"}),(Array.isArray(l.currentValue)?l.currentValue===null||l.currentValue.length>0:l.currentValue===null||l.currentValue)&&l.layout==="inline"?(e.openBlock(),e.createElementBlock("span",Vt)):e.createCommentVNode("",!0)],10,wt),k.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:f,class:"vsTailwind vs-popover__content bottom-right w-fit fixed z-[1000]",style:e.normalizeStyle({top:`${s.value.top}px`,left:`${s.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",Bt,[e.createElementVNode("div",Ct,[e.renderSlot(l.$slots,"default")])])],4),[[e.vShow,t.value]])])):e.createCommentVNode("",!0)]))}});function _t(a){return String(a).charAt(0).toUpperCase()+String(a).slice(1)}class I{static format(n){const o=n.getFullYear(),r=(n.getMonth()+1).toString().padStart(2,"0"),t=n.getDate().toString().padStart(2,"0");return`${o}-${r}-${t}`}static getShiftedDay(n,o=0){const r=n?new Date(n):new Date;return r.setDate(r.getDate()+o),this.format(r)}static getLastWeekRange(n,o,r=0){if(n&&o){const b=new Date(n),h=new Date(o);return b.setDate(b.getDate()+r*7),h.setDate(h.getDate()+r*7),[this.format(b),this.format(h)]}const t=new Date,s=t.getDay(),c=s===0?13:s-1+7,u=new Date(t);u.setDate(t.getDate()-c+r*7);const f=new Date(u);return f.setDate(u.getDate()+6),[this.format(u),this.format(f)]}static getMonthRange(n,o,r=0){let t;n?t=new Date(n):t=new Date,t=new Date(t.getFullYear(),t.getMonth()+r,1);const s=t,c=new Date(t.getFullYear(),t.getMonth()+1,0);return[this.format(s),this.format(c)]}static getQuarterRange(n,o,r=0){const t=n||o,s=t?new Date(t):new Date;let c=Math.floor(s.getMonth()/3);c+=r;const u=(c%4+4)%4*3,f=s.getFullYear()+Math.floor(c/4),b=new Date(f,u,1),h=new Date(f,u+3,0);return[this.format(b),this.format(h)]}static getYear(n,o=0){let r;return n&&/^\d{4}$/.test(n)?r=parseInt(n,10):n?r=new Date(n).getFullYear():r=new Date().getFullYear(),String(r+o)}static getYearRange(n,o=0){let r;return n&&/^\d{4}$/.test(n)?r=parseInt(n,10):n?r=new Date(n).getFullYear():r=new Date().getFullYear(),[this.format(new Date(r+o,0,1)),this.format(new Date(r+o+1,0,0))]}static getRangeFromDaysBefore(n){const o=new Date,r=new Date(o.getTime());return r.setDate(o.getDate()-n),[this.format(r),this.format(o)]}}function _e(a,n){const{popoverRef:o}=a,r=e.ref(""),t=e.ref(a.modelValue??a.default??[]),s=e.ref(0);function c(){const m=I.getRangeFromDaysBefore(s.value);return t.value=[...m],n("change",{name:a.name,value:t.value}),n("update:modelValue",t.value),m}function u(m){var w;r.value=m,(w=o.value)==null||w.close();const l=[];switch(r.value){case"today":l.push(I.getShiftedDay()),l.push(I.getShiftedDay());break;case"week":l.push(...I.getLastWeekRange());break;case"month":l.push(...I.getMonthRange());break;case"quarter":l.push(...I.getQuarterRange());break;case"year":l.push(...I.getYearRange());break;case"last_7_days":s.value=7,c();break;case"range":s.value=7,l.push(...c());break}t.value=[...l],n("change",{name:a.name,value:t.value}),n("update:modelValue",t.value)}function f(){const m=[];switch(r.value){case"today":m.push(I.getShiftedDay(t.value[0],1));break;case"week":m.push(...I.getLastWeekRange(t.value[0],t.value[1],1));break;case"month":m.push(...I.getMonthRange(t.value[0],t.value[1],1));break;case"quarter":m.push(...I.getQuarterRange(t.value[0],t.value[1],1));break;case"year":m.push(...I.getYearRange(t.value[0],1));break}t.value=[...m],n("change",{name:a.name,value:t.value}),n("update:modelValue",t.value)}function b(){const m=[];switch(r.value){case"today":m.push(I.getShiftedDay(t.value[0],-1));break;case"week":m.push(...I.getLastWeekRange(t.value[0],t.value[1],-1));break;case"month":m.push(...I.getMonthRange(t.value[0],t.value[1],-1));break;case"quarter":m.push(...I.getQuarterRange(t.value[0],t.value[1],-1));break;case"year":m.push(...I.getYearRange(t.value[0],-1));break}t.value=[...m],n("change",{name:a.name,value:t.value}),n("update:modelValue",t.value)}const h=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function d(m){const[l,w,y]=m.split("-");return`${y}.${w}.${l}`}function g(m){const{value:l}=t;switch(m){case"today":return d(l[0]);case"range":return"Період";case"week":return l[0]&&l[1]?`${d(l[0])} – ${d(l[1])}`:"";case"quarter":if(l[0]){const w=new Date(l[0]),y=w.getFullYear(),i=w.getMonth();return`${Math.floor(i/3)+1} квартал ${y}`}return"";case"month":if(l[0]){const[w,y]=l[0].split("-");return`${h[parseInt(y,10)-1]} ${w}`}return"";case"year":return l[0]||"";case"last_7_days":return"За останні дні";default:return a.label??""}}const k=e.computed(()=>r.value?g(r.value):a.label??"");function p(){r.value="",t.value=[],n("update:modelValue",[]),n("clear",a.name)}return{activeMode:r,innerValue:t,daysBefore:s,onDaysBeforeChange:c,onSelectChange:u,nextClick:f,prevClick:b,ukMonths:h,formatDisplayDate:d,getModeLabel:g,currentLabel:k,clear:p}}const Et={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},Nt={key:0,class:"flex gap-1 !w-[75%] rounded-lg"},St=["max","disabled"],$t=["min","disabled"],Dt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Mt=["max","disabled"],zt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Ft={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Lt=["min","disabled"],Rt={class:"flex gap-1 pt-2"},At=["onClick"],jt=e.defineComponent({__name:"date-input",props:{id:{},name:{},type:{},label:{},width:{},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=Be(),s=ft(),c=o,u=e.ref(null),{activeMode:f,innerValue:b,onSelectChange:h,nextClick:d,prevClick:g,clear:k}=_e({...r,popoverRef:u},c);return e.watch(()=>r.modelValue,p=>{p!==void 0?(b.value=p,c("update:modelValue",p)):(f.value="",b.value=[])}),n({clear:k,popoverRef:u}),(p,m)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[p.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Et,[e.unref(f)!==""&&e.unref(f)==="range"?(e.openBlock(),e.createElementBlock("div",Nt,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(b)[1],locale:"uk-UA","onUpdate:modelValue":m[0]||(m[0]=l=>e.unref(b)[0]=l),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600",disabled:p.disabled},null,8,St),[[e.vModelText,e.unref(b)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(b)[0],locale:"uk-UA","onUpdate:modelValue":m[1]||(m[1]=l=>e.unref(b)[1]=l),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600 appearance-auto",disabled:p.disabled},null,8,$t),[[e.vModelText,e.unref(b)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(p.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(p.layout!=="popover"?"w-[48%]":"")},[p.layout==="popover"?(e.openBlock(),e.createElementBlock("label",Dt,"Від")):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(b)[1],locale:"uk-UA","onUpdate:modelValue":m[2]||(m[2]=l=>e.unref(b)[0]=l),class:e.normalizeClass(e.unref(t)),disabled:p.disabled},null,10,Mt),[[e.vModelText,e.unref(b)[0]]])],2),p.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",zt," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(p.layout!=="popover"?"w-[48%]":"")},[p.layout==="popover"?(e.openBlock(),e.createElementBlock("label",Ft,"До")):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(b)[0],locale:"uk-UA","onUpdate:modelValue":m[3]||(m[3]=l=>e.unref(b)[1]=l),class:e.normalizeClass(e.unref(t)),disabled:p.disabled},null,10,Lt),[[e.vModelText,e.unref(b)[1]]])],2)],2),e.createElementVNode("div",Rt,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["today","week","month","quarter","year"],l=>e.createElementVNode("button",{key:l,class:e.normalizeClass(e.unref(s)+(e.unref(f)===l?" bg-blue-100":"")),onClick:w=>e.unref(h)(l)},e.toDisplayString(e.unref(_t)(l)),11,At)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(s)),onClick:m[4]||(m[4]=(...l)=>e.unref(g)&&e.unref(g)(...l))}," <",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(s)),onClick:m[5]||(m[5]=(...l)=>e.unref(d)&&e.unref(d)(...l))}," >",2)]),(p.cleanable,e.createCommentVNode("",!0))],64))}});function Pt(a,n){const{api:o,options:r=[],limit:t=20,dataKey:s="data"}=a,c=a.multi;function u(_){return c?Array.isArray(_)?_:_?[_]:[]:Array.isArray(_)?_[0]:_}const f=e.ref(u(a.modelValue)),b=e.ref(""),h=e.ref(!1),d=e.ref([]),g=e.ref("id"),k=e.ref("text"),p=e.ref(!1),m=e.ref(a.layout!=="popover"&&r.length>t),l=e.ref([]),w=e.ref(0);function y(_){const L=_.find(Boolean)??{},T=["id","value","code","key"].find(W=>W in L)??"id",J=["text","label","name","title"].find(W=>W in L)??"text";return{autoValueKey:T,autoLabelKey:J}}if(r.length>0){const _=y(r);g.value=_.autoValueKey,k.value=_.autoLabelKey}const i=e.computed(()=>{if(o)return d.value;const _=d.value;if(a.layout==="popover")return _;if(!b.value)return p.value?_:_.slice(0,t);const L=b.value.toLowerCase();return _.filter(T=>T[k.value].toLowerCase().includes(L))});let x=null;async function C(_){if(o){h.value=!0;try{const L=new URL(o,window.location.origin);L.searchParams.set("json","1"),L.searchParams.set("key",_),L.searchParams.set("limit",t.toString());const T=await fetch(L.toString());if(!T.ok)throw new Error(`HTTP error! status: ${T.status}`);const J=await T.json();if(d.value=J[s],d.value.length>0){const W=y(d.value);g.value=W.autoValueKey,k.value=W.autoLabelKey}w.value=J.total}catch(L){console.error("Failed to fetch remote options:",L)}finally{h.value=!1}}}e.watch(b,_=>{o&&(x&&clearTimeout(x),x=setTimeout(()=>{C(_)},200))}),e.watch(()=>a.modelValue,_=>{f.value=u(_)},{immediate:!0}),o?C(""):d.value=r;function E(_){return c&&Array.isArray(f.value)?f.value.includes(_[g.value]):f.value&&f.value===_[g.value]}function S(_){if(c&&!Array.isArray(f.value)&&(f.value=[]),c&&Array.isArray(f.value)){const L=f.value.includes(_[g.value]);f.value=L?f.value.filter(T=>T!==_[g.value]):[...f.value,_[g.value]],l.value=L?l.value.filter(T=>T!==_[k.value]):[...l.value,_[k.value]]}else f.value=_[g.value],l.value=_[k.value];n("update:modelValue",f.value),n("change",{name:a.name,value:f.value})}function F(){c?(f.value=[],l.value=[]):(f.value=void 0,l.value=[]),n("update:modelValue",f.value),n("clear",a.name)}function M(){x&&clearTimeout(x),b.value="",p.value=!1}function Q(){p.value=!p.value}e.onBeforeUnmount(()=>{x&&clearTimeout(x)});const Z=e.ref(-1);e.watch(i,()=>{Z.value=i.value.length>0?0:-1});function D(_){const L=i.value.length;if(_.key==="ArrowDown")_.preventDefault(),Z.value=(Z.value+1)%L;else if(_.key==="ArrowUp")_.preventDefault(),Z.value=(Z.value-1+L)%L;else if(_.key==="Enter"&&(_.preventDefault(),Z.value>=0&&Z.value<i.value.length)){const T=i.value[Z.value];S(T)}}return{innerValue:f,searchTerm:b,filteredOptions:i,isSelected:E,selectItem:S,clear:F,resetSearch:M,toggleShowAll:Q,isReqProc:h,showAll:p,isEnableShowAll:m,labelKey:k,valueKey:g,allOptions:d,highlightedIndex:Z,onKeyDown:D,selectedLabels:l,totalCount:w}}const Tt={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},Kt={key:0,class:"w-full"},Ut={class:"flex flex-col items-center justify-center p-5 text-center"},It={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Zt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Ot=e.defineComponent({__name:"select",props:{id:{},name:{},type:{},label:{},width:{},options:{default:()=>[]},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.ref(null),{innerValue:c,filteredOptions:u,isSelected:f,selectItem:b,clear:h,resetSearch:d,toggleShowAll:g,isReqProc:k,showAll:p,isEnableShowAll:m,searchTerm:l,labelKey:w,valueKey:y,highlightedIndex:i,onKeyDown:x,selectedLabels:C,totalCount:E}=Pt({...r,modelValue:r.modelValue},t);e.onMounted(()=>{d()}),e.watch(()=>r.modelValue,F=>{F===void 0&&(r.multi?c.value=[]:c.value=void 0)});const S=e.ref([]);return e.watch(i,F=>{var M;F>=0&&S.value[F]&&((M=S.value[F])==null||M.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(u,()=>{S.value=[]}),n({clear:h,inputTextRef:s,selectedLabels:C}),(F,M)=>{var Q,Z;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([F.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",Tt,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":M[0]||(M[0]=D=>e.isRef(l)?l.value=D:null),onKeydown:M[1]||(M[1]=(...D)=>e.unref(x)&&e.unref(x)(...D)),class:"w-full h-full text-[13px] px-4 border rounded-sm pl-9 focus:outline-none focus:ring-ring focus:ring-1 focus:ring-blue-500",placeholder:"Пошук",type:"text",ref_key:"inputTextRef",ref:s},null,544),[[e.vModelText,e.unref(l)]]),e.createVNode(we,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.createVNode(Ve,{onClick:M[2]||(M[2]=D=>l.value=""),class:"absolute text-gray-400 -translate-y-1/2 cursor-pointer hover:text-red-500 right-4 top-1/2"})]),e.createElementVNode("div",{class:e.normalizeClass([F.layout==="popover"?"flex-1 overflow-y-auto max-h-64 p-2":"",F.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),(D,_)=>(e.openBlock(),e.createBlock(se,{layout:F.layout,count:D.count,label:D[e.unref(w)],color:D.color,type:F.multi?"checkbox":"radio",value:D[e.unref(y)],"is-selected":e.unref(f)(D),highlighted:_===e.unref(i),onItemClick:L=>e.unref(b)(D),ref_for:!0,ref:L=>S.value[_]=L==null?void 0:L.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),F.type==="select"&&e.unref(u).length===0&&!e.unref(k)?(e.openBlock(),e.createElementBlock("div",Kt,[e.createElementVNode("div",Ut,[e.createVNode(de),M[7]||(M[7]=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),F.layout!=="popover"&&F.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(p)&&e.unref(m)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:M[3]||(M[3]=(...D)=>e.unref(g)&&e.unref(g)(...D)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[M[8]||(M[8]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(ae)])):e.createCommentVNode("",!0),e.unref(p)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:M[4]||(M[4]=(...D)=>e.unref(g)&&e.unref(g)(...D)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[M[9]||(M[9]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(me)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),F.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[F.layout==="inline"?(e.openBlock(),e.createElementBlock("div",It,[e.createTextVNode(e.toDisplayString(F.multi&&Array.isArray(e.unref(c))?(Q=e.unref(c))==null?void 0:Q.length:e.unref(c)!==void 0&&(e.unref(c)||e.unref(c)===null)?1:0)+" з "+e.toDisplayString(e.unref(E))+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:M[5]||(M[5]=(...D)=>e.unref(h)&&e.unref(h)(...D))}," Очистити ",512),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0||e.unref(c)]])])):e.createCommentVNode("",!0),F.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Zt,[e.createElementVNode("span",null,e.toDisplayString(F.multi&&Array.isArray(e.unref(c))?(Z=e.unref(c))==null?void 0:Z.length:e.unref(c)!==void 0&&(e.unref(c)||e.unref(c)===null)?1:0)+" з "+e.toDisplayString(e.unref(E))+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:M[6]||(M[6]=(...D)=>e.unref(h)&&e.unref(h)(...D))}," Очистити ",512),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0||e.unref(c)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),Ht=["for","onClick"],Wt=["id","name","value"],Yt={class:"block"},qt={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Qt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Gt=e.defineComponent({__name:"tag-field",props:{id:{},name:{},type:{},label:{},width:{},options:{default:()=>[]},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,{innerValue:s,isSelected:c,selectItem:u,clear:f,labelKey:b,valueKey:h,allOptions:d}=r.multi?xe({...r,modelValue:r.modelValue??r.default??[]},t):be({...r,modelValue:r.modelValue!==void 0?r.modelValue:r.default??""},t);return n({clear:f}),e.watch(()=>r.modelValue,g=>{g===void 0&&(r.multi?s.value=[]:s.value=void 0)}),(g,k)=>{var p,m;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",g.layout==="popover"?"m-1":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),l=>(e.openBlock(),e.createElementBlock("label",{key:`item-${l[e.unref(h)]}`,for:`item-${l[e.unref(h)]}`,onClick:e.withModifiers(w=>e.unref(u)(l),["stop","prevent"]),class:e.normalizeClass([e.unref(c)(l)?"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-lg 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-${l[e.unref(h)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${l[e.unref(h)]}`,value:l[e.unref(h)]},null,8,Wt),e.createElementVNode("span",Yt,e.toDisplayString(l[e.unref(b)]),1)],10,Ht))),128))],2),g.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[g.layout==="inline"?(e.openBlock(),e.createElementBlock("div",qt,[e.createTextVNode(e.toDisplayString(g.multi&&Array.isArray(e.unref(s))?(p=e.unref(s))==null?void 0:p.length:e.unref(s)!==void 0&&(e.unref(s)||e.unref(s)===null)?1:0)+" з "+e.toDisplayString(e.unref(d).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:k[0]||(k[0]=(...l)=>e.unref(f)&&e.unref(f)(...l))}," Очистити ",512),[[e.vShow,e.unref(s)!==""&&e.unref(s)!==void 0||e.unref(s)]])])):e.createCommentVNode("",!0),g.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Qt,[e.createElementVNode("span",null,e.toDisplayString(g.multi&&Array.isArray(e.unref(s))?(m=e.unref(s))==null?void 0:m.length:e.unref(s)!==void 0&&(e.unref(s)||e.unref(s)===null)?1:0)+" з "+e.toDisplayString(e.unref(d).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:k[1]||(k[1]=(...l)=>e.unref(f)&&e.unref(f)(...l))}," Очистити ",512),[[e.vShow,e.unref(s)!==void 0&&e.unref(s)!==""||e.unref(s)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),Jt={},Xt={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 vt(a,n){return e.openBlock(),e.createElementBlock("svg",Xt,n[0]||(n[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)]))}const ee=G(Jt,[["render",vt]]),el={},tl={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 ll(a,n){return e.openBlock(),e.createElementBlock("svg",tl,n[0]||(n[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const ol=G(el,[["render",ll]]),rl={},nl={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 al(a,n){return e.openBlock(),e.createElementBlock("svg",nl,n[0]||(n[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const il=G(rl,[["render",al]]),cl={class:"flex"},sl={class:"mb-1"},dl={class:"mb-1"},ml={class:"inline-flex rounded-lg shrink-0 pl-1"},pl={class:"inline-flex rounded-lg shrink-0 pl-1"},fl={key:1,class:"flex gap-1 !w-[75%] rounded-lg"},ul=["max","disabled"],hl=["min","disabled"],gl=e.defineComponent({__name:"date-input-inline",props:{id:{},name:{},type:{},label:{},width:{},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.ref(null),{activeMode:c,innerValue:u,onSelectChange:f,nextClick:b,prevClick:h,currentLabel:d,clear:g}=_e({...r,popoverRef:s},t);return e.watch(()=>r.modelValue,k=>{k!==void 0?(u.value=k,t("update:modelValue",k)):(c.value="",u.value=[])}),n({clear:g,popoverRef:s}),(k,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",cl,[e.createVNode(fe,{ref_key:"popoverRef",ref:s,label:e.unref(d),"current-value":e.unref(u),mode:k.mode,onClear:e.unref(g),layout:k.layout},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:p[0]||(p[0]=m=>e.unref(f)("range")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[12]||(p[12]=e.createTextVNode(" Період ",-1)),e.unref(c)==="range"?(e.openBlock(),e.createBlock(ee,{key:0})):e.createCommentVNode("",!0)])]),p[19]||(p[19]=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:p[1]||(p[1]=m=>e.unref(f)("today")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[13]||(p[13]=e.createTextVNode(" Сьогодні ",-1)),e.unref(c)==="today"?(e.openBlock(),e.createBlock(ee,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:p[2]||(p[2]=m=>e.unref(f)("week")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[14]||(p[14]=e.createTextVNode(" Тиждень ",-1)),e.unref(c)==="week"?(e.openBlock(),e.createBlock(ee,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:p[3]||(p[3]=m=>e.unref(f)("month")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[15]||(p[15]=e.createTextVNode(" Місяць ",-1)),e.unref(c)==="month"?(e.openBlock(),e.createBlock(ee,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:p[4]||(p[4]=m=>e.unref(f)("quarter")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[16]||(p[16]=e.createTextVNode(" Квартал ",-1)),e.unref(c)==="quarter"?(e.openBlock(),e.createBlock(ee,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",sl,[e.createElementVNode("button",{type:"button",onClick:p[5]||(p[5]=m=>e.unref(f)("year")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[17]||(p[17]=e.createTextVNode(" Рік ",-1)),e.unref(c)==="year"?(e.openBlock(),e.createBlock(ee,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",dl,[e.createElementVNode("button",{type:"button",onClick:p[6]||(p[6]=m=>e.unref(g)()),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[p[18]||(p[18]=e.createTextVNode(" Весь час ",-1)),e.unref(u)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ee,{key:0}))])])]),_:1,__:[19]},8,["label","current-value","mode","onClear","layout"]),e.unref(c)!==""&&e.unref(c)!=="range"&&e.unref(c)!=="last_7_days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",ml,[e.createElementVNode("button",{type:"button",title:"Попередній період",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:p[7]||(p[7]=(...m)=>e.unref(h)&&e.unref(h)(...m))},[e.createVNode(ol)])]),e.createElementVNode("div",pl,[e.createElementVNode("button",{type:"button",title:"Наступний період",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:p[8]||(p[8]=(...m)=>e.unref(b)&&e.unref(b)(...m))},[e.createVNode(il)])])],64)):e.createCommentVNode("",!0),e.unref(c)!==""&&e.unref(c)==="range"?(e.openBlock(),e.createElementBlock("div",fl,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(u)[1],locale:"uk-UA","onUpdate:modelValue":p[9]||(p[9]=m=>e.unref(u)[0]=m),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600",disabled:k.disabled},null,8,ul),[[e.vModelText,e.unref(u)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(u)[0],locale:"uk-UA","onUpdate:modelValue":p[10]||(p[10]=m=>e.unref(u)[1]=m),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600 appearance-auto",disabled:k.disabled},null,8,hl),[[e.vModelText,e.unref(u)[1]]])])):e.createCommentVNode("",!0)]),(k.cleanable,e.createCommentVNode("",!0))],64))}}),Ee={radio:Xe,checkbox:ke,check:ke,text:mt,range:kt,date:jt,select:Ot,tag:Gt,"date:inline":gl};function ue(a,n){let o;switch(a.toLowerCase()){case"autocomplete":o="select";break;case"check":o="checkbox";break;default:o=a==null?void 0:a.toString().toLowerCase()}return o==="date"&&n&&n==="inline"&&(o="date:inline"),{component:Ee[o]||Ee.text,type:o}}const yl={},bl={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 xl(a,n){return e.openBlock(),e.createElementBlock("svg",bl,n[0]||(n[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 kl=G(yl,[["render",xl]]),wl={style:{display:"inline-flex",margin:"0px",width:"100%"}},Vl={class:"relative w-full mb-2 p-4 bg-white rounded-lg shadow-sm"},Bl={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},Cl={class:"flex items-center"},_l={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},El={class:"filter-layout__body"},Nl=e.defineComponent({__name:"vertical-layout",props:{id:{},name:{},type:{},label:{},width:{},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.ref(),c=ue(r.type,r.layout),u=e.computed({get:()=>r.modelValue,set:d=>t("update:modelValue",d)});function f(d){t("clear",d)}function b(d,g){t("change",{name:d,value:g}),r.modelValue!==void 0&&t("update:modelValue",g)}function h(){s.value&&s.value.clear(),t("clear",r.name)}return e.watch(()=>r.default,d=>{u.value=d}),e.watch(()=>r.modelValue,d=>{u.value=d}),n({filterRef:s}),(d,g)=>{var k,p,m;return e.openBlock(),e.createElementBlock("div",wl,[e.createElementVNode("div",Vl,[e.createElementVNode("div",Bl,[e.createElementVNode("div",Cl,[e.createElementVNode("span",_l,e.toDisplayString(d.label),1)]),typeof u.value=="string"&&u.value.trim()!==""||Array.isArray(u.value)&&u.value.length>0&&u.value.some(l=>l!==void 0)||u.value===null?(e.openBlock(),e.createBlock(kl,{key:0,onClick:h})):e.createCommentVNode("",!0)]),e.createElementVNode("div",El,[((k=e.unref(c))==null?void 0:k.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((p=e.unref(c))==null?void 0:p.component),e.mergeProps({key:0},r,{type:(m=e.unref(c))==null?void 0:m.type,onChange:g[0]||(g[0]=l=>b(l.name,l.value)),onClear:g[1]||(g[1]=l=>f(l)),ref_key:"filterRef",ref:s}),null,16,["type"])):(e.openBlock(),e.createBlock(fe,{key:1,"current-value":u.value,label:d.label,mode:d.mode,onClear:h,fieldRef:s.value,width:void 0,disabled:d.disabled,layout:"vertical"},{default:e.withCtx(()=>{var l,w;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((l=e.unref(c))==null?void 0:l.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{type:(w=e.unref(c))==null?void 0:w.type,onChange:g[2]||(g[2]=y=>b(y.name,y.value)),onClear:g[3]||(g[3]=y=>f(y))}),null,16,["type"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),Ne=e.defineComponent({__name:"inline-layout",props:{id:{},name:{},type:{},label:{},width:{},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.ref(),c=ue(r.type,r.layout),u=e.computed({get:()=>r.modelValue,set:h=>t("update:modelValue",h)});function f(h=r.name){t("clear",h)}function b(h,d){t("change",{name:h,value:d}),r.modelValue!==void 0&&t("update:modelValue",d)}return e.watch(()=>r.default,h=>{u.value=h}),e.watch(()=>r.modelValue,h=>{u.value=h}),n({filterRef:s}),(h,d)=>{var g,k;return["text","date"].includes(h.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((g=e.unref(c))==null?void 0:g.component),e.mergeProps({key:0},r,{type:(k=e.unref(c))==null?void 0:k.type,onChange:d[0]||(d[0]=p=>b(p.name,p.value)),onClear:d[1]||(d[1]=p=>f(p)),disabled:h.disabled,modelValue:u.value,"onUpdate:modelValue":d[2]||(d[2]=p=>u.value=p)}),null,16,["type","disabled","modelValue"])):(e.openBlock(),e.createBlock(fe,{key:1,"current-value":u.value,label:h.label,mode:h.mode,onClear:f,fieldRef:s.value,width:r.width,disabled:h.disabled,layout:"inline"},{default:e.withCtx(()=>{var p,m;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((p=e.unref(c))==null?void 0:p.component),e.mergeProps({ref_key:"filterRef",ref:s},r,{modelValue:u.value,"onUpdate:modelValue":d[3]||(d[3]=l=>u.value=l),type:(m=e.unref(c))==null?void 0:m.type,onChange:d[4]||(d[4]=l=>b(l.name,l.value)),onClear:d[5]||(d[5]=l=>f(l))}),null,16,["modelValue","type"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),Sl=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},type:{},label:{},width:{},options:{},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.ref(),c=e.ref(ue(r.type,r.layout)),u=e.computed({get:()=>r.modelValue,set:h=>t("update:modelValue",h)});function f(h){t("clear",h)}function b(h,d){t("change",{name:h,value:d}),r.modelValue!==void 0&&t("update:modelValue",d)}return e.watch(()=>r.default,h=>{u.value=h}),e.watch(()=>r.modelValue,h=>{u.value=h}),e.watch(()=>r,h=>{u.value=h}),n({filterRef:s}),(h,d)=>{var g,k;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((g=c.value)==null?void 0:g.component),e.mergeProps(r,{type:(k=c.value)==null?void 0:k.type,modelValue:u.value,"onUpdate:modelValue":d[0]||(d[0]=p=>u.value=p),onChange:d[1]||(d[1]=p=>b(p.name,p.value)),onClear:d[2]||(d[2]=p=>f(p)),ref_key:"filterRef",ref:s}),null,16,["type","modelValue"])}}}),v=e.defineComponent({__name:"filter-field",props:{id:{},name:{},type:{},label:{},width:{},options:{default:()=>[]},placeHolder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean,default:!0},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{default:"name"}},emits:["update:modelValue","change","clear"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.ref(),c=e.computed({get:()=>r.modelValue,set:h=>t("update:modelValue",h)});function u(h){t("clear",h)}function f(h,d){t("change",{name:h,value:d}),r.modelValue!==void 0&&t("update:modelValue",d)}e.watch(()=>r.default,h=>{c.value=h}),e.watch(()=>r.modelValue,h=>{c.value=h}),n({filterRef:s});function b(){switch(r.layout){case"inline":return Ne;case"vertical":return Nl;case"popover":return Sl;default:return Ne}}return(h,d)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b()),e.mergeProps(r,{onChange:d[0]||(d[0]=g=>f(g.name,g.value)),onClear:d[1]||(d[1]=g=>u(g)),modelValue:c.value,"onUpdate:modelValue":d[2]||(d[2]=g=>c.value=g)}),null,16,["modelValue"]))}});function he(a,n){const{slots:o}=a,r=e.ref(a.value??{}),t=e.computed(()=>{var y;return(e.toRaw((y=o==null?void 0:o.default)==null?void 0:y.call(o))??[]).flatMap(i=>Array.isArray(i.children)?i.children:[i])});function s(y){delete r.value[y],n("clear",{data:e.toRaw(r.value),name:y})}function c(y,i){i===void 0?s(y):r.value={...r.value,[y]:i},n("change",{data:e.toRaw(r.value),name:y,value:i})}const u=e.computed(()=>t.value.map(y=>{var x;const i=(x=y.props)==null?void 0:x.name;return e.cloneVNode(y,{...y.props,layout:a.view,showClean:!0,modelValue:r[i],"onUpdate:modelValue":C=>{c(i,C)},onClear:()=>s(i)})})),f=e.computed(()=>new Map(u.value.map(y=>{var x;const i=(x=y.props)==null?void 0:x.name;return i?[i,y]:null}).filter(y=>y!==null)));function b(y=!1){r.value={},y||n("clearAll",{data:e.toRaw(r.value),name:"ALL"})}const h=e.ref(""),d=e.computed(()=>{var y;return(y=a.schema)!=null&&y.value?Object.entries(r.value).filter(([i,x])=>a.schema&&!(i in a.schema.value)?!1:Array.isArray(x)?x.some(C=>C!==""&&C!==void 0):x!==""&&x!==void 0).length:0}),g=e.ref();e.watch(h,async()=>{var y,i;await e.nextTick(),(i=(y=g==null?void 0:g.value)==null?void 0:y.filterRef)!=null&&i.inputTextRef&&g.value.filterRef.inputTextRef.focus()});const k=e.computed(()=>{var y,i;return(y=a.schema)!=null&&y.value?Object.fromEntries(Object.entries((i=a.schema)==null?void 0:i.value).slice(0,a.limit)):{}}),p=e.computed(()=>{var y,i,x;return(y=a.schema)!=null&&y.value?a.view!=="inline"?(i=a.schema)==null?void 0:i.value:Object.fromEntries(Object.entries((x=a.schema)==null?void 0:x.value).slice(a.limit)):{}}),m=e.computed(()=>{var i;if(u.value.length===0)return[];let y=0;if((i=a.schema)!=null&&i.value){const x=Object.entries(a.schema.value).length;x<a.limit?y=a.limit-x:y=0}return u.value.slice(0,y)}),l=e.computed(()=>u.value.length===0?[]:a.view!=="inline"?u.value:u.value.slice(m.value.length));function w(){if(p.value){const[y]=Object.keys(p.value);h.value=y}else l.value.length>0?h.value=l.value[0].props.name:h.value=""}return{activeFilter:r,activeFilterCount:d,onFilterChange:c,clearFilter:s,clearAllFilters:b,limitedSchema:k,popoverSchema:p,filtersSlot:u,limitedFiltersSlot:m,popoverFiltersSlot:l,vnodeMap:f,onPopoverOpen:w,selectedFilter:h,filterRef:g}}const $l=e.defineComponent({__name:"popover",emits:["open","close"],setup(a,{emit:n}){const o=e.ref(!1),r=e.ref(null),t=e.ref(null),s=e.ref(null),c=e.ref({top:"0px",left:"0px",position:"absolute"});function u(){o.value=!o.value}function f(){const g=s.value,k=r.value;if(!g||!k)return;const p=g.getBoundingClientRect(),m=k.offsetWidth,l=window.innerWidth-p.left;let w=p.left+window.scrollX;m>l&&(w=window.innerWidth-m-8,w<8&&(w=8)),c.value={position:"absolute",top:`${p.bottom+window.scrollY+8}px`,left:`${w}px`}}function b(g){var p,m;const k=g.target;!((p=s.value)!=null&&p.contains(g.target))&&!((m=r.value)!=null&&m.contains(g.target))&&!k.closest("[data-inside-popover]")&&(o.value=!1)}const h=e.ref(!1);e.onMounted(()=>{h.value=!0}),e.onMounted(()=>{var g,k;s.value=((g=t.value)==null?void 0:g.querySelector("[data-popover-trigger]"))||null,(k=s.value)==null||k.addEventListener("click",u),document.addEventListener("click",b),window.addEventListener("resize",f),window.addEventListener("scroll",f,!0)}),e.onBeforeUnmount(()=>{var g;(g=s.value)==null||g.removeEventListener("click",u),document.removeEventListener("click",b),window.removeEventListener("resize",f),window.removeEventListener("scroll",f,!0)});const d=n;return e.watch(o,async g=>{g?(d("open"),await e.nextTick(),f()):d("close")}),(g,k)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:t},[e.renderSlot(g.$slots,"trigger"),h.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:r,class:"absolute z-[50] w-[600px] rounded-md border bg-white shadow-md",style:e.normalizeStyle(c.value)},[e.renderSlot(g.$slots,"default")],4),[[e.vShow,o.value]])])):e.createCommentVNode("",!0)],512))}}),Dl={},Ml={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 zl(a,n){return e.openBlock(),e.createElementBlock("svg",Ml,n[0]||(n[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)]))}const Fl=G(Dl,[["render",zl]]),Ll={key:0,class:"inline-flex rounded-sm items-center border font-semibold border-transparent hover:bg-secondary/80 bg-blue-500 text-white text-xs px-1.5"},Rl={class:"flex"},Al={class:"w-64 border-r border-gray-200"},jl={class:"p-2"},Pl=["onClick"],Tl={class:"flex items-center gap-2"},Kl={class:"text-sm font-medium"},Ul={key:0,class:"inline-flex items-center rounded-full border font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-blue-100 text-blue-700 text-xs p-2"},Il=["onClick"],Zl={class:"flex items-center gap-2"},Ol={class:"text-sm font-medium"},Hl={key:0,class:"inline-flex items-center rounded-full border font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-blue-100 text-blue-700 text-xs p-2"},Wl={key:0,class:"p-2 border-t"},Yl={class:"flex-1 min-h-[300px] overflow-y-auto"},ql={key:0,class:"flex items-center justify-center h-full text-gray-500"},Se=e.defineComponent({__name:"popover-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(a,{expose:n,emit:o}){const r=a,t=Ce(r.mode),s=e.useSlots(),c=o,u=e.ref({}),{activeFilter:f,activeFilterCount:b,onFilterChange:h,clearFilter:d,clearAllFilters:g,popoverSchema:k,popoverFiltersSlot:p,onPopoverOpen:m,selectedFilter:l,filterRef:w}=he({...r,schema:u,slots:s},c);return e.watch(()=>r.schema,y=>{u.value=y},{deep:!0,immediate:!0}),n({clearFilter:d,clearAllFilters:g}),(y,i)=>(e.openBlock(),e.createBlock($l,{onOpen:e.unref(m),onClose:i[5]||(i[5]=x=>l.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass(e.unref(t)+(e.unref(b)>0?"bg-blue-50 border-blue-200 text-blue-700 hover:bg-blue-100":"text-gray-800 hover:bg-gray-200 focus:bg-gray-200")),type:"button"},[e.createVNode(Fl),i[6]||(i[6]=e.createTextVNode(" Фільтр ",-1)),e.unref(b)>0?(e.openBlock(),e.createElementBlock("div",Ll,e.toDisplayString(e.unref(b)),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",Rl,[e.createElementVNode("div",Al,[i[7]||(i[7]=e.createElementVNode("div",{class:"p-4 border-b"},[e.createElementVNode("p",{class:"text-sm text-gray-600"},"Select a field to start creating a filter.")],-1)),e.createElementVNode("div",jl,[y.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(k)),([x,C])=>{var E;return e.openBlock(),e.createElementBlock("button",{key:x,onClick:()=>{l.value=x},class:e.normalizeClass(["w-full flex items-center justify-between px-3 py-2 text-left hover:bg-gray-50 transition-colors",e.unref(l)===x?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":""])},[e.createElementVNode("div",Tl,[e.createElementVNode("span",Kl,e.toDisplayString(C.label),1)]),(Array.isArray(e.unref(f)[x])?((E=e.unref(f)[x])==null?void 0:E.length)>0:e.unref(f)[x]||e.unref(f)[x]===null)?(e.openBlock(),e.createElementBlock("div",Ul)):e.createCommentVNode("",!0)],10,Pl)}),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p),(x,C)=>{var E;return e.openBlock(),e.createElementBlock("button",{key:"slot-"+C,onClick:S=>l.value=x.props.name,class:e.normalizeClass(["w-full flex items-center justify-between px-3 py-2 text-left hover:bg-gray-50 transition-colors",e.unref(l)===x.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":""])},[e.createElementVNode("div",Zl,[e.createElementVNode("span",Ol,e.toDisplayString(x.props.label),1)]),((E=e.unref(f)[x.props.name])==null?void 0:E.length)>0?(e.openBlock(),e.createElementBlock("div",Hl)):e.createCommentVNode("",!0)],10,Il)}),128))]),e.unref(b)>0?(e.openBlock(),e.createElementBlock("div",Wl,[e.createElementVNode("button",{class:"w-full px-3 py-2 text-left text-sm text-gray-600 hover:bg-gray-50 transition-colors",onClick:i[0]||(i[0]=x=>e.unref(g)()),"data-inside-popover":""}," Очистити всі ")])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Yl,[e.unref(l)===""?(e.openBlock(),e.createElementBlock("div",ql,i[8]||(i[8]=[e.createElementVNode("p",{class:"text-sm"},"Select a field to start creating a filter.",-1)]))):e.createCommentVNode("",!0),e.unref(l)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(k)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(k)),([x,C])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(l)===x?(e.openBlock(),e.createBlock(v,e.mergeProps({name:x,key:x,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:w},{ref_for:!0},C,{onChange:i[1]||(i[1]=E=>e.unref(h)(E.name,E.value)),onClear:i[2]||(i[2]=E=>{e.unref(d)(E),e.unref(h)(E,void 0)}),modelValue:e.unref(f)[x],"onUpdate:modelValue":E=>e.unref(f)[x]=E,cleanable:!0}),null,16,["name","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p),(x,C)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+C},[e.unref(l)===x.props.name?(e.openBlock(),e.createBlock(v,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},x.props,{ref_for:!0,ref_key:"filterRef",ref:w,onChange:i[3]||(i[3]=E=>e.unref(h)(E.name,E.value)),onClear:i[4]||(i[4]=E=>{e.unref(d)(E),e.unref(h)(E,void 0)}),modelValue:e.unref(f)[x.props.name],"onUpdate:modelValue":E=>e.unref(f)[x.props.name]=E,cleanable:!0}),null,16,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),128))],64)):e.createCommentVNode("",!0)])])]),_:1},8,["onOpen"]))}}),Ql={class:"flex gap-1 items-center flex-wrap"},$e=e.defineComponent({__name:"inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.useSlots(),c=e.ref({}),{activeFilter:u,activeFilterCount:f,onFilterChange:b,clearFilter:h,clearAllFilters:d,limitedSchema:g,popoverSchema:k,filtersSlot:p,limitedFiltersSlot:m,popoverFiltersSlot:l}=he({...r,schema:c,slots:s},t),w=e.ref();function y(){w.value&&w.value.clearAllFilters(!0),d()}return e.watch(()=>r.schema,i=>{c.value=i},{deep:!0,immediate:!0}),n({clearFilter:h,clearAllFilters:d}),(i,x)=>(e.openBlock(),e.createElementBlock("div",Ql,[i.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(g)),([C,E])=>(e.openBlock(),e.createBlock(v,e.mergeProps({key:C,name:C,mode:i.mode},{ref_for:!0},E,{onChange:x[0]||(x[0]=S=>e.unref(b)(S.name,S.value)),onClear:e.unref(h),layout:"inline",cleanable:!0,modelValue:e.unref(u)[C],"onUpdate:modelValue":S=>e.unref(u)[C]=S}),null,16,["name","mode","onClear","modelValue","onUpdate:modelValue"]))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(m),(C,E)=>(e.openBlock(),e.createBlock(v,e.mergeProps({key:"slot-"+E,layout:"inline"},{ref_for:!0},C.props,{onChange:x[1]||(x[1]=S=>e.unref(b)(S.name,S.value)),onClear:x[2]||(x[2]=S=>{e.unref(h)(S),e.unref(b)(S,void 0)}),cleanable:!0,modelValue:e.unref(u)[C.props.name],"onUpdate:modelValue":S=>e.unref(u)[C.props.name]=S}),null,16,["modelValue","onUpdate:modelValue"]))),128)),Object.entries(e.unref(k)).length>0||e.unref(l).length>0?(e.openBlock(),e.createBlock(Se,e.mergeProps({key:1},r,{schema:e.unref(k),limit:0,onChange:x[3]||(x[3]=C=>e.unref(b)(C.name,C.value)),onClearAll:x[4]||(x[4]=C=>e.unref(d)()),onClear:x[5]||(x[5]=C=>e.unref(h)(C.name)),mode:i.mode,ref_key:"popoverRef",ref:w,cleanable:!0}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(p),(C,E)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C),e.mergeProps({key:"slot-"+E,layout:"popover"},{ref_for:!0},C.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","mode"])):e.createCommentVNode("",!0),e.unref(f)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:y,class:"relative py-2 px-3 inline-flex justify-center items-center gap-x-2 text-sm font-medium rounded-lg bg-gray-100 border border-transparent text-gray-800 hover:bg-gray-200 focus:bg-gray-200"}," Очистити ")):e.createCommentVNode("",!0)]))}}),Gl={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"},Jl={class:"flex items-center vst-filters vsTailwind flex-col w-full"},Xl=e.defineComponent({__name:"vertical-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(a,{expose:n,emit:o}){const r=a,t=o,s=e.useSlots(),{activeFilter:c,activeFilterCount:u,onFilterChange:f,clearFilter:b,clearAllFilters:h,filtersSlot:d}=he({...r,slots:s},t);return n({clearFilter:b,clearAllFilters:h}),(g,k)=>g.view==="vertical"?(e.openBlock(),e.createElementBlock("div",Gl,[e.createElementVNode("div",Jl,[e.unref(u)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:k[0]||(k[0]=p=>e.unref(h)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:"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"}," Очистити ")):e.createCommentVNode("",!0),g.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(g.schema),([p,m])=>(e.openBlock(),e.createBlock(v,e.mergeProps({name:p,layout:"vertical"},{ref_for:!0},m,{onChange:k[1]||(k[1]=l=>e.unref(f)(l.name,l.value)),onClear:k[2]||(k[2]=l=>{e.unref(b)(l),e.unref(f)(l,void 0)}),modelValue:e.unref(c)[p],"onUpdate:modelValue":l=>e.unref(c)[p]=l,showClean:!0}),null,16,["name","modelValue","onUpdate:modelValue"]))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(p,m)=>(e.openBlock(),e.createBlock(v,e.mergeProps({key:"slot-"+m,layout:"vertical"},{ref_for:!0},p.props,{onChange:k[3]||(k[3]=l=>e.unref(f)(l.name,l.value)),onClear:k[4]||(k[4]=l=>{e.unref(b)(l),e.unref(f)(l,void 0)}),modelValue:e.unref(c)[p.props.name],"onUpdate:modelValue":l=>e.unref(c)[p.props.name]=l,showClean:!0}),null,16,["modelValue","onUpdate:modelValue"]))),128))])])):e.createCommentVNode("",!0)}}),ge=e.defineComponent({__name:"filter",props:{schema:{},view:{default:"inline"},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(a,{expose:n,emit:o}){const r=a,t=e.ref(r.value??{}),s=o,c=e.ref();function u(m){if(Array.isArray(m))return m.map(l=>u(l));if(m!==null&&typeof m=="object"){const l=e.toRaw(m),w={};for(const y in l)w[y]=u(l[y]);return w}return m}function f(m,l){l!==void 0?t.value={...t.value,[m]:l}:delete t.value[m],s("change",{data:u(t.value),name:m,value:u(l)})}function b(m){delete t.value[m],s("clear",{data:u(t.value),name:m}),s("change",{data:u(t.value),name:m,value:null})}function h(){t.value={},s("clear",{data:u(t.value),name:"ALL"}),s("change",{data:u(t.value),name:"ALL",value:null})}const d=e.ref({});function g(){switch(r.view){case"inline":return $e;case"vertical":return Xl;case"popover":return Se;default:return $e}}e.watch(()=>r.schema,m=>{if(!m){d.value={};return}if(Array.isArray(m)&&!m.length){d.value={};return}Array.isArray(m)?d.value=m.filter(l=>l.type).reduce((l,w)=>(Object.assign(w,{name:w.id||w.name,type:w.type.toLowerCase()}),l[w.name]=w,w.data&&!w.api&&!w.options&&Object.assign(w,{api:`/api/suggest/${w.data}`}),l),{}):(Object.entries(m).forEach(([l,w])=>{Object.assign(w,{name:l||w.name||w.id,type:w.type.toLowerCase()})}),d.value={...m})},{immediate:!0,deep:!0});function k(m){c.value.clearFilter(m),b(m)}function p(){c.value.clearAllFilters(),h()}return n({clearAllFilters:p,clearFilter:k}),(m,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(g()),e.mergeProps(r,{schema:d.value,onChange:l[0]||(l[0]=w=>f(w.name,w.value)),onClear:l[1]||(l[1]=w=>b(w.name)),onClearAll:h,ref_key:"filterRef",ref:c}),{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default")]),_:3},16,["schema"]))}});ge.install=function(a){a.component("Filter",ge),a.component("FilterField",v)};function vl(a){const{page:n,id:o,filter:r,filterByView:t}=a,s=new URL(window.location.href),c=new URLSearchParams(window.location.search);n?c.set("page",n.toString()):c.delete("page"),o?c.set("id",o.toString()):c.delete("id"),r?c.set("filter",r):c.delete("filter"),typeof t=="boolean"?c.set("bbox",t?"1":"0"):c.delete("bbox"),s.search=decodeURI(c.toString()),window.history.pushState({},"",s)}const eo={class:"flex items-center justify-between w-full gap-x-1"},to={class:"flex items-center"},lo=["disabled"],oo=[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)],ro={class:"flex items-center gap-x-1"},no=["onClick"],ao=["disabled"],io=[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)],co={class:"flex justify-center items-center gap-x-5 ml-3"},so={class:"relative"},mo={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"},po=["onClick"],fo={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"},uo=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M5 12l5 5l10 -10"},null,-1)],ho=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),go=e.defineComponent({__name:"pagination",props:{total:{},currentPage:{},pageSize:{}},emits:["update:currentPage","update:pageSize","pageChange","pageSizeChange"],setup(a,{emit:n}){const o=a,r=n,t=e.ref(o.currentPage),s=e.ref(o.pageSize),c=e.ref(!1);e.watch(()=>o.pageSize,k=>{s.value=k});const u=e.computed(()=>Math.ceil(o.total/o.pageSize)),f=e.computed(()=>{const p=Math.floor(3.5);let m=t.value-p,l=t.value+p;m<1&&(l+=1-m,m=1),l>u.value&&(m-=l-u.value,l=u.value),m=Math.max(1,m);const w=[];for(let y=m;y<=l;y+=1)w.push(y);return w}),b=()=>{t.value>1&&d(t.value-1)},h=()=>{t.value<u.value&&d(t.value+1)},d=k=>{t.value=k,r("update:currentPage",k),r("pageChange",k)},g=(k=s.value)=>{s.value=k,c.value=!1,r("update:pageSize",s.value),r("update:currentPage",1),r("pageSizeChange",s.value)};return e.watch(()=>o.currentPage,k=>{t.value=k}),(k,p)=>(e.openBlock(),e.createElementBlock("nav",eo,[e.createElementVNode("div",to,[e.createElementVNode("button",{type:"button","aria-label":"Previous",onClick:b,disabled:t.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"},oo,8,lo),e.createElementVNode("div",ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,m=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:m,onClick:l=>d(m),class:e.normalizeClass(t.value===m?"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(m),11,no))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:h,disabled:t.value===u.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"},io,8,ao)]),e.createElementVNode("div",co,[e.createElementVNode("div",so,[e.withDirectives(e.createElementVNode("div",mo,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30],m=>e.createElementVNode("button",{type:"button",key:m,onClick:l=>g(m),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(m)+" ",1),s.value===m?(e.openBlock(),e.createElementBlock("svg",fo,uo)):e.createCommentVNode("",!0)],8,po)),64))],512),[[e.vShow,c.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:p[0]||(p[0]=m=>c.value=!c.value)},[e.createTextVNode(e.toDisplayString(s.value)+" ",1),ho])])])]))}}),re=(a,n)=>{const o=a.__vccOpts||a;for(const[r,t]of n)o[r]=t;return o},yo={},bo={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"},xo=[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)];function ko(a,n){return e.openBlock(),e.createElementBlock("svg",bo,xo)}const wo=re(yo,[["render",ko]]),Vo={},Bo={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"},Co=[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)];function _o(a,n){return e.openBlock(),e.createElementBlock("svg",Bo,Co)}const Eo=re(Vo,[["render",_o]]),No={},So={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"},$o=[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)];function Do(a,n){return e.openBlock(),e.createElementBlock("svg",So,$o)}const Mo=re(No,[["render",Do]]),zo={},Fo={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"},Lo=[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)];function Ro(a,n){return e.openBlock(),e.createElementBlock("svg",Fo,Lo)}const Ao=re(zo,[["render",Ro]]),jo={},Po={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"},To=[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)];function Ko(a,n){return e.openBlock(),e.createElementBlock("svg",Po,To)}const Uo=re(jo,[["render",Ko]]);function De(a,n){let o;return function(...r){clearTimeout(o),o=setTimeout(()=>a(...r),n)}}function Me(a,n,o=12){const r=n??"";return`${window.location.origin}/api/vtile/${a}/ua/{z}/{x}/{y}.vmt?pointZoom=12&clusterZoom=${o}&filter=${r}`}function Io(a,n,o,r,t=12){if(!n)return;const s=Me(a,r,t);n.addSource("vector",{type:"vector",tiles:[s],minzoom:0,maxzoom:12});const c=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],u=[">",c,1],f=["<=",c,1],b=["coalesce",["get","point_count_abbreviated"],["get","cluster_count_abbreviated"],["get","clusterCountAbbreviated"],c];n.addLayer({id:"vector-clusters",type:"circle",source:"vector","source-layer":a,filter:u,paint:{"circle-color":["step",c,"#51bbd6",100,"#f1f075",750,"#f28cb1"],"circle-radius":["step",c,18,100,26,750,32],"circle-opacity":.85}}),n.addLayer({id:"vector-cluster-count",type:"symbol",source:"vector","source-layer":a,filter:u,layout:{"text-field":["to-string",b],"text-font":["Noto Sans Regular"],"text-size":12},paint:{"text-color":"#1f2937"}}),n.addLayer({id:"vector-circle",type:"circle",maxzoom:12,source:"vector","source-layer":a,filter:f,paint:{"circle-color":o,"circle-stroke-color":"#eee","circle-stroke-width":1,"circle-radius":["interpolate",["linear"],["zoom"],10,5,15,12]}}),n.addLayer({id:"vector-fill",type:"fill",minzoom:12,source:"vector","source-layer":a,paint:{"fill-color":o,"fill-opacity":.6}})}const Zo=[{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"}],Oo={class:"relative w-auto h-full"},Ho=[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)],Wo={class:"absolute left-[20px] bottom-[74px] bg-white max-w-[250px] p-[10px] rounded-lg z-10 border"},Yo={class:"flex justify-start items-center gap-2"},qo={class:"ml-1 text-[0.875rem]"},Qo={class:"vs-map-slot-layers z-10 select-none",style:{display:"flex"}},Go=["title","onClick"],Jo=["src"],Xo={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"},ie="vector-clusters",vo=e.defineComponent({__name:"map",props:{table:{},center:{},colorAttr:{},filter:{},modelValue:{},zoom:{},minZoom:{},maxZoom:{},map:{},layers:{},clusterZoom:{}},emits:["update:modelValue","update:map"],setup(a,{emit:n}){const o=a,r=n;let t,s;const c=e.getCurrentInstance(),u=e.ref(null),f=e.ref(!1),b=["vector-circle","vector-fill"],h=e.computed(()=>{var V,N;return((N=(V=c==null?void 0:c.appContext.config.globalProperties)==null?void 0:V.$settings)==null?void 0:N.basemaps)||[]}),d=e.computed(()=>(o.layers&&o.layers.length?o.layers:h.value.length?h.value:Zo).map((N,z)=>{var X;const A=N.id||((X=N.name)==null?void 0:X.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${z}`,q=N.name||N.id||`layer-${z}`;return{...N,id:A,name:q}})),g=e.ref(""),k=e.computed(()=>d.value.find(V=>V.id===g.value)||d.value[0]);e.watch(d,V=>{var N;V.length&&(!g.value||!V.some(z=>z.id===g.value))&&(g.value=((N=V[0])==null?void 0:N.id)||"")},{immediate:!0});function p(V){return V?V.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const m=e.ref(null),l=e.ref(null),w=["#2563EB","#60A5FA","#10B981","#34D399","#F59E0B","#F97316","#EF4444","#F43F5E","#374151","#D1D5DB"];let y;const i=[30,48];let x=null,C=[];function E(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const V=new URLSearchParams(window.location.search),N=Number(V.get("z")),z=Number(V.get("y")),A=Number(V.get("x")),q=V.has("x")&&V.has("y"),X=V.has("z");return{zoom:X?N:null,center:q?[A,z]:null,hasQuery:q||X}}function S(V,N){if(!V||typeof window>"u")return;const z=new URL(window.location.href);z.searchParams.set("z",N.toFixed(2)),z.searchParams.set("x",V[0].toFixed(6)),z.searchParams.set("y",V[1].toFixed(6)),window.history.replaceState({},"",z)}let F=!1;function M(){if(!t||!F)return;const V=t.getCenter();S([V.lng,V.lat],t.getZoom())}const Q=()=>{F||(F=!0),M()};function Z(V){return V?["==",["to-string",["get","id"]],V]:["==",["literal",1],0]}function D(){const V=Z(o.modelValue);t.getLayer("vector-highlight-circle")||t.addLayer({id:"vector-highlight-circle",type:"circle",maxzoom:Math.min((o.maxZoom??18)+.01,24),source:"vector","source-layer":o.table,paint:{"circle-color":"#ef4444","circle-opacity":.8,"circle-stroke-color":"#b91c1c","circle-stroke-width":0,"circle-radius":["interpolate",["linear"],["zoom"],10,10,12,11]}}),t.getLayer("vector-highlight-fill")||t.addLayer({id:"vector-highlight-fill",type:"line",minzoom:o.clusterZoom??12,source:"vector","source-layer":o.table,paint:{"line-color":"#b91c1c","line-width":3,"line-opacity":.8}}),t.setFilter("vector-highlight-circle",V),t.setFilter("vector-highlight-fill",V);const N=o.modelValue?"visible":"none";t.setLayoutProperty("vector-highlight-circle","visibility",N),t.setLayoutProperty("vector-highlight-fill","visibility",N),L()}function _(V){if(!t||!C.length)return;const z=["case",["all",["has","id"],["==",["to-string",["get","id"]],V]],"#ef4444",C];t.getLayer("vector-circle")&&t.setPaintProperty("vector-circle","circle-color",z),t.getLayer("vector-fill")&&t.setPaintProperty("vector-fill","fill-color",z)}function L(){if(T(),!o.modelValue)return;let V=!0;x=window.setInterval(()=>{V=!V;const N=V?.8:.2;t!=null&&t.getLayer("vector-highlight-circle")&&t.setPaintProperty("vector-highlight-circle","circle-opacity",N),t!=null&&t.getLayer("vector-highlight-fill")&&t.setPaintProperty("vector-highlight-fill","line-opacity",N)},600)}function T(){x&&(clearInterval(x),x=null)}function J(){t&&(t.setCenter(o.center||i),t.setZoom(o.zoom||5))}function W(){if(!(t!=null&&t.setLayerZoomRange))return;const V=o.minZoom??0,N=Math.min((o.maxZoom??18)+.01,24),z=o.clusterZoom??12;t.getLayer("vector-circle")&&t.setLayerZoomRange("vector-circle",V,N),t.getLayer("vector-highlight-circle")&&t.setLayerZoomRange("vector-highlight-circle",V,N),t.getLayer("vector-fill")&&t.setLayerZoomRange("vector-fill",z,N),t.getLayer("vector-highlight-fill")&&t.setLayerZoomRange("vector-highlight-fill",z,N),t.getLayer(ie)&&t.setLayerZoomRange(ie,V,z),t.getLayer("vector-cluster-count")&&t.setLayerZoomRange("vector-cluster-count",V,z)}const ne=E();F=ne.hasQuery,e.onMounted(async()=>{y=(await fetch(`/api/data/${o.table}/${o.colorAttr}`).then(K=>K.json())).rows,y.forEach((K,U)=>{K.color||Object.assign(K,{color:w[U%10]})}),s=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const N=k.value;if(!N)return;const z=ne.center||o.center||i,A=ne.zoom||o.zoom||5;t=new maplibregl.Map({container:u.value,style:{version:8,sources:{[N.id]:{type:"raster",tiles:[N.url],tileSize:256}},layers:[{id:N.id,type:"raster",source:N.id,minzoom:0,maxzoom:19}]},center:z,zoom:A,minZoom:o.minZoom??3,maxZoom:o.maxZoom??18,attributionControl:!1}),r("update:map",t),t.addControl(new maplibregl.NavigationControl,"top-right"),t.on("zoom",()=>{}),t.on("moveend",Q),t.on("zoomend",Q),F&&M(),t.on("load",()=>{t==null||t.resize(),f.value=!0;const K=y.filter(P=>P.id).reduce((P,H)=>[H.id,H.color].concat(P),[]),U=["match",["get",o.colorAttr],...K,"#808080"];C=U,Io(o.table,t,U,o.filter,o.clusterZoom),D(),_(o.modelValue),W()});const q=K=>{var P,H;const U=(P=K.features)==null?void 0:P[0];(H=U==null?void 0:U.properties)!=null&&H.id&&r("update:modelValue",U.properties.id)};b.forEach(K=>{t.on("click",K,q)}),t.on("click",ie,K=>{var B,$,j;const U=(B=K.features)==null?void 0:B[0];if(!U)return;const P=U.geometry,H=(P==null?void 0:P.type)==="Point"?P.coordinates:(j=($=P==null?void 0:P.coordinates)==null?void 0:$[0])==null?void 0:j[0];if(!H)return;const te=Math.min(t.getZoom()+2,t.getMaxZoom());t.easeTo({center:H,zoom:te})}),[...b,ie].forEach(K=>{t.on("mouseenter",K,()=>{t.getCanvas().style.cursor="pointer"}),t.on("mouseleave",K,()=>{t.getCanvas().style.cursor=""})}),t.on("mousemove",K=>{var B;const U=t.queryRenderedFeatures(K.point,{layers:b});if(!U||!U.length){s.remove();return}const P=U[0],{coordinates:H}=P.geometry,te=P.geometry.type==="Point"?H:H[0][0];l.value=P.properties,s.setLngLat(te).setHTML((B=m.value)==null?void 0:B.innerHTML).addTo(t)})}),e.watch(()=>o.center,V=>{t&&t.setCenter(V||i)}),e.watch(()=>o.zoom,V=>{t&&t.setZoom(V)}),e.watch(()=>o.minZoom,V=>{t&&(t.setMinZoom(V??3),W())}),e.watch(()=>o.maxZoom,V=>{t&&(t.setMaxZoom(V??18),W())});function ce(V,N){if(!(t!=null&&t.getSource("vector")))return;const z=Me(o.table,V??o.filter,N??o.clusterZoom??12);t.getSource("vector").setTiles([z])}return e.watch(()=>o.filter,V=>{ce(V)}),e.watch(()=>o.clusterZoom,V=>{ce(void 0,V),W()}),e.watch(()=>o.modelValue,V=>{if(!t)return;const N=Z(V);t.getLayer("vector-highlight-circle")&&(t.setFilter("vector-highlight-circle",N),t.setLayoutProperty("vector-highlight-circle","visibility",V?"visible":"none")),t.getLayer("vector-highlight-fill")&&(t.setFilter("vector-highlight-fill",N),t.setLayoutProperty("vector-highlight-fill","visibility",V?"visible":"none")),_(V),V?L():T()}),e.watch(g,(V,N)=>{if(!t||!V)return;const z=d.value.find(q=>q.id===V);if(!z)return;t.getLayer(N)&&t.removeLayer(N),t.getSource(N)&&t.removeSource(N),t.addSource(V,{type:"raster",tiles:[z.url],tileSize:256});const A=t.getLayer("vector-clusters")?"vector-clusters":t.getLayer("vector-circle")?"vector-circle":void 0;t.addLayer({id:z.id,type:"raster",source:z.id,minzoom:0,maxzoom:19},A)}),e.onBeforeUnmount(()=>{T(),t&&(t.off("moveend",Q),t.off("zoomend",Q),t.remove())}),(V,N)=>{const z=e.resolveDirective("tooltip");return e.withDirectives((e.openBlock(),e.createElementBlock("div",Oo,[e.createElementVNode("div",{ref_key:"mapContainer",ref:u,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:J},Ho)),[[z,"Повернутися до базового вигляду"]]),e.createElementVNode("div",Wo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),A=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:A.id},[e.createElementVNode("div",Yo,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+A.color)},null,4),e.createElementVNode("div",qo,e.toDisplayString(A.text),1)])]))),128))]),e.createElementVNode("div",{ref_key:"popupDiv",ref:m,style:{display:"none"}},[e.renderSlot(V.$slots,"default",{hoverData:l.value})],512),e.createElementVNode("div",Qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,A=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:A.id,title:A.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:g.value===A.id}]),onClick:q=>g.value=A.id},[e.createElementVNode("img",{src:A.preview||p(A.url),class:"vs-map-slot-layers__image"},null,8,Jo),e.createElementVNode("div",Xo,e.toDisplayString(A.name),1)],10,Go)),[[z,A.name]])),128))])],512)),[[e.vShow,f.value]])}}}),ze={mounted(a,n){if(typeof document>"u")return;let o=null;const r=()=>{o=document.createElement("div"),o.textContent=n.value,Object.assign(o.style,{position:"absolute",background:"#333",color:"#fff",padding:"4px 8px",borderRadius:"4px",fontSize:"12px",whiteSpace:"nowrap",pointerEvents:"none",zIndex:"9999"}),document.body.appendChild(o);const s=a.getBoundingClientRect();o.style.left=`${s.left+window.scrollX}px`,o.style.top=`${s.top+window.scrollY-o.offsetHeight-5}px`},t=()=>{o&&o.parentNode&&(o.parentNode.removeChild(o),o=null)};a.addEventListener("mouseenter",r),a.addEventListener("mouseleave",t),Object.assign(a,{tooltipHandlers:{showTooltip:r,hideTooltip:t}})},unmounted(a){if(typeof document>"u")return;const n=a.tooltipHandlers;n&&(a.removeEventListener("mouseenter",n.showTooltip),a.removeEventListener("mouseleave",n.hideTooltip))}},er={class:"pt-[20px]"},tr={class:"w-full gap-5 inline-flex mb-[6px] pr-3"},lr={class:"flex items-center"},or=["title"],rr=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1),nr={class:"max-[1000px]:flex gap-2 min-[1001px]:hidden"},ar={class:"flex"},ir={key:0,class:"flex items-center py-[15px] pb-[24px] pl-2 pr-6 gap-4"},cr={class:"font-bold text-2xl mr-[10px]"},sr={class:"text-sm text-stone-500 font-medium"},dr=e.createElementVNode("span",{class:"text-sm text-stone-500 font-medium"}," об'єктів",-1),mr={key:0,class:"inline-flex items-center gap-2 text-sm text-stone-700 select-none ml-auto mt-auto"},pr=e.createElementVNode("span",null,"В межах видимої області",-1),fr={class:"wrapperTable flex flex-col",style:{height:"calc(100vh - 302px)"}},ur={key:1,class:"text-center py-28"},hr=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1),gr=e.createElementVNode("p",{class:"font-normal text-sm text-gray-500 rounded-xl"}," Введіть, будь ласка, інші значення для пошуку. ",-1),yr={key:1},br={key:2,class:"my-5 pr-2"},xr={class:"flex justify-between"},kr={class:"w-full lg:w-1/2 relative"},ye=e.defineComponent({__name:"vs-parts-map",props:{title:{},table:{},map:{},rows:{},zoom:{},minZoom:{default:3},maxZoom:{default:18},center:{},initTotal:{},colorAttr:{},id:{},filters:{},history:{type:Boolean},layers:{},objectsInView:{type:Boolean,default:!0},clusterZoom:{default:12}},emits:["change:filter","update:map"],setup(a,{emit:n}){var q,X,K,U,P,H,te;const o=e.getCurrentInstance();o&&!(o!=null&&o.appContext.directives.tooltip)&&(o.appContext.directives.tooltip=ze);function r(B){return B?(B.type==="Point"?B.coordinates:null)||(B.type.includes("Multi")?B.coordinates[0][0][0]:B.coordinates[0][0]):null}const t=a,s=n,c=e.ref(0);c.value=t.initTotal??((q=t.rows)==null?void 0:q.length)??0;const u=e.ref(""),f=e.ref(null),b=e.ref(!0),h=e.ref(((X=t.rows)==null?void 0:X.length)===1),d=e.ref(0),g=e.ref(t.rows),k=e.ref(1),p=e.ref(20),m=e.ref(t.filters||[]),l=e.ref(""),w=e.ref({}),y=e.ref(((K=t.rows)==null?void 0:K.length)===1?t.rows[0]:{}),i=e.ref(((U=t.rows)==null?void 0:U.length)===1?t.rows[0].id:""),x=e.ref(((P=t.rows)==null?void 0:P.length)===1?r((H=t.rows[0])==null?void 0:H.geom):t.center||null),C=e.ref(((te=t.rows)==null?void 0:te.length)===1?14:t.zoom||5),E=e.ref(!1),S=e.ref(!1),F=e.ref("");let M=!1;function Q(B){return Object.entries(B).filter(([$,j])=>Array.isArray(j)?j.length:j).map(([$,j])=>`${$}=${j}`).join("|")}function Z(){var R,le,Y,O;if(!f.value||!S.value)return;const B=(le=(R=f.value).getBounds)==null?void 0:le.call(R);if(!B)return;const $=(Y=B.getSouthWest)==null?void 0:Y.call(B),j=(O=B.getNorthEast)==null?void 0:O.call(B);!$||!j||(F.value=`${$.lng} ${$.lat},${j.lng} ${j.lat}`)}async function D(B=!1){await e.nextTick();const $=Q(w.value);l.value=$,S.value?Z():F.value="";try{const j={search:u.value,limit:p.value.toString(),page:k.value.toString(),filter:$,...S.value&&F.value?{bbox:F.value}:{}},R=new URL(`/api/data/${t.table}`,window.location.origin)+(i.value?`/${i.value}`:""),le=new URLSearchParams(j).toString(),Y=await fetch(`${R.toString()}?${le}`).then(O=>O.json());if(i.value){let O;Y.rows.length>1?O=Y.rows.find(wr=>wr.id===i.value):[O]=Y.rows,y.value=O,B||(x.value=r(O==null?void 0:O.geom),C.value=14),h.value=!0}else h.value=!1,E.value||(C.value=t.zoom||5),g.value=Y==null?void 0:Y.rows;E.value=!1,c.value=Y.filtered,vl({page:k.value,filter:$,id:i.value,filterByView:S.value})}catch(j){console.error(j.message)}}const _=De(()=>D(),300),L=De(()=>D(!0),400);function T(){!f.value||M||!S.value||(f.value.on("moveend",L),f.value.on("zoomend",L),M=!0)}function J(){!f.value||!M||(f.value.off("moveend",L),f.value.off("zoomend",L),M=!1)}function W(B){p.value=B,k.value=1,D()}function ne(B){k.value=B,D()}function ce(B){w.value=B.data,k.value=1,i.value?i.value="":D(),s("change:filter",B)}async function V(){if(t.filters)return;const $=await(await fetch(`/api/filter/${t.table}`)).json();m.value=$.list}function N(){w.value={},u.value="",D()}e.onMounted(async()=>{var j,R;d.value=window.innerWidth,d.value<1e3&&(b.value=!1);const B=new URLSearchParams(window.location.search);k.value=Number(B.get("page"))||1,p.value=Number(B.get("limit"))||p.value,i.value=B.get("id")||"",h.value=!!i.value,l.value=B.get("filter")||"";const $=B.get("bbox");$!==null?S.value=$!=="0":S.value=!1,(R=(j=B.get("filter"))==null?void 0:j.split("|"))==null||R.forEach(le=>{const[Y,O]=le.split("=");Y&&(w.value[Y]=O!=null&&O.includes(",")?O.split(","):[O])}),V(),!g.value&&!i.value&&D()}),e.onBeforeUnmount(()=>{J()});function z(){E.value=!0,h.value=!1,y.value=null,i.value=""}function A(B){B!=null&&B.geom&&(x.value=r(B.geom),C.value=16),y.value=B,i.value=B.id}return e.watch(f,B=>{s("update:map",B),B&&S.value&&T()}),e.watch(u,B=>{B||D()}),e.watch(i,()=>{D()}),e.watch(S,()=>{S.value?T():J(),D()}),(B,$)=>{var j;return e.openBlock(),e.createElementBlock("section",er,[e.renderSlot(B.$slots,"header",{title:t.title,total:c.value}),e.createElementVNode("div",tr,[e.createVNode(e.unref(v),{type:"text",modelValue:u.value,"onUpdate:modelValue":$[0]||($[0]=R=>u.value=R),name:"search",label:"Пошук",onChange:e.unref(_)},null,8,["modelValue","onChange"]),m.value.length?(e.openBlock(),e.createBlock(e.unref(ge),{key:0,schema:m.value,view:"inline",onChange:ce,limit:5,value:w.value,ref:"filterRef"},null,8,["schema","value"])):e.createCommentVNode("",!0),e.createElementVNode("div",lr,[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:b.value?"Приховати карту":"Показати карту",onClick:$[1]||($[1]=R=>b.value=!b.value)},[b.value?(e.openBlock(),e.createBlock(Eo,{key:0})):(e.openBlock(),e.createBlock(Mo,{key:1})),rr],8,or),e.createElementVNode("div",nr,[e.createElementVNode("button",{onClick:$[2]||($[2]=R=>b.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(Uo)]),e.createElementVNode("button",{onClick:$[3]||($[3]=R=>b.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(Ao)])])])]),e.createElementVNode("div",ar,[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden shrink-0",b.value?"w-2/4 mr-0":"w-full mr-3",h.value?"hidden":""])},[(j=B.$slots)!=null&&j.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ir,[e.createElementVNode("div",null,[e.createElementVNode("span",cr,e.toDisplayString(t.title),1),e.createElementVNode("span",sr,e.toDisplayString(c.value),1),dr]),t.objectsInView?(e.openBlock(),e.createElementBlock("label",mr,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"accent-blue-600 w-4 h-4","onUpdate:modelValue":$[4]||($[4]=R=>S.value=R)},null,512),[[e.vModelCheckbox,S.value]]),pr])):e.createCommentVNode("",!0)])),e.createElementVNode("div",fr,[c.value>=1?e.renderSlot(B.$slots,"table",{key:0,rows:g.value,selectRow:A}):(e.openBlock(),e.createElementBlock("div",ur,[e.createVNode(wo),hr,gr,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:N}," Очистити дані пошуку ")]))]),c.value>=1?(e.openBlock(),e.createElementBlock("hr",yr)):e.createCommentVNode("",!0),c.value>=1?(e.openBlock(),e.createElementBlock("div",br,[e.createElementVNode("div",xr,[e.createVNode(go,{total:c.value,currentPage:k.value??1,pageSize:p.value,onPageChange:$[5]||($[5]=R=>ne(R)),onPageSizeChange:$[6]||($[6]=R=>W(R))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),h.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(b.value?"lg:static lg:w-1/2 mr-0 pb-5":"pb-5 mr-3"),style:{height:"calc(100vh - 152px)"}},[e.renderSlot(B.$slots,"details",{table:t.table,selectedRow:y.value,closeObjCard:z})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",kr,[e.createVNode(vo,{table:t.table,map:f.value,"onUpdate:map":$[7]||($[7]=R=>f.value=R),zoom:C.value,minZoom:t.minZoom,maxZoom:t.maxZoom,colorAttr:t.colorAttr,filter:l.value,center:x.value,clusterZoom:t.clusterZoom,modelValue:i.value,"onUpdate:modelValue":$[8]||($[8]=R=>i.value=R),layers:t.layers},{default:e.withCtx(({hoverData:R})=>[e.renderSlot(B.$slots,"popup",{data:R})]),_:3},8,["table","map","zoom","minZoom","maxZoom","colorAttr","filter","center","clusterZoom","modelValue","layers"]),e.renderSlot(B.$slots,"default",{table:t.table,map:f.value,selectedRow:y.value})],512),[[e.vShow,b.value]])])])}}});return ye.install=a=>{a.component("VsPartsMap",ye),a._context.directives.tooltip||a.directive("tooltip",ze)},ye});
|
|
1
|
+
(function(e,oe){typeof exports=="object"&&typeof module<"u"?module.exports=oe(require("vue")):typeof define=="function"&&define.amd?define(["vue"],oe):(e=typeof globalThis<"u"?globalThis:e||self,e.PartsMap=oe(e.Vue))})(this,function(e){"use strict";const oe=(c,l)=>{const r=c.__vccOpts||c;for(const[o,t]of l)r[o]=t;return r};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(c){this.$emit("update:modelValue",c)}},labelCursorClasses(){return[{"cursor-not-allowed":this.disabled},{"cursor-pointer":!this.disabled}]}},methods:{handleEnterDown(c){const{keyCode:l}=c;l===13&&(this.modelState=!this.modelState)},addKeyHandler(){window.addEventListener("keydown",this.handleEnterDown)},removeKeyHandler(){window.removeEventListener("keydown",this.handleEnterDown)}}});const Pe={},Ke={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 Ue(c,l){return e.openBlock(),e.createElementBlock("svg",Ke,l[0]||(l[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 Oe=oe(Pe,[["render",Ue]]),Ie={},Ze={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 He(c,l){return e.openBlock(),e.createElementBlock("svg",Ze,l[0]||(l[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 We=oe(Ie,[["render",He]]),qe={},Ye={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 Qe(c,l){return e.openBlock(),e.createElementBlock("svg",Ye,l[0]||(l[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 Ge=oe(qe,[["render",Qe]]),Xe={},Je={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 ve(c,l){return e.openBlock(),e.createElementBlock("svg",Je,l[0]||(l[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)]))}const et=oe(Xe,[["render",ve]]),tt={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},lt={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},ot={class:"flex-1"},rt={class:"font-medium text-gray-900"},at={class:"mt-0.5 text-sm text-gray-700"},nt=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(c){const l={success:Oe,warning:We,error:et,info:Ge};return(r,o)=>(e.openBlock(),e.createElementBlock("div",tt,[e.createElementVNode("div",lt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l[r.type]))),e.createElementVNode("div",ot,[e.createElementVNode("strong",rt,e.toDisplayString(r.title),1),e.createElementVNode("p",at,e.toDisplayString(r.message),1)]),o[0]||(o[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 se={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"},we=c=>{var d;const{type:l="info",title:r,message:o,position:t="right-bottom"}=c||{};let n=document.querySelector("#notify-root");n||(n=document.createElement("div"),n.id="notify-root",n.className=`fixed z-[2000] flex flex-col gap-3 ${se[t]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(n)),n.className.includes(se[t])||(Object.values(se).forEach(b=>{n.classList.remove(...b.split(" "))}),n.classList.add(...se[t].split(" ")));const m=document.createElement("div");n.appendChild(m);const f=e.createApp({render(){return e.h(nt,{type:l,title:r,message:o,onClose:()=>{f.unmount(),m.remove()}})}});f.mount(m),(d=m.querySelector("button"))==null||d.addEventListener("click",()=>{m.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{f.unmount(),m.remove()},350)}),setTimeout(()=>{m.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{f.unmount(),m.remove()},350)},3500)},v=(c,l)=>{const r=c.__vccOpts||c;for(const[o,t]of l)r[o]=t;return r},it={},st={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 ct(c,l){return e.openBlock(),e.createElementBlock("svg",st,l[0]||(l[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 dt=v(it,[["render",ct]]),mt={},pt={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 ft(c,l){return e.openBlock(),e.createElementBlock("svg",pt,l[0]||(l[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)]))}const re=v(mt,[["render",ft]]),ut={class:"flex items-center justify-between w-full text-sm"},gt={class:"flex items-center cursor-pointer w-full"},ht={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},yt=["value"],xt={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},bt={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},kt={key:1,class:"absolute right-2 flex size-3.5 items-center justify-center"},pe=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(c,{expose:l,emit:r}){const o=c,t=r;function n(){t("itemClick",o.value)}const m=e.ref(null),f=e.computed(()=>o.layout==="inline"&&o.type==="radio");return l({el:m}),(d,b)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-sm group hover:bg-gray-100",ref_key:"el",ref:m},[e.createElementVNode("div",ut,[e.createElementVNode("div",gt,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(d.layout)?"text-sm 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-sm text-gray-500 cursor-pointer",{"bg-blue-100":d.highlighted,relative:f.value}]),onClick:e.withModifiers(n,["stop","prevent"])},[f.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[d.type==="checkbox"?"rounded-[4px]":"rounded-full",d.color?`bg-[${d.color}] border-[#ffffff]`:d.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[d.isSelected?(e.openBlock(),e.createElementBlock("img",ht)):e.createCommentVNode("",!0)],2)),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:d.value},null,8,yt),e.createElementVNode("div",{class:e.normalizeClass(["flex flex-1 flex-row items-center justify-between",f.value?"pl-1 pr-6":"w-[calc(100%-18px)] pl-[10px]"])},[e.createElementVNode("span",xt,e.toDisplayString(d.label??"Відсутні дані"),1),d.count?(e.openBlock(),e.createElementBlock("div",bt," ("+e.toDisplayString(d.count)+") ",1)):e.createCommentVNode("",!0)],2),f.value&&d.isSelected?(e.openBlock(),e.createElementBlock("span",kt,[e.createVNode(re)])):e.createCommentVNode("",!0)],2)])])],512))}});function fe(c,l){const{options:r=[],limit:o=20}=c;function t(g){return Array.isArray(g)?g[0]:g}const n=e.ref(t(c.modelValue)),m=e.ref(""),f=e.ref(!1),d=e.ref([]),b=e.ref("id"),p=e.ref("text"),u=e.ref(!1),h=e.ref(c.layout!=="popover"&&r.length>o);function x(g){const y=g.find(Boolean)??{},M=["id","value","code","key"].find(V=>V in y)??"id",_=["text","label","name","title"].find(V=>V in y)??"text";return{autoValueKey:M,autoLabelKey:_}}if(r.length>0){const g=x(r);b.value=g.autoValueKey,p.value=g.autoLabelKey}const w=e.computed(()=>{const g=d.value;return c.layout==="popover"||u.value?g:g.slice(0,o)});e.watch(()=>c.modelValue,g=>{n.value=t(g)},{immediate:!0}),d.value=[...r].sort((g,y)=>c.sort==="count"?y.count&&g.count?y.count-g.count:0:c.sort==="name"?String(g[p.value]??"").localeCompare(String(y[p.value]??"")):0);function k(g){return n.value===g[b.value]}function i(g){n.value=g[b.value],l("update:modelValue",n.value),l("change",{name:c.name,value:n.value})}function a(){n.value=void 0,l("update:modelValue",n.value),l("clear",c.name)}function s(){u.value=!u.value}return{innerValue:n,searchTerm:m,filteredOptions:w,isSelected:k,selectItem:i,clear:a,toggleShowAll:s,isReqProc:f,showAll:u,isEnableShowAll:h,labelKey:p,valueKey:b,allOptions:d}}const wt={},Vt={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function Ct(c,l){return e.openBlock(),e.createElementBlock("svg",Vt,l[0]||(l[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 ue=v(wt,[["render",Ct]]),Bt={},Et={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 Nt(c,l){return e.openBlock(),e.createElementBlock("svg",Et,l[0]||(l[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const ce=v(Bt,[["render",Nt]]),_t={},St={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 Mt(c,l){return e.openBlock(),e.createElementBlock("svg",St,l[0]||(l[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const ge=v(_t,[["render",Mt]]),Dt={key:0,class:"w-full"},Lt={class:"flex flex-col items-center justify-center p-5 text-center"},zt={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},At={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Ft=e.defineComponent({__name:"radio",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=e.ref(null),n=r,{innerValue:m,filteredOptions:f,isSelected:d,selectItem:b,clear:p,toggleShowAll:u,isReqProc:h,showAll:x,isEnableShowAll:w,labelKey:k,valueKey:i,allOptions:a}=fe({...o,modelValue:o.modelValue??o.default??""},n);return l({clear:p,inputTextRef:t}),e.watch(()=>o.modelValue,s=>{s===void 0&&(m.value=void 0)}),(s,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([s.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([s.layout==="popover"?"flex-1 overflow-y-auto p-2":"",s.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),y=>(e.openBlock(),e.createBlock(pe,{layout:s.layout,key:y[e.unref(i)],count:y.count,label:y[e.unref(k)],color:y.color,type:"radio",value:y[e.unref(i)],"is-selected":e.unref(d)(y),onItemClick:M=>e.unref(b)(y)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),s.type==="select"&&e.unref(f).length===0&&!e.unref(h)?(e.openBlock(),e.createElementBlock("div",Dt,[e.createElementVNode("div",Lt,[e.createVNode(ue),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),s.layout!=="popover"&&s.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(x)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:g[0]||(g[0]=(...y)=>e.unref(u)&&e.unref(u)(...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"},[g[5]||(g[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(ce)])):e.createCommentVNode("",!0),e.unref(x)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:g[1]||(g[1]=(...y)=>e.unref(u)&&e.unref(u)(...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"},[g[6]||(g[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(ge)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),s.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[s.layout==="inline"?(e.openBlock(),e.createElementBlock("div",zt,[e.createTextVNode(e.toDisplayString(e.unref(m)||e.unref(m)===null?1:0)+" з "+e.toDisplayString(e.unref(a).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[2]||(g[2]=(...y)=>e.unref(p)&&e.unref(p)(...y))}," Очистити ",512),[[e.vShow,e.unref(m)!==""&&e.unref(m)!==void 0]])])):e.createCommentVNode("",!0),s.layout==="popover"?(e.openBlock(),e.createElementBlock("div",At,[e.createElementVNode("span",null,e.toDisplayString(e.unref(m)||e.unref(m)===null?1:0)+" з "+e.toDisplayString(e.unref(a).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[3]||(g[3]=(...y)=>e.unref(p)&&e.unref(p)(...y))}," Очистити ",512),[[e.vShow,e.unref(m)!==""&&e.unref(m)!==void 0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function Ve(c,l){const{options:r=[],limit:o=20}=c;function t(g){return Array.isArray(g)?g:g?[g]:[]}const n=e.ref(t(c.modelValue)),m=e.ref(""),f=e.ref(!1),d=e.ref([]),b=e.ref("id"),p=e.ref("text"),u=e.ref(!1),h=e.ref(c.layout!=="popover"&&r.length>o);function x(g){const y=g.find(Boolean)??{},M=["id","value","code","key"].find(V=>V in y)??"id",_=["text","label","name","title"].find(V=>V in y)??"text";return{autoValueKey:M,autoLabelKey:_}}if(r.length>0){const g=x(r);b.value=g.autoValueKey,p.value=g.autoLabelKey}const w=e.computed(()=>{const g=d.value;return c.layout==="popover"||u.value?g:g.slice(0,o)});e.watch(()=>c.modelValue,g=>{n.value=t(g)},{immediate:!0}),d.value=[...r].sort((g,y)=>c.sort==="count"?y.count&&g.count?y.count-g.count:0:c.sort==="name"?String(g[p.value]).localeCompare(String(y[p.value])):0);function k(g){return n.value&&n.value.includes(g[b.value])}function i(g){const y=n.value.includes(g[b.value]);n.value=y?n.value.filter(M=>M!==g[b.value]):[...n.value,g[b.value]],l("update:modelValue",n.value),l("change",{name:c.name,value:n.value})}function a(){n.value=[],l("update:modelValue",n.value),l("clear",c.name)}function s(){u.value=!u.value}return{innerValue:n,searchTerm:m,filteredOptions:w,isSelected:k,selectItem:i,clear:a,toggleShowAll:s,isReqProc:f,showAll:u,isEnableShowAll:h,labelKey:p,valueKey:b,allOptions:d}}const Ce={en:{apply:"Apply",search:"Search",more:"Show more",less:"Show less",selected:"selected",clear:"Clear",notfound:"Nothing found",period:"Period",today:"Today",week:"Week",max:"max",min:"min",month:"Month",quarter:"Quarter",year:"Year",alltime:"All Time",prev:"Prev",next:"Next",selectFieldHelp:"Select a field to start creating a filter."},uk:{apply:"Застосувати",search:"Пошук",more:"Показати більше",less:"Показати меньше",selected:"обрано",clear:"Очистити",notfound:"Нічого не знайдено",period:"Період",today:"Сьогодні",week:"Тиждень",max:"макс",min:"мін",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період",selectFieldHelp:"Оберіть поле, щоб розпочати створення фільтра."}};function Be(c){const l=c.split(".")[1],r=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(Ce[r||navigator.language]||Ce.uk)[l]}function te(){const c=e.getCurrentInstance();if(!c.appContext.config.globalProperties.$i18n)return Be;const l=c.appContext.config.globalProperties.$t;return r=>{const o=l(r);return o===r?Be(r):o}}const jt={key:0,class:"w-full"},$t={class:"flex flex-col items-center justify-center p-5 text-center"},Rt={class:"max-w-sm mx-auto mt-6"},Tt={class:"font-medium text-gray-800 dark:text-neutral-200"},Pt={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Kt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Ee=e.defineComponent({__name:"checkbox",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=te(),t=c,n=r,{innerValue:m,filteredOptions:f,isSelected:d,selectItem:b,clear:p,toggleShowAll:u,isReqProc:h,showAll:x,isEnableShowAll:w,labelKey:k,valueKey:i,allOptions:a}=Ve({...t,modelValue:t.modelValue},n);return e.watch(()=>t.modelValue,s=>{s===void 0&&(m.value=[])}),l({clear:p}),(s,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([s.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([s.layout==="popover"?"flex-1 overflow-y-auto p-2":"",s.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),y=>(e.openBlock(),e.createBlock(pe,{layout:s.layout,count:y.count,label:y[e.unref(k)],color:y.color,type:"checkbox",value:y[e.unref(i)],"is-selected":e.unref(d)(y),onItemClick:M=>e.unref(b)(y)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),s.type==="select"&&e.unref(f).length===0&&!e.unref(h)?(e.openBlock(),e.createElementBlock("div",jt,[e.createElementVNode("div",$t,[e.createVNode(ue),e.createElementVNode("div",Rt,[e.createElementVNode("p",Tt,e.toDisplayString(e.unref(o)("filter.notfound")),1),g[4]||(g[4]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),s.layout!=="popover"&&s.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(x)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:g[0]||(g[0]=(...y)=>e.unref(u)&&e.unref(u)(...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(o)("filter.more"))+" ",1),e.createVNode(ce)])):e.createCommentVNode("",!0),e.unref(x)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:g[1]||(g[1]=(...y)=>e.unref(u)&&e.unref(u)(...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(o)("filter.less"))+" ",1),e.createVNode(ge)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),s.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[s.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Pt,[e.createTextVNode(e.toDisplayString(e.unref(m).length)+" / "+e.toDisplayString(e.unref(a).length)+" "+e.toDisplayString(e.unref(o)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[2]||(g[2]=(...y)=>e.unref(p)&&e.unref(p)(...y))},e.toDisplayString(e.unref(o)("filter.clear")),513),[[e.vShow,e.unref(m).length!==0]])])):e.createCommentVNode("",!0),s.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Kt,[e.createElementVNode("span",null,e.toDisplayString(e.unref(m).length)+" / "+e.toDisplayString(e.unref(a).length)+" "+e.toDisplayString(e.unref(o)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[3]||(g[3]=(...y)=>e.unref(p)&&e.unref(p)(...y))},e.toDisplayString(e.unref(o)("filter.clear")),513),[[e.vShow,e.unref(m).length!==0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Ut={},Ot={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 It(c,l){return e.openBlock(),e.createElementBlock("svg",Ot,l[0]||(l[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 Ne=v(Ut,[["render",It]]),Zt={},Ht={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 Wt(c,l){return e.openBlock(),e.createElementBlock("svg",Ht,l[0]||(l[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 he=v(Zt,[["render",Wt]]);class _e{static getWidthClass(l){return typeof l=="number"?`max-w-[${l}px] min-w-[${l}px]`:typeof l=="string"?l.endsWith("%")||l.endsWith("px")?`max-w-[${l}]`:`max-w-${l}`:"w-full"}}const qt={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},Yt=["placeholder"],Qt=e.defineComponent({__name:"text-input",props:{id:{},name:{},title:{},type:{},label:{},width:{default:220},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{emit:l}){var b;const r=c,o=e.ref((r.placeholder||r.label||r.title||r.name||"search").toString()),t=l,n=e.ref(((b=r.modelValue)==null?void 0:b.toString())??"");e.watch(()=>r.modelValue,p=>{p!==n.value&&(n.value=(p==null?void 0:p.toString())??"")});let m=null;function f(){if(n.value=n.value.trimStart(),n.value.length===0){d();return}m&&clearTimeout(m),m=setTimeout(()=>{t("update:modelValue",n.value),t("change",{name:r.name,value:n.value})},300)}function d(){n.value="",t("update:modelValue",""),t("clear",r.name)}return(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vs-form-text relative bg-white rounded-sm [&>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]:rounded-sm [&>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",p.layout==="inline"?e.unref(_e).getWidthClass(p.width):"mb-2"+(p.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",qt,[e.createVNode(Ne)]),n.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:d,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(he)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":u[0]||(u[0]=h=>n.value=h),onInput:f,placeholder:o.value,class:"!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 rounded-sm 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"},null,40,Yt),[[e.vModelText,n.value]])],2))}});function Se(c={color:"blue"}){return e.computed(()=>{const l=`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-${c.color}-500 focus:border-transparent
|
|
2
|
+
text-gray-800 bg-white dark:text-neutral-300 dark:bg-neutral-800 dark:border-neutral-600`;return(c==null?void 0:c.size)==="sm"?`${l}h-[32px]`:`${l}h-[38px]`})}function Gt(){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 Xt(){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 Me(c){return c==="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":c==="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 Jt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},vt=["placeholder","disabled"],el={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},tl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ll=["placeholder","disabled"],ol=["disabled"],rl=e.defineComponent({__name:"range-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=Se(),t=Gt(),n=te(),m=c,f=e.ref(m.modelValue??m.default??[]),d=r,b=e.computed({get:()=>m.modelValue??f.value,set:h=>{m.modelValue!==void 0?d("update:modelValue",h):f.value=h}});function p(){d("change",{name:m.name,value:b.value||f.value})}function u(){f.value=[],b.value=f.value,d("clear",m.name)}return e.watch(()=>m.modelValue,h=>{h!==void 0&&m.layout!=="popover"?(f.value=h,d("update:modelValue",h)):f.value=[]}),l({clear:u,currentValue:b}),(h,x)=>{var w,k;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(h.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[h.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",Jt,e.toDisplayString(e.unref(n)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(o)),placeholder:((w=h.placeholder)==null?void 0:w[0])??e.unref(n)("filter.min"),step:"1",style:{outline:"none"},"onUpdate:modelValue":x[0]||(x[0]=i=>b.value[0]=i),disabled:h.disabled},null,10,vt),[[e.vModelText,b.value[0]]])]),h.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",el," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[h.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",tl,e.toDisplayString(e.unref(n)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(o)),placeholder:((k=h.placeholder)==null?void 0:k[1])??e.unref(n)("filter.max"),min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":x[1]||(x[1]=i=>b.value[1]=i),disabled:h.disabled},null,10,ll),[[e.vModelText,b.value[1]]])]),["popover","inline","vertical"].includes(h.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:p,class:e.normalizeClass(e.unref(t)+(h.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(h.layout==="vertical"?"Ok":e.unref(n)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(h.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(b.value[0]||b.value[1]),onClick:u,class:e.normalizeClass(e.unref(t)+" hover:bg-gray-100")},e.toDisplayString(e.unref(n)("filter.clear")),11,ol)):e.createCommentVNode("",!0)],2)]),(h.cleanable&&f.value.length,e.createCommentVNode("",!0))],64)}}});class W{static format(l){const r=l.getFullYear(),o=(l.getMonth()+1).toString().padStart(2,"0"),t=l.getDate().toString().padStart(2,"0");return`${r}-${o}-${t}`}static getShiftedDay(l,r=0){const o=l?new Date(l):new Date;return o.setDate(o.getDate()+r),this.format(o)}static getLastWeekRange(l,r,o=0){if(l&&r){const b=new Date(l),p=new Date(r);return b.setDate(b.getDate()+o*7),p.setDate(p.getDate()+o*7),[this.format(b),this.format(p)]}const t=new Date,n=t.getDay(),m=n===0?13:n-1+7,f=new Date(t);f.setDate(t.getDate()-m+o*7);const d=new Date(f);return d.setDate(f.getDate()+6),[this.format(f),this.format(d)]}static getMonthRange(l,r,o=0){let t;l?t=new Date(l):t=new Date,t=new Date(t.getFullYear(),t.getMonth()+o,1);const n=t,m=new Date(t.getFullYear(),t.getMonth()+1,0);return[this.format(n),this.format(m)]}static getQuarterRange(l,r,o=0){const t=l||r,n=t?new Date(t):new Date;let m=Math.floor(n.getMonth()/3);m+=o;const f=(m%4+4)%4*3,d=n.getFullYear()+Math.floor(m/4),b=new Date(d,f,1),p=new Date(d,f+3,0);return[this.format(b),this.format(p)]}static getYear(l,r=0){let o;return l&&/^\d{4}$/.test(l)?o=parseInt(l,10):l?o=new Date(l).getFullYear():o=new Date().getFullYear(),String(o+r)}static getYearRange(l,r=0){let o;return l&&/^\d{4}$/.test(l)?o=parseInt(l,10):l?o=new Date(l).getFullYear():o=new Date().getFullYear(),[this.format(new Date(o+r,0,1)),this.format(new Date(o+r+1,0,0))]}static getRangeFromDaysBefore(l){const r=new Date,o=new Date(r.getTime());return o.setDate(r.getDate()-l),[this.format(o),this.format(r)]}}function De(c,l){const{popoverRef:r}=c,o=te(),t=e.ref(""),n=e.ref(c.modelValue??c.default??[]),m=e.ref(0);function f(){const a=W.getRangeFromDaysBefore(m.value);return n.value=[...a],l("change",{name:c.name,value:n.value}),l("update:modelValue",n.value),a}function d(a){var g;t.value=a,(g=r.value)==null||g.close();const s=[];switch(t.value){case"today":s.push(W.getShiftedDay()),s.push(W.getShiftedDay());break;case"week":s.push(...W.getLastWeekRange());break;case"month":s.push(...W.getMonthRange());break;case"quarter":s.push(...W.getQuarterRange());break;case"year":s.push(...W.getYearRange());break;case"last_7_days":m.value=7,f();break;case"range":m.value=7,s.push(...f());break}n.value=[...s],l("change",{name:c.name,value:n.value}),l("update:modelValue",n.value)}function b(){const a=[];switch(t.value){case"today":a.push(W.getShiftedDay(n.value[0],1));break;case"week":a.push(...W.getLastWeekRange(n.value[0],n.value[1],1));break;case"month":a.push(...W.getMonthRange(n.value[0],n.value[1],1));break;case"quarter":a.push(...W.getQuarterRange(n.value[0],n.value[1],1));break;case"year":a.push(...W.getYearRange(n.value[0],1));break}n.value=[...a],l("change",{name:c.name,value:n.value}),l("update:modelValue",n.value)}function p(){const a=[];switch(t.value){case"today":a.push(W.getShiftedDay(n.value[0],-1));break;case"week":a.push(...W.getLastWeekRange(n.value[0],n.value[1],-1));break;case"month":a.push(...W.getMonthRange(n.value[0],n.value[1],-1));break;case"quarter":a.push(...W.getQuarterRange(n.value[0],n.value[1],-1));break;case"year":a.push(...W.getYearRange(n.value[0],-1));break}n.value=[...a],l("change",{name:c.name,value:n.value}),l("update:modelValue",n.value)}const u=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function h(a){const[s,g,y]=a.split("-");return`${y}.${g}.${s}`}function x(a,s="long"){const g=new Date(Date.UTC(2e3,a-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:s,timeZone:"UTC"}).format(g)}function w(a){const{value:s}=n;switch(a){case"today":return h(s[0]);case"range":return"Період";case"week":return s[0]&&s[1]?`${h(s[0])} – ${h(s[1])}`:"";case"quarter":if(s[0]){const g=new Date(s[0]),y=g.getFullYear(),M=g.getMonth();return`${Math.floor(M/3)+1} ${o("filter.quarter")} ${y}`}return"";case"month":if(s[0]){const[g,y]=s[0].split("-");return`${x(parseInt(y,10))} ${g}`}return"";case"year":return s[0]||"";case"last_7_days":return"За останні дні";default:return c.label??""}}const k=e.computed(()=>t.value?w(t.value):c.label??"");function i(){t.value="",n.value=[],l("update:modelValue",[]),l("clear",c.name)}return{activeMode:t,innerValue:n,daysBefore:m,onDaysBeforeChange:f,onSelectChange:d,nextClick:b,prevClick:p,ukMonths:u,formatDisplayDate:h,getModeLabel:w,currentLabel:k,clear:i}}const al={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},nl={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},il=["max","disabled"],sl=["min","disabled"],cl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},dl=["max","disabled"],ml={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},pl={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},fl=["min","disabled"],ul={class:"flex gap-1 pt-2"},gl=["onClick"],hl=e.defineComponent({__name:"date-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=Se(),n=Xt(),m=te(),f=r,d=e.ref(null),{activeMode:b,innerValue:p,onSelectChange:u,nextClick:h,prevClick:x,clear:w}=De({...o,popoverRef:d},f);return e.watch(()=>o.modelValue,k=>{k!==void 0?(p.value=k,f("update:modelValue",k)):(b.value="",p.value=[])}),e.watch(p,k=>{f("update:modelValue",k),f("change",{name:o.name,value:k})},{deep:!0}),l({clear:w,popoverRef:d}),(k,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[k.layout==="inline"?(e.openBlock(),e.createElementBlock("div",al,[e.unref(b)!==""&&e.unref(b)==="range"?(e.openBlock(),e.createElementBlock("div",nl,[i[7]||(i[7]=e.createTextVNode(" 1111 ",-1)),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(p)[1],locale:"uk-UA","onUpdate:modelValue":i[0]||(i[0]=a=>e.unref(p)[0]=a),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:k.disabled},null,8,il),[[e.vModelText,e.unref(p)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(p)[0],locale:"uk-UA","onUpdate:modelValue":i[1]||(i[1]=a=>e.unref(p)[1]=a),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:k.disabled},null,8,sl),[[e.vModelText,e.unref(p)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(k.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(k.layout!=="popover"?"w-[48%]":"")},[k.layout==="popover"?(e.openBlock(),e.createElementBlock("label",cl,e.toDisplayString(e.unref(m)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(p)[1],locale:"uk-UA","onUpdate:modelValue":i[2]||(i[2]=a=>e.unref(p)[0]=a),class:e.normalizeClass(e.unref(t)),disabled:k.disabled},null,10,dl),[[e.vModelText,e.unref(p)[0]]])],2),k.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",ml," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(k.layout!=="popover"?"w-[48%]":"")},[k.layout==="popover"?(e.openBlock(),e.createElementBlock("label",pl,e.toDisplayString(e.unref(m)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(p)[0],locale:"uk-UA","onUpdate:modelValue":i[3]||(i[3]=a=>e.unref(p)[1]=a),class:e.normalizeClass(e.unref(t)),disabled:k.disabled},null,10,fl),[[e.vModelText,e.unref(p)[1]]])],2)],2),e.createElementVNode("div",ul,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["today","week","month","quarter","year"],a=>e.createElementVNode("button",{key:a,class:e.normalizeClass(e.unref(n)+(e.unref(b)===a?" bg-blue-100":"")),onClick:s=>e.unref(u)(a)},e.toDisplayString(e.unref(m)("filter."+a)),11,gl)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(n)),onClick:i[4]||(i[4]=(...a)=>e.unref(x)&&e.unref(x)(...a))},"<",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(n)),onClick:i[5]||(i[5]=(...a)=>e.unref(h)&&e.unref(h)(...a))},">",2)]),(k.cleanable,e.createCommentVNode("",!0))],64))}});function yl(c,l){const{api:r,options:o=[],limit:t=20,dataKey:n="data"}=c,m=c.multi;function f(C){return m?Array.isArray(C)?C:C?[C]:[]:Array.isArray(C)?C[0]:C}const d=e.ref(f(c.modelValue)),b=e.ref(""),p=e.ref(!1),u=e.ref(o),h=e.ref("id"),x=e.ref("text"),w=e.ref(!1),k=e.ref(c.layout!=="popover"&&o.length>t),i=e.ref([]),a=e.ref(0);function s(C){const z=C.find(Boolean)??{},$=["id","value","code","key"].find(Y=>Y in z)??"id",K=["text","label","name","title"].find(Y=>Y in z)??"text";return{autoValueKey:$,autoLabelKey:K}}if(o.length>0){const C=s(o);h.value=C.autoValueKey,x.value=C.autoLabelKey}const g=e.computed(()=>{if(r)return u.value;const C=u.value;if(c.layout==="popover")return C;if(!b.value)return w.value?C:C.slice(0,t);const z=b.value.toLowerCase();return C.filter($=>$[x.value].toLowerCase().includes(z))});let y=null;async function M(C){if(r){p.value=!0;try{const z=new URL(r,window.location.origin);z.searchParams.set("json","1"),z.searchParams.set("key",C),z.searchParams.set("limit",t.toString());const $=await fetch(z.toString());if(!$.ok){we({type:"error",title:"Error",message:"Failed to fetch remote options"}),u.value=[];return}const K=await $.json();if(!K[n]){we({type:"error",title:"Error",message:K}),u.value=[];return}if(u.value=K[n],u.value.length>0){const Y=s(u.value);h.value=Y.autoValueKey,x.value=Y.autoLabelKey}a.value=K.total}catch(z){console.error("Failed to fetch remote options:",z)}finally{p.value=!1}}}e.watch(b,C=>{r&&(y&&clearTimeout(y),y=setTimeout(()=>{M(C)},200))}),e.watch(()=>c.modelValue,C=>{d.value=f(C)},{immediate:!0});function _(C){return m&&Array.isArray(d.value)?d.value.includes(C[h.value]):d.value&&d.value===C[h.value]}function V(C){if(m&&!Array.isArray(d.value)&&(d.value=[]),m&&Array.isArray(d.value)){const z=d.value.includes(C[h.value]);d.value=z?d.value.filter($=>$!==C[h.value]):[...d.value,C[h.value]],i.value=z?i.value.filter($=>$!==C[x.value]):[...i.value,C[x.value]]}else d.value=C[h.value],i.value=C[x.value];l("update:modelValue",d.value),l("change",{name:c.name,value:d.value})}function B(){m?(d.value=[],i.value=[]):(d.value=void 0,i.value=[]),l("update:modelValue",d.value),l("clear",c.name)}function S(){y&&clearTimeout(y),b.value="",w.value=!1}function N(){w.value=!w.value}e.onBeforeUnmount(()=>{y&&clearTimeout(y)});const L=e.ref(-1);e.watch(g,()=>{L.value=g.value.length>0?0:-1});function R(C){const z=g.value.length;if(C.key==="ArrowDown")C.preventDefault(),L.value=(L.value+1)%z;else if(C.key==="ArrowUp")C.preventDefault(),L.value=(L.value-1+z)%z;else if(C.key==="Enter"&&(C.preventDefault(),L.value>=0&&L.value<g.value.length)){const $=g.value[L.value];V($)}}function j(){r&&u.value.length===0&&b.value.length===0&&M(b.value)}return{innerValue:d,searchTerm:b,filteredOptions:g,isSelected:_,selectItem:V,clear:B,resetSearch:S,toggleShowAll:N,isReqProc:p,showAll:w,isEnableShowAll:k,labelKey:x,valueKey:h,allOptions:u,highlightedIndex:L,onKeyDown:R,selectedLabels:i,totalCount:a,loadData:j}}const xl={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},bl=["placeholder"],kl={key:0,class:"w-full"},wl={class:"flex flex-col items-center justify-center p-5 text-center"},Vl={class:"max-w-sm mx-auto mt-6"},Cl={class:"font-medium text-gray-800 dark:text-neutral-200"},Bl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},El={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Nl=e.defineComponent({__name:"select",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=te(),t=c,n=r,m=e.ref(null),{innerValue:f,filteredOptions:d,isSelected:b,selectItem:p,clear:u,resetSearch:h,toggleShowAll:x,isReqProc:w,showAll:k,isEnableShowAll:i,searchTerm:a,labelKey:s,valueKey:g,highlightedIndex:y,onKeyDown:M,selectedLabels:_,totalCount:V,loadData:B}=yl({...t,modelValue:t.modelValue},n);e.onMounted(()=>{h(),t.layout!=="inline"&&(B(),m.value&&t.layout==="popover"&&m.value.focus())}),e.watch(()=>t.modelValue,N=>{N===void 0&&(t.multi?f.value=[]:f.value=void 0)});const S=e.ref([]);return e.watch(y,N=>{var L;N>=0&&S.value[N]&&((L=S.value[N])==null||L.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(d,()=>{S.value=[]}),l({clear:u,inputTextRef:m,selectedLabels:_,loadData:B}),(N,L)=>{var R,j;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([N.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",xl,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":L[0]||(L[0]=C=>e.isRef(a)?a.value=C:null),onKeydown:L[1]||(L[1]=(...C)=>e.unref(M)&&e.unref(M)(...C)),class:"w-full h-full text-[13px] px-4 border rounded-sm pl-9 focus:outline-none focus:ring-ring focus:ring-1 focus:ring-blue-500 text-gray-700",placeholder:e.unref(o)("filter.search"),type:"text",ref_key:"inputTextRef",ref:m},null,40,bl),[[e.vModelText,e.unref(a)]]),e.createVNode(Ne,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(a)!=""?(e.openBlock(),e.createBlock(he,{key:0,onClick:L[2]||(L[2]=C=>a.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([N.layout==="popover"?"flex-1 overflow-y-auto p-2":"",N.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(C,z)=>(e.openBlock(),e.createBlock(pe,{layout:N.layout,count:C.count,label:C[e.unref(s)],color:C.color,type:N.multi?"checkbox":"radio",value:C[e.unref(g)],"is-selected":e.unref(b)(C),highlighted:z===e.unref(y),onItemClick:$=>e.unref(p)(C),ref_for:!0,ref:$=>S.value[z]=$==null?void 0:$.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),N.type==="select"&&e.unref(d).length===0&&!e.unref(w)?(e.openBlock(),e.createElementBlock("div",kl,[e.createElementVNode("div",wl,[e.createVNode(ue),e.createElementVNode("div",Vl,[e.createElementVNode("p",Cl,e.toDisplayString(e.unref(o)("filter.notfound")),1),L[7]||(L[7]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),N.layout!=="popover"&&N.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(k)&&e.unref(i)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:L[3]||(L[3]=(...C)=>e.unref(x)&&e.unref(x)(...C)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.more"))+" ",1),e.createVNode(ce)])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:L[4]||(L[4]=(...C)=>e.unref(x)&&e.unref(x)(...C)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(o)("filter.less"))+" ",1),e.createVNode(ge)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),N.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[N.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Bl,[e.createTextVNode(e.toDisplayString(N.multi&&Array.isArray(e.unref(f))?(R=e.unref(f))==null?void 0:R.length:e.unref(f)!==void 0&&(e.unref(f)||e.unref(f)===null)?1:0)+" / "+e.toDisplayString(e.unref(V))+" "+e.toDisplayString(e.unref(o)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:L[5]||(L[5]=(...C)=>e.unref(u)&&e.unref(u)(...C))},e.toDisplayString(e.unref(o)("filter.clear")),513),[[e.vShow,e.unref(f)!==""&&e.unref(f)!==void 0||e.unref(f)]])])):e.createCommentVNode("",!0),N.layout==="popover"?(e.openBlock(),e.createElementBlock("div",El,[e.createElementVNode("span",null,e.toDisplayString(N.multi&&Array.isArray(e.unref(f))?(j=e.unref(f))==null?void 0:j.length:e.unref(f)!==void 0&&(e.unref(f)||e.unref(f)===null)?1:0)+" / "+e.toDisplayString(e.unref(V))+" "+e.toDisplayString(e.unref(o)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:L[6]||(L[6]=(...C)=>e.unref(u)&&e.unref(u)(...C))},e.toDisplayString(e.unref(o)("filter.clear")),513),[[e.vShow,e.unref(f)!==""&&e.unref(f)!==void 0||e.unref(f)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),_l=["for","onClick"],Sl=["id","name","value"],Ml={class:"block"},Dl={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Ll={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},zl=e.defineComponent({__name:"tag-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=r,{innerValue:n,isSelected:m,selectItem:f,clear:d,labelKey:b,valueKey:p,allOptions:u}=o.multi?Ve({...o,modelValue:o.modelValue??o.default??[]},t):fe({...o,modelValue:o.modelValue!==void 0?o.modelValue:o.default??""},t);return l({clear:d}),e.watch(()=>o.modelValue,h=>{h===void 0&&(o.multi?n.value=[]:n.value=void 0)}),(h,x)=>{var w,k;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",h.layout==="popover"?"m-1":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),i=>(e.openBlock(),e.createElementBlock("label",{key:`item-${i[e.unref(p)]}`,for:`item-${i[e.unref(p)]}`,onClick:e.withModifiers(a=>e.unref(f)(i),["stop","prevent"]),class:e.normalizeClass([e.unref(m)(i)?"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-${i[e.unref(p)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${i[e.unref(p)]}`,value:i[e.unref(p)]},null,8,Sl),e.createElementVNode("span",Ml,e.toDisplayString(i[e.unref(b)]),1)],10,_l))),128))],2),h.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[h.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Dl,[e.createTextVNode(e.toDisplayString(h.multi&&Array.isArray(e.unref(n))?(w=e.unref(n))==null?void 0:w.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(u).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[0]||(x[0]=(...i)=>e.unref(d)&&e.unref(d)(...i))}," Очистити ",512),[[e.vShow,e.unref(n)!==""&&e.unref(n)!==void 0||e.unref(n)]])])):e.createCommentVNode("",!0),h.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Ll,[e.createElementVNode("span",null,e.toDisplayString(h.multi&&Array.isArray(e.unref(n))?(k=e.unref(n))==null?void 0:k.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(u).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[1]||(x[1]=(...i)=>e.unref(d)&&e.unref(d)(...i))}," Очистити ",512),[[e.vShow,e.unref(n)!==void 0&&e.unref(n)!==""||e.unref(n)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),Al=["disabled","title"],Fl={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},jl={class:"truncate text-ellipsis text-sm"},$l={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"},Rl={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"},Tl={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"},ye=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},en:{},ua:{},uk:{},fr:{},de:{},es:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(c,{expose:l}){const r=c,o=e.computed(()=>Me(r.mode)),t=e.ref(!1),n=e.ref({top:0,left:0}),m=e.ref(null),f=e.ref(null),d=e.ref(null);function b(){const y=f.value,M=d.value;if(!y||!M)return;const _=y.getBoundingClientRect(),V=M.offsetWidth,B=M.offsetHeight,S=window.innerWidth,N=window.innerHeight,L=8;let R=_.bottom+L,{left:j}=_;const C=Math.max(S-V-10,10);if(j=Math.min(j,C),j=Math.max(j,10),R+B>N-10){const z=_.top-B-L;R=z>=10?z:Math.max(N-B-10,10)}R<10&&(R=10),n.value={top:R,left:j}}function p(){t.value=!t.value,t.value&&e.nextTick(()=>{var y,M,_,V,B,S,N;b(),(y=r.fieldRef)!=null&&y.inputTextRef&&((V=(_=(M=r.fieldRef)==null?void 0:M.inputTextRef)==null?void 0:_.focus)==null||V.call(_)),(B=r.fieldRef)!=null&&B.loadData&&((N=(S=r.fieldRef)==null?void 0:S.loadData)==null||N.call(S))})}function u(y){var M,_,V;!((M=m.value)!=null&&M.contains(y.target))&&!((_=d.value)!=null&&_.contains(y.target))&&!((V=f.value)!=null&&V.contains(y.target))&&(t.value=!1)}function h(y){y.key==="Escape"&&(t.value=!1)}const x=e.ref(!1),w=e.ref("ua"),k=y=>{y.detail.key==="locale"&&(w.value=y.detail.newValue)};e.onMounted(()=>{x.value=!0,w.value=localStorage.locale,window.addEventListener("storage",k),document.addEventListener("click",u,!0),document.addEventListener("keydown",h),window.addEventListener("scroll",b,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",k),document.removeEventListener("click",u,!0),document.removeEventListener("keydown",h),window.removeEventListener("scroll",b,!0)});function i(){t.value=!1}l({close:i});function a(y){return Array.isArray(y)?y.filter(M=>M!=null&&M!=="").length:y&&typeof y=="object"?Object.values(y).filter(M=>M!=null&&M!=="").length:typeof y=="string"?y.trim()===""?0:1:typeof y=="number"?Number.isNaN(y)?0:1:y===null||y!==void 0?1:0}const s=e.computed(()=>{var _;const y=(_=r.fieldRef)==null?void 0:_.selectedLabels,M=a(y);return M>0?M:a(r.currentValue)}),g=e.computed(()=>{var M;const y=(M=r.fieldRef)==null?void 0:M.selectedLabels;return!y||["inline"].includes(r.layout||"")?r[w.value]||(r.label??""):Array.isArray(y)?y.length>0?y.join(", "):r.label??"":String(y)});return(y,M)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{onClick:p,disabled:y.disabled,ref_key:"triggerRef",ref:f,title:y.label,class:e.normalizeClass([o.value,y.width?e.unref(_e).getWidthClass(y.width):"w-full",y.layout==="inline"&&s.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",Fl,[e.createElementVNode("span",jl,e.toDisplayString(g.value),1),y.layout==="inline"&&s.value>0?(e.openBlock(),e.createElementBlock("span",$l,e.toDisplayString(s.value),1)):e.createCommentVNode("",!0)]),e.createVNode(ce,{class:"h-4 w-4 text-neutral-500"})],10,Al),x.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:d,class:"vsTailwind vs-popover__content bottom-right w-fit fixed z-[1000]",style:e.normalizeStyle({top:`${n.value.top}px`,left:`${n.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",Rl,[e.createElementVNode("div",Tl,[e.renderSlot(y.$slots,"default")])])],4),[[e.vShow,t.value]])])):e.createCommentVNode("",!0)]))}}),Pl={},Kl={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 Ul(c,l){return e.openBlock(),e.createElementBlock("svg",Kl,l[0]||(l[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const Ol=v(Pl,[["render",Ul]]),Il={},Zl={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 Hl(c,l){return e.openBlock(),e.createElementBlock("svg",Zl,l[0]||(l[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const Wl=v(Il,[["render",Hl]]),ql={class:"flex gap-1"},Yl={class:"mb-1"},Ql={class:"mb-1"},Gl={class:"inline-flex rounded-sm shrink-0 pl-1"},Xl=["title"],Jl={class:"inline-flex rounded-sm shrink-0 pl-1"},vl=["title"],eo={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},to=["max","value","disabled"],lo=["min","value","disabled"],oo=e.defineComponent({__name:"date-input-inline",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=te(),t=c,n=r,m=e.ref(null),{activeMode:f,innerValue:d,onSelectChange:b,nextClick:p,prevClick:u,currentLabel:h,clear:x}=De({...t,popoverRef:m},n);e.watch(()=>t.modelValue,i=>{i!==void 0?(d.value=i,n("update:modelValue",i)):(f.value="",d.value=[])}),e.watch(d,i=>{n("update:modelValue",i),n("change",{name:t.name,value:i})},{deep:!0});function w(i){const a=Array.isArray(d.value)?[...d.value]:[];d.value=[i,a[1]||""]}function k(i){const a=Array.isArray(d.value)?[...d.value]:[];d.value=[a[0]||"",i]}return l({clear:x,popoverRef:m}),(i,a)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",ql,[e.createVNode(ye,{ref_key:"popoverRef",ref:m,label:e.unref(h),"current-value":e.unref(d),mode:i.mode,width:typeof i.width=="number"&&e.unref(d).length?i.width-70:i.width,onClear:e.unref(x),layout:i.layout,class:e.normalizeClass(i.itemClass)},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:a[0]||(a[0]=s=>e.unref(b)("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(o)("filter.period"))+" ",1),e.unref(f)==="range"?(e.openBlock(),e.createBlock(re,{key:0})):e.createCommentVNode("",!0)])]),a[12]||(a[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:a[1]||(a[1]=s=>e.unref(b)("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(o)("filter.today"))+" ",1),e.unref(f)==="today"?(e.openBlock(),e.createBlock(re,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:a[2]||(a[2]=s=>e.unref(b)("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(o)("filter.week"))+" ",1),e.unref(f)==="week"?(e.openBlock(),e.createBlock(re,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:a[3]||(a[3]=s=>e.unref(b)("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(o)("filter.month"))+" ",1),e.unref(f)==="month"?(e.openBlock(),e.createBlock(re,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:a[4]||(a[4]=s=>e.unref(b)("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(o)("filter.quarter"))+" ",1),e.unref(f)==="quarter"?(e.openBlock(),e.createBlock(re,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Yl,[e.createElementVNode("button",{type:"button",onClick:a[5]||(a[5]=s=>e.unref(b)("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(o)("filter.year"))+" ",1),e.unref(f)==="year"?(e.openBlock(),e.createBlock(re,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",Ql,[e.createElementVNode("button",{type:"button",onClick:a[6]||(a[6]=s=>e.unref(x)()),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(o)("filter.alltime"))+" ",1),e.unref(d)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(re,{key:0}))])])]),_:1,__:[12]},8,["label","current-value","mode","width","onClear","layout","class"]),e.unref(f)!==""&&e.unref(f)!=="range"&&e.unref(f)!=="last_7_days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Gl,[e.createElementVNode("button",{type:"button",title:e.unref(o)("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:a[7]||(a[7]=(...s)=>e.unref(u)&&e.unref(u)(...s))},[e.createVNode(Ol)],8,Xl)]),e.createElementVNode("div",Jl,[e.createElementVNode("button",{type:"button",title:e.unref(o)("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:a[8]||(a[8]=(...s)=>e.unref(p)&&e.unref(p)(...s))},[e.createVNode(Wl)],8,vl)])],64)):e.createCommentVNode("",!0),e.unref(f)!==""&&e.unref(f)==="range"?(e.openBlock(),e.createElementBlock("div",eo,[e.createElementVNode("input",{type:"date",max:e.unref(d)[1],locale:"uk-UA",value:e.unref(d)[0],onInput:a[9]||(a[9]=s=>w(s.target.value)),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:i.disabled},null,40,to),e.createElementVNode("input",{type:"date",min:e.unref(d)[0],locale:"uk-UA",value:e.unref(d)[1],onInput:a[10]||(a[10]=s=>k(s.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:i.disabled},null,40,lo)])):e.createCommentVNode("",!0)]),(i.cleanable,e.createCommentVNode("",!0))],64))}}),ro={class:"flex flex-wrap items-center gap-2"},ao=["disabled","onClick"],no={key:0,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},io=e.defineComponent({__name:"button-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=r,{innerValue:n,isSelected:m,selectItem:f,clear:d,labelKey:b,valueKey:p,allOptions:u}=fe({...o,modelValue:o.modelValue??o.default??""},t),h=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value==="")),x=e.computed(()=>h.value?1:0);function w(i){return m(i)?["bg-blue-600 text-white"].filter(a=>typeof a=="string"&&a.trim().length>0).join(" "):["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter(a=>typeof a=="string"&&a.trim().length>0).join(" ")}function k(i){o.disabled||f(i)}return l({clear:d}),e.watch(()=>o.modelValue,i=>{i===void 0&&(n.value=void 0)}),(i,a)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),s=>(e.openBlock(),e.createElementBlock("button",{key:s[e.unref(p)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",w(s)]),disabled:i.disabled,onClick:g=>k(s)},e.toDisplayString(s[e.unref(b)]),11,ao))),128))]),i.cleanable&&i.layout==="popover"?(e.openBlock(),e.createElementBlock("div",no,[e.createElementVNode("span",null,e.toDisplayString(x.value)+" з "+e.toDisplayString(e.unref(u).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:a[0]||(a[0]=(...s)=>e.unref(d)&&e.unref(d)(...s))}," Очистити ",512),[[e.vShow,h.value]])])):e.createCommentVNode("",!0)],64))}}),Le={radio:Ft,checkbox:Ee,check:Ee,text:Qt,range:rl,date:hl,select:Nl,tag:zl,button:io,"date:inline":oo};function xe(c,l){let r;switch(c.toLowerCase()){case"autocomplete":r="select";break;case"check":r="checkbox";break;default:r=c==null?void 0:c.toString().toLowerCase()}return r==="date"&&l&&l==="inline"&&(r="date:inline"),{component:Le[r]||Le.text,type:r}}const so={style:{display:"inline-flex",margin:"0px",width:"100%"}},co={class:"relative w-full mb-2 p-4 bg-white rounded-lg shadow-sm"},mo={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},po={class:"flex items-center"},fo={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},uo={class:"filter-layout__body"},go=e.defineComponent({__name:"vertical-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=r,n=e.ref(),m=e.computed(()=>xe(o.type,o.layout)),f=e.computed({get:()=>o.modelValue,set:u=>t("update:modelValue",u)});function d(u){t("clear",u)}function b(u,h){t("change",{name:u,value:h}),o.modelValue!==void 0&&t("update:modelValue",h)}function p(){t("clear",o.name)}return e.watch(()=>o.default,u=>{f.value=u}),e.watch(()=>o.modelValue,u=>{f.value=u}),l({filterRef:n}),(u,h)=>{var x,w,k;return e.openBlock(),e.createElementBlock("div",so,[e.createElementVNode("div",co,[e.createElementVNode("div",mo,[e.createElementVNode("div",po,[e.createElementVNode("span",fo,e.toDisplayString(u.label),1)]),typeof f.value=="string"&&f.value.trim()!==""||Array.isArray(f.value)&&f.value.length>0&&f.value.some(i=>i!==void 0)||f.value===null?(e.openBlock(),e.createBlock(dt,{key:0,onClick:p})):e.createCommentVNode("",!0)]),e.createElementVNode("div",uo,[((x=m.value)==null?void 0:x.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((w=m.value)==null?void 0:w.component),e.mergeProps({key:0},o,{type:(k=m.value)==null?void 0:k.type,class:o.itemClass,onChange:h[0]||(h[0]=i=>b(i.name,i.value)),onClear:h[1]||(h[1]=i=>d(i)),ref_key:"filterRef",ref:n}),null,16,["type","class"])):(e.openBlock(),e.createBlock(ye,{key:1,"current-value":f.value,label:u.label,mode:u.mode,onClear:p,fieldRef:n.value,width:void 0,disabled:u.disabled,layout:"vertical"},{default:e.withCtx(()=>{var i,a;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((i=m.value)==null?void 0:i.component),e.mergeProps({ref_key:"filterRef",ref:n},o,{type:(a=m.value)==null?void 0:a.type,class:o.itemClass,onChange:h[2]||(h[2]=s=>b(s.name,s.value)),onClear:h[3]||(h[3]=s=>d(s))}),null,16,["type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),ze=e.defineComponent({__name:"inline-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=r,n=e.ref(),m=e.computed(()=>xe(o.type,o.layout)),f=e.computed({get:()=>o.modelValue,set:p=>t("update:modelValue",p)});function d(p=o.name){t("clear",p)}function b(p,u){t("change",{name:p,value:u}),o.modelValue!==void 0&&t("update:modelValue",u)}return e.watch(()=>o.default,p=>{f.value=p}),e.watch(()=>o.modelValue,p=>{f.value=p}),l({filterRef:n}),(p,u)=>{var h,x;return["text","date","button"].includes(p.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((h=m.value)==null?void 0:h.component),e.mergeProps({key:0},o,{type:(x=m.value)==null?void 0:x.type,class:p.itemClass,onChange:u[0]||(u[0]=w=>b(w.name,w.value)),onClear:u[1]||(u[1]=w=>d(w)),disabled:p.disabled,modelValue:f.value,"onUpdate:modelValue":u[2]||(u[2]=w=>f.value=w)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(ye,{key:1,"current-value":f.value,label:p.label,mode:p.mode,onClear:d,fieldRef:n.value,width:o.width,disabled:p.disabled,layout:"inline"},{default:e.withCtx(()=>{var w,k;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((w=m.value)==null?void 0:w.component),e.mergeProps({ref_key:"filterRef",ref:n},o,{modelValue:f.value,"onUpdate:modelValue":u[3]||(u[3]=i=>f.value=i),type:(k=m.value)==null?void 0:k.type,class:o.itemClass,onChange:u[4]||(u[4]=i=>b(i.name,i.value)),onClear:u[5]||(u[5]=i=>d(i))}),null,16,["modelValue","type","class"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),ho=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=r,n=e.ref(),m=e.computed(()=>xe(o.type,o.layout)),f=e.computed({get:()=>o.modelValue,set:p=>t("update:modelValue",p)});function d(p){t("clear",p)}function b(p,u){t("change",{name:p,value:u}),o.modelValue!==void 0&&t("update:modelValue",u)}return e.watch(()=>o.default,p=>{f.value=p}),e.watch(()=>o.modelValue,p=>{f.value=p}),e.watch(()=>o,p=>{f.value=p}),l({filterRef:n}),(p,u)=>{var h,x;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((h=m.value)==null?void 0:h.component),e.mergeProps(o,{type:(x=m.value)==null?void 0:x.type,class:o.itemClass,modelValue:f.value,"onUpdate:modelValue":u[0]||(u[0]=w=>f.value=w),onChange:u[1]||(u[1]=w=>b(w.name,w.value)),onClear:u[2]||(u[2]=w=>d(w)),ref_key:"filterRef",ref:n}),null,16,["type","class","modelValue"])}}}),ee=e.defineComponent({__name:"filter-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean,default:!0},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{default:"name"},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(c,{expose:l,emit:r}){const o=c,t=r,n=e.ref(),m=e.computed({get:()=>o.modelValue,set:p=>t("update:modelValue",p)});function f(p){t("clear",p)}function d(p,u){t("change",{name:p,value:u}),o.modelValue!==void 0&&t("update:modelValue",u)}e.watch(()=>o.default,p=>{m.value=p}),e.watch(()=>o.modelValue,p=>{m.value=p}),l({filterRef:n});function b(){switch(o.layout){case"inline":return ze;case"vertical":return go;case"popover":return ho;default:return ze}}return(p,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b()),e.mergeProps(o,{onChange:u[0]||(u[0]=h=>d(h.name,h.value)),onClear:u[1]||(u[1]=h=>f(h)),modelValue:m.value,"onUpdate:modelValue":u[2]||(u[2]=h=>m.value=h)}),null,16,["modelValue"]))}});function de(c,l){const{slots:r}=c,o=a=>a?JSON.parse(JSON.stringify(e.toRaw(a))):{},t=e.ref(o(c.value));e.watch(()=>c.value,a=>{t.value=o(a)},{deep:!0,immediate:!0});const n=e.computed(()=>{var a;return(e.toRaw((a=r==null?void 0:r.default)==null?void 0:a.call(r))??[]).flatMap(s=>Array.isArray(s.children)?s.children:[s])});function m(a){delete t.value[a],l("clear",{data:e.toRaw(t.value),name:a})}function f(a,s){s===void 0?m(a):t.value={...t.value,[a]:s},l("change",{data:e.toRaw(t.value),name:a,value:s})}const d=e.computed(()=>n.value.map(a=>{var g,y,M;const s=(g=a.props)==null?void 0:g.name;return e.cloneVNode(a,{...a.props,layout:c.view,showClean:!0,modelValue:t.value[s],"onUpdate:modelValue":_=>{f(s,_)},onClear:()=>m(s),class:[c.itemClass,(y=a.props)==null?void 0:y.class],itemClass:[c.itemClass,(M=a.props)==null?void 0:M.itemClass].filter(_=>typeof _=="string"&&_.trim().length>0).join(" ")||void 0})})),b=e.computed(()=>new Map(d.value.map(a=>{var g;const s=(g=a.props)==null?void 0:g.name;return s?[s,a]:null}).filter(a=>a!==null)));function p(a=!1){t.value={},a||l("clearAll",{data:e.toRaw(t.value),name:"ALL"})}const u=e.ref(""),h=e.computed(()=>{var a;return(a=c.schema)!=null&&a.value?Object.entries(t.value).filter(([s,g])=>c.schema&&!(s in c.schema.value)?!1:Array.isArray(g)?g.some(y=>y!==""&&y!==void 0):g!==""&&g!==void 0).length:0}),x=e.ref();e.watch(u,async()=>{var a,s;await e.nextTick(),(s=(a=x==null?void 0:x.value)==null?void 0:a.filterRef)!=null&&s.inputTextRef&&x.value.filterRef.inputTextRef.focus()});const w=e.computed(()=>{var a,s;return(a=c.schema)!=null&&a.value?Object.fromEntries(Object.entries((s=c.schema)==null?void 0:s.value).slice(0,c.limit)):{}}),k=e.computed(()=>{var s;if(d.value.length===0)return[];let a=0;if((s=c.schema)!=null&&s.value){const g=Object.entries(c.schema.value).length;c.limit&&g<c.limit?a=c.limit-g:a=0}return d.value.slice(0,a)}),i=e.computed(()=>d.value.length===0?[]:c.view!=="inline"?d.value:d.value.slice(k.value.length));return{activeFilter:t,activeFilterCount:h,onFilterChange:f,clearFilter:m,clearAllFilters:p,limitedSchema:w,filtersSlot:d,limitedFiltersSlot:k,popoverFiltersSlot:i,vnodeMap:b,selectedFilter:u,filterRef:x}}const yo=e.defineComponent({__name:"popover",emits:["open","close"],setup(c,{emit:l}){const r=e.ref(!1),o=e.ref(null),t=e.ref(null),n=e.ref(null),m=e.ref({top:"0px",left:"0px",position:"absolute"});function f(){r.value=!r.value}function d(){const x=n.value,w=o.value;if(!x||!w)return;const k=x.getBoundingClientRect(),i=w.offsetWidth,a=window.innerWidth-k.left;let s=k.left+window.scrollX;i>a&&(s=window.innerWidth-i-18,s<18&&(s=18)),m.value={position:"absolute",top:`${k.bottom+window.scrollY+18}px`,left:`${s}px`}}const b=e.computed(()=>Object.entries(m.value).map(x=>x.join(":")).join(";"));function p(x){var k,i;const w=x.target;!((k=n.value)!=null&&k.contains(x.target))&&!((i=o.value)!=null&&i.contains(x.target))&&!w.closest("[data-inside-popover]")&&(r.value=!1)}const u=e.ref(!1);e.onMounted(()=>{u.value=!0}),e.onMounted(()=>{var x,w;n.value=((x=t.value)==null?void 0:x.querySelector("[data-popover-trigger]"))||null,(w=n.value)==null||w.addEventListener("click",f),document.addEventListener("click",p),window.addEventListener("resize",d),window.addEventListener("scroll",d,!0)}),e.onBeforeUnmount(()=>{var x;(x=n.value)==null||x.removeEventListener("click",f),document.removeEventListener("click",p),window.removeEventListener("resize",d),window.removeEventListener("scroll",d,!0)});const h=l;return e.watch(r,async x=>{x?(h("open"),await e.nextTick(),d()):h("close")}),(x,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:t},[e.renderSlot(x.$slots,"trigger"),u.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:o,class:"absolute z-[50] w-[600px] rounded-md border bg-white shadow-md",style:e.normalizeStyle(b.value)},[e.renderSlot(x.$slots,"default")],4),[[e.vShow,r.value]])])):e.createCommentVNode("",!0)],512))}}),xo={},bo={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 ko(c,l){return e.openBlock(),e.createElementBlock("svg",bo,l[0]||(l[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)]))}const Ae=v(xo,[["render",ko]]),wo={class:"flex items-center gap-2 overflow-hidden"},Vo={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"},Co={class:"flex max-h-[400px]"},Bo={class:"w-64 border-r border-gray-200 overflow-y-auto"},Eo={class:"p-4 border-b"},No={class:"text-sm text-gray-600"},_o={class:"p-2"},So=["onClick"],Mo={class:"flex items-center gap-2"},Do={class:"text-sm font-medium"},Lo={key:0,class:"inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-1 text-[11px] font-semibold text-blue-600"},zo=["onClick"],Ao={class:"flex items-center gap-2"},Fo={class:"text-sm font-medium"},jo={key:0,class:"inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-1 text-[11px] font-semibold text-blue-600"},$o={key:0,class:"p-2 border-t"},Ro={class:"flex-1 min-h-[300px] overflow-y-auto"},To={key:0,class:"flex items-center justify-center h-full text-gray-500"},Po={class:"text-sm"},Fe=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:{}},emits:["change","clear","clearAll"],setup(c,{expose:l,emit:r}){const o=te(),t=c,n=Me(t.mode),m=e.useSlots(),f=r,d=e.ref({}),b=e.computed(()=>d!=null&&d.value?t.view!=="inline"?d==null?void 0:d.value:Object.fromEntries(Object.entries(d==null?void 0:d.value).slice(t.limit)):{}),{activeFilter:p,activeFilterCount:u,onFilterChange:h,clearFilter:x,clearAllFilters:w,popoverFiltersSlot:k,selectedFilter:i,filterRef:a}=de({...t,schema:d,slots:m},f),s=e.computed(()=>t.badgeCount??u.value);function g(_){return Array.isArray(_)?_.filter(V=>V!=null&&V!=="").length:_&&typeof _=="object"?Object.values(_).filter(V=>V!=null&&V!=="").length:_===null||_!==void 0&&_!==""?1:0}function y(_){return p.value?g(p.value[_]):0}function M(){if(b.value){const[_]=Object.keys(b.value);i.value=_}else k.value.length>0?i.value=k.value[0].props.name:i.value=""}return e.watch(()=>t.schema,_=>{d.value=_??{}},{deep:!0,immediate:!0}),l({clearFilter:x,clearAllFilters:w}),(_,V)=>(e.openBlock(),e.createBlock(yo,{onOpen:M,onClose:V[5]||(V[5]=B=>i.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([_.itemClass,e.unref(n),"flex items-center justify-between gap-2",s.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",wo,[e.createVNode(Ae,{class:"h-4 w-4"}),V[6]||(V[6]=e.createElementVNode("span",{class:"text-sm font-medium"},"Фільтр",-1))]),s.value>0?(e.openBlock(),e.createElementBlock("span",Vo,e.toDisplayString(s.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",Co,[e.createElementVNode("div",Bo,[e.createElementVNode("div",Eo,[e.createElementVNode("p",No,e.toDisplayString(e.unref(o)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",_o,[_.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(b.value),([B,S])=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:()=>{i.value=B},class:e.normalizeClass(["flex w-full items-center justify-between px-3 py-2 text-left transition-colors hover:bg-gray-50",e.unref(i)===B?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Mo,[e.createElementVNode("span",Do,e.toDisplayString(S.label),1)]),y(B)>0?(e.openBlock(),e.createElementBlock("div",Lo,e.toDisplayString(y(B)),1)):e.createCommentVNode("",!0)],10,So))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),(B,S)=>(e.openBlock(),e.createElementBlock("button",{key:"slot-"+S,onClick:N=>i.value=B.props.name,class:e.normalizeClass(["flex items-center justify-between px-3 py-2 text-left transition-colors hover:bg-gray-50",e.unref(i)===B.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Ao,[e.createElementVNode("span",Fo,e.toDisplayString(B.props.label),1)]),y(B.props.name)>0?(e.openBlock(),e.createElementBlock("div",jo,e.toDisplayString(y(B.props.name)),1)):e.createCommentVNode("",!0)],10,zo))),128))]),e.unref(u)>0?(e.openBlock(),e.createElementBlock("div",$o,[e.createElementVNode("button",{class:e.normalizeClass([_.itemClass,"w-full px-3 py-2 text-left text-sm text-gray-600 hover:bg-gray-50 transition-colors"]),onClick:V[0]||(V[0]=B=>e.unref(w)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ro,[e.unref(i)===""?(e.openBlock(),e.createElementBlock("div",To,[e.createElementVNode("p",Po,e.toDisplayString(e.unref(o)("filter.selectFieldHelp")),1)])):e.createCommentVNode("",!0),e.unref(i)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[b.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(b.value),([B,S])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(i)===B?(e.openBlock(),e.createBlock(ee,e.mergeProps({key:B,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:a},{ref_for:!0},S,{class:[_.itemClass,S==null?void 0:S.class],"item-class":[_.itemClass,S==null?void 0:S.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[1]||(V[1]=N=>e.unref(h)(N.name,N.value)),onClear:V[2]||(V[2]=N=>{e.unref(x)(N),e.unref(h)(N,void 0)}),modelValue:e.unref(p)[B],"onUpdate:modelValue":N=>e.unref(p)[B]=N,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),(B,S)=>{var N,L;return e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+S},[e.unref(i)===B.props.name?(e.openBlock(),e.createBlock(ee,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},B.props,{ref_for:!0,ref_key:"filterRef",ref:a,class:[_.itemClass,(N=B.props)==null?void 0:N.class],"item-class":[_.itemClass,(L=B.props)==null?void 0:L.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[3]||(V[3]=R=>e.unref(h)(R.name,R.value)),onClear:V[4]||(V[4]=R=>{e.unref(x)(R),e.unref(h)(R,void 0)}),modelValue:e.unref(p)[B.props.name],"onUpdate:modelValue":R=>e.unref(p)[B.props.name]=R,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64)}),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),Ko={class:"flex gap-1 items-center flex-wrap"},je=e.defineComponent({__name:"inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{}},emits:["change","clear","clearAll"],setup(c,{expose:l,emit:r}){const o=te(),t=c,n=r,m=e.useSlots(),f=e.ref({}),d=e.computed(()=>Object.keys(t.schema).length>t.limit),{activeFilter:b,activeFilterCount:p,onFilterChange:u,clearFilter:h,clearAllFilters:x,limitedSchema:w,filtersSlot:k,limitedFiltersSlot:i}=de({...t,schema:f,slots:m},n);function a(V){return Array.isArray(V)?V.some(B=>B!==""&&B!==void 0&&B!==null):V===null?!0:V&&typeof V=="object"?Object.values(V).some(B=>B!==""&&B!==void 0&&B!==null):V!==""&&V!==void 0}const s=e.computed(()=>{const V=Object.keys(w.value??{}),B=i.value.map(S=>{var N;return(N=S.props)==null?void 0:N.name}).filter(S=>typeof S=="string");return new Set([...V,...B])}),g=e.computed(()=>Object.entries(b.value??{}).filter(([V,B])=>s.value.has(V)&&a(B)).length),y=e.computed(()=>{const V=p.value??0,B=g.value??0;return Math.max(V-B,0)}),M=e.ref();function _(){M.value&&M.value.clearAllFilters(!0),x()}return e.watch(()=>t.schema,V=>{f.value=V},{deep:!0,immediate:!0}),l({clearFilter:h,clearAllFilters:x}),(V,B)=>(e.openBlock(),e.createElementBlock("div",Ko,[V.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(w)),([S,N])=>(e.openBlock(),e.createBlock(ee,e.mergeProps({key:S,mode:V.mode,width:V.width?V.width:N==null?void 0:N.width},{ref_for:!0},N,{class:[V.itemClass,N==null?void 0:N.class],"item-class":[V.itemClass,N==null?void 0:N.itemClass].filter(Boolean).join(" ")||void 0,onChange:B[0]||(B[0]=L=>e.unref(u)(L.name,L.value)),onClear:e.unref(h),layout:"inline",cleanable:!0,modelValue:e.unref(b)[S],"onUpdate:modelValue":L=>e.unref(b)[S]=L}),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(i),(S,N)=>{var L,R;return e.openBlock(),e.createBlock(ee,e.mergeProps({key:"slot-"+N,layout:"inline"},{ref_for:!0},S.props,{class:[V.itemClass,(L=S.props)==null?void 0:L.class],"item-class":[V.itemClass,(R=S.props)==null?void 0:R.itemClass].filter(Boolean).join(" ")||void 0,onChange:B[1]||(B[1]=j=>e.unref(u)(j.name,j.value)),onClear:B[2]||(B[2]=j=>{e.unref(h)(j),e.unref(u)(j,void 0)}),cleanable:!0,modelValue:e.unref(b)[S.props.name],"onUpdate:modelValue":j=>e.unref(b)[S.props.name]=j}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128)),d.value?(e.openBlock(),e.createBlock(Fe,e.mergeProps({key:1},t,{schema:V.schema,limit:V.limit,onChange:B[3]||(B[3]=S=>e.unref(u)(S.name,S.value)),onClearAll:B[4]||(B[4]=S=>e.unref(x)()),onClear:B[5]||(B[5]=S=>e.unref(h)(S.name)),mode:V.mode,ref_key:"popoverRef",ref:M,cleanable:!0,"badge-count":y.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),(S,N)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(S),e.mergeProps({key:"slot-"+N,layout:"popover"},{ref_for:!0},S.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","limit","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(p)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:_,class:e.normalizeClass([V.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(o)("filter.clear")),3)):e.createCommentVNode("",!0)]))}}),Uo={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"},Oo={class:"flex items-center vst-filters vsTailwind flex-col w-full"},Io=e.defineComponent({__name:"vertical-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{}},emits:["change","clear","clearAll"],setup(c,{expose:l,emit:r}){const o=c,t=r,n=e.useSlots(),{activeFilter:m,activeFilterCount:f,onFilterChange:d,clearFilter:b,clearAllFilters:p,filtersSlot:u}=de({...o,slots:n},t);return l({clearFilter:b,clearAllFilters:p}),(h,x)=>h.view==="vertical"?(e.openBlock(),e.createElementBlock("div",Uo,[e.createElementVNode("div",Oo,[e.unref(f)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:x[0]||(x[0]=w=>e.unref(p)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([h.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),h.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(h.schema),([w,k])=>(e.openBlock(),e.createBlock(ee,e.mergeProps({layout:"vertical"},{ref_for:!0},k,{class:[h.itemClass,k==null?void 0:k.class],"item-class":[h.itemClass,k==null?void 0:k.itemClass].filter(Boolean).join(" ")||void 0,onChange:x[1]||(x[1]=i=>e.unref(d)(i.name,i.value)),onClear:x[2]||(x[2]=i=>{e.unref(b)(i),e.unref(d)(i,void 0)}),modelValue:e.unref(m)[w],"onUpdate:modelValue":i=>e.unref(m)[w]=i,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),(w,k)=>{var i,a;return e.openBlock(),e.createBlock(ee,e.mergeProps({key:"slot-"+k,layout:"vertical"},{ref_for:!0},w.props,{class:[h.itemClass,(i=w.props)==null?void 0:i.class],"item-class":[h.itemClass,(a=w.props)==null?void 0:a.itemClass].filter(Boolean).join(" ")||void 0,onChange:x[3]||(x[3]=s=>e.unref(d)(s.name,s.value)),onClear:x[4]||(x[4]=s=>{e.unref(b)(s),e.unref(d)(s,void 0)}),modelValue:e.unref(m)[w.props.name],"onUpdate:modelValue":s=>e.unref(m)[w.props.name]=s,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))])])):e.createCommentVNode("",!0)}}),Zo=["onKeydown"],Ho=["disabled"],Wo={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"},qo={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Yo={class:"mb-3 flex items-center justify-between"},Qo={class:"text-[15px] font-semibold text-slate-800"},Go={"aria-hidden":"true"},Xo={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},Jo={key:0,class:"mt-3 flex justify-end"},vo=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:{}},emits:["change","clear","clearAll"],setup(c,{emit:l}){const r=te(),o=c,t=l,n=e.ref({}),m=e.useSlots(),{activeFilter:f,activeFilterCount:d,onFilterChange:b,clearFilter:p,clearAllFilters:u,filtersSlot:h}=de({...o,schema:n.value,slots:m},t),x=e.ref(null),w=e.ref(null),k=e.reactive({open:!1,top:0,left:0}),i=e.computed(()=>k.open),a=e.computed(()=>!!o.disabled),s=e.computed(()=>n.value||{}),g=e.computed(()=>o.title??"Фільтр"),y=e.computed(()=>!!m.trigger),M=e.computed(()=>["inline-flex h-9 items-center justify-center gap-2 rounded-lg border border-transparent bg-slate-200/70 px-3 text-sm font-medium text-slate-700 transition-colors hover:bg-blue-100 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-slate-200/70 disabled:hover:text-slate-700",a.value?"cursor-not-allowed opacity-60":"cursor-pointer"]),_=e.computed(()=>k.open?{position:"absolute",top:`${k.top}px`,left:`${k.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function V(){k.open=!1}function B(){if(!x.value)return;const j=x.value.getBoundingClientRect();k.top=j.bottom+window.scrollY+8,k.left=j.left+j.width/2+window.scrollX}function S(){k.open=!k.open,k.open&&e.nextTick(B)}function N(){a.value||S()}function L(){k.open&&B()}function R(){u()}return e.onMounted(()=>{window.addEventListener("resize",L),window.addEventListener("scroll",L,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",L,!0)}),e.watch(()=>o.schema,j=>{if(!j){n.value={};return}if(Array.isArray(j)){const C=j.filter(z=>z&&(z.name||z.id)).map(z=>{const $=z.name||z.id;return[$,{...z,name:$}]});n.value=Object.fromEntries(C);return}n.value=j},{deep:!0,immediate:!0}),e.watch(()=>o.disabled,j=>{j&&V()}),(j,C)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:x},[y.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",a.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(N,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(N,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(N,["prevent","stop"]),["space"])]},[e.renderSlot(j.$slots,"trigger",{toggle:N,open:i.value,disabled:a.value,activeCount:e.unref(d)})],42,Zo)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(M.value),type:"button",disabled:a.value,onClick:e.withModifiers(N,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(Ae,{class:"h-4 w-4"}),e.unref(d)>0?(e.openBlock(),e.createElementBlock("div",Wo,e.toDisplayString(e.unref(d)),1)):e.createCommentVNode("",!0)],10,Ho)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof j.width=="number"?`min-w-[${j.width+32+(Object.keys(s.value).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(_.value),ref_key:"panel",ref:w,onClick:C[4]||(C[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",qo,[e.createElementVNode("div",Yo,[e.createElementVNode("h3",Qo,e.toDisplayString(g.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:V},[e.createElementVNode("span",Go,[e.createVNode(he,{class:"h-4 w-4"})]),C[5]||(C[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",Xo,[Object.keys(s.value).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(s.value),([z,$])=>(e.openBlock(),e.createBlock(ee,e.mergeProps({key:z},{ref_for:!0},{...$,layout:"inline"},{width:j.width?j.width:$==null?void 0:$.width,class:[j.itemClass,$==null?void 0:$.class],"item-class":[j.itemClass,$==null?void 0:$.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(f)[z],"onUpdate:modelValue":K=>e.unref(f)[z]=K,onChange:C[0]||(C[0]=K=>e.unref(b)(K.name,K.value)),onClear:C[1]||(C[1]=K=>{e.unref(p)(K),e.unref(b)(K,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(h),(z,$)=>{var K,Y;return e.openBlock(),e.createBlock(ee,e.mergeProps({key:"slot-"+$,ref_for:!0},{...z.props,layout:"inline"},{class:[j.itemClass,(K=z.props)==null?void 0:K.class],"item-class":[j.itemClass,(Y=z.props)==null?void 0:Y.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(f)[z.props.name],"onUpdate:modelValue":X=>e.unref(f)[z.props.name]=X,onChange:C[2]||(C[2]=X=>e.unref(b)(X.name,X.value)),onClear:C[3]||(C[3]=X=>{e.unref(p)(X),e.unref(b)(X,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])}),128))]),e.unref(d)>0?(e.openBlock(),e.createElementBlock("div",Jo,[e.createElementVNode("button",{type:"button",class:e.normalizeClass([j.itemClass,"text-sm font-semibold text-blue-600 transition-colors hover:text-blue-700 focus:outline-none"]),onClick:R},e.toDisplayString(e.unref(r)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),be=e.defineComponent({__name:"filter",props:{schema:{},view:{default:"inline"},value:{},history:{type:Boolean},mode:{},limit:{default:3},width:{},title:{},disabled:{type:Boolean},defaultPanelWidth:{},itemClass:{}},emits:["change","clear","clearAll"],setup(c,{expose:l,emit:r}){const o=c,t=e.ref(d(o.value??{}));e.watch(()=>o.value,async i=>{var a,s;t.value=d(i??{}),(!i||Object.keys(i).length===0)&&(await e.nextTick(),(s=(a=m.value)==null?void 0:a.clearAllFilters)==null||s.call(a,!0))},{deep:!0,immediate:!0});const n=r,m=e.ref(),f=e.useSlots();function d(i){if(Array.isArray(i))return i.map(a=>d(a));if(i!==null&&typeof i=="object"){const a=e.toRaw(i),s={};for(const g in a)s[g]=d(a[g]);return s}return i}function b(i,a){a!==void 0?t.value={...t.value,[i]:a}:delete t.value[i],n("change",{data:d(t.value),name:i,value:d(a)})}function p(i){delete t.value[i],n("clear",{data:d(t.value),name:i}),n("change",{data:d(t.value),name:i,value:null})}function u(){t.value={},n("clear",{data:d(t.value),name:"ALL"}),n("change",{data:d(t.value),name:"ALL",value:null})}const h=e.ref({});function x(){switch(o.view){case"inline":return je;case"vertical":return Io;case"popover":return Fe;case"popover-inline":return vo;default:return je}}e.watch(()=>o.schema,i=>{if(!i){h.value={};return}if(Array.isArray(i)&&!i.length){h.value={};return}Array.isArray(i)?h.value=i.filter(a=>a.type).reduce((a,s)=>(Object.assign(s,{name:s.id||s.name,type:{datepicker:"date"}[s.type.toLowerCase()]||s.type.toLowerCase(),label:s.label||s.ua}),a[s.name]=s,s.data&&!s.api&&!s.options&&Object.assign(s,{api:`/api/suggest/${s.data}`}),a),{}):(Object.entries(i).forEach(([a,s])=>{Object.assign(s,{name:a||s.name||s.id,type:s.type.toLowerCase()})}),h.value={...i})},{immediate:!0,deep:!0});function w(i){m.value.clearFilter(i),p(i)}function k(){m.value.clearAllFilters(),u()}return e.watch(()=>t.value,i=>{if(o.history){const a=new URL(window.location.href),s=new URLSearchParams(window.location.search);Object.keys(i).length>0?s.set("filter",Object.entries(i).filter(([,g])=>g).map(([g,y])=>`${g}=${y}`).join("|")):s.delete("filter"),a.search=decodeURI(s.toString()),window.history.pushState({},"",a)}}),l({clearAllFilters:k,clearFilter:w}),(i,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x()),e.mergeProps(o,{schema:h.value,onChange:a[0]||(a[0]=s=>b(s.name,s.value)),onClear:a[1]||(a[1]=s=>p(s.name)),onClearAll:u,ref_key:"filterRef",ref:m}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:2},[e.unref(f).trigger?{name:"trigger",fn:e.withCtx(s=>[e.renderSlot(i.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(s)))]),key:"0"}:void 0]),1040,["schema"]))}});be.install=function(c){c.component("Filter",be),c.component("FilterField",ee)};function er(c){const{page:l,id:r,filter:o,filterByView:t}=c,n=new URL(window.location.href),m=new URLSearchParams(window.location.search);l?m.set("page",l.toString()):m.delete("page"),r?m.set("id",r.toString()):m.delete("id"),o?m.set("filter",o):m.delete("filter"),typeof t=="boolean"?m.set("bbox",t?"1":"0"):m.delete("bbox"),n.search=decodeURI(m.toString()),window.history.pushState({},"",n)}const tr={class:"flex items-center justify-between w-full gap-x-1"},lr={class:"flex items-center"},or=["disabled"],rr={class:"flex items-center gap-x-1"},ar=["onClick"],nr=["disabled"],ir={class:"flex justify-center items-center gap-x-5 ml-3"},sr={class:"relative"},cr={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"},dr=["onClick"],mr={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"},pr=e.defineComponent({__name:"pagination",props:{total:{},currentPage:{},pageSize:{}},emits:["update:currentPage","update:pageSize","pageChange","pageSizeChange"],setup(c,{emit:l}){const r=c,o=l,t=e.ref(r.currentPage),n=e.ref(r.pageSize),m=e.ref(!1);e.watch(()=>r.pageSize,x=>{n.value=x});const f=e.computed(()=>Math.ceil(r.total/r.pageSize)),d=e.computed(()=>{const w=Math.floor(3.5);let k=t.value-w,i=t.value+w;k<1&&(i+=1-k,k=1),i>f.value&&(k-=i-f.value,i=f.value),k=Math.max(1,k);const a=[];for(let s=k;s<=i;s+=1)a.push(s);return a}),b=()=>{t.value>1&&u(t.value-1)},p=()=>{t.value<f.value&&u(t.value+1)},u=x=>{t.value=x,o("update:currentPage",x),o("pageChange",x)},h=(x=n.value)=>{n.value=x,m.value=!1,o("update:pageSize",n.value),o("update:currentPage",1),o("pageSizeChange",n.value)};return e.watch(()=>r.currentPage,x=>{t.value=x}),(x,w)=>(e.openBlock(),e.createElementBlock("nav",tr,[e.createElementVNode("div",lr,[e.createElementVNode("button",{type:"button","aria-label":"Previous",onClick:b,disabled:t.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"},[...w[1]||(w[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,or),e.createElementVNode("div",rr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,k=>(e.openBlock(),e.createElementBlock("button",{type:"button",key:k,onClick:i=>u(k),class:e.normalizeClass(t.value===k?"flex justify-center items-center rounded-lg text-sm dark:text-neutral-300 py-2 px-3 focus:outline-none disabled:opacity-50 disabled:pointer-events-none bg-[#e5e7eb] dark:bg-[#242424] border border-gray-200 text-base h-[38px] min-w-[38px]":"flex justify-center items-center rounded-lg text-sm dark:text-neutral-400 hover:bg-gray-100 py-2 px-3 focus:outline-none focus:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:hover:bg-neutral-800 dark:focus:bg-neutral-800 text-base h-[38px] min-w-[38px]")},e.toDisplayString(k),11,ar))),128))]),e.createElementVNode("button",{type:"button","aria-label":"Next",onClick:p,disabled:t.value===f.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"},[...w[2]||(w[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,nr)]),e.createElementVNode("div",ir,[e.createElementVNode("div",sr,[e.withDirectives(e.createElementVNode("div",cr,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList([10,20,30],k=>e.createElementVNode("button",{type:"button",key:k,onClick:i=>h(k),class:"w-full flex items-center gap-x-3.5 py-2 px-3 rounded-lg text-sm text-gray-800 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 dark:text-neutral-400 dark:hover:bg-neutral-700 dark:hover:text-neutral-300 dark:focus:bg-neutral-700"},[e.createTextVNode(e.toDisplayString(k)+" ",1),n.value===k?(e.openBlock(),e.createElementBlock("svg",mr,[...w[3]||(w[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,dr)),64))],512),[[e.vShow,m.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:w[0]||(w[0]=k=>m.value=!m.value)},[e.createTextVNode(e.toDisplayString(n.value)+" ",1),w[4]||(w[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))])])])]))}}),ie=(c,l)=>{const r=c.__vccOpts||c;for(const[o,t]of l)r[o]=t;return r},fr={},ur={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 gr(c,l){return e.openBlock(),e.createElementBlock("svg",ur,[...l[0]||(l[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 hr=ie(fr,[["render",gr]]),yr={},xr={xmlns:"http://www.w3.org/2000/svg",width:"21",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-layout-sidebar-right-collapse"};function br(c,l){return e.openBlock(),e.createElementBlock("svg",xr,[...l[0]||(l[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"},null,-1),e.createElementVNode("path",{d:"M15 4v16"},null,-1),e.createElementVNode("path",{d:"M9 10l2 2l-2 2"},null,-1)])])}const kr=ie(yr,[["render",br]]),wr={},Vr={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 Cr(c,l){return e.openBlock(),e.createElementBlock("svg",Vr,[...l[0]||(l[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z"},null,-1),e.createElementVNode("path",{d:"M15 4v16"},null,-1),e.createElementVNode("path",{d:"M10 10l-2 2l2 2"},null,-1)])])}const Br=ie(wr,[["render",Cr]]),Er={},Nr={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-map"};function _r(c,l){return e.openBlock(),e.createElementBlock("svg",Nr,[...l[0]||(l[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 Sr=ie(Er,[["render",_r]]),Mr={},Dr={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-table"};function Lr(c,l){return e.openBlock(),e.createElementBlock("svg",Dr,[...l[0]||(l[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 zr=ie(Mr,[["render",Lr]]);function $e(c,l){let r;return function(...o){clearTimeout(r),r=setTimeout(()=>c(...o),l)}}function Re(c,l,r=12){const o=l??"";return`${window.location.origin}/api/vtile/${c}/ua/{z}/{x}/{y}.vmt?pointZoom=12&clusterZoom=${r}&filter=${o}`}function Ar(c,l,r,o,t=12){if(!l)return;const n=Re(c,o,t);l.addSource("vector",{type:"vector",tiles:[n],minzoom:0,maxzoom:12});const m=["coalesce",["get","point_count"],["get","pointCount"],["get","cluster_count"],["get","clusterCount"],0],f=[">",m,1],d=["<=",m,1],b=["coalesce",["get","point_count_abbreviated"],["get","cluster_count_abbreviated"],["get","clusterCountAbbreviated"],m];l.addLayer({id:"vector-clusters",type:"circle",source:"vector","source-layer":c,filter:f,maxzoom:12,paint:{"circle-color":["step",m,"#51bbd6",100,"#f1f075",750,"#f28cb1"],"circle-radius":["step",m,18,100,26,750,32],"circle-opacity":.85}}),l.addLayer({id:"vector-cluster-count",type:"symbol",source:"vector","source-layer":c,filter:f,maxzoom:12,layout:{"text-field":["to-string",b],"text-font":["Noto Sans Regular"],"text-size":12},paint:{"text-color":"#1f2937"}}),l.addLayer({id:"vector-circle",type:"circle",maxzoom:12,source:"vector","source-layer":c,filter:d,paint:{"circle-color":r,"circle-stroke-color":"#eee","circle-stroke-width":1,"circle-radius":["interpolate",["linear"],["zoom"],10,5,15,12]}}),l.addLayer({id:"vector-fill",type:"fill",minzoom:12,source:"vector","source-layer":c,paint:{"fill-color":r,"fill-opacity":.6}})}const Fr=[{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"}],jr={class:"relative w-auto h-full"},$r={class:"absolute left-[20px] bottom-[74px] bg-white max-w-[250px] p-[10px] rounded-lg z-10 border"},Rr={class:"flex justify-start items-center gap-2"},Tr={class:"ml-1 text-[0.875rem]"},Pr={class:"vs-map-slot-layers z-10 select-none",style:{display:"flex"}},Kr=["title","onClick"],Ur=["src"],Or={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"},me="vector-clusters",Ir=e.defineComponent({__name:"map",props:{table:{},center:{},colorAttr:{},filter:{},modelValue:{},zoom:{},minZoom:{},maxZoom:{},map:{},layers:{},clusterZoom:{}},emits:["update:modelValue","update:map"],setup(c,{emit:l}){const r=c,o=l;let t,n;const m=e.getCurrentInstance(),f=e.ref(null),d=e.ref(!1),b=["vector-circle","vector-fill"],p=e.computed(()=>{var E,F;return((F=(E=m==null?void 0:m.appContext.config.globalProperties)==null?void 0:E.$settings)==null?void 0:F.basemaps)||[]}),u=e.computed(()=>(r.layers&&r.layers.length?r.layers:p.value.length?p.value:Fr).map((F,T)=>{var le;const P=F.id||((le=F.name)==null?void 0:le.toString().toLowerCase().replace(/\s+/g,"-"))||`layer-${T}`,J=F.name||F.id||`layer-${T}`;return{...F,id:P,name:J}})),h=e.ref(""),x=e.computed(()=>u.value.find(E=>E.id===h.value)||u.value[0]);e.watch(u,E=>{var F;E.length&&(!h.value||!E.some(T=>T.id===h.value))&&(h.value=((F=E[0])==null?void 0:F.id)||"")},{immediate:!0});function w(E){return E?E.replace("{x}","2422").replace("{y}","1400").replace("{z}","12"):""}const k=e.ref(null),i=e.ref(null),a=["#1F77B4","#FF7F0E","#2CA02C","#D62728","#9467BD","#8C564B","#E377C2","#7F7F7F","#17BECF","#BCBD22"];let s;const g=[30,48];let y=null,M=[];function _(){if(typeof window>"u")return{zoom:null,center:null,hasQuery:!1};const E=new URLSearchParams(window.location.search),F=Number(E.get("z")),T=Number(E.get("y")),P=Number(E.get("x")),J=E.has("x")&&E.has("y"),le=E.has("z");return{zoom:le?F:null,center:J?[P,T]:null,hasQuery:J||le}}function V(E,F){if(!E||typeof window>"u")return;const T=new URL(window.location.href);T.searchParams.set("z",F.toFixed(2)),T.searchParams.set("x",E[0].toFixed(6)),T.searchParams.set("y",E[1].toFixed(6)),window.history.replaceState({},"",T)}let B=!1;function S(){if(!t||!B)return;const E=t.getCenter();V([E.lng,E.lat],t.getZoom())}const N=()=>{B||(B=!0),S()};function L(E){return E?["==",["to-string",["get","id"]],E]:["==",["literal",1],0]}function R(){const E=L(r.modelValue);if(!t.getLayer("vector-highlight-circle")){const P=(r.clusterZoom??12)-.01;t.addLayer({id:"vector-highlight-circle",type:"circle",maxzoom:P,source:"vector","source-layer":r.table,paint:{"circle-color":"#ef4444","circle-opacity":.8,"circle-stroke-color":"#b91c1c","circle-stroke-width":0,"circle-radius":["interpolate",["linear"],["zoom"],10,10,12,11]}})}t.getLayer("vector-highlight-fill")||t.addLayer({id:"vector-highlight-fill",type:"line",minzoom:r.clusterZoom??12,source:"vector","source-layer":r.table,paint:{"line-color":"#b91c1c","line-width":3,"line-opacity":.8}}),t.setFilter("vector-highlight-circle",E),t.setFilter("vector-highlight-fill",E);const F=r.modelValue?"visible":"none";t.setLayoutProperty("vector-highlight-circle","visibility",F),t.setLayoutProperty("vector-highlight-fill","visibility",F),C()}function j(E){if(!t||!M.length)return;const T=["case",["all",["has","id"],["==",["to-string",["get","id"]],E]],"#ef4444",M];t.getLayer("vector-circle")&&t.setPaintProperty("vector-circle","circle-color",T),t.getLayer("vector-fill")&&t.setPaintProperty("vector-fill","fill-color",T)}function C(){if(z(),!r.modelValue)return;let E=!0;y=window.setInterval(()=>{E=!E;const F=E?.8:.2;t!=null&&t.getLayer("vector-highlight-circle")&&t.setPaintProperty("vector-highlight-circle","circle-opacity",F),t!=null&&t.getLayer("vector-highlight-fill")&&t.setPaintProperty("vector-highlight-fill","line-opacity",F)},600)}function z(){y&&(clearInterval(y),y=null)}function $(){t&&(t.setCenter(r.center||g),t.setZoom(r.zoom||5))}function K(){if(!(t!=null&&t.setLayerZoomRange))return;const E=r.minZoom??0,F=Math.min((r.maxZoom??18)+.01,24),T=r.clusterZoom??12,P=T-.01;t.getLayer("vector-circle")&&t.setLayerZoomRange("vector-circle",E,P),t.getLayer("vector-highlight-circle")&&t.setLayerZoomRange("vector-highlight-circle",E,P),t.getLayer("vector-fill")&&t.setLayerZoomRange("vector-fill",T,F),t.getLayer("vector-highlight-fill")&&t.setLayerZoomRange("vector-highlight-fill",T,F),t.getLayer(me)&&t.setLayerZoomRange(me,E,P),t.getLayer("vector-cluster-count")&&t.setLayerZoomRange("vector-cluster-count",E,P)}const Y=_();B=Y.hasQuery,e.onMounted(async()=>{s=(await fetch(`/api/data/${r.table}/${r.colorAttr}`).then(Z=>Z.json())).rows,s.forEach((Z,H)=>{Z.color||Object.assign(Z,{color:a[H%10]})}),n=new maplibregl.Popup({closeButton:!1,closeOnClick:!1});const F=x.value;if(!F)return;const T=Y.center||r.center||g,P=Y.zoom||r.zoom||5;t=new maplibregl.Map({container:f.value,style:{version:8,sources:{[F.id]:{type:"raster",tiles:[F.url],tileSize:256}},layers:[{id:F.id,type:"raster",source:F.id,minzoom:0,maxzoom:19}]},center:T,zoom:P,minZoom:r.minZoom??3,maxZoom:r.maxZoom??18,attributionControl:!1}),o("update:map",t),t.addControl(new maplibregl.NavigationControl,"top-right"),t.on("zoom",()=>{}),t.on("moveend",N),t.on("zoomend",N),B&&S(),t.on("load",()=>{t==null||t.resize(),d.value=!0;const Z=s.filter(I=>I.id).reduce((I,Q)=>[Q.id,Q.color].concat(I),[]),H=["match",["get",r.colorAttr],...Z,"#808080"];M=H,Ar(r.table,t,H,r.filter,r.clusterZoom),R(),j(r.modelValue),K()});const J=Z=>{var I,Q;const H=(I=Z.features)==null?void 0:I[0];(Q=H==null?void 0:H.properties)!=null&&Q.id&&o("update:modelValue",H.properties.id)};b.forEach(Z=>{t.on("click",Z,J)}),t.on("click",me,Z=>{var D,A,O;const H=(D=Z.features)==null?void 0:D[0];if(!H)return;const I=H.geometry,Q=(I==null?void 0:I.type)==="Point"?I.coordinates:(O=(A=I==null?void 0:I.coordinates)==null?void 0:A[0])==null?void 0:O[0];if(!Q)return;const ae=Math.min(t.getZoom()+2,t.getMaxZoom());t.easeTo({center:Q,zoom:ae})}),[...b,me].forEach(Z=>{t.on("mouseenter",Z,()=>{t.getCanvas().style.cursor="pointer"}),t.on("mouseleave",Z,()=>{t.getCanvas().style.cursor=""})}),t.on("mousemove",Z=>{var D;const H=t.queryRenderedFeatures(Z.point,{layers:b});if(!H||!H.length){n.remove();return}const I=H[0],{coordinates:Q}=I.geometry,ae=I.geometry.type==="Point"?Q:Q[0][0];i.value=I.properties,n.setLngLat(ae).setHTML((D=k.value)==null?void 0:D.innerHTML).addTo(t)})}),e.watch(()=>r.center,E=>{t&&t.setCenter(E||g)}),e.watch(()=>r.zoom,E=>{t&&t.setZoom(E)}),e.watch(()=>r.minZoom,E=>{t&&(t.setMinZoom(E??3),K())}),e.watch(()=>r.maxZoom,E=>{t&&(t.setMaxZoom(E??18),K())});function X(E,F){if(!(t!=null&&t.getSource("vector")))return;const T=Re(r.table,E??r.filter,F??r.clusterZoom??12);t.getSource("vector").setTiles([T])}return e.watch(()=>r.filter,E=>{X(E)}),e.watch(()=>r.clusterZoom,E=>{X(void 0,E),K()}),e.watch(()=>r.modelValue,E=>{if(!t)return;const F=L(E);t.getLayer("vector-highlight-circle")&&(t.setFilter("vector-highlight-circle",F),t.setLayoutProperty("vector-highlight-circle","visibility",E?"visible":"none")),t.getLayer("vector-highlight-fill")&&(t.setFilter("vector-highlight-fill",F),t.setLayoutProperty("vector-highlight-fill","visibility",E?"visible":"none")),j(E),E?C():z()}),e.watch(h,(E,F)=>{if(!t||!E)return;const T=u.value.find(J=>J.id===E);if(!T)return;t.getLayer(F)&&t.removeLayer(F),t.getSource(F)&&t.removeSource(F),t.addSource(E,{type:"raster",tiles:[T.url],tileSize:256});const P=t.getLayer("vector-clusters")?"vector-clusters":t.getLayer("vector-circle")?"vector-circle":void 0;t.addLayer({id:T.id,type:"raster",source:T.id,minzoom:0,maxzoom:19},P)}),e.onBeforeUnmount(()=>{z(),t&&(t.off("moveend",N),t.off("zoomend",N),t.remove())}),(E,F)=>{const T=e.resolveDirective("tooltip");return e.withDirectives((e.openBlock(),e.createElementBlock("div",jr,[e.createElementVNode("div",{ref_key:"mapContainer",ref:f,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:$},[...F[0]||(F[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("path",{d:"M3 11L12 3l9 8"}),e.createElementVNode("path",{d:"M5 9v10h4v-6h6v6h4V9"})],-1)])])),[[T,"Повернутися до базового вигляду"]]),e.createElementVNode("div",$r,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),P=>(e.openBlock(),e.createElementBlock("div",{class:"legend-item",key:P.id},[e.createElementVNode("div",Rr,[e.createElementVNode("div",{class:"w-[15px] h-[15px] rounded-[50%] min-w-[15px]",style:e.normalizeStyle("background-color:"+P.color)},null,4),e.createElementVNode("div",Tr,e.toDisplayString(P.text),1)])]))),128))]),e.createElementVNode("div",{ref_key:"popupDiv",ref:k,style:{display:"none"}},[e.renderSlot(E.$slots,"default",{hoverData:i.value})],512),e.createElementVNode("div",Pr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,P=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:P.id,title:P.name,class:e.normalizeClass(["vs-map-slot-layers__layer relative",{focused:h.value===P.id}]),onClick:J=>h.value=P.id},[e.createElementVNode("img",{src:P.preview||w(P.url),class:"vs-map-slot-layers__image"},null,8,Ur),e.createElementVNode("div",Or,e.toDisplayString(P.name),1)],10,Kr)),[[T,P.name]])),128))])],512)),[[e.vShow,d.value]])}}}),Te={mounted(c,l){if(typeof document>"u")return;let r=null;const o=()=>{r=document.createElement("div"),r.textContent=l.value,Object.assign(r.style,{position:"absolute",background:"#333",color:"#fff",padding:"4px 8px",borderRadius:"4px",fontSize:"12px",whiteSpace:"nowrap",pointerEvents:"none",zIndex:"9999"}),document.body.appendChild(r);const n=c.getBoundingClientRect();r.style.left=`${n.left+window.scrollX}px`,r.style.top=`${n.top+window.scrollY-r.offsetHeight-5}px`},t=()=>{r&&r.parentNode&&(r.parentNode.removeChild(r),r=null)};c.addEventListener("mouseenter",o),c.addEventListener("mouseleave",t),Object.assign(c,{tooltipHandlers:{showTooltip:o,hideTooltip:t}})},unmounted(c){if(typeof document>"u")return;const l=c.tooltipHandlers;l&&(c.removeEventListener("mouseenter",l.showTooltip),c.removeEventListener("mouseleave",l.hideTooltip))}},Zr={class:"pt-[20px]"},Hr={class:"w-full gap-5 inline-flex mb-[6px] pr-3"},Wr={class:"flex items-center"},qr=["title"],Yr={class:"max-[1000px]:flex gap-2 min-[1001px]:hidden"},Qr={class:"flex"},Gr={key:0,class:"flex items-center py-[15px] pb-[24px] pl-2 pr-6 gap-4"},Xr={class:"font-bold text-2xl mr-[10px]"},Jr={class:"text-sm text-stone-500 font-medium"},vr={key:0,class:"inline-flex items-center gap-2 text-sm text-stone-700 select-none ml-auto mt-auto"},ea={class:"wrapperTable flex flex-col",style:{height:"calc(100vh - 302px)"}},ta={key:1,class:"text-center py-28"},la={key:1},oa={key:2,class:"my-5 pr-2"},ra={class:"flex justify-between"},aa={class:"w-full lg:w-1/2 relative"},ke=e.defineComponent({__name:"vs-parts-map",props:{title:{},table:{},map:{},rows:{},zoom:{},minZoom:{default:3},maxZoom:{default:18},center:{},initTotal:{},colorAttr:{},id:{},filters:{},history:{type:Boolean},layers:{},objectsInView:{type:Boolean,default:!0},clusterZoom:{default:12}},emits:["change:filter","update:map"],setup(c,{emit:l}){var J,le,Z,H,I,Q,ae;const r=e.getCurrentInstance();r&&!(r!=null&&r.appContext.directives.tooltip)&&(r.appContext.directives.tooltip=Te);function o(D){return D?(D.type==="Point"?D.coordinates:null)||(D.type.includes("Multi")?D.coordinates[0][0][0]:D.coordinates[0][0]):null}const t=c,n=l,m=e.ref(0);m.value=t.initTotal??((J=t.rows)==null?void 0:J.length)??0;const f=e.ref(""),d=e.ref(null),b=e.ref(!0),p=e.ref(((le=t.rows)==null?void 0:le.length)===1),u=e.ref(0),h=e.ref(t.rows),x=e.ref(1),w=e.ref(20),k=e.ref(t.filters||[]),i=e.ref(""),a=e.ref({}),s=e.ref(((Z=t.rows)==null?void 0:Z.length)===1?t.rows[0]:{}),g=e.ref(((H=t.rows)==null?void 0:H.length)===1?t.rows[0].id:""),y=e.ref(((I=t.rows)==null?void 0:I.length)===1?o((Q=t.rows[0])==null?void 0:Q.geom):t.center||null),M=e.ref(((ae=t.rows)==null?void 0:ae.length)===1?14:t.zoom||5),_=e.ref(!1),V=e.ref(!1),B=e.ref("");let S=!1;function N(D){return Object.entries(D).filter(([A,O])=>Array.isArray(O)?O.length:O).map(([A,O])=>`${A}=${O}`).join("|")}function L(){var U,ne,G,q;if(!d.value||!V.value)return;const D=(ne=(U=d.value).getBounds)==null?void 0:ne.call(U);if(!D)return;const A=(G=D.getSouthWest)==null?void 0:G.call(D),O=(q=D.getNorthEast)==null?void 0:q.call(D);!A||!O||(B.value=`${A.lng} ${A.lat},${O.lng} ${O.lat}`)}async function R(D=!1){await e.nextTick();const A=N(a.value);i.value=A,V.value?L():B.value="";try{const O={search:f.value,limit:w.value.toString(),page:x.value.toString(),filter:A,...V.value&&B.value?{bbox:B.value}:{}},U=new URL(`/api/data/${t.table}`,window.location.origin)+(g.value?`/${g.value}`:""),ne=new URLSearchParams(O).toString(),G=await fetch(`${U.toString()}?${ne}`).then(q=>q.json());if(g.value){let q;G.rows.length>1?q=G.rows.find(na=>na.id===g.value):[q]=G.rows,s.value=q,D||(y.value=o(q==null?void 0:q.geom),M.value=14),p.value=!0}else p.value=!1,_.value||(M.value=t.zoom||5),h.value=G==null?void 0:G.rows;_.value=!1,m.value=G.filtered,er({page:x.value,filter:A,id:g.value,filterByView:V.value})}catch(O){console.error(O.message)}}const j=$e(()=>R(),300),C=$e(()=>R(!0),400);function z(){!d.value||S||!V.value||(d.value.on("moveend",C),d.value.on("zoomend",C),S=!0)}function $(){!d.value||!S||(d.value.off("moveend",C),d.value.off("zoomend",C),S=!1)}function K(D){w.value=D,x.value=1,R()}function Y(D){x.value=D,R()}function X(D){a.value=D.data,x.value=1,g.value?g.value="":R(),n("change:filter",D)}async function E(){if(t.filters)return;const A=await(await fetch(`/api/filter/${t.table}`)).json();k.value=A.list}function F(){a.value={},f.value="",R()}e.onMounted(async()=>{var O,U;u.value=window.innerWidth,u.value<1e3&&(b.value=!1);const D=new URLSearchParams(window.location.search);x.value=Number(D.get("page"))||1,w.value=Number(D.get("limit"))||w.value,g.value=D.get("id")||"",p.value=!!g.value,i.value=D.get("filter")||"";const A=D.get("bbox");A!==null?V.value=A!=="0":V.value=!1,(U=(O=D.get("filter"))==null?void 0:O.split("|"))==null||U.forEach(ne=>{const[G,q]=ne.split("=");G&&(a.value[G]=q!=null&&q.includes(",")?q.split(","):[q])}),E(),!h.value&&!g.value&&R()}),e.onBeforeUnmount(()=>{$()});function T(){_.value=!0,p.value=!1,s.value=null,g.value=""}function P(D){D!=null&&D.geom&&(y.value=o(D.geom),M.value=16),s.value=D,g.value=D.id}return e.watch(d,D=>{n("update:map",D),D&&V.value&&z()}),e.watch(f,D=>{D||R()}),e.watch(g,()=>{R()}),e.watch(V,()=>{V.value?z():$(),R()}),(D,A)=>{var O;return e.openBlock(),e.createElementBlock("section",Zr,[e.renderSlot(D.$slots,"header",{title:t.title,total:m.value}),e.createElementVNode("div",Hr,[e.createVNode(e.unref(ee),{type:"text",modelValue:f.value,"onUpdate:modelValue":A[0]||(A[0]=U=>f.value=U),name:"search",label:"Пошук",onChange:e.unref(j)},null,8,["modelValue","onChange"]),k.value.length?(e.openBlock(),e.createBlock(e.unref(be),{key:0,schema:k.value,view:"inline",onChange:X,limit:5,value:a.value,ref:"filterRef"},null,8,["schema","value"])):e.createCommentVNode("",!0),e.createElementVNode("div",Wr,[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:b.value?"Приховати карту":"Показати карту",onClick:A[1]||(A[1]=U=>b.value=!b.value)},[b.value?(e.openBlock(),e.createBlock(kr,{key:0})):(e.openBlock(),e.createBlock(Br,{key:1})),A[9]||(A[9]=e.createElementVNode("span",{class:"sr-only"},"Відкрити мапу",-1))],8,qr),e.createElementVNode("div",Yr,[e.createElementVNode("button",{onClick:A[2]||(A[2]=U=>b.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(zr)]),e.createElementVNode("button",{onClick:A[3]||(A[3]=U=>b.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(Sr)])])])]),e.createElementVNode("div",Qr,[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden shrink-0",b.value?"w-2/4 mr-0":"w-full mr-3",p.value?"hidden":""])},[(O=D.$slots)!=null&&O.header?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Gr,[e.createElementVNode("div",null,[e.createElementVNode("span",Xr,e.toDisplayString(t.title),1),e.createElementVNode("span",Jr,e.toDisplayString(m.value),1),A[10]||(A[10]=e.createElementVNode("span",{class:"text-sm text-stone-500 font-medium"}," об'єктів",-1))]),t.objectsInView?(e.openBlock(),e.createElementBlock("label",vr,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"accent-blue-600 w-4 h-4","onUpdate:modelValue":A[4]||(A[4]=U=>V.value=U)},null,512),[[e.vModelCheckbox,V.value]]),A[11]||(A[11]=e.createElementVNode("span",null,"В межах видимої області",-1))])):e.createCommentVNode("",!0)])),e.createElementVNode("div",ea,[m.value>=1?e.renderSlot(D.$slots,"table",{key:0,rows:h.value,selectRow:P}):(e.openBlock(),e.createElementBlock("div",ta,[e.createVNode(hr),A[12]||(A[12]=e.createElementVNode("h2",{class:"font-medium text-base text-gray-500 rounded-xl"}," За вашим запитом даних не знайдено! ",-1)),A[13]||(A[13]=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:F}," Очистити дані пошуку ")]))]),m.value>=1?(e.openBlock(),e.createElementBlock("hr",la)):e.createCommentVNode("",!0),m.value>=1?(e.openBlock(),e.createElementBlock("div",oa,[e.createElementVNode("div",ra,[e.createVNode(pr,{total:m.value,currentPage:x.value??1,pageSize:w.value,onPageChange:A[5]||(A[5]=U=>Y(U)),onPageSizeChange:A[6]||(A[6]=U=>K(U))},null,8,["total","currentPage","pageSize"])])])):e.createCommentVNode("",!0)],2),p.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(b.value?"lg:static lg:w-1/2 mr-0 pb-5":"pb-5 mr-3"),style:{height:"calc(100vh - 152px)"}},[e.renderSlot(D.$slots,"details",{table:t.table,selectedRow:s.value,closeObjCard:T})],2)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",aa,[e.createVNode(Ir,{table:t.table,map:d.value,"onUpdate:map":A[7]||(A[7]=U=>d.value=U),zoom:M.value,minZoom:t.minZoom,maxZoom:t.maxZoom,colorAttr:t.colorAttr,filter:i.value,center:y.value,clusterZoom:t.clusterZoom,modelValue:g.value,"onUpdate:modelValue":A[8]||(A[8]=U=>g.value=U),layers:t.layers},{default:e.withCtx(({hoverData:U})=>[e.renderSlot(D.$slots,"popup",{data:U})]),_:3},8,["table","map","zoom","minZoom","maxZoom","colorAttr","filter","center","clusterZoom","modelValue","layers"]),e.renderSlot(D.$slots,"default",{table:t.table,map:d.value,selectedRow:s.value})],512),[[e.vShow,b.value]])])])}}});return ke.install=c=>{c.component("VsPartsMap",ke),c._context.directives.tooltip||c.directive("tooltip",Te)},ke});
|