@opengis/filter 0.1.17 → 0.1.19
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 +74 -74
- package/dist/components/filter/filter.vue.d.ts.map +1 -1
- package/dist/components/filter-field/fields/date-input-inline.vue.d.ts.map +1 -1
- package/dist/composable/i18n.d.ts.map +1 -1
- package/dist/composable/useFilter.d.ts.map +1 -1
- package/dist/index.js +1696 -1676
- package/dist/index.umd.cjs +2 -2
- package/package.json +59 -59
package/dist/index.umd.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(K,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@opengis/core")):typeof define=="function"&&define.amd?define(["exports","vue","@opengis/core"],e):(K=typeof globalThis<"u"?globalThis:K||self,e(K.FilterLib={},K.Vue,K.OpenGISCore))})(this,(function(K,e,J){"use strict";const L=(t,r)=>{const m=t.__vccOpts||t;for(const[l,a]of r)m[l]=a;return m},ue={},pe={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 ye(t,r){return e.openBlock(),e.createElementBlock("svg",pe,[...r[0]||(r[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 ge=L(ue,[["render",ye]]),he={class:"flex items-center justify-between w-full text-sm"},be={class:"flex items-center cursor-pointer w-full"},xe={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},ke=["value"],we={class:"w-[calc(100%-18px)] flex flex-row items-center justify-between pl-[10px]"},Ve={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},Ce={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},W=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(t,{expose:r,emit:m}){const l=t,a=m;function n(){a("itemClick",l.value)}const u=e.ref(null);return r({el:u}),(c,d)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-sm group hover:bg-gray-100",ref_key:"el",ref:u},[e.createElementVNode("div",he,[e.createElementVNode("div",be,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(t.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":t.highlighted}]),onClick:e.withModifiers(n,["stop","prevent"])},[e.createElementVNode("div",{class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[t.type=="checkbox"?"rounded-[4px]":"rounded-full",t.color?`bg-[${t.color}] border-[#ffffff]`:t.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[t.isSelected?(e.openBlock(),e.createElementBlock("img",xe)):e.createCommentVNode("",!0)],2),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:t.value},null,8,ke),e.createElementVNode("div",we,[e.createElementVNode("span",Ve,e.toDisplayString(t.label??"Відсутні данні"),1),t.count?(e.openBlock(),e.createElementBlock("div",Ce," ("+e.toDisplayString(t.count)+") ",1)):e.createCommentVNode("",!0)])],2)])])],512))}});function q(t,r){const{options:m=[],limit:l=20}=t;function a(y){return Array.isArray(y)?y[0]:y}const n=e.ref(a(t.modelValue)),u=e.ref(""),c=e.ref(!1),d=e.ref([]),b=e.ref("id"),i=e.ref("text"),f=e.ref(!1),p=e.ref(t.layout!=="popover"&&m.length>l);function x(y){const g=y.find(Boolean)??{},D=["id","value","code","key"].find(C=>C in g)??"id",F=["text","label","name","title"].find(C=>C in g)??"text";return{autoValueKey:D,autoLabelKey:F}}if(m.length>0){const y=x(m);b.value=y.autoValueKey,i.value=y.autoLabelKey}const w=e.computed(()=>{const y=d.value;return t.layout==="popover"||f.value?y:y.slice(0,l)});e.watch(()=>t.modelValue,y=>{n.value=a(y)},{immediate:!0}),d.value=[...m].sort((y,g)=>t.sort==="count"?g.count&&y.count?g.count-y.count:0:t.sort==="name"?String(y[i.value]??"").localeCompare(String(g[i.value]??"")):0);function k(y){return n.value===y[b.value]}function o(y){n.value=y[b.value],r("update:modelValue",n.value),r("change",{name:t.name,value:n.value})}function s(){n.value=void 0,r("update:modelValue",n.value),r("clear",t.name)}function h(){f.value=!f.value}return{innerValue:n,searchTerm:u,filteredOptions:w,isSelected:k,selectItem:o,clear:s,toggleShowAll:h,isReqProc:c,showAll:f,isEnableShowAll:p,labelKey:i,valueKey:b,allOptions:d}}const Be={},Ee={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function Ne(t,r){return e.openBlock(),e.createElementBlock("svg",Ee,[...r[0]||(r[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 Q=L(Be,[["render",Ne]]),Se={},De={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 $e(t,r){return e.openBlock(),e.createElementBlock("svg",De,[...r[0]||(r[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const I=L(Se,[["render",$e]]),Fe={},Ae={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 je(t,r){return e.openBlock(),e.createElementBlock("svg",Ae,[...r[0]||(r[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const H=L(Fe,[["render",je]]),Me={key:0,class:"w-full"},Re={class:"flex flex-col items-center justify-center p-5 text-center"},Te={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Ke={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Le=e.defineComponent({__name:"radio",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=e.ref(null),n=m,{innerValue:u,filteredOptions:c,isSelected:d,selectItem:b,clear:i,toggleShowAll:f,isReqProc:p,showAll:x,isEnableShowAll:w,labelKey:k,valueKey:o,allOptions:s}=q({...l,modelValue:l.modelValue??l.default??""},n);return r({clear:i,inputTextRef:a}),e.watch(()=>l.modelValue,h=>{h===void 0&&(u.value=void 0)}),(h,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),g=>(e.openBlock(),e.createBlock(W,{layout:t.layout,key:g[e.unref(o)],count:g.count,label:g[e.unref(k)],color:g.color,type:"radio",value:g[e.unref(o)],"is-selected":e.unref(d)(g),onItemClick:D=>e.unref(b)(g)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),t.type==="select"&&e.unref(c).length===0&&!e.unref(p)?(e.openBlock(),e.createElementBlock("div",Me,[e.createElementVNode("div",Re,[e.createVNode(Q),y[4]||(y[4]=e.createElementVNode("div",{class:"max-w-sm mx-auto mt-6"},[e.createElementVNode("p",{class:"font-medium text-gray-800 dark:text-neutral-200"},"За вашим запитом нічого не знайдено"),e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"})],-1))])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(x)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:y[0]||(y[0]=(...g)=>e.unref(f)&&e.unref(f)(...g)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[y[5]||(y[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(I)])):e.createCommentVNode("",!0),e.unref(x)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:y[1]||(y[1]=(...g)=>e.unref(f)&&e.unref(f)(...g)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[y[6]||(y[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(H)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Te,[e.createTextVNode(e.toDisplayString(e.unref(u)||e.unref(u)===null?1:0)+" з "+e.toDisplayString(e.unref(s).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[2]||(y[2]=(...g)=>e.unref(i)&&e.unref(i)(...g))}," Очистити ",512),[[e.vShow,e.unref(u)!==""&&e.unref(u)!==void 0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Ke,[e.createElementVNode("span",null,e.toDisplayString(e.unref(u)||e.unref(u)===null?1:0)+" з "+e.toDisplayString(e.unref(s).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[3]||(y[3]=(...g)=>e.unref(i)&&e.unref(i)(...g))}," Очистити ",512),[[e.vShow,e.unref(u)!==""&&e.unref(u)!==void 0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function v(t,r){const{options:m=[],limit:l=20}=t;function a(y){return Array.isArray(y)?y:y?[y]:[]}const n=e.ref(a(t.modelValue)),u=e.ref(""),c=e.ref(!1),d=e.ref([]),b=e.ref("id"),i=e.ref("text"),f=e.ref(!1),p=e.ref(t.layout!=="popover"&&m.length>l);function x(y){const g=y.find(Boolean)??{},D=["id","value","code","key"].find(C=>C in g)??"id",F=["text","label","name","title"].find(C=>C in g)??"text";return{autoValueKey:D,autoLabelKey:F}}if(m.length>0){const y=x(m);b.value=y.autoValueKey,i.value=y.autoLabelKey}const w=e.computed(()=>{const y=d.value;return t.layout==="popover"||f.value?y:y.slice(0,l)});e.watch(()=>t.modelValue,y=>{n.value=a(y)},{immediate:!0}),d.value=[...m].sort((y,g)=>t.sort==="count"?g.count&&y.count?g.count-y.count:0:t.sort==="name"?String(y[i.value]).localeCompare(String(g[i.value])):0);function k(y){return n.value&&n.value.includes(y[b.value])}function o(y){const g=n.value.includes(y[b.value]);n.value=g?n.value.filter(D=>D!==y[b.value]):[...n.value,y[b.value]],r("update:modelValue",n.value),r("change",{name:t.name,value:n.value})}function s(){n.value=[],r("update:modelValue",n.value),r("clear",t.name)}function h(){f.value=!f.value}return{innerValue:n,searchTerm:u,filteredOptions:w,isSelected:k,selectItem:o,clear:s,toggleShowAll:h,isReqProc:c,showAll:f,isEnableShowAll:p,labelKey:i,valueKey:b,allOptions:d}}const ee={en:{search:"Search",more:"Show more",less:"Show less",selected:"selected",clear:"Clear",notfound:"Nothing found",period:"Period",today:"Today",week:"Week",month:"Month",quarter:"Quarter",year:"Year",alltime:"All Time",prev:"Prev",next:"Next",selectFieldHelp:"Select a field to start creating a filter."},uk:{search:"Пошук",more:"Показати більше",less:"Показати меньше",selected:"обрано",clear:"Очистити",notfound:"Нічого не знайдено",period:"Період",today:"Сьогодні",week:"Тиждень",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період",selectFieldHelp:"Оберіть поле, щоб розпочати створення фільтра."}};function te(t){const r=t.split(".")[1],m=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(ee[m||navigator.language]||ee.uk)[r]}function _(){const t=e.getCurrentInstance();if(!t.appContext.config.globalProperties.$i18n)return te;const r=t.appContext.config.globalProperties.$t;return m=>{const l=r(m);return l===m?te(m):l}}const ze={key:0,class:"w-full"},_e={class:"flex flex-col items-center justify-center p-5 text-center"},Oe={class:"max-w-sm mx-auto mt-6"},Ue={class:"font-medium text-gray-800 dark:text-neutral-200"},Ie={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Pe={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},le=e.defineComponent({__name:"checkbox",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=_(),a=t,n=m,{innerValue:u,filteredOptions:c,isSelected:d,selectItem:b,clear:i,toggleShowAll:f,isReqProc:p,showAll:x,isEnableShowAll:w,labelKey:k,valueKey:o,allOptions:s}=v({...a,modelValue:a.modelValue},n);return e.watch(()=>a.modelValue,h=>{h===void 0&&(u.value=[])}),r({clear:i}),(h,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),g=>(e.openBlock(),e.createBlock(W,{layout:t.layout,count:g.count,label:g[e.unref(k)],color:g.color,type:"checkbox",value:g[e.unref(o)],"is-selected":e.unref(d)(g),onItemClick:D=>e.unref(b)(g)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),t.type==="select"&&e.unref(c).length===0&&!e.unref(p)?(e.openBlock(),e.createElementBlock("div",ze,[e.createElementVNode("div",_e,[e.createVNode(Q),e.createElementVNode("div",Oe,[e.createElementVNode("p",Ue,e.toDisplayString(e.unref(l)("filter.notfound")),1),y[4]||(y[4]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(x)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:y[0]||(y[0]=(...g)=>e.unref(f)&&e.unref(f)(...g)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(l)("filter.more"))+" ",1),e.createVNode(I)])):e.createCommentVNode("",!0),e.unref(x)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:y[1]||(y[1]=(...g)=>e.unref(f)&&e.unref(f)(...g)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(l)("filter.less"))+" ",1),e.createVNode(H)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Ie,[e.createTextVNode(e.toDisplayString(e.unref(u).length)+" / "+e.toDisplayString(e.unref(s).length)+" "+e.toDisplayString(e.unref(l)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[2]||(y[2]=(...g)=>e.unref(i)&&e.unref(i)(...g))},e.toDisplayString(e.unref(l)("filter.clear")),513),[[e.vShow,e.unref(u).length!==0]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Pe,[e.createElementVNode("span",null,e.toDisplayString(e.unref(u).length)+" / "+e.toDisplayString(e.unref(s).length)+" "+e.toDisplayString(e.unref(l)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:y[3]||(y[3]=(...g)=>e.unref(i)&&e.unref(i)(...g))},e.toDisplayString(e.unref(l)("filter.clear")),513),[[e.vShow,e.unref(u).length!==0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Ye={},We={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 qe(t,r){return e.openBlock(),e.createElementBlock("svg",We,[...r[0]||(r[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=L(Ye,[["render",qe]]),Qe={},He={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 Ge(t,r){return e.openBlock(),e.createElementBlock("svg",He,[...r[0]||(r[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 G=L(Qe,[["render",Ge]]);class oe{static getWidthClass(r){return typeof r=="number"?`max-w-[${r}px] min-w-[${r}px]`:typeof r=="string"?r.endsWith("%")||r.endsWith("px")?`max-w-[${r}]`:`max-w-${r}`:"w-full"}}const Xe={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},Ze=["placeholder"],Je=e.defineComponent({__name:"text-input",props:{id:{},name:{},title:{},type:{},label:{},width:{default:220},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{emit:r}){const m=t,l=e.ref((m.placeholder||m.label||m.title||m.name||"search").toString()),a=r,n=e.ref(m.modelValue?.toString()??"");e.watch(()=>m.modelValue,b=>{b!==n.value&&(n.value=b?.toString()??"")});let u=null;function c(){if(n.value=n.value.trimStart(),n.value.length===0){d();return}u&&clearTimeout(u),u=setTimeout(()=>{a("update:modelValue",n.value),a("change",{name:m.name,value:n.value})},300)}function d(){n.value="",a("update:modelValue",""),a("clear",m.name)}return(b,i)=>(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",t.layout==="inline"?e.unref(oe).getWidthClass(t.width):"mb-2"+(t.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Xe,[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(G)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":i[0]||(i[0]=f=>n.value=f),onInput:c,placeholder:l.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,Ze),[[e.vModelText,n.value]])],2))}});function re(t={color:"blue"}){return e.computed(()=>{const m=`w-full px-3 py-2 border-solid border text-black border-gray-300 text-sm rounded focus:outline-none focus:ring-2 focus:ring-${t.color}-500 focus:border-transparent
|
|
2
|
-
text-gray-800 bg-white dark:text-neutral-300 dark:bg-neutral-800 dark:border-neutral-600`;return t?.size==="sm"?`${m}h-[32px]`:`${m}h-[38px]`})}function ve(){return"rounded-md font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 px-4 py-2 w-full bg-transparent border text-black text-sm h-[38px]"}function et(){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 ae(t){return t==="ghost"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border text-gray-600 hover:bg-blue-100 hover:text-gray-800 focus:outline-hidden focus:bg-gray-100 focus:text-gray-800 disabled:opacity-50 disabled:pointer-events-none dark:text-gray-500 dark:hover:bg-blue-800/30 dark:hover:text-blue-400 dark:focus:bg-blue-800/30 dark:focus:text-blue-400":t==="soft"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border bg-white-100 text-gray-800 hover:bg-gray-200 hover:bg-gray-200 focus:outline-hidden focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:text-blue-400 dark:hover:bg-blue-900 dark:focus:bg-blue-900":"relative border-solid border-gray-200 focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 border-input hover:bg-gray-100 border px-4 py-2 gap-1 bg-transparent h-[38px]"}const tt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},lt=["placeholder","disabled"],nt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ot={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},rt=["placeholder","disabled"],at=["disabled"],on={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},rn={key:1,class:"flex justify-end items-center text-xs text-gray-500 p-1 border-t"},st=e.defineComponent({__name:"range-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=re(),a=ve(),n=_(),u=t,c=e.ref(u.modelValue??u.default??[]),d=m,b=e.computed({get:()=>u.modelValue??c.value,set:p=>{u.modelValue!==void 0?d("update:modelValue",p):c.value=p}});function i(){d("change",{name:u.name,value:b.value||c.value})}function f(){c.value=[],b.value=c.value,d("clear",u.name)}return e.watch(()=>u.modelValue,p=>{p!==void 0&&u.layout!=="popover"?(c.value=p,d("update:modelValue",p)):c.value=[]}),r({clear:f,currentValue:b}),(p,x)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",tt,e.toDisplayString(e.unref(n)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(l)),placeholder:t.placeholder?.[0]??"min",step:"1",style:{outline:"none"},"onUpdate:modelValue":x[0]||(x[0]=w=>b.value[0]=w),disabled:t.disabled},null,10,lt),[[e.vModelText,b.value[0]]])]),t.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",nt," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[t.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",ot,e.toDisplayString(e.unref(n)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(l)),placeholder:t.placeholder?.[1]??"max",min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":x[1]||(x[1]=w=>b.value[1]=w),disabled:t.disabled},null,10,rt),[[e.vModelText,b.value[1]]])]),["popover","inline","vertical"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:i,class:e.normalizeClass(e.unref(a)+(t.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(t.layout==="vertical"?"Ok":e.unref(n)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(t.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(b.value[0]||b.value[1]),onClick:f,class:e.normalizeClass(e.unref(a)+" hover:bg-gray-100")},e.toDisplayString(e.unref(n)("filter.clear")),11,at)):e.createCommentVNode("",!0)],2)]),(t.cleanable&&c.value.length,e.createCommentVNode("",!0))],64))}});class R{static format(r){const m=r.getFullYear(),l=(r.getMonth()+1).toString().padStart(2,"0"),a=r.getDate().toString().padStart(2,"0");return`${m}-${l}-${a}`}static getShiftedDay(r,m=0){const l=r?new Date(r):new Date;return l.setDate(l.getDate()+m),this.format(l)}static getLastWeekRange(r,m,l=0){if(r&&m){const b=new Date(r),i=new Date(m);return b.setDate(b.getDate()+l*7),i.setDate(i.getDate()+l*7),[this.format(b),this.format(i)]}const a=new Date,n=a.getDay(),u=n===0?13:n-1+7,c=new Date(a);c.setDate(a.getDate()-u+l*7);const d=new Date(c);return d.setDate(c.getDate()+6),[this.format(c),this.format(d)]}static getMonthRange(r,m,l=0){let a;r?a=new Date(r):a=new Date,a=new Date(a.getFullYear(),a.getMonth()+l,1);const n=a,u=new Date(a.getFullYear(),a.getMonth()+1,0);return[this.format(n),this.format(u)]}static getQuarterRange(r,m,l=0){const a=r||m,n=a?new Date(a):new Date;let u=Math.floor(n.getMonth()/3);u+=l;const c=(u%4+4)%4*3,d=n.getFullYear()+Math.floor(u/4),b=new Date(d,c,1),i=new Date(d,c+3,0);return[this.format(b),this.format(i)]}static getYear(r,m=0){let l;return r&&/^\d{4}$/.test(r)?l=parseInt(r,10):r?l=new Date(r).getFullYear():l=new Date().getFullYear(),String(l+m)}static getYearRange(r,m=0){let l;return r&&/^\d{4}$/.test(r)?l=parseInt(r,10):r?l=new Date(r).getFullYear():l=new Date().getFullYear(),[this.format(new Date(l+m,0,1)),this.format(new Date(l+m+1,0,0))]}static getRangeFromDaysBefore(r){const m=new Date,l=new Date(m.getTime());return l.setDate(m.getDate()-r),[this.format(l),this.format(m)]}}function se(t,r){const{popoverRef:m}=t,l=_(),a=e.ref(""),n=e.ref(t.modelValue??t.default??[]),u=e.ref(0);function c(){const s=R.getRangeFromDaysBefore(u.value);return n.value=[...s],r("change",{name:t.name,value:n.value}),r("update:modelValue",n.value),s}function d(s){a.value=s,m.value?.close();const h=[];switch(a.value){case"today":h.push(R.getShiftedDay()),h.push(R.getShiftedDay());break;case"week":h.push(...R.getLastWeekRange());break;case"month":h.push(...R.getMonthRange());break;case"quarter":h.push(...R.getQuarterRange());break;case"year":h.push(...R.getYearRange());break;case"last_7_days":u.value=7,c();break;case"range":u.value=7,h.push(...c());break}n.value=[...h],r("change",{name:t.name,value:n.value}),r("update:modelValue",n.value)}function b(){const s=[];switch(a.value){case"today":s.push(R.getShiftedDay(n.value[0],1));break;case"week":s.push(...R.getLastWeekRange(n.value[0],n.value[1],1));break;case"month":s.push(...R.getMonthRange(n.value[0],n.value[1],1));break;case"quarter":s.push(...R.getQuarterRange(n.value[0],n.value[1],1));break;case"year":s.push(...R.getYearRange(n.value[0],1));break}n.value=[...s],r("change",{name:t.name,value:n.value}),r("update:modelValue",n.value)}function i(){const s=[];switch(a.value){case"today":s.push(R.getShiftedDay(n.value[0],-1));break;case"week":s.push(...R.getLastWeekRange(n.value[0],n.value[1],-1));break;case"month":s.push(...R.getMonthRange(n.value[0],n.value[1],-1));break;case"quarter":s.push(...R.getQuarterRange(n.value[0],n.value[1],-1));break;case"year":s.push(...R.getYearRange(n.value[0],-1));break}n.value=[...s],r("change",{name:t.name,value:n.value}),r("update:modelValue",n.value)}const f=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function p(s){const[h,y,g]=s.split("-");return`${g}.${y}.${h}`}function x(s,h="long"){const y=new Date(Date.UTC(2e3,s-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:h,timeZone:"UTC"}).format(y)}function w(s){const{value:h}=n;switch(s){case"today":return p(h[0]);case"range":return"Період";case"week":return h[0]&&h[1]?`${p(h[0])} – ${p(h[1])}`:"";case"quarter":if(h[0]){const y=new Date(h[0]),g=y.getFullYear(),D=y.getMonth();return`${Math.floor(D/3)+1} ${l("filter.quarter")} ${g}`}return"";case"month":if(h[0]){const[y,g]=h[0].split("-");return`${x(parseInt(g,10))} ${y}`}return"";case"year":return h[0]||"";case"last_7_days":return"За останні дні";default:return t.label??""}}const k=e.computed(()=>a.value?w(a.value):t.label??"");function o(){a.value="",n.value=[],r("update:modelValue",[]),r("clear",t.name)}return{activeMode:a,innerValue:n,daysBefore:u,onDaysBeforeChange:c,onSelectChange:d,nextClick:b,prevClick:i,ukMonths:f,formatDisplayDate:p,getModeLabel:w,currentLabel:k,clear:o}}const it={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},ct={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},dt=["max","disabled"],ft=["min","disabled"],mt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ut=["max","disabled"],pt={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"},gt=["min","disabled"],ht={class:"flex gap-1 pt-2"},bt=["onClick"],an={key:0,class:"flex justify-end items-center text-xs text-gray-500 p-1 border-t"},xt=e.defineComponent({__name:"date-input",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=re(),n=et(),u=_(),c=m,d=e.ref(null),{activeMode:b,innerValue:i,onSelectChange:f,nextClick:p,prevClick:x,clear:w}=se({...l,popoverRef:d},c);return e.watch(()=>l.modelValue,k=>{k!==void 0?(i.value=k,c("update:modelValue",k)):(b.value="",i.value=[])}),r({clear:w,popoverRef:d}),(k,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",it,[e.unref(b)!==""&&e.unref(b)==="range"?(e.openBlock(),e.createElementBlock("div",ct,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(i)[1],locale:"uk-UA","onUpdate:modelValue":o[0]||(o[0]=s=>e.unref(i)[0]=s),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:t.disabled},null,8,dt),[[e.vModelText,e.unref(i)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(i)[0],locale:"uk-UA","onUpdate:modelValue":o[1]||(o[1]=s=>e.unref(i)[1]=s),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:t.disabled},null,8,ft),[[e.vModelText,e.unref(i)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",mt,e.toDisplayString(e.unref(u)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(i)[1],locale:"uk-UA","onUpdate:modelValue":o[2]||(o[2]=s=>e.unref(i)[0]=s),class:e.normalizeClass(e.unref(a)),disabled:t.disabled},null,10,ut),[[e.vModelText,e.unref(i)[0]]])],2),t.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",pt," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(t.layout!=="popover"?"w-[48%]":"")},[t.layout==="popover"?(e.openBlock(),e.createElementBlock("label",yt,e.toDisplayString(e.unref(u)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(i)[0],locale:"uk-UA","onUpdate:modelValue":o[3]||(o[3]=s=>e.unref(i)[1]=s),class:e.normalizeClass(e.unref(a)),disabled:t.disabled},null,10,gt),[[e.vModelText,e.unref(i)[1]]])],2)],2),e.createElementVNode("div",ht,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["today","week","month","quarter","year"],s=>e.createElementVNode("button",{key:s,class:e.normalizeClass(e.unref(n)+(e.unref(b)===s?" bg-blue-100":"")),onClick:h=>e.unref(f)(s)},e.toDisplayString(e.unref(u)("filter."+s)),11,bt)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(n)),onClick:o[4]||(o[4]=(...s)=>e.unref(x)&&e.unref(x)(...s))}," <",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(n)),onClick:o[5]||(o[5]=(...s)=>e.unref(p)&&e.unref(p)(...s))}," >",2)]),(t.cleanable,e.createCommentVNode("",!0))],64))}});function kt(t,r){const{api:m,options:l=[],limit:a=20,dataKey:n="data"}=t,u=t.multi;function c(B){return u?Array.isArray(B)?B:B?[B]:[]:Array.isArray(B)?B[0]:B}const d=e.ref(c(t.modelValue)),b=e.ref(""),i=e.ref(!1),f=e.ref(l),p=e.ref("id"),x=e.ref("text"),w=e.ref(!1),k=e.ref(t.layout!=="popover"&&l.length>a),o=e.ref([]),s=e.ref(0);function h(B){const $=B.find(Boolean)??{},j=["id","value","code","key"].find(U=>U in $)??"id",M=["text","label","name","title"].find(U=>U in $)??"text";return{autoValueKey:j,autoLabelKey:M}}if(l.length>0){const B=h(l);p.value=B.autoValueKey,x.value=B.autoLabelKey}const y=e.computed(()=>{if(m)return f.value;const B=f.value;if(t.layout==="popover")return B;if(!b.value)return w.value?B:B.slice(0,a);const $=b.value.toLowerCase();return B.filter(j=>j[x.value].toLowerCase().includes($))});let g=null;async function D(B){if(m){i.value=!0;try{const $=new URL(m,window.location.origin);$.searchParams.set("json","1"),$.searchParams.set("key",B),$.searchParams.set("limit",a.toString());const j=await fetch($.toString());if(!j.ok){J.notify({type:"error",title:"Error",message:"Failed to fetch remote options"}),f.value=[];return}const M=await j.json();if(!M[n]){J.notify({type:"error",title:"Error",message:M}),f.value=[];return}if(f.value=M[n],f.value.length>0){const U=h(f.value);p.value=U.autoValueKey,x.value=U.autoLabelKey}s.value=M.total}catch($){console.error("Failed to fetch remote options:",$)}finally{i.value=!1}}}e.watch(b,B=>{m&&(g&&clearTimeout(g),g=setTimeout(()=>{D(B)},200))}),e.watch(()=>t.modelValue,B=>{d.value=c(B)},{immediate:!0});function F(B){return u&&Array.isArray(d.value)?d.value.includes(B[p.value]):d.value&&d.value===B[p.value]}function C(B){if(u&&!Array.isArray(d.value)&&(d.value=[]),u&&Array.isArray(d.value)){const $=d.value.includes(B[p.value]);d.value=$?d.value.filter(j=>j!==B[p.value]):[...d.value,B[p.value]],o.value=$?o.value.filter(j=>j!==B[x.value]):[...o.value,B[x.value]]}else d.value=B[p.value],o.value=B[x.value];r("update:modelValue",d.value),r("change",{name:t.name,value:d.value})}function V(){u?(d.value=[],o.value=[]):(d.value=void 0,o.value=[]),r("update:modelValue",d.value),r("clear",t.name)}function S(){g&&clearTimeout(g),b.value="",w.value=!1}function E(){w.value=!w.value}e.onBeforeUnmount(()=>{g&&clearTimeout(g)});const N=e.ref(-1);e.watch(y,()=>{N.value=y.value.length>0?0:-1});function A(B){const $=y.value.length;if(B.key==="ArrowDown")B.preventDefault(),N.value=(N.value+1)%$;else if(B.key==="ArrowUp")B.preventDefault(),N.value=(N.value-1+$)%$;else if(B.key==="Enter"&&(B.preventDefault(),N.value>=0&&N.value<y.value.length)){const j=y.value[N.value];C(j)}}function T(){m&&f.value.length===0&&b.value.length===0&&D(b.value)}return{innerValue:d,searchTerm:b,filteredOptions:y,isSelected:F,selectItem:C,clear:V,resetSearch:S,toggleShowAll:E,isReqProc:i,showAll:w,isEnableShowAll:k,labelKey:x,valueKey:p,allOptions:f,highlightedIndex:N,onKeyDown:A,selectedLabels:o,totalCount:s,loadData:T}}const wt={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},Vt=["placeholder"],Ct={key:0,class:"w-full"},Bt={class:"flex flex-col items-center justify-center p-5 text-center"},Et={class:"max-w-sm mx-auto mt-6"},Nt={class:"font-medium text-gray-800 dark:text-neutral-200"},St={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Dt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},$t=e.defineComponent({__name:"select",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=_(),a=t,n=m,u=e.ref(null),{innerValue:c,filteredOptions:d,isSelected:b,selectItem:i,clear:f,resetSearch:p,toggleShowAll:x,isReqProc:w,showAll:k,isEnableShowAll:o,searchTerm:s,labelKey:h,valueKey:y,highlightedIndex:g,onKeyDown:D,selectedLabels:F,totalCount:C,loadData:V}=kt({...a,modelValue:a.modelValue},n);e.onMounted(()=>{p(),a.layout!=="inline"&&(V(),u.value&&a.layout==="popover"&&u.value.focus())}),e.watch(()=>a.modelValue,E=>{E===void 0&&(a.multi?c.value=[]:c.value=void 0)});const S=e.ref([]);return e.watch(g,E=>{E>=0&&S.value[E]&&S.value[E]?.scrollIntoView({block:"nearest",behavior:"smooth"})}),e.watch(d,()=>{S.value=[]}),r({clear:f,inputTextRef:u,selectedLabels:F,loadData:V}),(E,N)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([t.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",wt,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":N[0]||(N[0]=A=>e.isRef(s)?s.value=A:null),onKeydown:N[1]||(N[1]=(...A)=>e.unref(D)&&e.unref(D)(...A)),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(l)("filter.search"),type:"text",ref_key:"inputTextRef",ref:u},null,40,Vt),[[e.vModelText,e.unref(s)]]),e.createVNode(ne,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(s)!=""?(e.openBlock(),e.createBlock(G,{key:0,onClick:N[2]||(N[2]=A=>s.value=""),class:"absolute text-gray-400 -translate-y-1/2 cursor-pointer hover:text-red-500 right-4 top-1/2"})):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass([t.layout==="popover"?"flex-1 overflow-y-auto p-2":"",t.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(A,T)=>(e.openBlock(),e.createBlock(W,{layout:t.layout,count:A.count,label:A[e.unref(h)],color:A.color,type:t.multi?"checkbox":"radio",value:A[e.unref(y)],"is-selected":e.unref(b)(A),highlighted:T===e.unref(g),onItemClick:B=>e.unref(i)(A),ref_for:!0,ref:B=>S.value[T]=B?.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),t.type==="select"&&e.unref(d).length===0&&!e.unref(w)?(e.openBlock(),e.createElementBlock("div",Ct,[e.createElementVNode("div",Bt,[e.createVNode(Q),e.createElementVNode("div",Et,[e.createElementVNode("p",Nt,e.toDisplayString(e.unref(l)("filter.notfound")),1),N[7]||(N[7]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),t.layout!=="popover"&&t.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(k)&&e.unref(o)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:N[3]||(N[3]=(...A)=>e.unref(x)&&e.unref(x)(...A)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(l)("filter.more"))+" ",1),e.createVNode(I)])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:N[4]||(N[4]=(...A)=>e.unref(x)&&e.unref(x)(...A)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(l)("filter.less"))+" ",1),e.createVNode(H)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",St,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(c))?e.unref(c)?.length:e.unref(c)!==void 0&&(e.unref(c)||e.unref(c)===null)?1:0)+" / "+e.toDisplayString(e.unref(C))+" "+e.toDisplayString(e.unref(l)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:N[5]||(N[5]=(...A)=>e.unref(f)&&e.unref(f)(...A))},e.toDisplayString(e.unref(l)("filter.clear")),513),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0||e.unref(c)]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Dt,[e.createElementVNode("span",null,e.toDisplayString(t.multi&&Array.isArray(e.unref(c))?e.unref(c)?.length:e.unref(c)!==void 0&&(e.unref(c)||e.unref(c)===null)?1:0)+" / "+e.toDisplayString(e.unref(C))+" "+e.toDisplayString(e.unref(l)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:N[6]||(N[6]=(...A)=>e.unref(f)&&e.unref(f)(...A))},e.toDisplayString(e.unref(l)("filter.clear")),513),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0||e.unref(c)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Ft=["for","onClick"],At=["id","name","value"],jt={class:"block"},Mt={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Rt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Tt=e.defineComponent({__name:"tag-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=m,{innerValue:n,isSelected:u,selectItem:c,clear:d,labelKey:b,valueKey:i,allOptions:f}=l.multi?v({...l,modelValue:l.modelValue??l.default??[]},a):q({...l,modelValue:l.modelValue!==void 0?l.modelValue:l.default??""},a);return r({clear:d}),e.watch(()=>l.modelValue,p=>{p===void 0&&(l.multi?n.value=[]:n.value=void 0)}),(p,x)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",t.layout==="popover"?"m-1":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),w=>(e.openBlock(),e.createElementBlock("label",{key:`item-${w[e.unref(i)]}`,for:`item-${w[e.unref(i)]}`,onClick:e.withModifiers(k=>e.unref(c)(w),["stop","prevent"]),class:e.normalizeClass([e.unref(u)(w)?"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-${w[e.unref(i)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${w[e.unref(i)]}`,value:w[e.unref(i)]},null,8,At),e.createElementVNode("span",jt,e.toDisplayString(w[e.unref(b)]),1)],10,Ft))),128))],2),t.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Mt,[e.createTextVNode(e.toDisplayString(t.multi&&Array.isArray(e.unref(n))?e.unref(n)?.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(f).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[0]||(x[0]=(...w)=>e.unref(d)&&e.unref(d)(...w))}," Очистити ",512),[[e.vShow,e.unref(n)!==""&&e.unref(n)!==void 0||e.unref(n)]])])):e.createCommentVNode("",!0),t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Rt,[e.createElementVNode("span",null,e.toDisplayString(t.multi&&Array.isArray(e.unref(n))?e.unref(n)?.length:e.unref(n)!==void 0&&(e.unref(n)||e.unref(n)===null)?1:0)+" з "+e.toDisplayString(e.unref(f).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[1]||(x[1]=(...w)=>e.unref(d)&&e.unref(d)(...w))}," Очистити ",512),[[e.vShow,e.unref(n)!==void 0&&e.unref(n)!==""||e.unref(n)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))}}),Kt=["disabled","title"],Lt={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},zt={class:"truncate text-ellipsis text-sm"},_t={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"},Ot={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"},Ut={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"},X=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},en:{},ua:{},uk:{},fr:{},de:{},es:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(t,{expose:r}){const m=t,l=e.computed(()=>ae(m.mode)),a=e.ref(!1),n=e.ref({top:0,left:0}),u=e.ref(null),c=e.ref(null),d=e.ref(null);function b(){const g=c.value,D=d.value;if(!g||!D)return;const F=g.getBoundingClientRect(),C=D.offsetWidth,V=window.innerWidth,S=F.bottom+8;let{left:E}=F;E+C>V&&(E=Math.max(V-C-10,10)),n.value={top:S,left:E}}function i(){a.value=!a.value,a.value&&e.nextTick(()=>{b(),m.fieldRef?.inputTextRef&&m.fieldRef?.inputTextRef?.focus?.(),m.fieldRef?.loadData&&m.fieldRef?.loadData?.()})}function f(g){!u.value?.contains(g.target)&&!d.value?.contains(g.target)&&!c.value?.contains(g.target)&&(a.value=!1)}function p(g){g.key==="Escape"&&(a.value=!1)}const x=e.ref(!1),w=e.ref("ua"),k=g=>{g.detail.key==="locale"&&(w.value=g.detail.newValue)};e.onMounted(()=>{x.value=!0,w.value=localStorage.locale,window.addEventListener("storage",k),document.addEventListener("click",f,!0),document.addEventListener("keydown",p),window.addEventListener("scroll",b,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",k),document.removeEventListener("click",f,!0),document.removeEventListener("keydown",p),window.removeEventListener("scroll",b,!0)});function o(){a.value=!1}r({close:o});function s(g){return Array.isArray(g)?g.filter(D=>D!=null&&D!=="").length:g&&typeof g=="object"?Object.values(g).filter(D=>D!=null&&D!=="").length:typeof g=="string"?g.trim()===""?0:1:typeof g=="number"?Number.isNaN(g)?0:1:g===null||g!==void 0?1:0}const h=e.computed(()=>{const g=m.fieldRef?.selectedLabels,D=s(g);return D>0?D:s(m.currentValue)}),y=e.computed(()=>{const g=m.fieldRef?.selectedLabels;return!g||["inline"].includes(m.layout||"")?m[w.value]||(m.label??""):Array.isArray(g)?g.length>0?g.join(", "):m.label??"":String(g)});return(g,D)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{onClick:i,disabled:t.disabled,ref_key:"triggerRef",ref:c,title:t.label,class:e.normalizeClass([l.value,t.width?e.unref(oe).getWidthClass(t.width):"w-full",t.layout==="inline"&&h.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",Lt,[e.createElementVNode("span",zt,e.toDisplayString(y.value),1),t.layout==="inline"&&h.value>0?(e.openBlock(),e.createElementBlock("span",_t,e.toDisplayString(h.value),1)):e.createCommentVNode("",!0)]),e.createVNode(I,{class:"h-4 w-4 text-neutral-500"})],10,Kt),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",Ot,[e.createElementVNode("div",Ut,[e.renderSlot(g.$slots,"default")])])],4),[[e.vShow,a.value]])])):e.createCommentVNode("",!0)]))}}),It={},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 Yt(t,r){return e.openBlock(),e.createElementBlock("svg",Pt,[...r[0]||(r[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)])])}const O=L(It,[["render",Yt]]),Wt={},qt={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 Qt(t,r){return e.openBlock(),e.createElementBlock("svg",qt,[...r[0]||(r[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Ht=L(Wt,[["render",Qt]]),Gt={},Xt={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[270deg]"};function Zt(t,r){return e.openBlock(),e.createElementBlock("svg",Xt,[...r[0]||(r[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Jt=L(Gt,[["render",Zt]]),vt={class:"flex gap-1"},el={class:"mb-1"},tl={class:"mb-1"},ll={class:"inline-flex rounded-sm shrink-0 pl-1"},nl=["title"],ol={class:"inline-flex rounded-sm shrink-0 pl-1"},rl=["title"],al={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},sl=["max","disabled"],il=["min","disabled"],sn={key:0,class:"flex justify-end items-center text-xs text-gray-500 p-1 border-t"},cl=e.defineComponent({__name:"date-input-inline",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=_(),a=t,n=m,u=e.ref(null),{activeMode:c,innerValue:d,onSelectChange:b,nextClick:i,prevClick:f,currentLabel:p,clear:x}=se({...a,popoverRef:u},n);return e.watch(()=>a.modelValue,w=>{w!==void 0?(d.value=w,n("update:modelValue",w)):(c.value="",d.value=[])}),r({clear:x,popoverRef:u}),(w,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",vt,[e.createVNode(X,{ref_key:"popoverRef",ref:u,label:e.unref(p),"current-value":e.unref(d),mode:t.mode,width:typeof t.width=="number"&&e.unref(d).length?t.width-70:t.width,onClear:e.unref(x),layout:t.layout},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:k[0]||(k[0]=o=>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(l)("filter.period"))+" ",1),e.unref(c)==="range"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),k[12]||(k[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:k[1]||(k[1]=o=>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(l)("filter.today"))+" ",1),e.unref(c)==="today"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:k[2]||(k[2]=o=>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(l)("filter.week"))+" ",1),e.unref(c)==="week"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:k[3]||(k[3]=o=>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(l)("filter.month"))+" ",1),e.unref(c)==="month"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:k[4]||(k[4]=o=>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(l)("filter.quarter"))+" ",1),e.unref(c)==="quarter"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",el,[e.createElementVNode("button",{type:"button",onClick:k[5]||(k[5]=o=>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(l)("filter.year"))+" ",1),e.unref(c)==="year"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",tl,[e.createElementVNode("button",{type:"button",onClick:k[6]||(k[6]=o=>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(l)("filter.alltime"))+" ",1),e.unref(d)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(O,{key:0}))])])]),_:1},8,["label","current-value","mode","width","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",ll,[e.createElementVNode("button",{type:"button",title:e.unref(l)("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:k[7]||(k[7]=(...o)=>e.unref(f)&&e.unref(f)(...o))},[e.createVNode(Ht)],8,nl)]),e.createElementVNode("div",ol,[e.createElementVNode("button",{type:"button",title:e.unref(l)("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:k[8]||(k[8]=(...o)=>e.unref(i)&&e.unref(i)(...o))},[e.createVNode(Jt)],8,rl)])],64)):e.createCommentVNode("",!0),e.unref(c)!==""&&e.unref(c)==="range"?(e.openBlock(),e.createElementBlock("div",al,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(d)[1],locale:"uk-UA","onUpdate:modelValue":k[9]||(k[9]=o=>e.unref(d)[0]=o),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:t.disabled},null,8,sl),[[e.vModelText,e.unref(d)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(d)[0],locale:"uk-UA","onUpdate:modelValue":k[10]||(k[10]=o=>e.unref(d)[1]=o),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:t.disabled},null,8,il),[[e.vModelText,e.unref(d)[1]]])])):e.createCommentVNode("",!0)]),(t.cleanable,e.createCommentVNode("",!0))],64))}}),dl={class:"flex flex-wrap items-center gap-2"},fl=["disabled","onClick"],ml={key:0,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},ie={radio:Le,checkbox:le,check:le,text:Je,range:st,date:xt,select:$t,tag:Tt,button:e.defineComponent({__name:"button-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=m,{innerValue:n,isSelected:u,selectItem:c,clear:d,labelKey:b,valueKey:i,allOptions:f}=q({...l,modelValue:l.modelValue??l.default??""},a),p=e.computed(()=>n.value!==void 0&&!(typeof n.value=="string"&&n.value==="")),x=e.computed(()=>p.value?1:0);function w(o){return u(o)?["bg-blue-600 text-white"].filter(s=>typeof s=="string"&&s.trim().length>0).join(" "):["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter(s=>typeof s=="string"&&s.trim().length>0).join(" ")}function k(o){l.disabled||c(o)}return r({clear:d}),e.watch(()=>l.modelValue,o=>{o===void 0&&(n.value=void 0)}),(o,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",dl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),h=>(e.openBlock(),e.createElementBlock("button",{key:h[e.unref(i)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",w(h)]),disabled:t.disabled,onClick:y=>k(h)},e.toDisplayString(h[e.unref(b)]),11,fl))),128))]),t.cleanable&&t.layout==="popover"?(e.openBlock(),e.createElementBlock("div",ml,[e.createElementVNode("span",null,e.toDisplayString(x.value)+" з "+e.toDisplayString(e.unref(f).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:s[0]||(s[0]=(...h)=>e.unref(d)&&e.unref(d)(...h))}," Очистити ",512),[[e.vShow,p.value]])])):e.createCommentVNode("",!0)],64))}}),"date:inline":cl};function Z(t,r){let m;switch(t.toLowerCase()){case"autocomplete":m="select";break;case"check":m="checkbox";break;default:m=t?.toString().toLowerCase()}return m==="date"&&r&&r==="inline"&&(m="date:inline"),{component:ie[m]||ie.text,type:m}}const ul={style:{display:"inline-flex",margin:"0px",width:"100%"}},pl={class:"relative w-full mb-2 p-4 bg-white rounded-lg shadow-sm"},yl={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},gl={class:"flex items-center"},hl={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},bl={class:"filter-layout__body"},xl=e.defineComponent({__name:"vertical-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=m,n=e.ref(),u=Z(l.type,l.layout),c=e.computed({get:()=>l.modelValue,set:f=>a("update:modelValue",f)});function d(f){a("clear",f)}function b(f,p){a("change",{name:f,value:p}),l.modelValue!==void 0&&a("update:modelValue",p)}function i(){a("clear",l.name)}return e.watch(()=>l.default,f=>{c.value=f}),e.watch(()=>l.modelValue,f=>{c.value=f}),r({filterRef:n}),(f,p)=>(e.openBlock(),e.createElementBlock("div",ul,[e.createElementVNode("div",pl,[e.createElementVNode("div",yl,[e.createElementVNode("div",gl,[e.createElementVNode("span",hl,e.toDisplayString(t.label),1)]),typeof c.value=="string"&&c.value.trim()!==""||Array.isArray(c.value)&&c.value.length>0&&c.value.some(x=>x!==void 0)||c.value===null?(e.openBlock(),e.createBlock(ge,{key:0,onClick:i})):e.createCommentVNode("",!0)]),e.createElementVNode("div",bl,[e.unref(u)?.type!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u)?.component),e.mergeProps({key:0},l,{type:e.unref(u)?.type,class:l.itemClass,onChange:p[0]||(p[0]=x=>b(x.name,x.value)),onClear:p[1]||(p[1]=x=>d(x)),ref_key:"filterRef",ref:n}),null,16,["type","class"])):(e.openBlock(),e.createBlock(X,{key:1,"current-value":c.value,label:t.label,mode:t.mode,onClear:i,fieldRef:n.value,width:void 0,disabled:t.disabled,layout:"vertical"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u)?.component),e.mergeProps({ref_key:"filterRef",ref:n},l,{type:e.unref(u)?.type,class:l.itemClass,onChange:p[2]||(p[2]=x=>b(x.name,x.value)),onClear:p[3]||(p[3]=x=>d(x))}),null,16,["type","class"]))]),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])]))}}),ce=e.defineComponent({__name:"inline-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=m,n=e.ref(),u=Z(l.type,l.layout),c=e.computed({get:()=>l.modelValue,set:i=>a("update:modelValue",i)});function d(i=l.name){a("clear",i)}function b(i,f){a("change",{name:i,value:f}),l.modelValue!==void 0&&a("update:modelValue",f)}return e.watch(()=>l.default,i=>{c.value=i}),e.watch(()=>l.modelValue,i=>{c.value=i}),r({filterRef:n}),(i,f)=>["text","date","button"].includes(t.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u)?.component),e.mergeProps({key:0},l,{type:e.unref(u)?.type,class:l.itemClass,onChange:f[0]||(f[0]=p=>b(p.name,p.value)),onClear:f[1]||(f[1]=p=>d(p)),disabled:t.disabled,modelValue:c.value,"onUpdate:modelValue":f[2]||(f[2]=p=>c.value=p)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(X,{key:1,"current-value":c.value,label:t.label,mode:t.mode,onClear:d,fieldRef:n.value,width:l.width,disabled:t.disabled,layout:"inline"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u)?.component),e.mergeProps({ref_key:"filterRef",ref:n},l,{modelValue:c.value,"onUpdate:modelValue":f[3]||(f[3]=p=>c.value=p),type:e.unref(u)?.type,class:l.itemClass,onChange:f[4]||(f[4]=p=>b(p.name,p.value)),onClear:f[5]||(f[5]=p=>d(p))}),null,16,["modelValue","type","class"]))]),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}),kl=e.defineComponent({__name:"popover-layout",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean},layout:{},cleanable:{type:Boolean},limit:{},multi:{type:Boolean},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=m,n=e.ref(),u=e.ref(Z(l.type,l.layout)),c=e.computed({get:()=>l.modelValue,set:i=>a("update:modelValue",i)});function d(i){a("clear",i)}function b(i,f){a("change",{name:i,value:f}),l.modelValue!==void 0&&a("update:modelValue",f)}return e.watch(()=>l.default,i=>{c.value=i}),e.watch(()=>l.modelValue,i=>{c.value=i}),e.watch(()=>l,i=>{c.value=i}),r({filterRef:n}),(i,f)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.value?.component),e.mergeProps(l,{type:u.value?.type,class:l.itemClass,modelValue:c.value,"onUpdate:modelValue":f[0]||(f[0]=p=>c.value=p),onChange:f[1]||(f[1]=p=>b(p.name,p.value)),onClear:f[2]||(f[2]=p=>d(p)),ref_key:"filterRef",ref:n}),null,16,["type","class","modelValue"]))}}),z=e.defineComponent({__name:"filter-field",props:{id:{},name:{},title:{},type:{},label:{},width:{},options:{default:()=>[]},placeholder:{},api:{},data:{},default:{},modelValue:{},disabled:{type:Boolean,default:!1},layout:{default:"inline"},cleanable:{type:Boolean},limit:{default:10},multi:{type:Boolean,default:!0},dataKey:{},valueKey:{},mode:{},labelKey:{},sort:{default:"name"},ua:{},itemClass:{}},emits:["update:modelValue","change","clear"],setup(t,{expose:r,emit:m}){const l=t,a=m,n=e.ref(),u=e.computed({get:()=>l.modelValue,set:i=>a("update:modelValue",i)});function c(i){a("clear",i)}function d(i,f){a("change",{name:i,value:f}),l.modelValue!==void 0&&a("update:modelValue",f)}e.watch(()=>l.default,i=>{u.value=i}),e.watch(()=>l.modelValue,i=>{u.value=i}),r({filterRef:n});function b(){switch(l.layout){case"inline":return ce;case"vertical":return xl;case"popover":return kl;default:return ce}}return(i,f)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b()),e.mergeProps(l,{onChange:f[0]||(f[0]=p=>d(p.name,p.value)),onClear:f[1]||(f[1]=p=>c(p)),modelValue:u.value,"onUpdate:modelValue":f[2]||(f[2]=p=>u.value=p)}),null,16,["modelValue"]))}});function P(t,r){const{slots:m}=t,l=e.ref(t.value??{}),a=e.computed(()=>(e.toRaw(m?.default?.())??[]).flatMap(s=>Array.isArray(s.children)?s.children:[s]));function n(o){delete l.value[o],r("clear",{data:e.toRaw(l.value),name:o})}function u(o,s){s===void 0?n(o):l.value={...l.value,[o]:s},r("change",{data:e.toRaw(l.value),name:o,value:s})}const c=e.computed(()=>a.value.map(o=>{const s=o.props?.name;return e.cloneVNode(o,{...o.props,layout:t.view,showClean:!0,modelValue:l.value[s],"onUpdate:modelValue":h=>{u(s,h)},onClear:()=>n(s),class:[t.itemClass,o.props?.class],itemClass:[t.itemClass,o.props?.itemClass].filter(h=>typeof h=="string"&&h.trim().length>0).join(" ")||void 0})})),d=e.computed(()=>new Map(c.value.map(o=>{const s=o.props?.name;return s?[s,o]:null}).filter(o=>o!==null)));function b(o=!1){l.value={},o||r("clearAll",{data:e.toRaw(l.value),name:"ALL"})}const i=e.ref(""),f=e.computed(()=>t.schema?.value?Object.entries(l.value).filter(([o,s])=>t.schema&&!(o in t.schema.value)?!1:Array.isArray(s)?s.some(h=>h!==""&&h!==void 0):s!==""&&s!==void 0).length:0),p=e.ref();e.watch(i,async()=>{await e.nextTick(),p?.value?.filterRef?.inputTextRef&&p.value.filterRef.inputTextRef.focus()});const x=e.computed(()=>t.schema?.value?Object.fromEntries(Object.entries(t.schema?.value).slice(0,t.limit)):{}),w=e.computed(()=>{if(c.value.length===0)return[];let o=0;if(t.schema?.value){const s=Object.entries(t.schema.value).length;t.limit&&s<t.limit?o=t.limit-s:o=0}return c.value.slice(0,o)}),k=e.computed(()=>c.value.length===0?[]:t.view!=="inline"?c.value:c.value.slice(w.value.length));return{activeFilter:l,activeFilterCount:f,onFilterChange:u,clearFilter:n,clearAllFilters:b,limitedSchema:x,filtersSlot:c,limitedFiltersSlot:w,popoverFiltersSlot:k,vnodeMap:d,selectedFilter:i,filterRef:p}}const wl=e.defineComponent({__name:"popover",emits:["open","close"],setup(t,{emit:r}){const m=e.ref(!1),l=e.ref(null),a=e.ref(null),n=e.ref(null),u=e.ref({top:"0px",left:"0px",position:"absolute"});function c(){m.value=!m.value}function d(){const x=n.value,w=l.value;if(!x||!w)return;const k=x.getBoundingClientRect(),o=w.offsetWidth,s=window.innerWidth-k.left;let h=k.left+window.scrollX;o>s&&(h=window.innerWidth-o-8,h<8&&(h=8)),u.value={position:"absolute",top:`${k.bottom+window.scrollY+8}px`,left:`${h}px`}}const b=e.computed(()=>Object.entries(u.value).map(x=>x.join(":")).join(";"));function i(x){const w=x.target;!n.value?.contains(x.target)&&!l.value?.contains(x.target)&&!w.closest("[data-inside-popover]")&&(m.value=!1)}const f=e.ref(!1);e.onMounted(()=>{f.value=!0}),e.onMounted(()=>{n.value=a.value?.querySelector("[data-popover-trigger]")||null,n.value?.addEventListener("click",c),document.addEventListener("click",i),window.addEventListener("resize",d),window.addEventListener("scroll",d,!0)}),e.onBeforeUnmount(()=>{n.value?.removeEventListener("click",c),document.removeEventListener("click",i),window.removeEventListener("resize",d),window.removeEventListener("scroll",d,!0)});const p=r;return e.watch(m,async x=>{x?(p("open"),await e.nextTick(),d()):p("close")}),(x,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:a},[e.renderSlot(x.$slots,"trigger"),f.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:l,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,m.value]])])):e.createCommentVNode("",!0)],512))}}),Vl={},Cl={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-filter h-4 w-4"};function Bl(t,r){return e.openBlock(),e.createElementBlock("svg",Cl,[...r[0]||(r[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)])])}const de=L(Vl,[["render",Bl]]),El={class:"flex items-center gap-2 overflow-hidden"},Nl={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"},Sl={class:"flex max-h-[calc(100dvh-240px)]"},Dl={class:"w-64 border-r border-gray-200 overflow-y-auto"},$l={class:"p-4 border-b"},Fl={class:"text-sm text-gray-600"},Al={class:"p-2"},jl=["onClick"],Ml={class:"flex items-center gap-2"},Rl={class:"text-sm font-medium"},Tl={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"},Kl=["onClick"],Ll={class:"flex items-center gap-2"},zl={class:"text-sm font-medium"},_l={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"},Ol={key:0,class:"p-2 border-t"},Ul={class:"flex-1 min-h-[300px] overflow-y-auto"},Il={key:0,class:"flex items-center justify-center h-full text-gray-500"},Pl={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(t,{expose:r,emit:m}){const l=_(),a=t,n=ae(a.mode),u=e.useSlots(),c=m,d=e.ref({}),b=e.computed(()=>d?.value?a.view!=="inline"?d?.value:Object.fromEntries(Object.entries(d?.value).slice(a.limit)):{}),{activeFilter:i,activeFilterCount:f,onFilterChange:p,clearFilter:x,clearAllFilters:w,popoverFiltersSlot:k,selectedFilter:o,filterRef:s}=P({...a,schema:d,slots:u},c),h=e.computed(()=>a.badgeCount??f.value);function y(F){return Array.isArray(F)?F.filter(C=>C!=null&&C!=="").length:F&&typeof F=="object"?Object.values(F).filter(C=>C!=null&&C!=="").length:F===null||F!==void 0&&F!==""?1:0}function g(F){return i.value?y(i.value[F]):0}function D(){if(b.value){const[F]=Object.keys(b.value);o.value=F}else k.value.length>0?o.value=k.value[0].props.name:o.value=""}return e.watch(()=>a.schema,F=>{d.value=F??{}},{deep:!0,immediate:!0}),r({clearFilter:x,clearAllFilters:w}),(F,C)=>(e.openBlock(),e.createBlock(wl,{onOpen:D,onClose:C[5]||(C[5]=V=>o.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,e.unref(n),"flex items-center justify-between gap-2",h.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",El,[e.createVNode(de,{class:"h-4 w-4"}),C[6]||(C[6]=e.createElementVNode("span",{class:"text-sm font-medium"},"Фільтр",-1))]),h.value>0?(e.openBlock(),e.createElementBlock("span",Nl,e.toDisplayString(h.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",Sl,[e.createElementVNode("div",Dl,[e.createElementVNode("div",$l,[e.createElementVNode("p",Fl,e.toDisplayString(e.unref(l)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",Al,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(b.value),([V,S])=>(e.openBlock(),e.createElementBlock("button",{key:V,onClick:()=>{o.value=V},class:e.normalizeClass(["flex w-full items-center justify-between px-3 py-2 text-left transition-colors hover:bg-gray-50",e.unref(o)===V?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Ml,[e.createElementVNode("span",Rl,e.toDisplayString(S.label),1)]),g(V)>0?(e.openBlock(),e.createElementBlock("div",Tl,e.toDisplayString(g(V)),1)):e.createCommentVNode("",!0)],10,jl))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),(V,S)=>(e.openBlock(),e.createElementBlock("button",{key:"slot-"+S,onClick:E=>o.value=V.props.name,class:e.normalizeClass(["flex items-center justify-between px-3 py-2 text-left transition-colors hover:bg-gray-50",e.unref(o)===V.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Ll,[e.createElementVNode("span",zl,e.toDisplayString(V.props.label),1)]),g(V.props.name)>0?(e.openBlock(),e.createElementBlock("div",_l,e.toDisplayString(g(V.props.name)),1)):e.createCommentVNode("",!0)],10,Kl))),128))]),e.unref(f)>0?(e.openBlock(),e.createElementBlock("div",Ol,[e.createElementVNode("button",{class:e.normalizeClass([t.itemClass,"w-full px-3 py-2 text-left text-sm text-gray-600 hover:bg-gray-50 transition-colors"]),onClick:C[0]||(C[0]=V=>e.unref(w)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ul,[e.unref(o)===""?(e.openBlock(),e.createElementBlock("div",Il,[e.createElementVNode("p",Pl,e.toDisplayString(e.unref(l)("filter.selectFieldHelp")),1)])):e.createCommentVNode("",!0),e.unref(o)?(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),([V,S])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(o)===V?(e.openBlock(),e.createBlock(z,e.mergeProps({key:V,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:s},{ref_for:!0},S,{class:[t.itemClass,S?.class],"item-class":[t.itemClass,S?.itemClass].filter(Boolean).join(" ")||void 0,onChange:C[1]||(C[1]=E=>e.unref(p)(E.name,E.value)),onClear:C[2]||(C[2]=E=>{e.unref(x)(E),e.unref(p)(E,void 0)}),modelValue:e.unref(i)[V],"onUpdate:modelValue":E=>e.unref(i)[V]=E,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),(V,S)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+S},[e.unref(o)===V.props.name?(e.openBlock(),e.createBlock(z,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},V.props,{ref_for:!0,ref_key:"filterRef",ref:s,class:[t.itemClass,V.props?.class],"item-class":[t.itemClass,V.props?.itemClass].filter(Boolean).join(" ")||void 0,onChange:C[3]||(C[3]=E=>e.unref(p)(E.name,E.value)),onClear:C[4]||(C[4]=E=>{e.unref(x)(E),e.unref(p)(E,void 0)}),modelValue:e.unref(i)[V.props.name],"onUpdate:modelValue":E=>e.unref(i)[V.props.name]=E,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),Yl={class:"flex gap-1 items-center flex-wrap"},me=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(t,{expose:r,emit:m}){const l=_(),a=t,n=m,u=e.useSlots(),c=e.ref({}),d=e.computed(()=>Object.keys(a.schema).length>a.limit),{activeFilter:b,activeFilterCount:i,onFilterChange:f,clearFilter:p,clearAllFilters:x,limitedSchema:w,filtersSlot:k,limitedFiltersSlot:o}=P({...a,schema:c,slots:u},n);function s(C){return Array.isArray(C)?C.some(V=>V!==""&&V!==void 0&&V!==null):C===null?!0:C&&typeof C=="object"?Object.values(C).some(V=>V!==""&&V!==void 0&&V!==null):C!==""&&C!==void 0}const h=e.computed(()=>{const C=Object.keys(w.value??{}),V=o.value.map(S=>S.props?.name).filter(S=>typeof S=="string");return new Set([...C,...V])}),y=e.computed(()=>Object.entries(b.value??{}).filter(([C,V])=>h.value.has(C)&&s(V)).length),g=e.computed(()=>{const C=i.value??0,V=y.value??0;return Math.max(C-V,0)}),D=e.ref();function F(){D.value&&D.value.clearAllFilters(!0),x()}return e.watch(()=>a.schema,C=>{c.value=C},{deep:!0,immediate:!0}),r({clearFilter:p,clearAllFilters:x}),(C,V)=>(e.openBlock(),e.createElementBlock("div",Yl,[t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(w)),([S,E])=>(e.openBlock(),e.createBlock(z,e.mergeProps({key:S,mode:t.mode,width:t.width?t.width:E?.width},{ref_for:!0},E,{class:[t.itemClass,E?.class],"item-class":[t.itemClass,E?.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[0]||(V[0]=N=>e.unref(f)(N.name,N.value)),onClear:e.unref(p),layout:"inline",cleanable:!0,modelValue:e.unref(b)[S],"onUpdate:modelValue":N=>e.unref(b)[S]=N}),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(o),(S,E)=>(e.openBlock(),e.createBlock(z,e.mergeProps({key:"slot-"+E,layout:"inline"},{ref_for:!0},S.props,{class:[t.itemClass,S.props?.class],"item-class":[t.itemClass,S.props?.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[1]||(V[1]=N=>e.unref(f)(N.name,N.value)),onClear:V[2]||(V[2]=N=>{e.unref(p)(N),e.unref(f)(N,void 0)}),cleanable:!0,modelValue:e.unref(b)[S.props.name],"onUpdate:modelValue":N=>e.unref(b)[S.props.name]=N}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),128)),d.value?(e.openBlock(),e.createBlock(fe,e.mergeProps({key:1},a,{schema:t.schema,limit:t.limit,onChange:V[3]||(V[3]=S=>e.unref(f)(S.name,S.value)),onClearAll:V[4]||(V[4]=S=>e.unref(x)()),onClear:V[5]||(V[5]=S=>e.unref(p)(S.name)),mode:t.mode,ref_key:"popoverRef",ref:D,cleanable:!0,"badge-count":g.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),(S,E)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(S),e.mergeProps({key:"slot-"+E,layout:"popover"},{ref_for:!0},S.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","limit","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(i)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:F,class:e.normalizeClass([t.itemClass,"relative py-2 px-3 inline-flex justify-center items-center gap-x-2 text-sm font-medium rounded-md bg-gray-50 border text-gray-800 hover:bg-gray-200 focus:bg-gray-200"])},e.toDisplayString(e.unref(l)("filter.clear")),3)):e.createCommentVNode("",!0)]))}}),Wl={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"},ql={class:"flex items-center vst-filters vsTailwind flex-col w-full"},Ql=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(t,{expose:r,emit:m}){const l=t,a=m,n=e.useSlots(),{activeFilter:u,activeFilterCount:c,onFilterChange:d,clearFilter:b,clearAllFilters:i,filtersSlot:f}=P({...l,slots:n},a);return r({clearFilter:b,clearAllFilters:i}),(p,x)=>t.view==="vertical"?(e.openBlock(),e.createElementBlock("div",Wl,[e.createElementVNode("div",ql,[e.unref(c)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:x[0]||(x[0]=w=>e.unref(i)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([t.itemClass,"w-full ring-offset-background focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:text-accent-foreground border h-10 px-4 py-2 gap-2 m-2 bg-white text-gray-800 hover:bg-gray-200 focus:bg-gray-200"]),type:"button"}," Очистити ",2)):e.createCommentVNode("",!0),t.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(t.schema),([w,k])=>(e.openBlock(),e.createBlock(z,e.mergeProps({layout:"vertical"},{ref_for:!0},k,{class:[t.itemClass,k?.class],"item-class":[t.itemClass,k?.itemClass].filter(Boolean).join(" ")||void 0,onChange:x[1]||(x[1]=o=>e.unref(d)(o.name,o.value)),onClear:x[2]||(x[2]=o=>{e.unref(b)(o),e.unref(d)(o,void 0)}),modelValue:e.unref(u)[w],"onUpdate:modelValue":o=>e.unref(u)[w]=o,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),(w,k)=>(e.openBlock(),e.createBlock(z,e.mergeProps({key:"slot-"+k,layout:"vertical"},{ref_for:!0},w.props,{class:[t.itemClass,w.props?.class],"item-class":[t.itemClass,w.props?.itemClass].filter(Boolean).join(" ")||void 0,onChange:x[3]||(x[3]=o=>e.unref(d)(o.name,o.value)),onClear:x[4]||(x[4]=o=>{e.unref(b)(o),e.unref(d)(o,void 0)}),modelValue:e.unref(u)[w.props.name],"onUpdate:modelValue":o=>e.unref(u)[w.props.name]=o,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),128))])])):e.createCommentVNode("",!0)}}),Hl=["onKeydown"],Gl=["disabled"],Xl={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"},Zl={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Jl={class:"mb-3 flex items-center justify-between"},vl={class:"text-[15px] font-semibold text-slate-800"},en={"aria-hidden":"true"},tn={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},ln={key:0,class:"mt-3 flex justify-end"},nn=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(t,{emit:r}){const m=_(),l=t,a=r,n=e.ref({}),u=e.useSlots(),{activeFilter:c,activeFilterCount:d,onFilterChange:b,clearFilter:i,clearAllFilters:f,filtersSlot:p}=P({...l,schema:n.value,slots:u},a),x=e.ref(null),w=e.ref(null),k=e.reactive({open:!1,top:0,left:0}),o=e.computed(()=>k.open),s=e.computed(()=>!!l.disabled),h=e.computed(()=>n.value||{}),y=e.computed(()=>l.title??"Фільтр"),g=e.computed(()=>!!u.trigger),D=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",s.value?"cursor-not-allowed opacity-60":"cursor-pointer"]),F=e.computed(()=>k.open?{position:"absolute",top:`${k.top}px`,left:`${k.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function C(){k.open=!1}function V(){if(!x.value)return;const T=x.value.getBoundingClientRect();k.top=T.bottom+window.scrollY+8,k.left=T.left+T.width/2+window.scrollX}function S(){k.open=!k.open,k.open&&e.nextTick(V)}function E(){s.value||S()}function N(){k.open&&V()}function A(){f()}return e.onMounted(()=>{window.addEventListener("resize",N),window.addEventListener("scroll",N,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",N),window.removeEventListener("scroll",N,!0)}),e.watch(()=>l.schema,T=>{if(!T){n.value={};return}if(Array.isArray(T)){const B=T.filter($=>$&&($.name||$.id)).map($=>{const j=$.name||$.id;return[j,{...$,name:j}]});n.value=Object.fromEntries(B);return}n.value=T},{deep:!0,immediate:!0}),e.watch(()=>l.disabled,T=>{T&&C()}),(T,B)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:x},[g.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",s.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(E,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(E,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(E,["prevent","stop"]),["space"])]},[e.renderSlot(T.$slots,"trigger",{toggle:E,open:o.value,disabled:s.value,activeCount:e.unref(d)})],42,Hl)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(D.value),type:"button",disabled:s.value,onClick:e.withModifiers(E,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(de,{class:"h-4 w-4"}),e.unref(d)>0?(e.openBlock(),e.createElementBlock("div",Xl,e.toDisplayString(e.unref(d)),1)):e.createCommentVNode("",!0)],10,Gl)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof t.width=="number"?`min-w-[${t.width+32+(Object.keys(h.value).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(F.value),ref_key:"panel",ref:w,onClick:B[4]||(B[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Zl,[e.createElementVNode("div",Jl,[e.createElementVNode("h3",vl,e.toDisplayString(y.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:C},[e.createElementVNode("span",en,[e.createVNode(G,{class:"h-4 w-4"})]),B[5]||(B[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",tn,[Object.keys(h.value).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(h.value),([$,j])=>(e.openBlock(),e.createBlock(z,e.mergeProps({key:$},{ref_for:!0},{...j,layout:"inline"},{width:t.width?t.width:j?.width,class:[t.itemClass,j?.class],"item-class":[t.itemClass,j?.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(c)[$],"onUpdate:modelValue":M=>e.unref(c)[$]=M,onChange:B[0]||(B[0]=M=>e.unref(b)(M.name,M.value)),onClear:B[1]||(B[1]=M=>{e.unref(i)(M),e.unref(b)(M,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(p),($,j)=>(e.openBlock(),e.createBlock(z,e.mergeProps({key:"slot-"+j,ref_for:!0},{...$.props,layout:"inline"},{class:[t.itemClass,$.props?.class],"item-class":[t.itemClass,$.props?.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(c)[$.props.name],"onUpdate:modelValue":M=>e.unref(c)[$.props.name]=M,onChange:B[2]||(B[2]=M=>e.unref(b)(M.name,M.value)),onClear:B[3]||(B[3]=M=>{e.unref(i)(M),e.unref(b)(M,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),128))]),e.unref(d)>0?(e.openBlock(),e.createElementBlock("div",ln,[e.createElementVNode("button",{type:"button",class:e.normalizeClass([t.itemClass,"text-sm font-semibold text-blue-600 transition-colors hover:text-blue-700 focus:outline-none"]),onClick:A},e.toDisplayString(e.unref(m)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),Y=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(t,{expose:r,emit:m}){const l=t,a=e.ref(l.value??{}),n=m,u=e.ref(),c=e.useSlots();function d(o){if(Array.isArray(o))return o.map(s=>d(s));if(o!==null&&typeof o=="object"){const s=e.toRaw(o),h={};for(const y in s)h[y]=d(s[y]);return h}return o}function b(o,s){s!==void 0?a.value={...a.value,[o]:s}:delete a.value[o],n("change",{data:d(a.value),name:o,value:d(s)})}function i(o){delete a.value[o],n("clear",{data:d(a.value),name:o}),n("change",{data:d(a.value),name:o,value:null})}function f(){a.value={},n("clear",{data:d(a.value),name:"ALL"}),n("change",{data:d(a.value),name:"ALL",value:null})}const p=e.ref({});function x(){switch(l.view){case"inline":return me;case"vertical":return Ql;case"popover":return fe;case"popover-inline":return nn;default:return me}}e.watch(()=>l.schema,o=>{if(!o){p.value={};return}if(Array.isArray(o)&&!o.length){p.value={};return}Array.isArray(o)?p.value=o.filter(s=>s.type).reduce((s,h)=>(Object.assign(h,{name:h.id||h.name,type:{datepicker:"date"}[h.type.toLowerCase()]||h.type.toLowerCase(),label:h.label||h.ua}),s[h.name]=h,h.data&&!h.api&&!h.options&&Object.assign(h,{api:`/api/suggest/${h.data}`}),s),{}):(Object.entries(o).forEach(([s,h])=>{Object.assign(h,{name:s||h.name||h.id,type:h.type.toLowerCase()})}),p.value={...o})},{immediate:!0,deep:!0});function w(o){u.value.clearFilter(o),i(o)}function k(){u.value.clearAllFilters(),f()}return e.watch(()=>a.value,o=>{if(l.history){const s=new URL(window.location.href),h=new URLSearchParams(window.location.search);Object.keys(o).length>0?h.set("filter",Object.entries(o).filter(([,y])=>y).map(([y,g])=>`${y}=${g}`).join("|")):h.delete("filter"),s.search=decodeURI(h.toString()),window.history.pushState({},"",s)}}),r({clearAllFilters:k,clearFilter:w}),(o,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x()),e.mergeProps(l,{schema:p.value,onChange:s[0]||(s[0]=h=>b(h.name,h.value)),onClear:s[1]||(s[1]=h=>i(h.name)),onClearAll:f,ref_key:"filterRef",ref:u}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:2},[e.unref(c).trigger?{name:"trigger",fn:e.withCtx(h=>[e.renderSlot(o.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(h)))]),key:"0"}:void 0]),1040,["schema"]))}});Y.install=function(r){r.component("Filter",Y),r.component("FilterField",z)},K.Filter=Y,K.FilterField=z,K.default=Y,Object.defineProperties(K,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
1
|
+
(function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@opengis/core")):typeof define=="function"&&define.amd?define(["exports","vue","@opengis/core"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T.FilterLib={},T.Vue,T.OpenGISCore))})(this,function(T,e,Z){"use strict";const K=(m,o)=>{const p=m.__vccOpts||m;for(const[t,n]of o)p[t]=n;return p},ue={},pe={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 ye(m,o){return e.openBlock(),e.createElementBlock("svg",pe,o[0]||(o[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 ge=K(ue,[["render",ye]]),he={class:"flex items-center justify-between w-full text-sm"},be={class:"flex items-center cursor-pointer w-full"},ke={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},xe=["value"],we={class:"w-[calc(100%-18px)] flex flex-row items-center justify-between pl-[10px]"},Ve={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},Ce={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},W=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(m,{expose:o,emit:p}){const t=m,n=p;function l(){n("itemClick",t.value)}const y=e.ref(null);return o({el:y}),(c,f)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-sm group hover:bg-gray-100",ref_key:"el",ref:y},[e.createElementVNode("div",he,[e.createElementVNode("div",be,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(c.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":c.highlighted}]),onClick:e.withModifiers(l,["stop","prevent"])},[e.createElementVNode("div",{class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[c.type=="checkbox"?"rounded-[4px]":"rounded-full",c.color?`bg-[${c.color}] border-[#ffffff]`:c.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[c.isSelected?(e.openBlock(),e.createElementBlock("img",ke)):e.createCommentVNode("",!0)],2),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:c.value},null,8,xe),e.createElementVNode("div",we,[e.createElementVNode("span",Ve,e.toDisplayString(c.label??"Відсутні данні"),1),c.count?(e.openBlock(),e.createElementBlock("div",Ce," ("+e.toDisplayString(c.count)+") ",1)):e.createCommentVNode("",!0)])],2)])])],512))}});function q(m,o){const{options:p=[],limit:t=20}=m;function n(g){return Array.isArray(g)?g[0]:g}const l=e.ref(n(m.modelValue)),y=e.ref(""),c=e.ref(!1),f=e.ref([]),b=e.ref("id"),d=e.ref("text"),u=e.ref(!1),s=e.ref(m.layout!=="popover"&&p.length>t);function k(g){const h=g.find(Boolean)??{},S=["id","value","code","key"].find(V=>V in h)??"id",D=["text","label","name","title"].find(V=>V in h)??"text";return{autoValueKey:S,autoLabelKey:D}}if(p.length>0){const g=k(p);b.value=g.autoValueKey,d.value=g.autoLabelKey}const w=e.computed(()=>{const g=f.value;return m.layout==="popover"||u.value?g:g.slice(0,t)});e.watch(()=>m.modelValue,g=>{l.value=n(g)},{immediate:!0}),f.value=[...p].sort((g,h)=>m.sort==="count"?h.count&&g.count?h.count-g.count:0:m.sort==="name"?String(g[d.value]??"").localeCompare(String(h[d.value]??"")):0);function x(g){return l.value===g[b.value]}function i(g){l.value=g[b.value],o("update:modelValue",l.value),o("change",{name:m.name,value:l.value})}function r(){l.value=void 0,o("update:modelValue",l.value),o("clear",m.name)}function a(){u.value=!u.value}return{innerValue:l,searchTerm:y,filteredOptions:w,isSelected:x,selectItem:i,clear:r,toggleShowAll:a,isReqProc:c,showAll:u,isEnableShowAll:s,labelKey:d,valueKey:b,allOptions:f}}const Be={},Ee={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function Ne(m,o){return e.openBlock(),e.createElementBlock("svg",Ee,o[0]||(o[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 Q=K(Be,[["render",Ne]]),_e={},Se={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 De(m,o){return e.openBlock(),e.createElementBlock("svg",Se,o[0]||(o[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const I=K(_e,[["render",De]]),$e={},Fe={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 Ae(m,o){return e.openBlock(),e.createElementBlock("svg",Fe,o[0]||(o[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const H=K($e,[["render",Ae]]),je={key:0,class:"w-full"},Me={class:"flex flex-col items-center justify-center p-5 text-center"},Re={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Te={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Ke=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(m,{expose:o,emit:p}){const t=m,n=e.ref(null),l=p,{innerValue:y,filteredOptions:c,isSelected:f,selectItem:b,clear:d,toggleShowAll:u,isReqProc:s,showAll:k,isEnableShowAll:w,labelKey:x,valueKey:i,allOptions:r}=q({...t,modelValue:t.modelValue??t.default??""},l);return o({clear:d,inputTextRef:n}),e.watch(()=>t.modelValue,a=>{a===void 0&&(y.value=void 0)}),(a,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([a.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([a.layout==="popover"?"flex-1 overflow-y-auto p-2":"",a.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),h=>(e.openBlock(),e.createBlock(W,{layout:a.layout,key:h[e.unref(i)],count:h.count,label:h[e.unref(x)],color:h.color,type:"radio",value:h[e.unref(i)],"is-selected":e.unref(f)(h),onItemClick:S=>e.unref(b)(h)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),a.type==="select"&&e.unref(c).length===0&&!e.unref(s)?(e.openBlock(),e.createElementBlock("div",je,[e.createElementVNode("div",Me,[e.createVNode(Q),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),a.layout!=="popover"&&a.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(k)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:g[0]||(g[0]=(...h)=>e.unref(u)&&e.unref(u)(...h)),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(I)])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:g[1]||(g[1]=(...h)=>e.unref(u)&&e.unref(u)(...h)),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(H)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),a.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[a.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Re,[e.createTextVNode(e.toDisplayString(e.unref(y)||e.unref(y)===null?1:0)+" з "+e.toDisplayString(e.unref(r).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[2]||(g[2]=(...h)=>e.unref(d)&&e.unref(d)(...h))}," Очистити ",512),[[e.vShow,e.unref(y)!==""&&e.unref(y)!==void 0]])])):e.createCommentVNode("",!0),a.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Te,[e.createElementVNode("span",null,e.toDisplayString(e.unref(y)||e.unref(y)===null?1:0)+" з "+e.toDisplayString(e.unref(r).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[3]||(g[3]=(...h)=>e.unref(d)&&e.unref(d)(...h))}," Очистити ",512),[[e.vShow,e.unref(y)!==""&&e.unref(y)!==void 0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function v(m,o){const{options:p=[],limit:t=20}=m;function n(g){return Array.isArray(g)?g:g?[g]:[]}const l=e.ref(n(m.modelValue)),y=e.ref(""),c=e.ref(!1),f=e.ref([]),b=e.ref("id"),d=e.ref("text"),u=e.ref(!1),s=e.ref(m.layout!=="popover"&&p.length>t);function k(g){const h=g.find(Boolean)??{},S=["id","value","code","key"].find(V=>V in h)??"id",D=["text","label","name","title"].find(V=>V in h)??"text";return{autoValueKey:S,autoLabelKey:D}}if(p.length>0){const g=k(p);b.value=g.autoValueKey,d.value=g.autoLabelKey}const w=e.computed(()=>{const g=f.value;return m.layout==="popover"||u.value?g:g.slice(0,t)});e.watch(()=>m.modelValue,g=>{l.value=n(g)},{immediate:!0}),f.value=[...p].sort((g,h)=>m.sort==="count"?h.count&&g.count?h.count-g.count:0:m.sort==="name"?String(g[d.value]).localeCompare(String(h[d.value])):0);function x(g){return l.value&&l.value.includes(g[b.value])}function i(g){const h=l.value.includes(g[b.value]);l.value=h?l.value.filter(S=>S!==g[b.value]):[...l.value,g[b.value]],o("update:modelValue",l.value),o("change",{name:m.name,value:l.value})}function r(){l.value=[],o("update:modelValue",l.value),o("clear",m.name)}function a(){u.value=!u.value}return{innerValue:l,searchTerm:y,filteredOptions:w,isSelected:x,selectItem:i,clear:r,toggleShowAll:a,isReqProc:c,showAll:u,isEnableShowAll:s,labelKey:d,valueKey:b,allOptions:f}}const ee={en:{apply:"Apply",search:"Search",more:"Show more",less:"Show less",selected:"selected",clear:"Clear",notfound:"Nothing found",period:"Period",today:"Today",week:"Week",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:"Тиждень",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період",selectFieldHelp:"Оберіть поле, щоб розпочати створення фільтра."}};function te(m){const o=m.split(".")[1],p=typeof window<"u"&&window.localStorage?localStorage.locale:null;return(ee[p||navigator.language]||ee.uk)[o]}function z(){const m=e.getCurrentInstance();if(!m.appContext.config.globalProperties.$i18n)return te;const o=m.appContext.config.globalProperties.$t;return p=>{const t=o(p);return t===p?te(p):t}}const Le={key:0,class:"w-full"},ze={class:"flex flex-col items-center justify-center p-5 text-center"},Oe={class:"max-w-sm mx-auto mt-6"},Ue={class:"font-medium text-gray-800 dark:text-neutral-200"},Ie={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Pe={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},le=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(m,{expose:o,emit:p}){const t=z(),n=m,l=p,{innerValue:y,filteredOptions:c,isSelected:f,selectItem:b,clear:d,toggleShowAll:u,isReqProc:s,showAll:k,isEnableShowAll:w,labelKey:x,valueKey:i,allOptions:r}=v({...n,modelValue:n.modelValue},l);return e.watch(()=>n.modelValue,a=>{a===void 0&&(y.value=[])}),o({clear:d}),(a,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([a.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([a.layout==="popover"?"flex-1 overflow-y-auto p-2":"",a.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),h=>(e.openBlock(),e.createBlock(W,{layout:a.layout,count:h.count,label:h[e.unref(x)],color:h.color,type:"checkbox",value:h[e.unref(i)],"is-selected":e.unref(f)(h),onItemClick:S=>e.unref(b)(h)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),a.type==="select"&&e.unref(c).length===0&&!e.unref(s)?(e.openBlock(),e.createElementBlock("div",Le,[e.createElementVNode("div",ze,[e.createVNode(Q),e.createElementVNode("div",Oe,[e.createElementVNode("p",Ue,e.toDisplayString(e.unref(t)("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),a.layout!=="popover"&&a.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(k)&&e.unref(w)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:g[0]||(g[0]=(...h)=>e.unref(u)&&e.unref(u)(...h)),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(t)("filter.more"))+" ",1),e.createVNode(I)])):e.createCommentVNode("",!0),e.unref(k)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:g[1]||(g[1]=(...h)=>e.unref(u)&&e.unref(u)(...h)),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(t)("filter.less"))+" ",1),e.createVNode(H)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),a.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[a.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Ie,[e.createTextVNode(e.toDisplayString(e.unref(y).length)+" / "+e.toDisplayString(e.unref(r).length)+" "+e.toDisplayString(e.unref(t)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[2]||(g[2]=(...h)=>e.unref(d)&&e.unref(d)(...h))},e.toDisplayString(e.unref(t)("filter.clear")),513),[[e.vShow,e.unref(y).length!==0]])])):e.createCommentVNode("",!0),a.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Pe,[e.createElementVNode("span",null,e.toDisplayString(e.unref(y).length)+" / "+e.toDisplayString(e.unref(r).length)+" "+e.toDisplayString(e.unref(t)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:g[3]||(g[3]=(...h)=>e.unref(d)&&e.unref(d)(...h))},e.toDisplayString(e.unref(t)("filter.clear")),513),[[e.vShow,e.unref(y).length!==0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Ye={},We={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 qe(m,o){return e.openBlock(),e.createElementBlock("svg",We,o[0]||(o[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 oe=K(Ye,[["render",qe]]),Qe={},He={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 Ge(m,o){return e.openBlock(),e.createElementBlock("svg",He,o[0]||(o[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 G=K(Qe,[["render",Ge]]);class ne{static getWidthClass(o){return typeof o=="number"?`max-w-[${o}px] min-w-[${o}px]`:typeof o=="string"?o.endsWith("%")||o.endsWith("px")?`max-w-[${o}]`:`max-w-${o}`:"w-full"}}const Xe={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},Je=["placeholder"],Ze=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(m,{emit:o}){const p=m,t=e.ref((p.placeholder||p.label||p.title||p.name||"search").toString()),n=o,l=e.ref(p.modelValue?.toString()??"");e.watch(()=>p.modelValue,b=>{b!==l.value&&(l.value=b?.toString()??"")});let y=null;function c(){if(l.value=l.value.trimStart(),l.value.length===0){f();return}y&&clearTimeout(y),y=setTimeout(()=>{n("update:modelValue",l.value),n("change",{name:p.name,value:l.value})},300)}function f(){l.value="",n("update:modelValue",""),n("clear",p.name)}return(b,d)=>(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",b.layout==="inline"?e.unref(ne).getWidthClass(b.width):"mb-2"+(b.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Xe,[e.createVNode(oe)]),l.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:f,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(G)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":d[0]||(d[0]=u=>l.value=u),onInput:c,placeholder:t.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,Je),[[e.vModelText,l.value]])],2))}});function re(m={color:"blue"}){return e.computed(()=>{const p=`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-${m.color}-500 focus:border-transparent
|
|
2
|
+
text-gray-800 bg-white dark:text-neutral-300 dark:bg-neutral-800 dark:border-neutral-600`;return m?.size==="sm"?`${p}h-[32px]`:`${p}h-[38px]`})}function ve(){return"rounded-md font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 px-4 py-2 w-full bg-transparent border text-black text-sm h-[38px]"}function et(){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 ae(m){return m==="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":m==="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 tt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},lt=["placeholder","disabled"],ot={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},nt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},rt=["placeholder","disabled"],at=["disabled"],no={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},ro={key:1,class:"flex justify-end items-center text-xs text-gray-500 p-1 border-t"},st=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(m,{expose:o,emit:p}){const t=re(),n=ve(),l=z(),y=m,c=e.ref(y.modelValue??y.default??[]),f=p,b=e.computed({get:()=>y.modelValue??c.value,set:s=>{y.modelValue!==void 0?f("update:modelValue",s):c.value=s}});function d(){f("change",{name:y.name,value:b.value||c.value})}function u(){c.value=[],b.value=c.value,f("clear",y.name)}return e.watch(()=>y.modelValue,s=>{s!==void 0&&y.layout!=="popover"?(c.value=s,f("update:modelValue",s)):c.value=[]}),o({clear:u,currentValue:b}),(s,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(s.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[s.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",tt,e.toDisplayString(e.unref(l)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(t)),placeholder:s.placeholder?.[0]??"min",step:"1",style:{outline:"none"},"onUpdate:modelValue":k[0]||(k[0]=w=>b.value[0]=w),disabled:s.disabled},null,10,lt),[[e.vModelText,b.value[0]]])]),s.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",ot," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[s.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",nt,e.toDisplayString(e.unref(l)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(t)),placeholder:s.placeholder?.[1]??"max",min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":k[1]||(k[1]=w=>b.value[1]=w),disabled:s.disabled},null,10,rt),[[e.vModelText,b.value[1]]])]),["popover","inline","vertical"].includes(s.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:d,class:e.normalizeClass(e.unref(n)+(s.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(s.layout==="vertical"?"Ok":e.unref(l)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(s.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(b.value[0]||b.value[1]),onClick:u,class:e.normalizeClass(e.unref(n)+" hover:bg-gray-100")},e.toDisplayString(e.unref(l)("filter.clear")),11,at)):e.createCommentVNode("",!0)],2)]),(s.cleanable&&c.value.length,e.createCommentVNode("",!0))],64))}});class R{static format(o){const p=o.getFullYear(),t=(o.getMonth()+1).toString().padStart(2,"0"),n=o.getDate().toString().padStart(2,"0");return`${p}-${t}-${n}`}static getShiftedDay(o,p=0){const t=o?new Date(o):new Date;return t.setDate(t.getDate()+p),this.format(t)}static getLastWeekRange(o,p,t=0){if(o&&p){const b=new Date(o),d=new Date(p);return b.setDate(b.getDate()+t*7),d.setDate(d.getDate()+t*7),[this.format(b),this.format(d)]}const n=new Date,l=n.getDay(),y=l===0?13:l-1+7,c=new Date(n);c.setDate(n.getDate()-y+t*7);const f=new Date(c);return f.setDate(c.getDate()+6),[this.format(c),this.format(f)]}static getMonthRange(o,p,t=0){let n;o?n=new Date(o):n=new Date,n=new Date(n.getFullYear(),n.getMonth()+t,1);const l=n,y=new Date(n.getFullYear(),n.getMonth()+1,0);return[this.format(l),this.format(y)]}static getQuarterRange(o,p,t=0){const n=o||p,l=n?new Date(n):new Date;let y=Math.floor(l.getMonth()/3);y+=t;const c=(y%4+4)%4*3,f=l.getFullYear()+Math.floor(y/4),b=new Date(f,c,1),d=new Date(f,c+3,0);return[this.format(b),this.format(d)]}static getYear(o,p=0){let t;return o&&/^\d{4}$/.test(o)?t=parseInt(o,10):o?t=new Date(o).getFullYear():t=new Date().getFullYear(),String(t+p)}static getYearRange(o,p=0){let t;return o&&/^\d{4}$/.test(o)?t=parseInt(o,10):o?t=new Date(o).getFullYear():t=new Date().getFullYear(),[this.format(new Date(t+p,0,1)),this.format(new Date(t+p+1,0,0))]}static getRangeFromDaysBefore(o){const p=new Date,t=new Date(p.getTime());return t.setDate(p.getDate()-o),[this.format(t),this.format(p)]}}function se(m,o){const{popoverRef:p}=m,t=z(),n=e.ref(""),l=e.ref(m.modelValue??m.default??[]),y=e.ref(0);function c(){const r=R.getRangeFromDaysBefore(y.value);return l.value=[...r],o("change",{name:m.name,value:l.value}),o("update:modelValue",l.value),r}function f(r){n.value=r,p.value?.close();const a=[];switch(n.value){case"today":a.push(R.getShiftedDay()),a.push(R.getShiftedDay());break;case"week":a.push(...R.getLastWeekRange());break;case"month":a.push(...R.getMonthRange());break;case"quarter":a.push(...R.getQuarterRange());break;case"year":a.push(...R.getYearRange());break;case"last_7_days":y.value=7,c();break;case"range":y.value=7,a.push(...c());break}l.value=[...a],o("change",{name:m.name,value:l.value}),o("update:modelValue",l.value)}function b(){const r=[];switch(n.value){case"today":r.push(R.getShiftedDay(l.value[0],1));break;case"week":r.push(...R.getLastWeekRange(l.value[0],l.value[1],1));break;case"month":r.push(...R.getMonthRange(l.value[0],l.value[1],1));break;case"quarter":r.push(...R.getQuarterRange(l.value[0],l.value[1],1));break;case"year":r.push(...R.getYearRange(l.value[0],1));break}l.value=[...r],o("change",{name:m.name,value:l.value}),o("update:modelValue",l.value)}function d(){const r=[];switch(n.value){case"today":r.push(R.getShiftedDay(l.value[0],-1));break;case"week":r.push(...R.getLastWeekRange(l.value[0],l.value[1],-1));break;case"month":r.push(...R.getMonthRange(l.value[0],l.value[1],-1));break;case"quarter":r.push(...R.getQuarterRange(l.value[0],l.value[1],-1));break;case"year":r.push(...R.getYearRange(l.value[0],-1));break}l.value=[...r],o("change",{name:m.name,value:l.value}),o("update:modelValue",l.value)}const u=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function s(r){const[a,g,h]=r.split("-");return`${h}.${g}.${a}`}function k(r,a="long"){const g=new Date(Date.UTC(2e3,r-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:a,timeZone:"UTC"}).format(g)}function w(r){const{value:a}=l;switch(r){case"today":return s(a[0]);case"range":return"Період";case"week":return a[0]&&a[1]?`${s(a[0])} – ${s(a[1])}`:"";case"quarter":if(a[0]){const g=new Date(a[0]),h=g.getFullYear(),S=g.getMonth();return`${Math.floor(S/3)+1} ${t("filter.quarter")} ${h}`}return"";case"month":if(a[0]){const[g,h]=a[0].split("-");return`${k(parseInt(h,10))} ${g}`}return"";case"year":return a[0]||"";case"last_7_days":return"За останні дні";default:return m.label??""}}const x=e.computed(()=>n.value?w(n.value):m.label??"");function i(){n.value="",l.value=[],o("update:modelValue",[]),o("clear",m.name)}return{activeMode:n,innerValue:l,daysBefore:y,onDaysBeforeChange:c,onSelectChange:f,nextClick:b,prevClick:d,ukMonths:u,formatDisplayDate:s,getModeLabel:w,currentLabel:x,clear:i}}const it={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},ct={key:0,class:"flex gap-1 !w-[75%] rounded-sm"},dt=["max","disabled"],ft=["min","disabled"],mt={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},ut=["max","disabled"],pt={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"},gt=["min","disabled"],ht={class:"flex gap-1 pt-2"},bt=["onClick"],ao={key:0,class:"flex justify-end items-center text-xs text-gray-500 p-1 border-t"},kt=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(m,{expose:o,emit:p}){const t=m,n=re(),l=et(),y=z(),c=p,f=e.ref(null),{activeMode:b,innerValue:d,onSelectChange:u,nextClick:s,prevClick:k,clear:w}=se({...t,popoverRef:f},c);return e.watch(()=>t.modelValue,x=>{x!==void 0?(d.value=x,c("update:modelValue",x)):(b.value="",d.value=[])}),o({clear:w,popoverRef:f}),(x,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[x.layout==="inline"?(e.openBlock(),e.createElementBlock("div",it,[e.unref(b)!==""&&e.unref(b)==="range"?(e.openBlock(),e.createElementBlock("div",ct,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(d)[1],locale:"uk-UA","onUpdate:modelValue":i[0]||(i[0]=r=>e.unref(d)[0]=r),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:x.disabled},null,8,dt),[[e.vModelText,e.unref(d)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(d)[0],locale:"uk-UA","onUpdate:modelValue":i[1]||(i[1]=r=>e.unref(d)[1]=r),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:x.disabled},null,8,ft),[[e.vModelText,e.unref(d)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(x.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(x.layout!=="popover"?"w-[48%]":"")},[x.layout==="popover"?(e.openBlock(),e.createElementBlock("label",mt,e.toDisplayString(e.unref(y)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(d)[1],locale:"uk-UA","onUpdate:modelValue":i[2]||(i[2]=r=>e.unref(d)[0]=r),class:e.normalizeClass(e.unref(n)),disabled:x.disabled},null,10,ut),[[e.vModelText,e.unref(d)[0]]])],2),x.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",pt," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(x.layout!=="popover"?"w-[48%]":"")},[x.layout==="popover"?(e.openBlock(),e.createElementBlock("label",yt,e.toDisplayString(e.unref(y)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(d)[0],locale:"uk-UA","onUpdate:modelValue":i[3]||(i[3]=r=>e.unref(d)[1]=r),class:e.normalizeClass(e.unref(n)),disabled:x.disabled},null,10,gt),[[e.vModelText,e.unref(d)[1]]])],2)],2),e.createElementVNode("div",ht,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["today","week","month","quarter","year"],r=>e.createElementVNode("button",{key:r,class:e.normalizeClass(e.unref(l)+(e.unref(b)===r?" bg-blue-100":"")),onClick:a=>e.unref(u)(r)},e.toDisplayString(e.unref(y)("filter."+r)),11,bt)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(l)),onClick:i[4]||(i[4]=(...r)=>e.unref(k)&&e.unref(k)(...r))}," <",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(l)),onClick:i[5]||(i[5]=(...r)=>e.unref(s)&&e.unref(s)(...r))}," >",2)]),(x.cleanable,e.createCommentVNode("",!0))],64))}});function xt(m,o){const{api:p,options:t=[],limit:n=20,dataKey:l="data"}=m,y=m.multi;function c(B){return y?Array.isArray(B)?B:B?[B]:[]:Array.isArray(B)?B[0]:B}const f=e.ref(c(m.modelValue)),b=e.ref(""),d=e.ref(!1),u=e.ref(t),s=e.ref("id"),k=e.ref("text"),w=e.ref(!1),x=e.ref(m.layout!=="popover"&&t.length>n),i=e.ref([]),r=e.ref(0);function a(B){const $=B.find(Boolean)??{},j=["id","value","code","key"].find(U=>U in $)??"id",M=["text","label","name","title"].find(U=>U in $)??"text";return{autoValueKey:j,autoLabelKey:M}}if(t.length>0){const B=a(t);s.value=B.autoValueKey,k.value=B.autoLabelKey}const g=e.computed(()=>{if(p)return u.value;const B=u.value;if(m.layout==="popover")return B;if(!b.value)return w.value?B:B.slice(0,n);const $=b.value.toLowerCase();return B.filter(j=>j[k.value].toLowerCase().includes($))});let h=null;async function S(B){if(p){d.value=!0;try{const $=new URL(p,window.location.origin);$.searchParams.set("json","1"),$.searchParams.set("key",B),$.searchParams.set("limit",n.toString());const j=await fetch($.toString());if(!j.ok){Z.notify({type:"error",title:"Error",message:"Failed to fetch remote options"}),u.value=[];return}const M=await j.json();if(!M[l]){Z.notify({type:"error",title:"Error",message:M}),u.value=[];return}if(u.value=M[l],u.value.length>0){const U=a(u.value);s.value=U.autoValueKey,k.value=U.autoLabelKey}r.value=M.total}catch($){console.error("Failed to fetch remote options:",$)}finally{d.value=!1}}}e.watch(b,B=>{p&&(h&&clearTimeout(h),h=setTimeout(()=>{S(B)},200))}),e.watch(()=>m.modelValue,B=>{f.value=c(B)},{immediate:!0});function D(B){return y&&Array.isArray(f.value)?f.value.includes(B[s.value]):f.value&&f.value===B[s.value]}function V(B){if(y&&!Array.isArray(f.value)&&(f.value=[]),y&&Array.isArray(f.value)){const $=f.value.includes(B[s.value]);f.value=$?f.value.filter(j=>j!==B[s.value]):[...f.value,B[s.value]],i.value=$?i.value.filter(j=>j!==B[k.value]):[...i.value,B[k.value]]}else f.value=B[s.value],i.value=B[k.value];o("update:modelValue",f.value),o("change",{name:m.name,value:f.value})}function C(){y?(f.value=[],i.value=[]):(f.value=void 0,i.value=[]),o("update:modelValue",f.value),o("clear",m.name)}function _(){h&&clearTimeout(h),b.value="",w.value=!1}function E(){w.value=!w.value}e.onBeforeUnmount(()=>{h&&clearTimeout(h)});const N=e.ref(-1);e.watch(g,()=>{N.value=g.value.length>0?0:-1});function A(B){const $=g.value.length;if(B.key==="ArrowDown")B.preventDefault(),N.value=(N.value+1)%$;else if(B.key==="ArrowUp")B.preventDefault(),N.value=(N.value-1+$)%$;else if(B.key==="Enter"&&(B.preventDefault(),N.value>=0&&N.value<g.value.length)){const j=g.value[N.value];V(j)}}function F(){p&&u.value.length===0&&b.value.length===0&&S(b.value)}return{innerValue:f,searchTerm:b,filteredOptions:g,isSelected:D,selectItem:V,clear:C,resetSearch:_,toggleShowAll:E,isReqProc:d,showAll:w,isEnableShowAll:x,labelKey:k,valueKey:s,allOptions:u,highlightedIndex:N,onKeyDown:A,selectedLabels:i,totalCount:r,loadData:F}}const wt={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},Vt=["placeholder"],Ct={key:0,class:"w-full"},Bt={class:"flex flex-col items-center justify-center p-5 text-center"},Et={class:"max-w-sm mx-auto mt-6"},Nt={class:"font-medium text-gray-800 dark:text-neutral-200"},_t={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},St={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Dt=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(m,{expose:o,emit:p}){const t=z(),n=m,l=p,y=e.ref(null),{innerValue:c,filteredOptions:f,isSelected:b,selectItem:d,clear:u,resetSearch:s,toggleShowAll:k,isReqProc:w,showAll:x,isEnableShowAll:i,searchTerm:r,labelKey:a,valueKey:g,highlightedIndex:h,onKeyDown:S,selectedLabels:D,totalCount:V,loadData:C}=xt({...n,modelValue:n.modelValue},l);e.onMounted(()=>{s(),n.layout!=="inline"&&(C(),y.value&&n.layout==="popover"&&y.value.focus())}),e.watch(()=>n.modelValue,E=>{E===void 0&&(n.multi?c.value=[]:c.value=void 0)});const _=e.ref([]);return e.watch(h,E=>{E>=0&&_.value[E]&&_.value[E]?.scrollIntoView({block:"nearest",behavior:"smooth"})}),e.watch(f,()=>{_.value=[]}),o({clear:u,inputTextRef:y,selectedLabels:D,loadData:C}),(E,N)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([E.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",wt,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":N[0]||(N[0]=A=>e.isRef(r)?r.value=A:null),onKeydown:N[1]||(N[1]=(...A)=>e.unref(S)&&e.unref(S)(...A)),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(t)("filter.search"),type:"text",ref_key:"inputTextRef",ref:y},null,40,Vt),[[e.vModelText,e.unref(r)]]),e.createVNode(oe,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(r)!=""?(e.openBlock(),e.createBlock(G,{key:0,onClick:N[2]||(N[2]=A=>r.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([E.layout==="popover"?"flex-1 overflow-y-auto p-2":"",E.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(f),(A,F)=>(e.openBlock(),e.createBlock(W,{layout:E.layout,count:A.count,label:A[e.unref(a)],color:A.color,type:E.multi?"checkbox":"radio",value:A[e.unref(g)],"is-selected":e.unref(b)(A),highlighted:F===e.unref(h),onItemClick:B=>e.unref(d)(A),ref_for:!0,ref:B=>_.value[F]=B?.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),E.type==="select"&&e.unref(f).length===0&&!e.unref(w)?(e.openBlock(),e.createElementBlock("div",Ct,[e.createElementVNode("div",Bt,[e.createVNode(Q),e.createElementVNode("div",Et,[e.createElementVNode("p",Nt,e.toDisplayString(e.unref(t)("filter.notfound")),1),N[7]||(N[7]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),E.layout!=="popover"&&E.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(x)&&e.unref(i)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:N[3]||(N[3]=(...A)=>e.unref(k)&&e.unref(k)(...A)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(t)("filter.more"))+" ",1),e.createVNode(I)])):e.createCommentVNode("",!0),e.unref(x)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:N[4]||(N[4]=(...A)=>e.unref(k)&&e.unref(k)(...A)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(t)("filter.less"))+" ",1),e.createVNode(H)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),E.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[E.layout==="inline"?(e.openBlock(),e.createElementBlock("div",_t,[e.createTextVNode(e.toDisplayString(E.multi&&Array.isArray(e.unref(c))?e.unref(c)?.length:e.unref(c)!==void 0&&(e.unref(c)||e.unref(c)===null)?1:0)+" / "+e.toDisplayString(e.unref(V))+" "+e.toDisplayString(e.unref(t)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:N[5]||(N[5]=(...A)=>e.unref(u)&&e.unref(u)(...A))},e.toDisplayString(e.unref(t)("filter.clear")),513),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0||e.unref(c)]])])):e.createCommentVNode("",!0),E.layout==="popover"?(e.openBlock(),e.createElementBlock("div",St,[e.createElementVNode("span",null,e.toDisplayString(E.multi&&Array.isArray(e.unref(c))?e.unref(c)?.length:e.unref(c)!==void 0&&(e.unref(c)||e.unref(c)===null)?1:0)+" / "+e.toDisplayString(e.unref(V))+" "+e.toDisplayString(e.unref(t)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:N[6]||(N[6]=(...A)=>e.unref(u)&&e.unref(u)(...A))},e.toDisplayString(e.unref(t)("filter.clear")),513),[[e.vShow,e.unref(c)!==""&&e.unref(c)!==void 0||e.unref(c)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),$t=["for","onClick"],Ft=["id","name","value"],At={class:"block"},jt={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Mt={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Rt=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(m,{expose:o,emit:p}){const t=m,n=p,{innerValue:l,isSelected:y,selectItem:c,clear:f,labelKey:b,valueKey:d,allOptions:u}=t.multi?v({...t,modelValue:t.modelValue??t.default??[]},n):q({...t,modelValue:t.modelValue!==void 0?t.modelValue:t.default??""},n);return o({clear:f}),e.watch(()=>t.modelValue,s=>{s===void 0&&(t.multi?l.value=[]:l.value=void 0)}),(s,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",s.layout==="popover"?"m-1":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),w=>(e.openBlock(),e.createElementBlock("label",{key:`item-${w[e.unref(d)]}`,for:`item-${w[e.unref(d)]}`,onClick:e.withModifiers(x=>e.unref(c)(w),["stop","prevent"]),class:e.normalizeClass([e.unref(y)(w)?"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-${w[e.unref(d)]}`,class:"hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",name:`item-${w[e.unref(d)]}`,value:w[e.unref(d)]},null,8,Ft),e.createElementVNode("span",At,e.toDisplayString(w[e.unref(b)]),1)],10,$t))),128))],2),s.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.layout==="inline"?(e.openBlock(),e.createElementBlock("div",jt,[e.createTextVNode(e.toDisplayString(s.multi&&Array.isArray(e.unref(l))?e.unref(l)?.length:e.unref(l)!==void 0&&(e.unref(l)||e.unref(l)===null)?1:0)+" з "+e.toDisplayString(e.unref(u).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:k[0]||(k[0]=(...w)=>e.unref(f)&&e.unref(f)(...w))}," Очистити ",512),[[e.vShow,e.unref(l)!==""&&e.unref(l)!==void 0||e.unref(l)]])])):e.createCommentVNode("",!0),s.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Mt,[e.createElementVNode("span",null,e.toDisplayString(s.multi&&Array.isArray(e.unref(l))?e.unref(l)?.length:e.unref(l)!==void 0&&(e.unref(l)||e.unref(l)===null)?1:0)+" з "+e.toDisplayString(e.unref(u).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:k[1]||(k[1]=(...w)=>e.unref(f)&&e.unref(f)(...w))}," Очистити ",512),[[e.vShow,e.unref(l)!==void 0&&e.unref(l)!==""||e.unref(l)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))}}),Tt=["disabled","title"],Kt={class:"flex w-full items-center justify-between gap-1 overflow-hidden text-left"},Lt={class:"truncate text-ellipsis text-sm"},zt={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"},Ot={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"},Ut={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"},X=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},en:{},ua:{},uk:{},fr:{},de:{},es:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(m,{expose:o}){const p=m,t=e.computed(()=>ae(p.mode)),n=e.ref(!1),l=e.ref({top:0,left:0}),y=e.ref(null),c=e.ref(null),f=e.ref(null);function b(){const h=c.value,S=f.value;if(!h||!S)return;const D=h.getBoundingClientRect(),V=S.offsetWidth,C=window.innerWidth,_=D.bottom+8;let{left:E}=D;E+V>C&&(E=Math.max(C-V-10,10)),l.value={top:_,left:E}}function d(){n.value=!n.value,n.value&&e.nextTick(()=>{b(),p.fieldRef?.inputTextRef&&p.fieldRef?.inputTextRef?.focus?.(),p.fieldRef?.loadData&&p.fieldRef?.loadData?.()})}function u(h){!y.value?.contains(h.target)&&!f.value?.contains(h.target)&&!c.value?.contains(h.target)&&(n.value=!1)}function s(h){h.key==="Escape"&&(n.value=!1)}const k=e.ref(!1),w=e.ref("ua"),x=h=>{h.detail.key==="locale"&&(w.value=h.detail.newValue)};e.onMounted(()=>{k.value=!0,w.value=localStorage.locale,window.addEventListener("storage",x),document.addEventListener("click",u,!0),document.addEventListener("keydown",s),window.addEventListener("scroll",b,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",x),document.removeEventListener("click",u,!0),document.removeEventListener("keydown",s),window.removeEventListener("scroll",b,!0)});function i(){n.value=!1}o({close:i});function r(h){return Array.isArray(h)?h.filter(S=>S!=null&&S!=="").length:h&&typeof h=="object"?Object.values(h).filter(S=>S!=null&&S!=="").length:typeof h=="string"?h.trim()===""?0:1:typeof h=="number"?Number.isNaN(h)?0:1:h===null||h!==void 0?1:0}const a=e.computed(()=>{const h=p.fieldRef?.selectedLabels,S=r(h);return S>0?S:r(p.currentValue)}),g=e.computed(()=>{const h=p.fieldRef?.selectedLabels;return!h||["inline"].includes(p.layout||"")?p[w.value]||(p.label??""):Array.isArray(h)?h.length>0?h.join(", "):p.label??"":String(h)});return(h,S)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{onClick:d,disabled:h.disabled,ref_key:"triggerRef",ref:c,title:h.label,class:e.normalizeClass([t.value,h.width?e.unref(ne).getWidthClass(h.width):"w-full",h.layout==="inline"&&a.value>0?"border border-blue-400 bg-blue-50 text-blue-600":""]),type:"button"},[e.createElementVNode("span",Kt,[e.createElementVNode("span",Lt,e.toDisplayString(g.value),1),h.layout==="inline"&&a.value>0?(e.openBlock(),e.createElementBlock("span",zt,e.toDisplayString(a.value),1)):e.createCommentVNode("",!0)]),e.createVNode(I,{class:"h-4 w-4 text-neutral-500"})],10,Tt),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:`${l.value.top}px`,left:`${l.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",Ot,[e.createElementVNode("div",Ut,[e.renderSlot(h.$slots,"default")])])],4),[[e.vShow,n.value]])])):e.createCommentVNode("",!0)]))}}),It={},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 Yt(m,o){return e.openBlock(),e.createElementBlock("svg",Pt,o[0]||(o[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)]))}const O=K(It,[["render",Yt]]),Wt={},qt={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 Qt(m,o){return e.openBlock(),e.createElementBlock("svg",qt,o[0]||(o[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const Ht=K(Wt,[["render",Qt]]),Gt={},Xt={xmlns:"http://www.w3.org/2000/svg",width:"15px",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[270deg]"};function Jt(m,o){return e.openBlock(),e.createElementBlock("svg",Xt,o[0]||(o[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const Zt=K(Gt,[["render",Jt]]),vt={class:"flex gap-1"},el={class:"mb-1"},tl={class:"mb-1"},ll={class:"inline-flex rounded-sm shrink-0 pl-1"},ol=["title"],nl={class:"inline-flex rounded-sm shrink-0 pl-1"},rl=["title"],al={key:1,class:"flex gap-1 !w-[75%] rounded-sm"},sl=["max","disabled"],il=["min","disabled"],so={key:0,class:"flex justify-end items-center text-xs text-gray-500 p-1 border-t"},cl=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(m,{expose:o,emit:p}){const t=z(),n=m,l=p,y=e.ref(null),{activeMode:c,innerValue:f,onSelectChange:b,nextClick:d,prevClick:u,currentLabel:s,clear:k}=se({...n,popoverRef:y},l);return e.watch(()=>n.modelValue,w=>{w!==void 0?(f.value=w,l("update:modelValue",w)):(c.value="",f.value=[])}),o({clear:k,popoverRef:y}),(w,x)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",vt,[e.createVNode(X,{ref_key:"popoverRef",ref:y,label:e.unref(s),"current-value":e.unref(f),mode:w.mode,width:typeof w.width=="number"&&e.unref(f).length?w.width-70:w.width,onClear:e.unref(k),layout:w.layout,class:e.normalizeClass(w.itemClass)},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:x[0]||(x[0]=i=>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(t)("filter.period"))+" ",1),e.unref(c)==="range"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),x[12]||(x[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:x[1]||(x[1]=i=>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(t)("filter.today"))+" ",1),e.unref(c)==="today"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:x[2]||(x[2]=i=>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(t)("filter.week"))+" ",1),e.unref(c)==="week"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:x[3]||(x[3]=i=>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(t)("filter.month"))+" ",1),e.unref(c)==="month"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:x[4]||(x[4]=i=>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(t)("filter.quarter"))+" ",1),e.unref(c)==="quarter"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",el,[e.createElementVNode("button",{type:"button",onClick:x[5]||(x[5]=i=>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(t)("filter.year"))+" ",1),e.unref(c)==="year"?(e.openBlock(),e.createBlock(O,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",tl,[e.createElementVNode("button",{type:"button",onClick:x[6]||(x[6]=i=>e.unref(k)()),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(t)("filter.alltime"))+" ",1),e.unref(f)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(O,{key:0}))])])]),_:1,__:[12]},8,["label","current-value","mode","width","onClear","layout","class"]),e.unref(c)!==""&&e.unref(c)!=="range"&&e.unref(c)!=="last_7_days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",ll,[e.createElementVNode("button",{type:"button",title:e.unref(t)("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:x[7]||(x[7]=(...i)=>e.unref(u)&&e.unref(u)(...i))},[e.createVNode(Ht)],8,ol)]),e.createElementVNode("div",nl,[e.createElementVNode("button",{type:"button",title:e.unref(t)("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:x[8]||(x[8]=(...i)=>e.unref(d)&&e.unref(d)(...i))},[e.createVNode(Zt)],8,rl)])],64)):e.createCommentVNode("",!0),e.unref(c)!==""&&e.unref(c)==="range"?(e.openBlock(),e.createElementBlock("div",al,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(f)[1],locale:"uk-UA","onUpdate:modelValue":x[9]||(x[9]=i=>e.unref(f)[0]=i),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",disabled:w.disabled},null,8,sl),[[e.vModelText,e.unref(f)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(f)[0],locale:"uk-UA","onUpdate:modelValue":x[10]||(x[10]=i=>e.unref(f)[1]=i),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",disabled:w.disabled},null,8,il),[[e.vModelText,e.unref(f)[1]]])])):e.createCommentVNode("",!0)]),(w.cleanable,e.createCommentVNode("",!0))],64))}}),dl={class:"flex flex-wrap items-center gap-2"},fl=["disabled","onClick"],ml={key:0,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},ie={radio:Ke,checkbox:le,check:le,text:Ze,range:st,date:kt,select:Dt,tag:Rt,button: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(m,{expose:o,emit:p}){const t=m,n=p,{innerValue:l,isSelected:y,selectItem:c,clear:f,labelKey:b,valueKey:d,allOptions:u}=q({...t,modelValue:t.modelValue??t.default??""},n),s=e.computed(()=>l.value!==void 0&&!(typeof l.value=="string"&&l.value==="")),k=e.computed(()=>s.value?1:0);function w(i){return y(i)?["bg-blue-600 text-white"].filter(r=>typeof r=="string"&&r.trim().length>0).join(" "):["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter(r=>typeof r=="string"&&r.trim().length>0).join(" ")}function x(i){t.disabled||c(i)}return o({clear:f}),e.watch(()=>t.modelValue,i=>{i===void 0&&(l.value=void 0)}),(i,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",dl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(u),a=>(e.openBlock(),e.createElementBlock("button",{key:a[e.unref(d)],type:"button",class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded-md transition-colors",w(a)]),disabled:i.disabled,onClick:g=>x(a)},e.toDisplayString(a[e.unref(b)]),11,fl))),128))]),i.cleanable&&i.layout==="popover"?(e.openBlock(),e.createElementBlock("div",ml,[e.createElementVNode("span",null,e.toDisplayString(k.value)+" з "+e.toDisplayString(e.unref(u).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:r[0]||(r[0]=(...a)=>e.unref(f)&&e.unref(f)(...a))}," Очистити ",512),[[e.vShow,s.value]])])):e.createCommentVNode("",!0)],64))}}),"date:inline":cl};function J(m,o){let p;switch(m.toLowerCase()){case"autocomplete":p="select";break;case"check":p="checkbox";break;default:p=m?.toString().toLowerCase()}return p==="date"&&o&&o==="inline"&&(p="date:inline"),{component:ie[p]||ie.text,type:p}}const ul={style:{display:"inline-flex",margin:"0px",width:"100%"}},pl={class:"relative w-full mb-2 p-4 bg-white rounded-lg shadow-sm"},yl={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},gl={class:"flex items-center"},hl={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},bl={class:"filter-layout__body"},kl=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(m,{expose:o,emit:p}){const t=m,n=p,l=e.ref(),y=J(t.type,t.layout),c=e.computed({get:()=>t.modelValue,set:u=>n("update:modelValue",u)});function f(u){n("clear",u)}function b(u,s){n("change",{name:u,value:s}),t.modelValue!==void 0&&n("update:modelValue",s)}function d(){n("clear",t.name)}return e.watch(()=>t.default,u=>{c.value=u}),e.watch(()=>t.modelValue,u=>{c.value=u}),o({filterRef:l}),(u,s)=>(e.openBlock(),e.createElementBlock("div",ul,[e.createElementVNode("div",pl,[e.createElementVNode("div",yl,[e.createElementVNode("div",gl,[e.createElementVNode("span",hl,e.toDisplayString(u.label),1)]),typeof c.value=="string"&&c.value.trim()!==""||Array.isArray(c.value)&&c.value.length>0&&c.value.some(k=>k!==void 0)||c.value===null?(e.openBlock(),e.createBlock(ge,{key:0,onClick:d})):e.createCommentVNode("",!0)]),e.createElementVNode("div",bl,[e.unref(y)?.type!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)?.component),e.mergeProps({key:0},t,{type:e.unref(y)?.type,class:t.itemClass,onChange:s[0]||(s[0]=k=>b(k.name,k.value)),onClear:s[1]||(s[1]=k=>f(k)),ref_key:"filterRef",ref:l}),null,16,["type","class"])):(e.openBlock(),e.createBlock(X,{key:1,"current-value":c.value,label:u.label,mode:u.mode,onClear:d,fieldRef:l.value,width:void 0,disabled:u.disabled,layout:"vertical"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)?.component),e.mergeProps({ref_key:"filterRef",ref:l},t,{type:e.unref(y)?.type,class:t.itemClass,onChange:s[2]||(s[2]=k=>b(k.name,k.value)),onClear:s[3]||(s[3]=k=>f(k))}),null,16,["type","class"]))]),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])]))}}),ce=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(m,{expose:o,emit:p}){const t=m,n=p,l=e.ref(),y=J(t.type,t.layout),c=e.computed({get:()=>t.modelValue,set:d=>n("update:modelValue",d)});function f(d=t.name){n("clear",d)}function b(d,u){n("change",{name:d,value:u}),t.modelValue!==void 0&&n("update:modelValue",u)}return e.watch(()=>t.default,d=>{c.value=d}),e.watch(()=>t.modelValue,d=>{c.value=d}),o({filterRef:l}),(d,u)=>["text","date","button"].includes(d.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)?.component),e.mergeProps({key:0},t,{type:e.unref(y)?.type,class:d.itemClass,onChange:u[0]||(u[0]=s=>b(s.name,s.value)),onClear:u[1]||(u[1]=s=>f(s)),disabled:d.disabled,modelValue:c.value,"onUpdate:modelValue":u[2]||(u[2]=s=>c.value=s)}),null,16,["type","class","disabled","modelValue"])):(e.openBlock(),e.createBlock(X,{key:1,"current-value":c.value,label:d.label,mode:d.mode,onClear:f,fieldRef:l.value,width:t.width,disabled:d.disabled,layout:"inline"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(y)?.component),e.mergeProps({ref_key:"filterRef",ref:l},t,{modelValue:c.value,"onUpdate:modelValue":u[3]||(u[3]=s=>c.value=s),type:e.unref(y)?.type,class:t.itemClass,onChange:u[4]||(u[4]=s=>b(s.name,s.value)),onClear:u[5]||(u[5]=s=>f(s))}),null,16,["modelValue","type","class"]))]),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}),xl=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(m,{expose:o,emit:p}){const t=m,n=p,l=e.ref(),y=e.ref(J(t.type,t.layout)),c=e.computed({get:()=>t.modelValue,set:d=>n("update:modelValue",d)});function f(d){n("clear",d)}function b(d,u){n("change",{name:d,value:u}),t.modelValue!==void 0&&n("update:modelValue",u)}return e.watch(()=>t.default,d=>{c.value=d}),e.watch(()=>t.modelValue,d=>{c.value=d}),e.watch(()=>t,d=>{c.value=d}),o({filterRef:l}),(d,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(y.value?.component),e.mergeProps(t,{type:y.value?.type,class:t.itemClass,modelValue:c.value,"onUpdate:modelValue":u[0]||(u[0]=s=>c.value=s),onChange:u[1]||(u[1]=s=>b(s.name,s.value)),onClear:u[2]||(u[2]=s=>f(s)),ref_key:"filterRef",ref:l}),null,16,["type","class","modelValue"]))}}),L=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(m,{expose:o,emit:p}){const t=m,n=p,l=e.ref(),y=e.computed({get:()=>t.modelValue,set:d=>n("update:modelValue",d)});function c(d){n("clear",d)}function f(d,u){n("change",{name:d,value:u}),t.modelValue!==void 0&&n("update:modelValue",u)}e.watch(()=>t.default,d=>{y.value=d}),e.watch(()=>t.modelValue,d=>{y.value=d}),o({filterRef:l});function b(){switch(t.layout){case"inline":return ce;case"vertical":return kl;case"popover":return xl;default:return ce}}return(d,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b()),e.mergeProps(t,{onChange:u[0]||(u[0]=s=>f(s.name,s.value)),onClear:u[1]||(u[1]=s=>c(s)),modelValue:y.value,"onUpdate:modelValue":u[2]||(u[2]=s=>y.value=s)}),null,16,["modelValue"]))}});function P(m,o){const{slots:p}=m,t=r=>r?JSON.parse(JSON.stringify(e.toRaw(r))):{},n=e.ref(t(m.value));e.watch(()=>m.value,r=>{n.value=t(r)},{deep:!0,immediate:!0});const l=e.computed(()=>(e.toRaw(p?.default?.())??[]).flatMap(a=>Array.isArray(a.children)?a.children:[a]));function y(r){delete n.value[r],o("clear",{data:e.toRaw(n.value),name:r})}function c(r,a){a===void 0?y(r):n.value={...n.value,[r]:a},o("change",{data:e.toRaw(n.value),name:r,value:a})}const f=e.computed(()=>l.value.map(r=>{const a=r.props?.name;return e.cloneVNode(r,{...r.props,layout:m.view,showClean:!0,modelValue:n.value[a],"onUpdate:modelValue":g=>{c(a,g)},onClear:()=>y(a),class:[m.itemClass,r.props?.class],itemClass:[m.itemClass,r.props?.itemClass].filter(g=>typeof g=="string"&&g.trim().length>0).join(" ")||void 0})})),b=e.computed(()=>new Map(f.value.map(r=>{const a=r.props?.name;return a?[a,r]:null}).filter(r=>r!==null)));function d(r=!1){n.value={},r||o("clearAll",{data:e.toRaw(n.value),name:"ALL"})}const u=e.ref(""),s=e.computed(()=>m.schema?.value?Object.entries(n.value).filter(([r,a])=>m.schema&&!(r in m.schema.value)?!1:Array.isArray(a)?a.some(g=>g!==""&&g!==void 0):a!==""&&a!==void 0).length:0),k=e.ref();e.watch(u,async()=>{await e.nextTick(),k?.value?.filterRef?.inputTextRef&&k.value.filterRef.inputTextRef.focus()});const w=e.computed(()=>m.schema?.value?Object.fromEntries(Object.entries(m.schema?.value).slice(0,m.limit)):{}),x=e.computed(()=>{if(f.value.length===0)return[];let r=0;if(m.schema?.value){const a=Object.entries(m.schema.value).length;m.limit&&a<m.limit?r=m.limit-a:r=0}return f.value.slice(0,r)}),i=e.computed(()=>f.value.length===0?[]:m.view!=="inline"?f.value:f.value.slice(x.value.length));return{activeFilter:n,activeFilterCount:s,onFilterChange:c,clearFilter:y,clearAllFilters:d,limitedSchema:w,filtersSlot:f,limitedFiltersSlot:x,popoverFiltersSlot:i,vnodeMap:b,selectedFilter:u,filterRef:k}}const wl=e.defineComponent({__name:"popover",emits:["open","close"],setup(m,{emit:o}){const p=e.ref(!1),t=e.ref(null),n=e.ref(null),l=e.ref(null),y=e.ref({top:"0px",left:"0px",position:"absolute"});function c(){p.value=!p.value}function f(){const k=l.value,w=t.value;if(!k||!w)return;const x=k.getBoundingClientRect(),i=w.offsetWidth,r=window.innerWidth-x.left;let a=x.left+window.scrollX;i>r&&(a=window.innerWidth-i-8,a<8&&(a=8)),y.value={position:"absolute",top:`${x.bottom+window.scrollY+8}px`,left:`${a}px`}}const b=e.computed(()=>Object.entries(y.value).map(k=>k.join(":")).join(";"));function d(k){const w=k.target;!l.value?.contains(k.target)&&!t.value?.contains(k.target)&&!w.closest("[data-inside-popover]")&&(p.value=!1)}const u=e.ref(!1);e.onMounted(()=>{u.value=!0}),e.onMounted(()=>{l.value=n.value?.querySelector("[data-popover-trigger]")||null,l.value?.addEventListener("click",c),document.addEventListener("click",d),window.addEventListener("resize",f),window.addEventListener("scroll",f,!0)}),e.onBeforeUnmount(()=>{l.value?.removeEventListener("click",c),document.removeEventListener("click",d),window.removeEventListener("resize",f),window.removeEventListener("scroll",f,!0)});const s=o;return e.watch(p,async k=>{k?(s("open"),await e.nextTick(),f()):s("close")}),(k,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:n},[e.renderSlot(k.$slots,"trigger"),u.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:t,class:"absolute z-[50] w-[600px] rounded-md border bg-white shadow-md",style:e.normalizeStyle(b.value)},[e.renderSlot(k.$slots,"default")],4),[[e.vShow,p.value]])])):e.createCommentVNode("",!0)],512))}}),Vl={},Cl={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"lucide lucide-filter h-4 w-4"};function Bl(m,o){return e.openBlock(),e.createElementBlock("svg",Cl,o[0]||(o[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)]))}const de=K(Vl,[["render",Bl]]),El={class:"flex items-center gap-2 overflow-hidden"},Nl={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"},_l={class:"flex max-h-[calc(100dvh-240px)]"},Sl={class:"w-64 border-r border-gray-200 overflow-y-auto"},Dl={class:"p-4 border-b"},$l={class:"text-sm text-gray-600"},Fl={class:"p-2"},Al=["onClick"],jl={class:"flex items-center gap-2"},Ml={class:"text-sm font-medium"},Rl={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"},Tl=["onClick"],Kl={class:"flex items-center gap-2"},Ll={class:"text-sm font-medium"},zl={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"},Ol={key:0,class:"p-2 border-t"},Ul={class:"flex-1 min-h-[300px] overflow-y-auto"},Il={key:0,class:"flex items-center justify-center h-full text-gray-500"},Pl={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(m,{expose:o,emit:p}){const t=z(),n=m,l=ae(n.mode),y=e.useSlots(),c=p,f=e.ref({}),b=e.computed(()=>f?.value?n.view!=="inline"?f?.value:Object.fromEntries(Object.entries(f?.value).slice(n.limit)):{}),{activeFilter:d,activeFilterCount:u,onFilterChange:s,clearFilter:k,clearAllFilters:w,popoverFiltersSlot:x,selectedFilter:i,filterRef:r}=P({...n,schema:f,slots:y},c),a=e.computed(()=>n.badgeCount??u.value);function g(D){return Array.isArray(D)?D.filter(V=>V!=null&&V!=="").length:D&&typeof D=="object"?Object.values(D).filter(V=>V!=null&&V!=="").length:D===null||D!==void 0&&D!==""?1:0}function h(D){return d.value?g(d.value[D]):0}function S(){if(b.value){const[D]=Object.keys(b.value);i.value=D}else x.value.length>0?i.value=x.value[0].props.name:i.value=""}return e.watch(()=>n.schema,D=>{f.value=D??{}},{deep:!0,immediate:!0}),o({clearFilter:k,clearAllFilters:w}),(D,V)=>(e.openBlock(),e.createBlock(wl,{onOpen:S,onClose:V[5]||(V[5]=C=>i.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([D.itemClass,e.unref(l),"flex items-center justify-between gap-2",a.value>0?"border border-blue-400 bg-blue-50 text-blue-600 hover:border-blue-500":"text-neutral-700 hover:border-neutral-400"]),type:"button"},[e.createElementVNode("span",El,[e.createVNode(de,{class:"h-4 w-4"}),V[6]||(V[6]=e.createElementVNode("span",{class:"text-sm font-medium"},"Фільтр",-1))]),a.value>0?(e.openBlock(),e.createElementBlock("span",Nl,e.toDisplayString(a.value),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",_l,[e.createElementVNode("div",Sl,[e.createElementVNode("div",Dl,[e.createElementVNode("p",$l,e.toDisplayString(e.unref(t)("filter.selectFieldHelp")),1)]),e.createElementVNode("div",Fl,[D.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(b.value),([C,_])=>(e.openBlock(),e.createElementBlock("button",{key:C,onClick:()=>{i.value=C},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)===C?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",jl,[e.createElementVNode("span",Ml,e.toDisplayString(_.label),1)]),h(C)>0?(e.openBlock(),e.createElementBlock("div",Rl,e.toDisplayString(h(C)),1)):e.createCommentVNode("",!0)],10,Al))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(x),(C,_)=>(e.openBlock(),e.createElementBlock("button",{key:"slot-"+_,onClick:E=>i.value=C.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)===C.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-neutral-700"])},[e.createElementVNode("div",Kl,[e.createElementVNode("span",Ll,e.toDisplayString(C.props.label),1)]),h(C.props.name)>0?(e.openBlock(),e.createElementBlock("div",zl,e.toDisplayString(h(C.props.name)),1)):e.createCommentVNode("",!0)],10,Tl))),128))]),e.unref(u)>0?(e.openBlock(),e.createElementBlock("div",Ol,[e.createElementVNode("button",{class:e.normalizeClass([D.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]=C=>e.unref(w)()),"data-inside-popover":""}," Очистити всі ",2)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ul,[e.unref(i)===""?(e.openBlock(),e.createElementBlock("div",Il,[e.createElementVNode("p",Pl,e.toDisplayString(e.unref(t)("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),([C,_])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(i)===C?(e.openBlock(),e.createBlock(L,e.mergeProps({key:C,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:r},{ref_for:!0},_,{class:[D.itemClass,_?.class],"item-class":[D.itemClass,_?.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[1]||(V[1]=E=>e.unref(s)(E.name,E.value)),onClear:V[2]||(V[2]=E=>{e.unref(k)(E),e.unref(s)(E,void 0)}),modelValue:e.unref(d)[C],"onUpdate:modelValue":E=>e.unref(d)[C]=E,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(x),(C,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+_},[e.unref(i)===C.props.name?(e.openBlock(),e.createBlock(L,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},C.props,{ref_for:!0,ref_key:"filterRef",ref:r,class:[D.itemClass,C.props?.class],"item-class":[D.itemClass,C.props?.itemClass].filter(Boolean).join(" ")||void 0,onChange:V[3]||(V[3]=E=>e.unref(s)(E.name,E.value)),onClear:V[4]||(V[4]=E=>{e.unref(k)(E),e.unref(s)(E,void 0)}),modelValue:e.unref(d)[C.props.name],"onUpdate:modelValue":E=>e.unref(d)[C.props.name]=E,cleanable:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),Yl={class:"flex gap-1 items-center flex-wrap"},me=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(m,{expose:o,emit:p}){const t=z(),n=m,l=p,y=e.useSlots(),c=e.ref({}),f=e.computed(()=>Object.keys(n.schema).length>n.limit),{activeFilter:b,activeFilterCount:d,onFilterChange:u,clearFilter:s,clearAllFilters:k,limitedSchema:w,filtersSlot:x,limitedFiltersSlot:i}=P({...n,schema:c,slots:y},l);function r(V){return Array.isArray(V)?V.some(C=>C!==""&&C!==void 0&&C!==null):V===null?!0:V&&typeof V=="object"?Object.values(V).some(C=>C!==""&&C!==void 0&&C!==null):V!==""&&V!==void 0}const a=e.computed(()=>{const V=Object.keys(w.value??{}),C=i.value.map(_=>_.props?.name).filter(_=>typeof _=="string");return new Set([...V,...C])}),g=e.computed(()=>Object.entries(b.value??{}).filter(([V,C])=>a.value.has(V)&&r(C)).length),h=e.computed(()=>{const V=d.value??0,C=g.value??0;return Math.max(V-C,0)}),S=e.ref();function D(){S.value&&S.value.clearAllFilters(!0),k()}return e.watch(()=>n.schema,V=>{c.value=V},{deep:!0,immediate:!0}),o({clearFilter:s,clearAllFilters:k}),(V,C)=>(e.openBlock(),e.createElementBlock("div",Yl,[V.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(w)),([_,E])=>(e.openBlock(),e.createBlock(L,e.mergeProps({key:_,mode:V.mode,width:V.width?V.width:E?.width},{ref_for:!0},E,{class:[V.itemClass,E?.class],"item-class":[V.itemClass,E?.itemClass].filter(Boolean).join(" ")||void 0,onChange:C[0]||(C[0]=N=>e.unref(u)(N.name,N.value)),onClear:e.unref(s),layout:"inline",cleanable:!0,modelValue:e.unref(b)[_],"onUpdate:modelValue":N=>e.unref(b)[_]=N}),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),(_,E)=>(e.openBlock(),e.createBlock(L,e.mergeProps({key:"slot-"+E,layout:"inline"},{ref_for:!0},_.props,{class:[V.itemClass,_.props?.class],"item-class":[V.itemClass,_.props?.itemClass].filter(Boolean).join(" ")||void 0,onChange:C[1]||(C[1]=N=>e.unref(u)(N.name,N.value)),onClear:C[2]||(C[2]=N=>{e.unref(s)(N),e.unref(u)(N,void 0)}),cleanable:!0,modelValue:e.unref(b)[_.props.name],"onUpdate:modelValue":N=>e.unref(b)[_.props.name]=N}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),128)),f.value?(e.openBlock(),e.createBlock(fe,e.mergeProps({key:1},n,{schema:V.schema,limit:V.limit,onChange:C[3]||(C[3]=_=>e.unref(u)(_.name,_.value)),onClearAll:C[4]||(C[4]=_=>e.unref(k)()),onClear:C[5]||(C[5]=_=>e.unref(s)(_.name)),mode:V.mode,ref_key:"popoverRef",ref:S,cleanable:!0,"badge-count":h.value}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(x),(_,E)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(_),e.mergeProps({key:"slot-"+E,layout:"popover"},{ref_for:!0},_.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","limit","mode","badge-count"])):e.createCommentVNode("",!0),e.unref(d)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:D,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(t)("filter.clear")),3)):e.createCommentVNode("",!0)]))}}),Wl={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"},ql={class:"flex items-center vst-filters vsTailwind flex-col w-full"},Ql=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(m,{expose:o,emit:p}){const t=m,n=p,l=e.useSlots(),{activeFilter:y,activeFilterCount:c,onFilterChange:f,clearFilter:b,clearAllFilters:d,filtersSlot:u}=P({...t,slots:l},n);return o({clearFilter:b,clearAllFilters:d}),(s,k)=>s.view==="vertical"?(e.openBlock(),e.createElementBlock("div",Wl,[e.createElementVNode("div",ql,[e.unref(c)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:k[0]||(k[0]=w=>e.unref(d)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass([s.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),s.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(s.schema),([w,x])=>(e.openBlock(),e.createBlock(L,e.mergeProps({layout:"vertical"},{ref_for:!0},x,{class:[s.itemClass,x?.class],"item-class":[s.itemClass,x?.itemClass].filter(Boolean).join(" ")||void 0,onChange:k[1]||(k[1]=i=>e.unref(f)(i.name,i.value)),onClear:k[2]||(k[2]=i=>{e.unref(b)(i),e.unref(f)(i,void 0)}),modelValue:e.unref(y)[w],"onUpdate:modelValue":i=>e.unref(y)[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,x)=>(e.openBlock(),e.createBlock(L,e.mergeProps({key:"slot-"+x,layout:"vertical"},{ref_for:!0},w.props,{class:[s.itemClass,w.props?.class],"item-class":[s.itemClass,w.props?.itemClass].filter(Boolean).join(" ")||void 0,onChange:k[3]||(k[3]=i=>e.unref(f)(i.name,i.value)),onClear:k[4]||(k[4]=i=>{e.unref(b)(i),e.unref(f)(i,void 0)}),modelValue:e.unref(y)[w.props.name],"onUpdate:modelValue":i=>e.unref(y)[w.props.name]=i,showClean:!0}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),128))])])):e.createCommentVNode("",!0)}}),Hl=["onKeydown"],Gl=["disabled"],Xl={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"},Jl={class:"rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm"},Zl={class:"mb-3 flex items-center justify-between"},vl={class:"text-[15px] font-semibold text-slate-800"},eo={"aria-hidden":"true"},to={class:"flex max-h-80 flex-col gap-1 overflow-y-auto"},lo={key:0,class:"mt-3 flex justify-end"},oo=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(m,{emit:o}){const p=z(),t=m,n=o,l=e.ref({}),y=e.useSlots(),{activeFilter:c,activeFilterCount:f,onFilterChange:b,clearFilter:d,clearAllFilters:u,filtersSlot:s}=P({...t,schema:l.value,slots:y},n),k=e.ref(null),w=e.ref(null),x=e.reactive({open:!1,top:0,left:0}),i=e.computed(()=>x.open),r=e.computed(()=>!!t.disabled),a=e.computed(()=>l.value||{}),g=e.computed(()=>t.title??"Фільтр"),h=e.computed(()=>!!y.trigger),S=e.computed(()=>["inline-flex h-9 items-center justify-center gap-2 rounded-lg border border-transparent bg-slate-200/70 px-3 text-sm font-medium text-slate-700 transition-colors hover:bg-blue-100 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-slate-200/70 disabled:hover:text-slate-700",r.value?"cursor-not-allowed opacity-60":"cursor-pointer"]),D=e.computed(()=>x.open?{position:"absolute",top:`${x.top}px`,left:`${x.left}px`,transform:"translateX(-50%)",zIndex:1e3}:{display:"none"});function V(){x.open=!1}function C(){if(!k.value)return;const F=k.value.getBoundingClientRect();x.top=F.bottom+window.scrollY+8,x.left=F.left+F.width/2+window.scrollX}function _(){x.open=!x.open,x.open&&e.nextTick(C)}function E(){r.value||_()}function N(){x.open&&C()}function A(){u()}return e.onMounted(()=>{window.addEventListener("resize",N),window.addEventListener("scroll",N,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",N),window.removeEventListener("scroll",N,!0)}),e.watch(()=>t.schema,F=>{if(!F){l.value={};return}if(Array.isArray(F)){const B=F.filter($=>$&&($.name||$.id)).map($=>{const j=$.name||$.id;return[j,{...$,name:j}]});l.value=Object.fromEntries(B);return}l.value=F},{deep:!0,immediate:!0}),e.watch(()=>t.disabled,F=>{F&&V()}),(F,B)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-flex",ref_key:"anchor",ref:k},[h.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["inline-flex",r.value?"cursor-not-allowed opacity-60 pointer-events-none":"cursor-pointer"]),role:"button",tabindex:"0","data-popover-trigger":"",onClick:e.withModifiers(E,["prevent","stop"]),onKeydown:[e.withKeys(e.withModifiers(E,["prevent","stop"]),["enter"]),e.withKeys(e.withModifiers(E,["prevent","stop"]),["space"])]},[e.renderSlot(F.$slots,"trigger",{toggle:E,open:i.value,disabled:r.value,activeCount:e.unref(f)})],42,Hl)):(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(S.value),type:"button",disabled:r.value,onClick:e.withModifiers(E,["prevent","stop"]),"data-popover-trigger":""},[e.createVNode(de,{class:"h-4 w-4"}),e.unref(f)>0?(e.openBlock(),e.createElementBlock("div",Xl,e.toDisplayString(e.unref(f)),1)):e.createCommentVNode("",!0)],10,Gl)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute",typeof F.width=="number"?`min-w-[${F.width+32+(Object.keys(a.value).length>7?20:0)}px]`:"min-w-[268px] "]),style:e.normalizeStyle(D.value),ref_key:"panel",ref:w,onClick:B[4]||(B[4]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Jl,[e.createElementVNode("div",Zl,[e.createElementVNode("h3",vl,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",eo,[e.createVNode(G,{class:"h-4 w-4"})]),B[5]||(B[5]=e.createElementVNode("span",{class:"sr-only"},"Закрити",-1))])]),e.createElementVNode("div",to,[Object.keys(a.value).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(a.value),([$,j])=>(e.openBlock(),e.createBlock(L,e.mergeProps({key:$},{ref_for:!0},{...j,layout:"inline"},{width:F.width?F.width:j?.width,class:[F.itemClass,j?.class],"item-class":[F.itemClass,j?.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(c)[$],"onUpdate:modelValue":M=>e.unref(c)[$]=M,onChange:B[0]||(B[0]=M=>e.unref(b)(M.name,M.value)),onClear:B[1]||(B[1]=M=>{e.unref(d)(M),e.unref(b)(M,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(s),($,j)=>(e.openBlock(),e.createBlock(L,e.mergeProps({key:"slot-"+j,ref_for:!0},{...$.props,layout:"inline"},{class:[F.itemClass,$.props?.class],"item-class":[F.itemClass,$.props?.itemClass].filter(Boolean).join(" ")||void 0,cleanable:!0,modelValue:e.unref(c)[$.props.name],"onUpdate:modelValue":M=>e.unref(c)[$.props.name]=M,onChange:B[2]||(B[2]=M=>e.unref(b)(M.name,M.value)),onClear:B[3]||(B[3]=M=>{e.unref(d)(M),e.unref(b)(M,void 0)})}),null,16,["class","item-class","modelValue","onUpdate:modelValue"]))),128))]),e.unref(f)>0?(e.openBlock(),e.createElementBlock("div",lo,[e.createElementVNode("button",{type:"button",class:e.normalizeClass([F.itemClass,"text-sm font-semibold text-blue-600 transition-colors hover:text-blue-700 focus:outline-none"]),onClick:A},e.toDisplayString(e.unref(p)("filter.clear")),3)])):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)]))],512))}}),Y=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(m,{expose:o,emit:p}){const t=m,n=e.ref(f(t.value??{}));e.watch(()=>t.value,async i=>{n.value=f(i??{}),(!i||Object.keys(i).length===0)&&(await e.nextTick(),y.value?.clearAllFilters?.(!0))},{deep:!0,immediate:!0});const l=p,y=e.ref(),c=e.useSlots();function f(i){if(Array.isArray(i))return i.map(r=>f(r));if(i!==null&&typeof i=="object"){const r=e.toRaw(i),a={};for(const g in r)a[g]=f(r[g]);return a}return i}function b(i,r){r!==void 0?n.value={...n.value,[i]:r}:delete n.value[i],l("change",{data:f(n.value),name:i,value:f(r)})}function d(i){delete n.value[i],l("clear",{data:f(n.value),name:i}),l("change",{data:f(n.value),name:i,value:null})}function u(){n.value={},l("clear",{data:f(n.value),name:"ALL"}),l("change",{data:f(n.value),name:"ALL",value:null})}const s=e.ref({});function k(){switch(t.view){case"inline":return me;case"vertical":return Ql;case"popover":return fe;case"popover-inline":return oo;default:return me}}e.watch(()=>t.schema,i=>{if(!i){s.value={};return}if(Array.isArray(i)&&!i.length){s.value={};return}Array.isArray(i)?s.value=i.filter(r=>r.type).reduce((r,a)=>(Object.assign(a,{name:a.id||a.name,type:{datepicker:"date"}[a.type.toLowerCase()]||a.type.toLowerCase(),label:a.label||a.ua}),r[a.name]=a,a.data&&!a.api&&!a.options&&Object.assign(a,{api:`/api/suggest/${a.data}`}),r),{}):(Object.entries(i).forEach(([r,a])=>{Object.assign(a,{name:r||a.name||a.id,type:a.type.toLowerCase()})}),s.value={...i})},{immediate:!0,deep:!0});function w(i){y.value.clearFilter(i),d(i)}function x(){y.value.clearAllFilters(),u()}return e.watch(()=>n.value,i=>{if(t.history){const r=new URL(window.location.href),a=new URLSearchParams(window.location.search);Object.keys(i).length>0?a.set("filter",Object.entries(i).filter(([,g])=>g).map(([g,h])=>`${g}=${h}`).join("|")):a.delete("filter"),r.search=decodeURI(a.toString()),window.history.pushState({},"",r)}}),o({clearAllFilters:x,clearFilter:w}),(i,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(k()),e.mergeProps(t,{schema:s.value,onChange:r[0]||(r[0]=a=>b(a.name,a.value)),onClear:r[1]||(r[1]=a=>d(a.name)),onClearAll:u,ref_key:"filterRef",ref:y}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:2},[e.unref(c).trigger?{name:"trigger",fn:e.withCtx(a=>[e.renderSlot(i.$slots,"trigger",e.normalizeProps(e.guardReactiveProps(a)))]),key:"0"}:void 0]),1040,["schema"]))}});Y.install=function(o){o.component("Filter",Y),o.component("FilterField",L)},T.Filter=Y,T.FilterField=L,T.default=Y,Object.defineProperties(T,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|