@opengis/cms 0.0.38 → 0.0.39
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/dist/index.js +38 -39
- package/dist/index.umd.cjs +2 -2
- package/package.json +1 -1
package/dist/index.umd.cjs
CHANGED
|
@@ -234,7 +234,7 @@ ${u}`:c)}else throw s},onCacheKey:s=>Wc(t,l,s)}}function Au(r){if(J(r))return r;
|
|
|
234
234
|
* (c) 2025 kazuya kawaguchi
|
|
235
235
|
* Released under the MIT License.
|
|
236
236
|
*/const Ru="11.1.5";function Uu(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(ur().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(ur().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(ur().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(ur().__INTLIFY_PROD_DEVTOOLS__=!1)}const Le={UNEXPECTED_RETURN_TYPE:Wd,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:30,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_COMPATIBLE_LEGACY_VUE_I18N:33,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34};function ut(r,...t){return Br(r,null,process.env.NODE_ENV!=="production"?{messages:ju,args:t}:void 0)}const ju={[Le.UNEXPECTED_RETURN_TYPE]:"Unexpected return type in composer",[Le.INVALID_ARGUMENT]:"Invalid argument",[Le.MUST_BE_CALL_SETUP_TOP]:"Must be called at the top of a `setup` function",[Le.NOT_INSTALLED]:"Need to install with `app.use` function",[Le.UNEXPECTED_ERROR]:"Unexpected error",[Le.REQUIRED_VALUE]:"Required in value: {0}",[Le.INVALID_VALUE]:"Invalid value",[Le.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN]:"Cannot setup vue-devtools plugin",[Le.NOT_INSTALLED_WITH_PROVIDE]:"Need to install with `provide` function",[Le.NOT_COMPATIBLE_LEGACY_VUE_I18N]:"Not compatible legacy VueI18n.",[Le.NOT_AVAILABLE_COMPOSITION_IN_LEGACY]:"Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly"},Rn=Mt("__translateVNode"),Un=Mt("__datetimeParts"),jn=Mt("__numberParts"),pr=Mt("__enableEmitter"),Yr=Mt("__disableEmitter"),Xo=Mt("__setPluralRules"),Zo=Mt("__injectWithOption"),zn=Mt("__dispose"),Lt={FALLBACK_TO_ROOT:su,NOT_FOUND_PARENT_SCOPE:9,IGNORE_OBJ_FLATTEN:10,DEPRECATE_LEGACY_MODE:11,DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE:12},zu={[Lt.FALLBACK_TO_ROOT]:"Fall back to {type} '{key}' with root locale.",[Lt.NOT_FOUND_PARENT_SCOPE]:"Not found parent scope. use the global scope.",[Lt.IGNORE_OBJ_FLATTEN]:"Ignore object flatten: '{key}' key has an string value",[Lt.DEPRECATE_LEGACY_MODE]:`Legacy API mode has been deprecated in v11. Use Composition API mode instead.
|
|
237
|
-
About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guide/advanced/composition.html`,[Lt.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE]:"'v-t' has been deprecated in v11. Use translate APIs ('t' or '$t') instead."};function Xr(r,...t){return Bl(zu[r],...t)}function Zr(r){if(!Ee(r)||wt(r))return r;for(const t in r)if(Bt(r,t))if(!t.includes("."))Ee(r[t])&&Zr(r[t]);else{const l=t.split("."),n=l.length-1;let a=r,o=!1;for(let s=0;s<n;s++){if(l[s]==="__proto__")throw new Error(`unsafe key: ${l[s]}`);if(l[s]in a||(a[l[s]]=Ae()),!Ee(a[l[s]])){process.env.NODE_ENV!=="production"&&tr(Xr(Lt.IGNORE_OBJ_FLATTEN,{key:l[s]})),o=!0;break}a=a[l[s]]}if(o||(wt(a)?xo.includes(l[n])||delete r[t]:(a[l[n]]=r[t],delete r[t])),!wt(a)){const s=a[l[n]];Ee(s)&&Zr(s)}}return r}function Hn(r,t){const{messages:l,__i18n:n,messageResolver:a,flatJson:o}=t,s=xe(l)?l:Pe(n)?Ae():{[r]:Ae()};if(Pe(n)&&n.forEach(i=>{if("locale"in i&&"resource"in i){const{locale:c,resource:u}=i;c?(s[c]=s[c]||Ae(),Dl(u,s[c])):Dl(u,s)}else J(i)&&Dl(JSON.parse(i),s)}),a==null&&o)for(const i in s)Bt(s,i)&&Zr(s[i]);return s}function Qo(r){return r.type}function Jo(r,t,l){let n=Ee(t.messages)?t.messages:Ae();"__i18nGlobal"in l&&(n=Hn(r.locale.value,{messages:n,__i18n:l.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(o=>{r.mergeLocaleMessage(o,n[o])});{if(Ee(t.datetimeFormats)){const o=Object.keys(t.datetimeFormats);o.length&&o.forEach(s=>{r.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(Ee(t.numberFormats)){const o=Object.keys(t.numberFormats);o.length&&o.forEach(s=>{r.mergeNumberFormat(s,t.numberFormats[s])})}}}function es(r){return e.createVNode(e.Text,null,r,0)}const ts="__INTLIFY_META__",rs=()=>[],Hu=()=>!1;let ls=0;function ns(r){return(t,l,n,a)=>r(l,n,e.getCurrentInstance()||void 0,a)}const qu=()=>{const r=e.getCurrentInstance();let t=null;return r&&(t=Qo(r)[ts])?{[ts]:t}:null};function qn(r={}){const{__root:t,__injectWithOption:l}=r,n=t===void 0,a=r.flatJson,o=vt?e.ref:e.shallowRef;let s=Ce(r.inheritLocale)?r.inheritLocale:!0;const i=o(t&&s?t.locale.value:J(r.locale)?r.locale:Gr),c=o(t&&s?t.fallbackLocale.value:J(r.fallbackLocale)||Pe(r.fallbackLocale)||xe(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:i.value),u=o(Hn(i.value,r)),d=o(xe(r.datetimeFormats)?r.datetimeFormats:{[i.value]:{}}),m=o(xe(r.numberFormats)?r.numberFormats:{[i.value]:{}});let f=t?t.missingWarn:Ce(r.missingWarn)||vr(r.missingWarn)?r.missingWarn:!0,p=t?t.fallbackWarn:Ce(r.fallbackWarn)||vr(r.fallbackWarn)?r.fallbackWarn:!0,h=t?t.fallbackRoot:Ce(r.fallbackRoot)?r.fallbackRoot:!0,g=!!r.fallbackFormat,y=Me(r.missing)?r.missing:null,b=Me(r.missing)?ns(r.missing):null,w=Me(r.postTranslation)?r.postTranslation:null,x=t?t.warnHtmlMessage:Ce(r.warnHtmlMessage)?r.warnHtmlMessage:!0,k=!!r.escapeParameter;const _=t?t.modifiers:xe(r.modifiers)?r.modifiers:{};let N=r.pluralRules||t&&t.pluralRules,V;V=(()=>{n&&Mo(null);const O={version:Ru,locale:i.value,fallbackLocale:c.value,messages:u.value,modifiers:_,pluralRules:N,missing:b===null?void 0:b,missingWarn:f,fallbackWarn:p,fallbackFormat:g,unresolving:!0,postTranslation:w===null?void 0:w,warnHtmlMessage:x,escapeParameter:k,messageResolver:r.messageResolver,messageCompiler:r.messageCompiler,__meta:{framework:"vue"}};O.datetimeFormats=d.value,O.numberFormats=m.value,O.__datetimeFormatters=xe(V)?V.__datetimeFormatters:void 0,O.__numberFormatters=xe(V)?V.__numberFormatters:void 0,process.env.NODE_ENV!=="production"&&(O.__v_emitter=xe(V)?V.__v_emitter:void 0);const K=yu(O);return n&&Mo(K),K})(),Wr(V,i.value,c.value);function $(){return[i.value,c.value,u.value,d.value,m.value]}const M=e.computed({get:()=>i.value,set:O=>{V.locale=O,i.value=O}}),D=e.computed({get:()=>c.value,set:O=>{V.fallbackLocale=O,c.value=O,Wr(V,i.value,O)}}),q=e.computed(()=>u.value),Q=e.computed(()=>d.value),R=e.computed(()=>m.value);function I(){return Me(w)?w:null}function F(O){w=O,V.postTranslation=O}function A(){return y}function z(O){O!==null&&(b=ns(O)),y=O,V.missing=b}function ee(O,K){return O!=="translate"||!K.resolvedMessage}const pe=(O,K,ke,Se,E,S)=>{$();let j;try{process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__,n||(V.fallbackContext=t?gu():void 0),j=O(V)}finally{process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__,n||(V.fallbackContext=void 0)}if(ke!=="translate exists"&&Ke(j)&&j===Ll||ke==="translate exists"&&!j){const[G,Z]=K();if(process.env.NODE_ENV!=="production"&&t&&J(G)&&ee(ke,Z)&&(h&&(Fl(p,G)||Lo(f,G))&&tr(Xr(Lt.FALLBACK_TO_ROOT,{key:G,type:ke})),process.env.NODE_ENV!=="production")){const{__v_emitter:B}=V;B&&h&&B.emit("fallback",{type:ke,key:G,to:"global",groupId:`${ke}:${G}`})}return t&&h?Se(t):E(G)}else{if(S(j))return j;throw ut(Le.UNEXPECTED_RETURN_TYPE)}};function Ne(...O){return pe(K=>Reflect.apply(Ko,null,[K,...O]),()=>On(...O),"translate",K=>Reflect.apply(K.t,K,[...O]),K=>K,K=>J(K))}function Xe(...O){const[K,ke,Se]=O;if(Se&&!Ee(Se))throw ut(Le.INVALID_ARGUMENT);return Ne(K,ke,We({resolvedMessage:!0},Se||{}))}function Jt(...O){return pe(K=>Reflect.apply(Oo,null,[K,...O]),()=>Fn(...O),"datetime format",K=>Reflect.apply(K.d,K,[...O]),()=>$l,K=>J(K)||Pe(K))}function Re(...O){return pe(K=>Reflect.apply(Uo,null,[K,...O]),()=>In(...O),"number format",K=>Reflect.apply(K.n,K,[...O]),()=>$l,K=>J(K)||Pe(K))}function Ze(O){return O.map(K=>J(K)||Ke(K)||Ce(K)?es(String(K)):K)}const xt={normalize:Ze,interpolate:O=>O,type:"vnode"};function Nt(...O){return pe(K=>{let ke;const Se=K;try{Se.processor=xt,ke=Reflect.apply(Ko,null,[Se,...O])}finally{Se.processor=null}return ke},()=>On(...O),"translate",K=>K[Rn](...O),K=>[es(K)],K=>Pe(K))}function jt(...O){return pe(K=>Reflect.apply(Uo,null,[K,...O]),()=>In(...O),"number format",K=>K[jn](...O),rs,K=>J(K)||Pe(K))}function ot(...O){return pe(K=>Reflect.apply(Oo,null,[K,...O]),()=>Fn(...O),"datetime format",K=>K[Un](...O),rs,K=>J(K)||Pe(K))}function ct(O){N=O,V.pluralRules=N}function U(O,K){return pe(()=>{if(!O)return!1;const ke=J(K)?K:i.value,Se=le(ke),E=V.messageResolver(Se,O);return wt(E)||_t(E)||J(E)},()=>[O],"translate exists",ke=>Reflect.apply(ke.te,ke,[O,K]),Hu,ke=>Ce(ke))}function Y(O){let K=null;const ke=Eo(V,c.value,i.value);for(let Se=0;Se<ke.length;Se++){const E=u.value[ke[Se]]||{},S=V.messageResolver(E,O);if(S!=null){K=S;break}}return K}function re(O){const K=Y(O);return K??(t?t.tm(O)||{}:{})}function le(O){return u.value[O]||{}}function ue(O,K){if(a){const ke={[O]:K};for(const Se in ke)Bt(ke,Se)&&Zr(ke[Se]);K=ke[O]}u.value[O]=K,V.messages=u.value}function Te(O,K){u.value[O]=u.value[O]||{};const ke={[O]:K};if(a)for(const Se in ke)Bt(ke,Se)&&Zr(ke[Se]);K=ke[O],Dl(K,u.value[O]),V.messages=u.value}function C(O){return d.value[O]||{}}function v(O,K){d.value[O]=K,V.datetimeFormats=d.value,Ro(V,O,K)}function H(O,K){d.value[O]=We(d.value[O]||{},K),V.datetimeFormats=d.value,Ro(V,O,K)}function ne(O){return m.value[O]||{}}function $e(O,K){m.value[O]=K,V.numberFormats=m.value,zo(V,O,K)}function Fe(O,K){m.value[O]=We(m.value[O]||{},K),V.numberFormats=m.value,zo(V,O,K)}ls++,t&&vt&&(e.watch(t.locale,O=>{s&&(i.value=O,V.locale=O,Wr(V,i.value,c.value))}),e.watch(t.fallbackLocale,O=>{s&&(c.value=O,V.fallbackLocale=O,Wr(V,i.value,c.value))}));const be={id:ls,locale:M,fallbackLocale:D,get inheritLocale(){return s},set inheritLocale(O){s=O,O&&t&&(i.value=t.locale.value,c.value=t.fallbackLocale.value,Wr(V,i.value,c.value))},get availableLocales(){return Object.keys(u.value).sort()},messages:q,get modifiers(){return _},get pluralRules(){return N||{}},get isGlobal(){return n},get missingWarn(){return f},set missingWarn(O){f=O,V.missingWarn=f},get fallbackWarn(){return p},set fallbackWarn(O){p=O,V.fallbackWarn=p},get fallbackRoot(){return h},set fallbackRoot(O){h=O},get fallbackFormat(){return g},set fallbackFormat(O){g=O,V.fallbackFormat=g},get warnHtmlMessage(){return x},set warnHtmlMessage(O){x=O,V.warnHtmlMessage=O},get escapeParameter(){return k},set escapeParameter(O){k=O,V.escapeParameter=O},t:Ne,getLocaleMessage:le,setLocaleMessage:ue,mergeLocaleMessage:Te,getPostTranslationHandler:I,setPostTranslationHandler:F,getMissingHandler:A,setMissingHandler:z,[Xo]:ct};return be.datetimeFormats=Q,be.numberFormats=R,be.rt=Xe,be.te=U,be.tm=re,be.d=Jt,be.n=Re,be.getDateTimeFormat=C,be.setDateTimeFormat=v,be.mergeDateTimeFormat=H,be.getNumberFormat=ne,be.setNumberFormat=$e,be.mergeNumberFormat=Fe,be[Zo]=l,be[Rn]=Nt,be[Un]=ot,be[jn]=jt,process.env.NODE_ENV!=="production"&&(be[pr]=O=>{V.__v_emitter=O},be[Yr]=()=>{V.__v_emitter=void 0}),be}const as="vue-i18n: composer properties",Kn={"vue-devtools-plugin-vue-i18n":"Vue I18n DevTools","vue-i18n-resource-inspector":"Vue I18n DevTools","vue-i18n-timeline":"Vue I18n"},Ku={"vue-i18n-resource-inspector":"Search for scopes ..."},Gu={"vue-i18n-timeline":16764185};let Gn;async function Wu(r,t){return new Promise((l,n)=>{try{Pu({id:"vue-devtools-plugin-vue-i18n",label:Kn["vue-devtools-plugin-vue-i18n"],packageName:"vue-i18n",homepage:"https://vue-i18n.intlify.dev",logo:"https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png",componentStateTypes:[as],app:r},a=>{Gn=a,a.on.visitComponentTree(({componentInstance:s,treeNode:i})=>{Yu(s,i,t)}),a.on.inspectComponent(({componentInstance:s,instanceData:i})=>{s.vnode.el&&s.vnode.el.__VUE_I18N__&&i&&(t.mode==="legacy"?s.vnode.el.__VUE_I18N__!==t.global.__composer&&ss(i,s.vnode.el.__VUE_I18N__):ss(i,s.vnode.el.__VUE_I18N__))}),a.addInspector({id:"vue-i18n-resource-inspector",label:Kn["vue-i18n-resource-inspector"],icon:"language",treeFilterPlaceholder:Ku["vue-i18n-resource-inspector"]}),a.on.getInspectorTree(s=>{s.app===r&&s.inspectorId==="vue-i18n-resource-inspector"&&em(s,t)});const o=new Map;a.on.getInspectorState(async s=>{if(s.app===r&&s.inspectorId==="vue-i18n-resource-inspector")if(a.unhighlightElement(),rm(s,t),s.nodeId==="global"){if(!o.has(s.app)){const[i]=await a.getComponentInstances(s.app);o.set(s.app,i)}a.highlightElement(o.get(s.app))}else{const i=tm(s.nodeId,t);i&&a.highlightElement(i)}}),a.on.editInspectorState(s=>{s.app===r&&s.inspectorId==="vue-i18n-resource-inspector"&&nm(s,t)}),a.addTimelineLayer({id:"vue-i18n-timeline",label:Kn["vue-i18n-timeline"],color:Gu["vue-i18n-timeline"]}),l(!0)})}catch(a){console.error(a),n(!1)}})}function os(r){return r.type.name||r.type.displayName||r.type.__file||"Anonymous"}function Yu(r,t,l){const n=l.mode==="composition"?l.global:l.global.__composer;if(r&&r.vnode.el&&r.vnode.el.__VUE_I18N__&&r.vnode.el.__VUE_I18N__!==n){const a={label:`i18n (${os(r)} Scope)`,textColor:0,backgroundColor:16764185};t.tags.push(a)}}function ss(r,t){const l=as;r.state.push({type:l,key:"locale",editable:!0,value:t.locale.value}),r.state.push({type:l,key:"availableLocales",editable:!1,value:t.availableLocales}),r.state.push({type:l,key:"fallbackLocale",editable:!0,value:t.fallbackLocale.value}),r.state.push({type:l,key:"inheritLocale",editable:!0,value:t.inheritLocale}),r.state.push({type:l,key:"messages",editable:!1,value:Wn(t.messages.value)}),r.state.push({type:l,key:"datetimeFormats",editable:!1,value:t.datetimeFormats.value}),r.state.push({type:l,key:"numberFormats",editable:!1,value:t.numberFormats.value})}function Wn(r){const t={};return Object.keys(r).forEach(l=>{const n=r[l];Me(n)&&"source"in n?t[l]=Ju(n):wt(n)&&n.loc&&n.loc.source?t[l]=n.loc.source:Ee(n)?t[l]=Wn(n):t[l]=n}),t}const Xu={"<":"<",">":">",'"':""","&":"&"};function Zu(r){return r.replace(/[<>"&]/g,Qu)}function Qu(r){return Xu[r]||r}function Ju(r){return{_custom:{type:"function",display:`<span>ƒ</span> ${r.source?`("${Zu(r.source)}")`:"(?)"}`}}}function em(r,t){r.rootNodes.push({id:"global",label:"Global Scope"});const l=t.mode==="composition"?t.global:t.global.__composer;for(const[n,a]of t.__instances){const o=t.mode==="composition"?a:a.__composer;l!==o&&r.rootNodes.push({id:o.id.toString(),label:`${os(n)} Scope`})}}function tm(r,t){let l=null;if(r!=="global"){for(const[n,a]of t.__instances.entries())if(a.id.toString()===r){l=n;break}}return l}function is(r,t){if(r==="global")return t.mode==="composition"?t.global:t.global.__composer;{const l=Array.from(t.__instances.values()).find(n=>n.id.toString()===r);return l?t.mode==="composition"?l:l.__composer:null}}function rm(r,t){const l=is(r.nodeId,t);return l&&(r.state=lm(l)),null}function lm(r){const t={},l="Locale related info",n=[{type:l,key:"locale",editable:!0,value:r.locale.value},{type:l,key:"fallbackLocale",editable:!0,value:r.fallbackLocale.value},{type:l,key:"availableLocales",editable:!1,value:r.availableLocales},{type:l,key:"inheritLocale",editable:!0,value:r.inheritLocale}];t[l]=n;const a="Locale messages info",o=[{type:a,key:"messages",editable:!1,value:Wn(r.messages.value)}];t[a]=o;{const s="Datetime formats info",i=[{type:s,key:"datetimeFormats",editable:!1,value:r.datetimeFormats.value}];t[s]=i;const c="Datetime formats info",u=[{type:c,key:"numberFormats",editable:!1,value:r.numberFormats.value}];t[c]=u}return t}function Qr(r,t){if(Gn){let l;t&&"groupId"in t&&(l=t.groupId,delete t.groupId),Gn.addTimelineEvent({layerId:"vue-i18n-timeline",event:{title:r,groupId:l,time:Date.now(),meta:{},data:t||{},logType:r==="compile-error"?"error":r==="fallback"||r==="missing"?"warning":"default"}})}}function nm(r,t){const l=is(r.nodeId,t);if(l){const[n]=r.path;n==="locale"&&J(r.state.value)?l.locale.value=r.state.value:n==="fallbackLocale"&&(J(r.state.value)||Pe(r.state.value)||Ee(r.state.value))?l.fallbackLocale.value=r.state.value:n==="inheritLocale"&&Ce(r.state.value)&&(l.inheritLocale=r.state.value)}}function am(r){const t=J(r.locale)?r.locale:Gr,l=J(r.fallbackLocale)||Pe(r.fallbackLocale)||xe(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:t,n=Me(r.missing)?r.missing:void 0,a=Ce(r.silentTranslationWarn)||vr(r.silentTranslationWarn)?!r.silentTranslationWarn:!0,o=Ce(r.silentFallbackWarn)||vr(r.silentFallbackWarn)?!r.silentFallbackWarn:!0,s=Ce(r.fallbackRoot)?r.fallbackRoot:!0,i=!!r.formatFallbackMessages,c=xe(r.modifiers)?r.modifiers:{},u=r.pluralizationRules,d=Me(r.postTranslation)?r.postTranslation:void 0,m=J(r.warnHtmlInMessage)?r.warnHtmlInMessage!=="off":!0,f=!!r.escapeParameterHtml,p=Ce(r.sync)?r.sync:!0;let h=r.messages;if(xe(r.sharedMessages)){const _=r.sharedMessages;h=Object.keys(_).reduce((V,P)=>{const $=V[P]||(V[P]={});return We($,_[P]),V},h||{})}const{__i18n:g,__root:y,__injectWithOption:b}=r,w=r.datetimeFormats,x=r.numberFormats,k=r.flatJson;return{locale:t,fallbackLocale:l,messages:h,flatJson:k,datetimeFormats:w,numberFormats:x,missing:n,missingWarn:a,fallbackWarn:o,fallbackRoot:s,fallbackFormat:i,modifiers:c,pluralRules:u,postTranslation:d,warnHtmlMessage:m,escapeParameter:f,messageResolver:r.messageResolver,inheritLocale:p,__i18n:g,__root:y,__injectWithOption:b}}function Yn(r={}){const t=qn(am(r)),{__extender:l}=r,n={id:t.id,get locale(){return t.locale.value},set locale(a){t.locale.value=a},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(a){t.fallbackLocale.value=a},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(a){t.setMissingHandler(a)},get silentTranslationWarn(){return Ce(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(a){t.missingWarn=Ce(a)?!a:a},get silentFallbackWarn(){return Ce(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(a){t.fallbackWarn=Ce(a)?!a:a},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(a){t.fallbackFormat=a},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(a){t.setPostTranslationHandler(a)},get sync(){return t.inheritLocale},set sync(a){t.inheritLocale=a},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(a){t.warnHtmlMessage=a!=="off"},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(a){t.escapeParameter=a},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t(...a){return Reflect.apply(t.t,t,[...a])},rt(...a){return Reflect.apply(t.rt,t,[...a])},te(a,o){return t.te(a,o)},tm(a){return t.tm(a)},getLocaleMessage(a){return t.getLocaleMessage(a)},setLocaleMessage(a,o){t.setLocaleMessage(a,o)},mergeLocaleMessage(a,o){t.mergeLocaleMessage(a,o)},d(...a){return Reflect.apply(t.d,t,[...a])},getDateTimeFormat(a){return t.getDateTimeFormat(a)},setDateTimeFormat(a,o){t.setDateTimeFormat(a,o)},mergeDateTimeFormat(a,o){t.mergeDateTimeFormat(a,o)},n(...a){return Reflect.apply(t.n,t,[...a])},getNumberFormat(a){return t.getNumberFormat(a)},setNumberFormat(a,o){t.setNumberFormat(a,o)},mergeNumberFormat(a,o){t.mergeNumberFormat(a,o)}};return n.__extender=l,process.env.NODE_ENV!=="production"&&(n.__enableEmitter=a=>{const o=t;o[pr]&&o[pr](a)},n.__disableEmitter=()=>{const a=t;a[Yr]&&a[Yr]()}),n}function om(r,t,l){return{beforeCreate(){const n=e.getCurrentInstance();if(!n)throw ut(Le.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const o=a.i18n;if(a.__i18n&&(o.__i18n=a.__i18n),o.__root=t,this===this.$root)this.$i18n=cs(r,o);else{o.__injectWithOption=!0,o.__extender=l.__vueI18nExtend,this.$i18n=Yn(o);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=cs(r,a);else{this.$i18n=Yn({__i18n:a.__i18n,__injectWithOption:!0,__extender:l.__vueI18nExtend,__root:t});const o=this.$i18n;o.__extender&&(o.__disposer=o.__extender(this.$i18n))}else this.$i18n=r;a.__i18nGlobal&&Jo(t,a,a),this.$t=(...o)=>this.$i18n.t(...o),this.$rt=(...o)=>this.$i18n.rt(...o),this.$te=(o,s)=>this.$i18n.te(o,s),this.$d=(...o)=>this.$i18n.d(...o),this.$n=(...o)=>this.$i18n.n(...o),this.$tm=o=>this.$i18n.tm(o),l.__setInstance(n,this.$i18n)},mounted(){if(process.env.NODE_ENV!=="production"&&this.$el&&this.$i18n){const n=this.$i18n;this.$el.__VUE_I18N__=n.__composer;const a=this.__v_emitter=Nn();n.__enableEmitter&&n.__enableEmitter(a),a.on("*",Qr)}},unmounted(){const n=e.getCurrentInstance();if(!n)throw ut(Le.UNEXPECTED_ERROR);const a=this.$i18n;process.env.NODE_ENV!=="production"&&this.$el&&this.$el.__VUE_I18N__&&(this.__v_emitter&&(this.__v_emitter.off("*",Qr),delete this.__v_emitter),this.$i18n&&(a.__disableEmitter&&a.__disableEmitter(),delete this.$el.__VUE_I18N__)),delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),l.__deleteInstance(n),delete this.$i18n}}}function cs(r,t){r.locale=t.locale||r.locale,r.fallbackLocale=t.fallbackLocale||r.fallbackLocale,r.missing=t.missing||r.missing,r.silentTranslationWarn=t.silentTranslationWarn||r.silentFallbackWarn,r.silentFallbackWarn=t.silentFallbackWarn||r.silentFallbackWarn,r.formatFallbackMessages=t.formatFallbackMessages||r.formatFallbackMessages,r.postTranslation=t.postTranslation||r.postTranslation,r.warnHtmlInMessage=t.warnHtmlInMessage||r.warnHtmlInMessage,r.escapeParameterHtml=t.escapeParameterHtml||r.escapeParameterHtml,r.sync=t.sync||r.sync,r.__composer[Xo](t.pluralizationRules||r.pluralizationRules);const l=Hn(r.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(l).forEach(n=>r.mergeLocaleMessage(n,l[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>r.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>r.mergeNumberFormat(n,t.numberFormats[n])),r}const Xn={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:r=>r==="parent"||r==="global",default:"parent"},i18n:{type:Object}};function sm({slots:r},t){return t.length===1&&t[0]==="default"?(r.default?r.default():[]).reduce((n,a)=>[...n,...a.type===e.Fragment?a.children:[a]],[]):t.reduce((l,n)=>{const a=r[n];return a&&(l[n]=a()),l},Ae())}function ds(){return e.Fragment}const us=e.defineComponent({name:"i18n-t",props:We({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:r=>Ke(r)||!isNaN(r)}},Xn),setup(r,t){const{slots:l,attrs:n}=t,a=r.i18n||Be({useScope:r.scope,__useComponent:!0});return()=>{const o=Object.keys(l).filter(m=>m[0]!=="_"),s=Ae();r.locale&&(s.locale=r.locale),r.plural!==void 0&&(s.plural=J(r.plural)?+r.plural:r.plural);const i=sm(t,o),c=a[Rn](r.keypath,i,s),u=We(Ae(),n),d=J(r.tag)||Ee(r.tag)?r.tag:ds();return e.h(d,u,c)}}});function im(r){return Pe(r)&&!J(r[0])}function ms(r,t,l,n){const{slots:a,attrs:o}=t;return()=>{const s={part:!0};let i=Ae();r.locale&&(s.locale=r.locale),J(r.format)?s.key=r.format:Ee(r.format)&&(J(r.format.key)&&(s.key=r.format.key),i=Object.keys(r.format).reduce((f,p)=>l.includes(p)?We(Ae(),f,{[p]:r.format[p]}):f,Ae()));const c=n(r.value,s,i);let u=[s.key];Pe(c)?u=c.map((f,p)=>{const h=a[f.type],g=h?h({[f.type]:f.value,index:p,parts:c}):[f.value];return im(g)&&(g[0].key=`${f.type}-${p}`),g}):J(c)&&(u=[c]);const d=We(Ae(),o),m=J(r.tag)||Ee(r.tag)?r.tag:ds();return e.h(m,d,u)}}const ps=e.defineComponent({name:"i18n-n",props:We({value:{type:Number,required:!0},format:{type:[String,Object]}},Xn),setup(r,t){const l=r.i18n||Be({useScope:r.scope,__useComponent:!0});return ms(r,t,jo,(...n)=>l[jn](...n))}});function cm(r,t){const l=r;if(r.mode==="composition")return l.__getInstance(t)||r.global;{const n=l.__getInstance(t);return n!=null?n.__composer:r.global.__composer}}function dm(r){const t=s=>{process.env.NODE_ENV!=="production"&&Vn(Xr(Lt.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE));const{instance:i,value:c}=s;if(!i||!i.$)throw ut(Le.UNEXPECTED_ERROR);const u=cm(r,i.$),d=fs(c);return[Reflect.apply(u.t,u,[...hs(d)]),u]};return{created:(s,i)=>{const[c,u]=t(i);vt&&r.global===u&&(s.__i18nWatcher=e.watch(u.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=u,s.textContent=c},unmounted:s=>{vt&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const c=s.__composer,u=fs(i);s.textContent=Reflect.apply(c.t,c,[...hs(u)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function fs(r){if(J(r))return{path:r};if(xe(r)){if(!("path"in r))throw ut(Le.REQUIRED_VALUE,"path");return r}else throw ut(Le.INVALID_VALUE)}function hs(r){const{path:t,locale:l,args:n,choice:a,plural:o}=r,s={},i=n||{};return J(l)&&(s.locale=l),Ke(a)&&(s.plural=a),Ke(o)&&(s.plural=o),[t,i,s]}function um(r,t,...l){const n=xe(l[0])?l[0]:{};(Ce(n.globalInstall)?n.globalInstall:!0)&&([us.name,"I18nT"].forEach(o=>r.component(o,us)),[ps.name,"I18nN"].forEach(o=>r.component(o,ps)),[ys.name,"I18nD"].forEach(o=>r.component(o,ys))),r.directive("t",dm(t))}const mm=Mt("global-vue-i18n");function pm(r={}){const t=__VUE_I18N_LEGACY_API__&&Ce(r.legacy)?r.legacy:__VUE_I18N_LEGACY_API__;process.env.NODE_ENV!=="production"&&t&&Vn(Xr(Lt.DEPRECATE_LEGACY_MODE));const l=Ce(r.globalInjection)?r.globalInjection:!0,n=new Map,[a,o]=fm(r,t),s=Mt(process.env.NODE_ENV!=="production"?"vue-i18n":"");function i(m){return n.get(m)||null}function c(m,f){n.set(m,f)}function u(m){n.delete(m)}const d={get mode(){return __VUE_I18N_LEGACY_API__&&t?"legacy":"composition"},async install(m,...f){if(process.env.NODE_ENV!=="production"&&(m.__VUE_I18N__=d),m.__VUE_I18N_SYMBOL__=s,m.provide(m.__VUE_I18N_SYMBOL__,d),xe(f[0])){const g=f[0];d.__composerExtend=g.__composerExtend,d.__vueI18nExtend=g.__vueI18nExtend}let p=null;!t&&l&&(p=_m(m,d.global)),__VUE_I18N_FULL_INSTALL__&&um(m,d,...f),__VUE_I18N_LEGACY_API__&&t&&m.mixin(om(o,o.__composer,d));const h=m.unmount;if(m.unmount=()=>{p&&p(),d.dispose(),h()},process.env.NODE_ENV!=="production"){if(!await Wu(m,d))throw ut(Le.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN);const y=Nn();if(t){const b=o;b.__enableEmitter&&b.__enableEmitter(y)}else{const b=o;b[pr]&&b[pr](y)}y.on("*",Qr)}},get global(){return o},dispose(){a.stop()},__instances:n,__getInstance:i,__setInstance:c,__deleteInstance:u};return d}function Be(r={}){const t=e.getCurrentInstance();if(t==null)throw ut(Le.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw ut(Le.NOT_INSTALLED);const l=hm(t),n=ym(l),a=Qo(t),o=gm(r,a);if(o==="global")return Jo(n,r,a),n;if(o==="parent"){let c=bm(l,t,r.__useComponent);return c==null&&(process.env.NODE_ENV!=="production"&&tr(Xr(Lt.NOT_FOUND_PARENT_SCOPE)),c=n),c}const s=l;let i=s.__getInstance(t);if(i==null){const c=We({},r);"__i18n"in a&&(c.__i18n=a.__i18n),n&&(c.__root=n),i=qn(c),s.__composerExtend&&(i[zn]=s.__composerExtend(i)),xm(s,t,i),s.__setInstance(t,i)}return i}function fm(r,t){const l=e.effectScope(),n=__VUE_I18N_LEGACY_API__&&t?l.run(()=>Yn(r)):l.run(()=>qn(r));if(n==null)throw ut(Le.UNEXPECTED_ERROR);return[l,n]}function hm(r){const t=e.inject(r.isCE?mm:r.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw ut(r.isCE?Le.NOT_INSTALLED_WITH_PROVIDE:Le.UNEXPECTED_ERROR);return t}function gm(r,t){return Sl(r)?"__i18n"in t?"local":"global":r.useScope?r.useScope:"local"}function ym(r){return r.mode==="composition"?r.global:r.global.__composer}function bm(r,t,l=!1){let n=null;const a=t.root;let o=km(t,l);for(;o!=null;){const s=r;if(r.mode==="composition")n=s.__getInstance(o);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(o);i!=null&&(n=i.__composer,l&&n&&!n[Zo]&&(n=null))}if(n!=null||a===o)break;o=o.parent}return n}function km(r,t=!1){return r==null?null:t&&r.vnode.ctx||r.parent}function xm(r,t,l){let n=null;e.onMounted(()=>{if(process.env.NODE_ENV!=="production"&&t.vnode.el){t.vnode.el.__VUE_I18N__=l,n=Nn();const a=l;a[pr]&&a[pr](n),n.on("*",Qr)}},t),e.onUnmounted(()=>{const a=l;process.env.NODE_ENV!=="production"&&t.vnode.el&&t.vnode.el.__VUE_I18N__&&(n&&n.off("*",Qr),a[Yr]&&a[Yr](),delete t.vnode.el.__VUE_I18N__),r.__deleteInstance(t);const o=a[zn];o&&(o(),delete a[zn])},t)}const wm=["locale","fallbackLocale","availableLocales"],gs=["t","rt","d","n","tm","te"];function _m(r,t){const l=Object.create(null);return wm.forEach(a=>{const o=Object.getOwnPropertyDescriptor(t,a);if(!o)throw ut(Le.UNEXPECTED_ERROR);const s=e.isRef(o.value)?{get(){return o.value.value},set(i){o.value.value=i}}:{get(){return o.get&&o.get()}};Object.defineProperty(l,a,s)}),r.config.globalProperties.$i18n=l,gs.forEach(a=>{const o=Object.getOwnPropertyDescriptor(t,a);if(!o||!o.value)throw ut(Le.UNEXPECTED_ERROR);Object.defineProperty(r.config.globalProperties,`$${a}`,o)}),()=>{delete r.config.globalProperties.$i18n,gs.forEach(a=>{delete r.config.globalProperties[`$${a}`]})}}const ys=e.defineComponent({name:"i18n-d",props:We({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Xn),setup(r,t){const l=r.i18n||Be({useScope:r.scope,__useComponent:!0});return ms(r,t,Po,(...n)=>l[Un](...n))}});if(Uu(),uu(zd),mu(ou),pu(Eo),process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__){const r=ur();r.__INTLIFY__=!0,Hd(r.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}process.env.NODE_ENV;const Em={class:"flex items-center justify-between"},Cm={class:"flex items-center gap-2"},Vm={class:"text-4xl font-bold text-slate-800 dark:text-slate-100 mb-2"},Nm=["href","title"],vm={class:"text-lg text-slate-600 dark:text-slate-300"},Bm=e.defineComponent({__name:"DashboardHeader",setup(r){const{locale:t}=Be();return(l,n)=>{const a=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",Em,[e.createElementVNode("div",null,[e.createElementVNode("div",Cm,[e.createElementVNode("h1",Vm,e.toDisplayString(l.$t("cms.dashboard.title")),1),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(t)}/get-started/app-overview`,target:"_blank",title:l.$t("cms.guide.appOverview")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,Nm)]),e.createElementVNode("div",vm,e.toDisplayString(l.$t("cms.dashboard.description")),1)]),e.createElementVNode("div",null,[e.createVNode(a,{to:"/settings/collections",class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 shadow h-9 px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white"},{default:e.withCtx(()=>[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(l.$t("cms.dashboard.newCollection")),1)]),_:1})])])}}}),Sm={class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-300 transform hover:scale-105"},Am={class:"p-6"},Dm={class:"flex items-start justify-between"},Mm={class:"flex-1"},Tm={class:"flex items-center space-x-2 mb-2"},Lm={class:"text-sm font-medium text-slate-600 dark:text-slate-400"},$m={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-1"},Fm={class:"text-xs text-slate-500 dark:text-slate-400 mb-3"},Im=e.defineComponent({__name:"StatCard",props:{stat:{}},setup(r){const t=l=>({"file-text":Hr,users:_n,image:Vl,eye:yn})[l]||Hr;return(l,n)=>(e.openBlock(),e.createElementBlock("div",Sm,[e.createElementVNode("div",Am,[e.createElementVNode("div",Dm,[e.createElementVNode("div",Mm,[e.createElementVNode("div",Tm,[e.createElementVNode("div",{class:e.normalizeClass(`p-2 rounded-lg bg-${l.stat.color}-50 dark:bg-${l.stat.color}-900/20`)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t(l.stat.icon)),{class:e.normalizeClass(`w-5 h-5 text-${l.stat.color}-600`)},null,8,["class"]))],2),e.createElementVNode("p",Lm,e.toDisplayString(l.stat.title),1)]),e.createElementVNode("p",$m,e.toDisplayString(l.stat.value),1),e.createElementVNode("p",Fm,e.toDisplayString(l.stat.description),1)])])])]))}}),Om={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6"},Pm=e.defineComponent({__name:"StatsGrid",props:{stats:{}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",Om,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.stats,n=>(e.openBlock(),e.createBlock(Im,{key:n.id,stat:n},null,8,["stat"]))),128))]))}}),Rm={class:"p-4 hover:bg-slate-50 dark:hover:bg-slate-700/50 transition-colors"},Um={class:"flex items-center justify-between"},jm={class:"flex-1"},zm={class:"flex items-center space-x-3 mb-2"},Hm={class:"inline-flex items-center rounded-md border px-2.5 py-0.5 font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 text-xs bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-600 dark:text-slate-300"},qm={class:"font-semibold text-slate-800 dark:text-slate-100 mb-1"},Km={class:"flex items-center space-x-4 text-sm text-slate-500 dark:text-slate-400"},Gm={class:"flex items-center"},Wm={class:"flex items-center"},Ym={class:"flex items-center"},Xm={class:"flex items-center space-x-2"},Zm=e.defineComponent({__name:"ContentItem",props:{item:{}},setup(r){const t=n=>{const a={published:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-green-100 dark:bg-green-900/30 text-green-800 dark:text-green-300",draft:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-yellow-100 dark:bg-yellow-900/30 text-yellow-800 dark:text-yellow-300",review:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-blue-100 dark:bg-blue-900/30 text-blue-800 dark:text-blue-300"};return a[n]||a.draft},l=n=>{if(!n)return"--.--.--";const a=new Date(n);return new Intl.DateTimeFormat("en-US",{year:"numeric",month:"short",day:"numeric"}).format(a)};return(n,a)=>{const o=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",Rm,[e.createElementVNode("div",Um,[e.createElementVNode("div",jm,[e.createElementVNode("div",zm,[e.createElementVNode("div",Hm,e.toDisplayString(n.item.type),1),e.createElementVNode("div",{class:e.normalizeClass(t(n.item.status))},e.toDisplayString(n.item.status||"--"),3)]),e.createElementVNode("h3",qm,e.toDisplayString(n.item.title||"--"),1),e.createElementVNode("div",Km,[e.createElementVNode("span",Gm,[e.createVNode(e.unref(_n),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(n.item.author||"--"),1)]),e.createElementVNode("span",Wm,[e.createVNode(e.unref(Cl),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(l(n.item.updated_at)||"--.--.--"),1)]),e.createElementVNode("span",Ym,[e.createVNode(e.unref(yn),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(n.item.views||"--")+" "+e.toDisplayString(n.$t("cms.dashboard.views")),1)])])]),e.createElementVNode("div",Xm,[e.createVNode(o,{to:`/collections/${n.item.object_id}/${n.item.content_id}`,class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors border shadow-sm rounded-md text-xs h-8 w-8 p-0 bg-white border-slate-300 hover:text-accent-foreground hover:bg-slate-50 dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600"},{default:e.withCtx(()=>[e.createVNode(e.unref(Nr),{class:"w-4 h-4 dark:text-blue-50"})]),_:1},8,["to"])])])])}}}),Qm={class:"lg:col-span-2"},Jm={class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm"},ep={class:"flex flex-col space-y-1.5 p-6 border-b border-slate-200 dark:border-slate-700 bg-gradient-to-r from-slate-50 dark:from-slate-800 to-white dark:to-slate-800"},tp={class:"flex items-center justify-between"},rp={class:"tracking-tight text-xl font-semibold text-slate-800 dark:text-slate-100 flex items-center"},lp={class:"p-0"},np={class:"divide-y divide-slate-100 dark:divide-slate-700"},ap=e.defineComponent({__name:"RecentContent",props:{content:{}},setup(r){const t=qe.useRouter(),l=n=>{t.push(n)};return(n,a)=>(e.openBlock(),e.createElementBlock("div",Qm,[e.createElementVNode("div",Jm,[e.createElementVNode("div",ep,[e.createElementVNode("div",tp,[e.createElementVNode("h3",rp,[e.createVNode(e.unref($c),{class:"w-5 h-5 mr-2"}),e.createTextVNode(" "+e.toDisplayString(n.$t("cms.dashboard.recentContent")),1)]),e.createElementVNode("button",{onClick:a[0]||(a[0]=o=>l("/settings/collections")),class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border shadow-sm hover:text-accent-foreground h-8 rounded-md px-3 text-xs bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-slate-600"},e.toDisplayString(n.$t("cms.dashboard.viewAll")),1)])]),e.createElementVNode("div",lp,[e.createElementVNode("div",np,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.content,o=>(e.openBlock(),e.createBlock(Zm,{key:o.id,item:o},null,8,["item"]))),128))])])])]))}}),op={class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm"},sp={class:"flex flex-col space-y-1.5 p-6 border-b border-slate-200 dark:border-slate-700 bg-gradient-to-r from-slate-50 dark:from-slate-800 to-white dark:to-slate-800"},ip={class:"tracking-tight text-lg font-semibold text-slate-800 dark:text-slate-100 flex items-center"},cp={class:"p-4"},dp={class:"grid grid-cols-2 gap-3"},up=["onClick"],mp={class:"p-2 rounded-lg bg-blue-50 dark:bg-blue-900/20 mb-2 w-fit"},pp={class:"font-medium text-slate-800 dark:text-slate-100 text-sm mb-1 group-hover:text-slate-900 dark:group-hover:text-slate-50"},fp={class:"text-xs text-slate-500 dark:text-slate-400 group-hover:text-slate-600 dark:group-hover:text-slate-300"},hp=e.defineComponent({__name:"QuickActions",setup(r){const t=qe.useRouter(),{t:l}=Be(),n=[{id:"create-article",title:l("cms.dashboard.createArticle"),description:l("cms.dashboard.createArticleDescription"),icon:Hr,iconColor:"text-blue-500",link:"/collections/pages/create"},{id:"upload-media",title:l("cms.dashboard.uploadMedia"),description:l("cms.dashboard.uploadMediaDescription"),icon:Vl,iconColor:"text-purple-500",link:"/media"},{id:"manage-users",title:l("cms.dashboard.manageUsers"),description:l("cms.dashboard.manageUsersDescription"),icon:_n,iconColor:"text-green-500",link:"/settings/users"}],a=o=>{o&&t.push(o)};return(o,s)=>(e.openBlock(),e.createElementBlock("div",op,[e.createElementVNode("div",sp,[e.createElementVNode("h3",ip,[e.createVNode(e.unref(Kc),{class:"w-5 h-5 mr-2"}),e.createTextVNode(" "+e.toDisplayString(o.$t("cms.dashboard.quickActions")),1)])]),e.createElementVNode("div",cp,[e.createElementVNode("div",dp,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,i=>e.createElementVNode("button",{key:i.id,class:"p-3 rounded-lg border border-slate-200 transition-all duration-200 text-left group hover:bg-slate-50 hover:shadow-md dark:border-slate-600 bg-white dark:bg-slate-700 dark:hover:bg-slate-600",onClick:c=>a(i==null?void 0:i.link)},[e.createElementVNode("div",mp,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i==null?void 0:i.icon),{class:e.normalizeClass(`w-4 h-4 ${i==null?void 0:i.iconColor}`)},null,8,["class"]))]),e.createElementVNode("h3",pp,e.toDisplayString(i==null?void 0:i.title),1),e.createElementVNode("p",fp,e.toDisplayString(i==null?void 0:i.description),1)],8,up)),64))])])]))}}),gp={class:"w-full max-w-7xl mx-auto space-y-8"},yp={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},Zn=e.defineComponent({__name:"Dashboard",setup(r){const{t}=Be(),l=e.ref([{id:"total-content",title:t("cms.dashboard.totalContent"),value:"2,847",description:t("cms.dashboard.articlesPostsPages"),change:{value:"+12.5%",isPositive:!0},icon:"file-text",color:"blue"},{id:"active-users",title:t("cms.dashboard.activeUsers"),value:"1,234",description:t("cms.dashboard.monthlyActiveUsers"),change:{value:"+8.2%",isPositive:!0},icon:"users",color:"emerald"},{id:"media-files",title:t("cms.dashboard.mediaFiles"),value:"5,692",description:t("cms.dashboard.imagesVideosDocs"),change:{value:"+23.1%",isPositive:!0},icon:"image",color:"purple"},{id:"new-media",title:t("cms.dashboard.newMediaFiles"),value:"89.2K",description:t("cms.dashboard.thisMonth"),change:{value:"-2.4%",isPositive:!1},icon:"eye",color:"orange"}]),n=e.ref([{id:1,type:"Article",status:"published",title:t("cms.dashboard.gettingStartedWithNextJs14"),author:t("cms.dashboard.sarahJohnson"),updated_at:"2024-01-15",views:1247},{id:2,type:"Post",status:"draft",title:t("cms.dashboard.advancedReactPatterns"),author:t("cms.dashboard.mikeChen"),updated_at:"2024-01-14",views:0},{id:3,type:"Article",status:"published",title:t("cms.dashboard.uiUxDesignPrinciples"),author:t("cms.dashboard.emmaWilson"),updated_at:"2024-01-13",views:892},{id:4,type:"Post",status:"review",title:t("cms.dashboard.databaseOptimizationTips"),author:t("cms.dashboard.alexRodriguez"),updated_at:"2024-01-12",views:0}]),a=s=>{l.value=l.value.map(i=>{var c,u,d,m;switch(i.id){case"total-content":return{...i,value:((c=s.totalContent)==null?void 0:c.toLocaleString())??i.value};case"active-users":return{...i,value:((u=s.totalUsers)==null?void 0:u.toLocaleString())??i.value};case"media-files":return{...i,value:((d=s.totalMediaFiles)==null?void 0:d.toLocaleString())??i.value};case"new-media":return{...i,value:((m=s.newMediaFiles)==null?void 0:m.toLocaleString())??i.value};default:return i}})},o=async()=>{const i=await(await fetch("api/cms-stat")).json();n.value=i.recentContent,a(i.stat)};return e.onMounted(()=>{o()}),(s,i)=>(e.openBlock(),e.createElementBlock("div",gp,[e.createVNode(Bm),e.createVNode(Pm,{stats:l.value},null,8,["stats"]),e.createElementVNode("div",yp,[e.createVNode(ap,{content:n.value,class:"lg:col-span-2"},null,8,["content"]),e.createElementVNode("div",null,[e.createVNode(hp)])])]))}}),bp={class:"rounded-xl text-card-foreground shadow-lg bg-white dark:bg-slate-800 backdrop-blur-sm border-2 border-dashed border-slate-300 dark:border-slate-600"},kp={class:"p-12 text-center"},xp={class:"text-lg font-medium text-slate-600 dark:text-slate-300 mb-2"},wp={class:"text-slate-500 dark:text-slate-400 mb-6"},bs={__name:"EmptyData",props:{title:{type:String,default:()=>"emptyData.title"},description:{type:String,default:()=>"emptyData.description"},buttonText:{type:String,default:()=>"emptyData.buttonText"},showButton:{type:Boolean,default:!0}},emits:["action"],setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",bp,[e.createElementVNode("div",kp,[l[2]||(l[2]=e.createElementVNode("svg",{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-layers w-12 h-12 mx-auto mb-4 text-slate-400 dark:text-slate-500"},[e.createElementVNode("path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z"}),e.createElementVNode("path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65"}),e.createElementVNode("path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65"})],-1)),e.createElementVNode("h3",xp,e.toDisplayString(t.$t(r.title)),1),e.createElementVNode("p",wp,e.toDisplayString(t.$t(r.description)),1),r.showButton?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:l[0]||(l[0]=n=>t.$emit("action")),class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 shadow h-9 px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white"},[l[1]||(l[1]=e.createElementVNode("svg",{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-plus w-4 h-4 mr-2"},[e.createElementVNode("path",{d:"M5 12h14"}),e.createElementVNode("path",{d:"M12 5v14"})],-1)),e.createTextVNode(" "+e.toDisplayString(t.$t(r.buttonText)),1)])):e.createCommentVNode("",!0)])]))}},_p={class:"space-y-6 max-w-7xl mx-auto"},Ep={class:"flex items-center justify-between mb-8"},Cp={class:"flex gap-4"},Vp={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-2"},Np={class:"text-slate-600 dark:text-slate-300"},vp=["href","title"],Bp={class:"relative w-full max-w-sm"},Sp={class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},Ap=["placeholder"],Dp={key:0},Mp={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 mb-6"},Tp=["onClick"],Lp={class:"flex items-start justify-between"},$p={class:"flex items-start gap-3"},Fp={class:"text-sm font-semibold text-gray-800 mb-1"},Ip={class:"text-xs text-gray-600"},Op={class:"flex items-center gap-2"},Pp={class:"text-xs text-gray-500 whitespace-nowrap"},Rp={key:1,class:"flex items-center justify-center min-h-[400px]"},Qn=e.defineComponent({__name:"CollectionsPage",setup(r){const{t,locale:l}=Be(),n=qe.useRouter();e.inject("fetchContentTypes");const a=e.ref([]),o=e.ref(""),s=e.computed(()=>{const u=a.value.filter(p=>p.type!=="single"),d=o.value.trim().toLowerCase();return[...d?u.filter(p=>[p==null?void 0:p.title,p==null?void 0:p.name,p==null?void 0:p.id,p==null?void 0:p.description].filter(Boolean).join(" ").toLowerCase().includes(d)):u].sort((p,h)=>p.id==="pages"?-1:h.id==="pages"?1:0)});async function i(){try{const u=await fetch("/api/cms-type?type=collection");if(!u.ok)throw new Error("Failed to fetch collections");const d=await u.json();a.value=d.rows||[]}catch(u){console.error("Error fetching collections:",u)}}const c=u=>{n.push(`/collections/${u.id}`)};return e.onMounted(()=>{i()}),(u,d)=>(e.openBlock(),e.createElementBlock("div",_p,[e.createElementVNode("div",Ep,[e.createElementVNode("div",Cp,[e.createElementVNode("div",null,[e.createElementVNode("h1",Vp,e.toDisplayString(u.$t("cms.navigation.collections")),1),e.createElementVNode("p",Np,e.toDisplayString(u.$t("cms.collections.selectCollection")),1)]),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/collections/`,target:"_blank",title:u.$t("cms.guide.collections"),class:"mt-2"},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,vp)]),e.createElementVNode("div",Bp,[e.createElementVNode("div",Sp,[e.createVNode(e.unref(wn),{class:"w-5 h-5 text-gray-400"})]),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=m=>o.value=m),type:"text",class:"block w-full py-2 pl-10 pr-3 leading-5 text-gray-900 placeholder-gray-500 transition-colors bg-white border border-gray-300 rounded-md dark:border-gray-600 dark:bg-gray-700 dark:placeholder-gray-400 focus:outline-none focus:ring-sky-500 focus:border-sky-500 dark:text-white sm:text-sm",placeholder:u.$t("cms.collections.searchCollections")},null,8,Ap),[[e.vModelText,o.value]])])]),a.value.length>0?(e.openBlock(),e.createElementBlock("div",Dp,[e.createElementVNode("div",Mp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,m=>(e.openBlock(),e.createElementBlock("button",{key:m.id,onClick:f=>c(m),class:"w-full border border-gray-200 bg-white rounded-lg p-4 text-left hover:shadow-md transition-all hover:border-gray-300"},[e.createElementVNode("div",Lp,[e.createElementVNode("div",$p,[m.id==="pages"?(e.openBlock(),e.createBlock(e.unref(Cr),{key:0,class:"shrink-0 lucide lucide-page w-5 h-5 text-blue-600"})):(e.openBlock(),e.createBlock(e.unref(Vr),{key:1,class:"shrink-0 lucide lucide-layers w-5 h-5 text-blue-600"})),e.createElementVNode("div",null,[e.createElementVNode("h4",Fp,e.toDisplayString(m.title),1),e.createElementVNode("p",Ip,e.toDisplayString(m.description||"Опис відсутній"),1)])]),e.createElementVNode("div",Op,[e.createElementVNode("span",Pp,e.toDisplayString(m.entries)+" записів",1),e.createVNode(e.unref(Er),{class:"w-4 h-4 text-gray-400"})])])],8,Tp))),128))])])):(e.openBlock(),e.createElementBlock("div",Rp,[e.createVNode(bs)]))]))}}),Up={class:"text-card-foreground border-0 bg-white/80 dark:bg-slate-800/80 backdrop-blur-sm"},jp={class:"p-0"},zp={class:"table-scroll overflow-x-auto"},Hp={class:"relative w-full overflow-auto max-h-[calc(100vh-270px)]"},qp={class:"w-full caption-bottom text-sm"},Kp={class:"border-b border-slate-200 dark:border-slate-700 bg-slate-50/50 dark:bg-slate-700/50 hover:bg-slate-50/80 dark:hover:bg-slate-700/80 transition-colors"},Gp={class:"flex items-center gap-2"},Wp={class:"h-10 text-center px-4 font-semibold text-slate-700 dark:text-slate-300 max-w-32"},Yp=["onClick"],Xp={key:1,class:"whitespace-nowrap"},Zp={key:2,class:"whitespace-nowrap"},Qp={key:3,class:"flex items-center"},Jp={key:4,class:"inline-flex whitespace-nowrap items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300"},ef={key:5,class:"flex items-center"},tf={key:6,class:"flex items-center gap-3"},rf={key:8,class:"flex items-center gap-3"},lf={key:11,class:"flex items-center gap-3"},nf={class:"line-clamp-2"},af={class:"flex justify-end py-2 px-4 align-middle max-w-40"},of={class:"flex items-center justify-center gap-1"},sf=["onClick"],cf=["onClick"],Jn=e.defineComponent({__name:"UniversalTable",props:{rows:{},query:{},filterFn:{type:Function},onEdit:{type:Function},onView:{type:Function},onDelete:{type:Function},columns:{},onMore:{type:Function},customRender:{}},emits:["edit","view","delete","more"],setup(r,{emit:t}){const{t:l}=Be();e.ref(null);const n=r,a=t,o=e.computed(()=>!n.query||!n.filterFn?n.rows:n.rows.filter(m=>n.filterFn(m,n.query))),s=m=>{if(!m)return"";const f=new Date(m);return isNaN(f.getTime())?"":m.includes("T")||m.includes(" ")||m.includes(":")?f.toLocaleString("uk-UA",{dateStyle:"medium",timeStyle:"medium"}):f.toLocaleDateString("uk-UA",{dateStyle:"medium"})},i=m=>{switch(m){case"published":return{icon:Wa,text:l("cms.common.status.published"),classes:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-200 border-green-200 dark:border-green-700"};case"draft":return{icon:Nr,text:l("cms.common.status.draft"),classes:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-200 border-yellow-200 dark:border-yellow-700"};case"archived":return{icon:ro,text:l("cms.common.status.archived"),classes:"bg-gray-100 text-gray-800 dark:bg-gray-900/30 dark:text-gray-300 border-gray-200 dark:border-gray-700"};default:return null}},c=(m,f)=>{switch(m){case"edit":a("edit",f),n.onEdit&&n.onEdit(f);break;case"view":a("view",f),n.onView&&n.onView(f);break;case"delete":a("delete",f);break;case"more":a("more",f),n.onMore&&n.onMore(f);break}},u=m=>{c("edit",m)},d=m=>{const f=new Date,p=new Date(m),h=f-p,g=Math.floor(h/1e3),y=Math.floor(g/60),b=Math.floor(y/60),w=Number(Math.floor(b/24)),x=Number(Math.floor(w/7));return x>=2?l("cms.table.time.weeksAgo",{count:x}):x===1?l("cms.table.time.weekAgo"):w>=2?l("cms.table.time.daysAgo",{count:w}):w===1?l("cms.table.time.dayAgo"):b>=2?l("cms.table.time.hoursAgo",{count:b}):b===1?l("cms.table.time.hourAgo"):y>=2?l("cms.table.time.minutesAgo",{count:y}):l(y===1?"cms.table.time.minuteAgo":"cms.table.time.justNow")};return(m,f)=>(e.openBlock(),e.createElementBlock("div",Up,[e.createElementVNode("div",jp,[e.createElementVNode("div",zp,[e.createElementVNode("div",Hp,[e.createElementVNode("table",qp,[e.createElementVNode("thead",null,[e.createElementVNode("tr",Kp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.columns,p=>(e.openBlock(),e.createElementBlock("th",{key:p.name,class:e.normalizeClass(["h-10 px-4 text-left align-middle font-semibold text-slate-700 dark:text-slate-300 max-w-80",{"min-w-[200px]":["title","name"].includes(p.name),"min-w-[150px]":p.name==="slug","min-w-[250px]":p.name==="description"}])},[e.createElementVNode("div",Gp,[p.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p.icon),{key:0,class:"w-5 h-5"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(p.label||p.title||p.ua||p.name),1)])],2))),128)),e.createElementVNode("th",Wp,e.toDisplayString(m.$t("cms.table.actions")),1)])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,p=>(e.openBlock(),e.createElementBlock("tr",{key:p.id||p._id||p.name,class:"transition-all duration-200 hover:bg-slate-50/60 dark:hover:bg-slate-700/60"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.columns,(h,g)=>{var y,b,w,x,k;return e.openBlock(),e.createElementBlock("td",{key:h.name,class:e.normalizeClass(["py-2 px-4 align-middle max-w-80",{"font-medium text-slate-800 dark:text-white cursor-pointer":g===0,"text-slate-600 dark:text-slate-400 font-mono text-sm":g!==0}]),onClick:_=>g===0?u(p):void 0},[m.customRender&&m.customRender[h.name]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m.customRender[h.name](p[h.name],p)),{key:0})):e.createCommentVNode("",!0),["published_at","publish_at","created_at","date"].includes(h.name)&&p[h.name]?(e.openBlock(),e.createElementBlock("span",Xp,e.toDisplayString(s(p[h.name])),1)):["updated_at","lastModified","last_edit"].includes(h.name)?(e.openBlock(),e.createElementBlock("span",Zp,e.toDisplayString(d(p[h.name])||"--"),1)):h.name==="views"?(e.openBlock(),e.createElementBlock("div",Qp,[e.createVNode(e.unref(yn),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(((b=(y=p[h.name])==null?void 0:y.toLocaleString)==null?void 0:b.call(y))??p[h.name]),1)])):["entries","fields"].includes(h.name)?(e.openBlock(),e.createElementBlock("div",Jp,e.toDisplayString(p[h.name]||"-"),1)):h.name==="type"?(e.openBlock(),e.createElementBlock("div",ef,[e.createElementVNode("div",{class:e.normalizeClass(["whitespace-nowrap inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors border-transparent hover:bg-secondary/80",p[h.name]==="pages"?"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300":"bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-300"])},e.toDisplayString(p[h.name]||"-"),3)])):h.name==="name"?(e.openBlock(),e.createElementBlock("div",tf,[p.type==="single"?(e.openBlock(),e.createBlock(e.unref(Cr),{key:0,class:"shrink-0 lucide lucide-page w-5 h-5 text-blue-600"})):(e.openBlock(),e.createBlock(e.unref(Vr),{key:1,class:"shrink-0 lucide lucide-layers w-5 h-5 text-blue-600"})),e.createTextVNode(" "+e.toDisplayString(p[h.name]),1)])):h.name==="status"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:7},[i(p[h.name])?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["whitespace-nowrap rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors hover:bg-secondary/80 flex items-center w-fit bg-green-100 text-green-800 border-green-200 dark:bg-green-900/30 dark:text-green-300 dark:border-green-700",(w=i(p[h.name]))==null?void 0:w.classes])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((x=i(p[h.name]))==null?void 0:x.icon),{class:"w-3 h-3 mr-1"})),e.createTextVNode(" "+e.toDisplayString((k=i(p[h.name]))==null?void 0:k.text),1)],2)):e.createCommentVNode("",!0)],64)):h.name==="slug"?(e.openBlock(),e.createElementBlock("div",rf,e.toDisplayString(p[h.name]?"/"+p[h.name]:"-"),1)):h.name==="color"?(e.openBlock(),e.createElementBlock("span",{key:9,class:e.normalizeClass(["w-4 h-4 rounded-full block ml-2","bg-["+p[h.name]+"]"])},null,2)):h.name==="enabled"?(e.openBlock(),e.createElementBlock("span",{key:10,class:e.normalizeClass(["whitespace-nowrap rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors hover:bg-secondary/80 flex items-center w-fit",p[h.name]?"bg-green-100 text-green-800 border-green-200":"bg-red-100 text-red-800 border-red-200"])},e.toDisplayString(p[h.name]?"Доступ":"Заборонено"),3)):(e.openBlock(),e.createElementBlock("div",lf,[e.createElementVNode("p",nf,e.toDisplayString(p[h.name]||"-"),1)]))],10,Yp)}),128)),e.createElementVNode("td",af,[e.createElementVNode("div",of,[e.createElementVNode("button",{onClick:e.withModifiers(h=>c("edit",p),["stop"]),class:"inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:text-slate-200 hover:border-blue-300 hover:bg-blue-50 hover:text-blue-600",title:"Edit"},[e.createVNode(e.unref(kn),{class:"text-slate-800 dark:text-slate-200 w-4 h-4 group-hover:text-green-600 dark:group-hover:text-blue-50"})],8,sf),e.createElementVNode("button",{onClick:e.withModifiers(h=>c("delete",p),["stop"]),class:"inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:text-slate-200 hover:border-blue-300 hover:bg-blue-50 hover:text-blue-600",title:"Preview"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4 text-slate-800 dark:text-slate-200 group-hover:text-red-600 dark:group-hover:text-blue-50"})],8,cf),e.renderSlot(m.$slots,"actions",{row:p})])])]))),128))])])])])])]))}}),df={class:"flex items-center justify-between px-6 py-4 border-t border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-800"},uf={class:"flex justify-between flex-1 sm:hidden"},mf={class:"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"},pf={class:"relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"},ff={class:"hidden sm:flex-1 sm:flex sm:items-center sm:justify-between"},hf={class:"text-sm text-slate-600 dark:text-slate-400"},gf={class:"font-medium text-slate-800 dark:text-slate-100"},yf={class:"font-medium text-slate-800 dark:text-slate-100"},bf={class:"relative z-0 inline-flex space-x-2 rounded-md shadow-sm","aria-label":"Pagination"},kf=["disabled"],xf={class:"sr-only"},wf={class:"space-x-1"},_f={key:0,class:"px-2 py-2 text-gray-400"},Ef=["onClick"],Cf=["disabled"],Vf={class:"sr-only"},ks=e.defineComponent({__name:"UniversalTablePagination",props:e.mergeModels({total:{},count:{},limit:{}},{page:{},pageModifiers:{}}),emits:["update:page"],setup(r){const t=e.useModel(r,"page"),l=e.computed(()=>Math.ceil(r.total/r.limit)),n=e.computed(()=>{const o=[];if(l.value<=4){for(let c=1;c<=l.value;c++)o.push(c);return o}const s=Math.max(2,t.value-2),i=Math.min(l.value-1,t.value+2);o.push(1),s>2&&o.push("ellipsis");for(let c=s;c<=i;c++)o.push(c);return i<l.value-1&&o.push("ellipsis"),o.push(l.value),o});return(a,o)=>(e.openBlock(),e.createElementBlock("div",df,[e.createElementVNode("div",uf,[e.createElementVNode("button",mf,e.toDisplayString(a.$t("cms.common.pagination.previous")),1),e.createElementVNode("button",pf,e.toDisplayString(a.$t("cms.common.pagination.next")),1)]),e.createElementVNode("div",ff,[e.createElementVNode("div",null,[e.createElementVNode("p",hf,[e.createTextVNode(e.toDisplayString(a.$t("cms.common.pagination.showing"))+" ",1),e.createElementVNode("span",gf,e.toDisplayString(a.count),1),e.createTextVNode(" "+e.toDisplayString(a.$t("cms.common.pagination.of"))+" ",1),e.createElementVNode("span",yf,e.toDisplayString(a.total),1),e.createTextVNode(" "+e.toDisplayString(a.$t("cms.common.pagination.results")),1)])]),e.createElementVNode("div",null,[e.createElementVNode("nav",bf,[e.createElementVNode("button",{onClick:o[0]||(o[0]=s=>t.value=t.value>1?t.value-1:1),disabled:t.value===1,class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors border shadow-sm rounded-md text-xs h-8 w-8 p-0 bg-white border-slate-300 text-slate-600 disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed hover:text-accent-foreground hover:bg-slate-50 dark:bg-slate-700 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-slate-600"},[e.createElementVNode("span",xf,e.toDisplayString(a.$t("cms.common.pagination.previous")),1),e.createVNode(e.unref(Ic),{class:"w-5 h-5"})],8,kf),e.createElementVNode("div",wf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s+"-"+i},[s==="ellipsis"?(e.openBlock(),e.createElementBlock("span",_f,"...")):(e.openBlock(),e.createElementBlock("button",{key:1,onClick:c=>t.value=s,class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors h-8 w-8 p-0 text-sm rounded-md",{"border shadow-sm hover:text-accent-foreground bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-600 dark:text-slate-300 hover:border-blue-600 hover:bg-slate-50 dark:hover:bg-slate-600":s!==t.value,"shadow bg-blue-600 hover:bg-blue-700 text-white border-blue-600":s===t.value}])},e.toDisplayString(s),11,Ef))],64))),128))]),e.createElementVNode("button",{onClick:o[1]||(o[1]=s=>t.value=t.value<Math.ceil(a.total/a.limit)?t.value+1:Math.ceil(a.total/a.limit)),disabled:t.value===Math.ceil(a.total/a.limit),class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors border shadow-sm rounded-md text-xs h-8 w-8 p-0 bg-white border-slate-300 text-slate-600 disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed hover:text-accent-foreground hover:bg-slate-50 dark:bg-slate-700 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-slate-600"},[e.createElementVNode("span",Vf,e.toDisplayString(a.$t("cms.common.pagination.next")),1),e.createVNode(e.unref(Er),{class:"w-5 h-5"})],8,Cf)])])])]))}}),fr=(r,t)=>{const l=r.__vccOpts||r;for(const[n,a]of t)l[n]=a;return l},Nf={key:0,class:"fixed inset-0 z-[2000] flex items-center justify-center bg-gray-600 bg-opacity-75"},vf={key:0,class:"relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-lg",role:"dialog","aria-modal":"true","aria-labelledby":"dialog-title"},Bf={class:"bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4"},Sf={class:"mt-3 text-center sm:mt-5"},Af={id:"dialog-title",class:"text-base font-semibold text-gray-900"},Df={class:"mt-2"},Mf={class:"text-sm text-gray-500"},Tf={class:"bg-gray-50 px-4 py-3 sm:px-6 flex justify-center"},Lf={key:1,class:"relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-lg",role:"dialog","aria-modal":"true","aria-labelledby":"dialog-title"},$f={class:"bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4"},Ff={class:"sm:flex sm:items-start"},If={class:"mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left"},Of={id:"dialog-title",class:"text-base font-semibold text-gray-900"},Pf={class:"mt-2"},Rf={class:"text-sm text-gray-500"},Uf={key:0,class:"mt-2"},jf=["placeholder"],zf=e.defineComponent({__name:"message-box",props:{type:{default:"error"},mode:{default:"confirm"},title:{default:""},message:{default:""},confirmButtonText:{default:"OK"},cancelButtonText:{default:"Cancel"},modelValue:{type:Boolean,default:!1},promptPlaceholder:{default:""},align:{type:Boolean,default:!0}},emits:["confirm","cancel","update:modelValue"],setup(r,{emit:t}){const l=e.ref(null);e.onMounted(()=>{var h;(h=l.value)==null||h.focus()});const n={success:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","aria-hidden":"true",class:"size-6 text-green-600"},[e.h("path",{d:"m4.5 12.75 6 6 9-13.5","stroke-linecap":"round","stroke-linejoin":"round"})]),error:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","aria-hidden":"true",class:"size-6 text-red-600"},[e.h("path",{d:"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126ZM12 15.75h.007v.008H12v-.008Z","stroke-linecap":"round","stroke-linejoin":"round"})]),info:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5",class:"size-6 text-blue-600"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M13 16h-1v-4h-1m1-4h.01M12 20a8 8 0 100-16 8 8 0 000 16z"})]),warning:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5",class:"size-6 text-yellow-600"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v2m0 4h.01M10.29 3.86L1.82 17a1 1 0 0 0 .87 1.5h18.62a1 1 0 0 0 .87-1.5L13.71 3.86a1 1 0 0 0-1.42 0z"})])},a=r,o=t,s=e.ref(a.modelValue),i=e.ref("");e.watch(()=>a.modelValue,h=>{s.value=h,h===!0&&a.mode==="prompt"&&(i.value="")});function c(h){s.value=!1,o("update:modelValue",!1),h==="confirm"&&a.mode==="prompt"?o("confirm",i.value):o(h)}function u(){c("confirm")}const d=e.computed(()=>{switch(a.type){case"success":return"bg-green-100";case"error":return"bg-red-100";case"info":return"bg-blue-100";case"warning":return"bg-yellow-100";default:return"bg-gray-100"}}),m=e.computed(()=>a.type==="warning"?"bg-orange-600 hover:bg-orange-500":a.type==="success"?"bg-green-600 hover:bg-green-500":a.type==="error"?"bg-red-600 hover:bg-red-500":"bg-blue-600 hover:bg-blue-500"),f=e.computed(()=>n[a.type||"error"]||n.error),p=e.computed(()=>a.title&&a.title.trim()!==""?a.title:a.type?a.type.charAt(0).toUpperCase()+a.type.slice(1):"Notification");return(h,g)=>{const y=e.resolveDirective("focus");return e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[s.value?(e.openBlock(),e.createElementBlock("div",Nf,[h.mode==="alert"?(e.openBlock(),e.createElementBlock("div",vf,[e.createElementVNode("div",Bf,[e.createElementVNode("div",null,[g[4]||(g[4]=e.createElementVNode("div",{class:"mx-auto flex size-12 shrink-0 items-center justify-center rounded-full bg-green-100"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","aria-hidden":"true",class:"size-6 text-green-600"},[e.createElementVNode("path",{d:"m4.5 12.75 6 6 9-13.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),e.createElementVNode("div",Sf,[e.createElementVNode("h3",Af,e.toDisplayString(p.value),1),e.createElementVNode("div",Df,[e.createElementVNode("p",Mf,e.toDisplayString(h.message),1)])])])]),e.createElementVNode("div",Tf,[e.createElementVNode("button",{type:"button",onClick:g[0]||(g[0]=b=>c("confirm")),class:"inline-flex min-w-[70px] w-full justify-center rounded-md bg-indigo-600 px-3 py-2 text-sm font-semibold text-white shadow-xs hover:bg-indigo-500 sm:w-auto"},e.toDisplayString(h.confirmButtonText),1)])])):(e.openBlock(),e.createElementBlock("div",Lf,[e.createElementVNode("div",$f,[e.createElementVNode("div",Ff,[e.createElementVNode("div",{class:e.normalizeClass(["mx-auto flex size-12 shrink-0 items-center justify-center rounded-full sm:mx-0 sm:size-10",d.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f.value)))],2),e.createElementVNode("div",If,[e.createElementVNode("h3",Of,e.toDisplayString(p.value),1),e.createElementVNode("div",Pf,[e.createElementVNode("p",Rf,e.toDisplayString(h.message),1)]),h.mode==="prompt"?(e.openBlock(),e.createElementBlock("div",Uf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":g[1]||(g[1]=b=>i.value=b),placeholder:h.promptPlaceholder,class:"w-full rounded-md py-1.5 pl-2 text-gray-900 shadow-sm placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6",onKeyup:e.withKeys(u,["enter"]),type:"text"},null,40,jf),[[e.vModelText,i.value],[y]])])):e.createCommentVNode("",!0)])])]),e.createElementVNode("div",{class:e.normalizeClass(["bg-gray-50 px-4 py-3",h.align?"sm:flex sm:flex-row-reverse sm:px-6 gap-x-2.5":"sm:flex sm:flex-row sm:px-6 gap-x-2.5"])},[e.createElementVNode("button",{type:"button",onClick:g[2]||(g[2]=b=>c("confirm")),class:e.normalizeClass(["inline-flex w-full justify-center rounded-md px-3 py-2 text-sm font-semibold text-white shadow-xs sm:w-auto",m.value])},e.toDisplayString(h.confirmButtonText),3),e.createElementVNode("button",{type:"button",onClick:g[3]||(g[3]=b=>c("cancel")),class:"mt-3 inline-flex w-full justify-center rounded-md bg-white px-3 py-2 text-sm font-semibold text-gray-900 shadow-xs ring-1 ring-inset ring-gray-300 hover:bg-gray-50 sm:mt-0 sm:w-auto"},e.toDisplayString(h.cancelButtonText),1)],2)]))])):e.createCommentVNode("",!0)])}}}),Hf=fr(zf,[["__scopeId","data-v-047caa71"]]);e.defineComponent({props:{modelValue:{type:Boolean,default:()=>!1},title:{type:String,default:()=>""},disabled:{type:Boolean,default:()=>!1}},data(){return{}},mounted(){this.modelValue||this.$emit("update:modelValue",!1)},computed:{modelState:{get(){return this.modelValue},set(r){this.$emit("update:modelValue",r)}},labelCursorClasses(){return[{"cursor-not-allowed":this.disabled},{"cursor-pointer":!this.disabled}]}},methods:{handleEnterDown(r){const{keyCode:t}=r;t===13&&(this.modelState=!this.modelState)},addKeyHandler(){window.addEventListener("keydown",this.handleEnterDown)},removeKeyHandler(){window.removeEventListener("keydown",this.handleEnterDown)}}});const qf={key:0,class:"vsTailwind ui-dialog__wrapper text-gray-800"},Kf={class:"py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]"},Gf={class:"font-medium text-gray-800 dark:text-[#ffffff]"},Wf={class:"ui-dialog__content p-4"},Yf={key:0,class:"flex justify-end gap-x-2"},Xf={key:1,class:"flex justify-end items-center gap-x-2 py-3 px-4 border-t border-gray-200 dark:border-neutral-700"},Zf=e.defineComponent({__name:"vs-modal",props:{title:{default:""},template:{},visible:{type:Boolean,default:!1},size:{default:"small"},closeClickBack:{type:Boolean,default:!1},content:{},buttonText:{},contentProps:{},teleport:{default:"body"}},emits:["update:visible","close","done"],setup(r,{emit:t}){const l=r,n=t,a=e.computed(()=>l.size==="small"?"md:w-5/12 w-9/12":l.size==="medium"?"md:w-6/12 w-9/12":"lg:w-7/12 w-11/12"),o=e.useAttrs();function s(){n("done")}function i(){n("update:visible",!1),n("close")}function c(d){d.key==="Escape"&&i()}function u(d,m){m&&d.target.classList.contains("vs-dialog-overlay")&&i()}return e.onMounted(()=>{window.addEventListener("keydown",c)}),e.onUnmounted(()=>{window.removeEventListener("keydown",c)}),(d,m)=>(e.openBlock(),e.createBlock(e.Teleport,{to:d.teleport},[d.visible?(e.openBlock(),e.createElementBlock("div",qf,[e.createElementVNode("div",{onMousedown:m[0]||(m[0]=f=>u(f,d.closeClickBack)),class:e.normalizeClass(["vs-dialog-overlay vs-dialog w-full h-full fixed top-0 start-0 bg-black bg-opacity-50",[e.unref(o).class]])},[e.createVNode(e.Transition,{name:"content",appear:""},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["ui-dialog__modal opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-xl",a.value])},[e.createElementVNode("div",Kf,[e.createElementVNode("h3",Gf,e.toDisplayString(d.title),1),e.createElementVNode("button",{type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600",onClick:i},[...m[1]||(m[1]=[e.createElementVNode("span",{class:"sr-only"},"Close",-1),e.createElementVNode("svg",{class:"flex-shrink-0 w-4 h-4",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"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])])]),e.createElementVNode("div",Wf,[e.renderSlot(d.$slots,"default",{},void 0,!0)]),d.$slots.footer?(e.openBlock(),e.createElementBlock("div",Yf,[e.renderSlot(d.$slots,"footer",{handleClose:i},void 0,!0)])):e.createCommentVNode("",!0),d.buttonText?(e.openBlock(),e.createElementBlock("div",Xf,[e.createElementVNode("button",{type:"button",class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-2xs hover:bg-gray-50 focus:outline-hidden focus:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",onClick:i}," Close "),e.createElementVNode("button",{type:"button",onClick:s,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent bg-blue-600 text-white hover:bg-blue-700 focus:outline-hidden focus:bg-blue-700 disabled:opacity-50 disabled:pointer-events-none"},e.toDisplayString(d.buttonText),1)])):e.createCommentVNode("",!0)],2)]),_:3})],34)])):e.createCommentVNode("",!0)],8,["to"]))}}),Gt=fr(Zf,[["__scopeId","data-v-a6807cab"]]),Qf={key:0,class:"vsTailwind ui-drawer__wrapper"},Jf={class:"py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]"},e0={class:"font-medium text-gray-800 dark:text-[#ffffff]"},t0={class:"flex gap-2"},r0={class:"sr-only"},l0={key:0,class:"flex-shrink-0 w-4 h-4",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"},n0={key:1,class:"flex-shrink-0 w-4 h-4",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"},a0={class:"ui-drawer__content p-4 flex-1 overflow-auto"},o0={key:0,class:"flex justify-end gap-x-2 p-4 border-0 border-t border-solid border-gray-200 dark:border-t-[#454545]"},s0=e.defineComponent({__name:"vs-drawer",props:{title:{default:""},visible:{type:Boolean,default:!1},position:{default:"right"},size:{default:"500px"},closeClickBack:{type:Boolean,default:!1}},emits:["update:visible","close"],setup(r,{emit:t}){const l=r,n=t,a=e.ref(!1),o=e.computed(()=>a.value?"fixed top-0 left-0 w-full h-full":l.position==="left"?"fixed top-0 left-0 h-full":l.position==="right"?"fixed top-0 right-0 h-full":l.position==="top"?"fixed top-0 left-0 w-full":"fixed bottom-0 left-0 w-full");function s(){n("update:visible",!1),n("close")}function i(){a.value=!a.value}function c(d){d.key==="Escape"&&s()}function u(d,m){m&&d.target.classList.contains("vs-drawer-overlay")&&s()}return e.onMounted(()=>{window.addEventListener("keydown",c)}),e.onUnmounted(()=>{window.removeEventListener("keydown",c)}),(d,m)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"#modal"},[d.visible?(e.openBlock(),e.createElementBlock("div",Qf,[e.createElementVNode("div",{onMousedown:m[0]||(m[0]=f=>u(f,d.closeClickBack)),class:"vs-drawer-overlay vs-drawer w-full h-full fixed top-0 start-0 bg-black bg-opacity-50"},[e.createVNode(e.Transition,{name:"drawer",appear:""},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["ui-drawer__drawer opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)]",[o.value,a.value?"w-full":`w-[${l.size}]`,`drawer-${l.position}`]])},[e.createElementVNode("div",Jf,[e.createElementVNode("h3",e0,e.toDisplayString(d.title),1),e.createElementVNode("div",t0,[e.createElementVNode("button",{type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600",onClick:i},[e.createElementVNode("span",r0,e.toDisplayString(a.value?"Exit fullscreen":"Enter fullscreen"),1),a.value?(e.openBlock(),e.createElementBlock("svg",n0,[...m[2]||(m[2]=[e.createElementVNode("path",{d:"M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",l0,[...m[1]||(m[1]=[e.createElementVNode("path",{d:"M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"},null,-1)])]))]),e.createElementVNode("button",{type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600",onClick:s},[...m[3]||(m[3]=[e.createElementVNode("span",{class:"sr-only"},"Close",-1),e.createElementVNode("svg",{class:"flex-shrink-0 w-4 h-4",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"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])])])]),e.createElementVNode("div",a0,[e.renderSlot(d.$slots,"default",{},void 0,!0)]),d.$slots.footer?(e.openBlock(),e.createElementBlock("div",o0,[e.renderSlot(d.$slots,"footer",{handleClose:s},void 0,!0)])):e.createCommentVNode("",!0)],2)]),_:3})],32)])):e.createCommentVNode("",!0)]))}}),xs=fr(s0,[["__scopeId","data-v-c808fe88"]]),i0={},c0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-green-600"};function d0(r,t){return e.openBlock(),e.createElementBlock("svg",c0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])])}const u0=fr(i0,[["render",d0]]),m0={},p0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"orange",class:"size-6 text-orange-600"};function f0(r,t){return e.openBlock(),e.createElementBlock("svg",p0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v3m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])])}const h0=fr(m0,[["render",f0]]),g0={},y0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-blue-600"};function b0(r,t){return e.openBlock(),e.createElementBlock("svg",y0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"},null,-1)])])}const k0=fr(g0,[["render",b0]]),x0={},w0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"red",class:"size-6 text-red-600"};function _0(r,t){return e.openBlock(),e.createElementBlock("svg",w0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)])])}const E0=fr(x0,[["render",_0]]),C0={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},V0={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},N0={class:"flex-1"},v0={class:"font-medium text-gray-900"},B0={class:"mt-0.5 text-sm text-gray-700"},S0=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(r){const t={success:u0,warning:h0,error:E0,info:k0};return(l,n)=>(e.openBlock(),e.createElementBlock("div",C0,[e.createElementVNode("div",V0,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t[l.type]))),e.createElementVNode("div",N0,[e.createElementVNode("strong",v0,e.toDisplayString(l.title),1),e.createElementVNode("p",B0,e.toDisplayString(l.message),1)]),n[0]||(n[0]=e.createElementVNode("button",{class:"m-3 rounded-full p-1.5 text-gray-500 transition-colors hover:bg-gray-50 hover:text-gray-700",type:"button","aria-label":"Dismiss notify"},[e.createElementVNode("span",{class:"sr-only"},"Dismiss popup"),e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-5"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})])],-1))])]))}}),Jr=r=>{const{message:t,title:l,mode:n="confirm",type:a="info",confirmButtonText:o,cancelButtonText:s,onConfirm:i,onCancel:c,cascade:u,confirmButtonStyle:d,cancelButtonStyle:m}=r||{},f=document.querySelector("body");if(!f){console.error('Modal root element with id "#modal" not found!');return}const p=document.createElement("div");f.appendChild(p);const h=()=>{p.remove()};e.createApp({render(){return e.h(Hf,{title:l,message:t,mode:n,type:a,cascade:u,confirmButtonText:o,cancelButtonText:s,cancelButtonStyle:m,confirmButtonStyle:d,modelValue:!0,onConfirm:()=>{i==null||i(),h()},onCancel:()=>{c==null||c(),h()}})}}).mount(p)};e.reactive({visible:!0});const A0=r=>{const{template:t="",title:l="",content:n,contentProps:a={},size:o="medium"}=r,s=document.querySelector("body");if(!s)return console.error('Modal root element with id "#modal" not found!'),{close:()=>{}};const i=document.createElement("div");s.appendChild(i);const c={title:l,template:t,visible:!0,size:o,closeClickBack:!0,onClose:d},u=e.createApp({render(){return e.h(Gt,c,{default:()=>[n?e.h(n,a):e.h("p",t)]})}});function d(){u.unmount(),i.remove()}return u.mount(i),{close:d}},Il={top:"top-4 left-1/2 transform -translate-x-1/2","left-bottom":"bottom-4 left-4 transform","right-bottom":"bottom-4 right-4 transform",bottom:"bottom-4 left-1/2 transform -translate-x-1/2"},se=r=>{var c;const{type:t="info",title:l,message:n,position:a="right-bottom"}=r||{};let o=document.querySelector("#notify-root");o||(o=document.createElement("div"),o.id="notify-root",o.className=`fixed z-[2000] flex flex-col gap-3 ${Il[a]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(o)),o.className.includes(Il[a])||(Object.values(Il).forEach(u=>{o.classList.remove(...u.split(" "))}),o.classList.add(...Il[a].split(" ")));const s=document.createElement("div");o.appendChild(s);const i=e.createApp({render(){return e.h(S0,{type:t,title:l,message:n,onClose:()=>{i.unmount(),s.remove()}})}});i.mount(s),(c=s.querySelector("button"))==null||c.addEventListener("click",()=>{s.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{i.unmount(),s.remove()},350)}),setTimeout(()=>{s.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{i.unmount(),s.remove()},350)},3500)},D0={class:"w-full relative"},M0={key:0,class:"text-[14px] font-medium text-gray-900 mb-2"},T0={class:"opacity-100"},L0={key:0,class:"text-red-500 text-[14px]"},$0={key:1,class:"text-red-500 text-[10px] absolute bottom-[-14px]"},F0=e.defineComponent({__name:"vs-layout-default",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{}},setup(r){const t=e.ref("uk"),l=n=>{n.detail.key==="locale"&&(t.value=n.detail.newValue)};return e.onMounted(()=>{t.value=localStorage.locale,window.addEventListener("storage",l)}),e.onUnmounted(()=>{window.removeEventListener("resize",l)}),(n,a)=>{var o,s;return e.openBlock(),e.createElementBlock("div",D0,[n.ua||n.label?(e.openBlock(),e.createElementBlock("div",M0,[e.createElementVNode("span",T0,e.toDisplayString(n.item[t.value]||n.ua||n.label),1),(s=(o=n.item)==null?void 0:o.rules)!=null&&s.includes("required")?(e.openBlock(),e.createElementBlock("span",L0,"*")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default",e.mergeProps(n.$attrs,{class:{"opacity-60":n.item.disabled}})),n.error?(e.openBlock(),e.createElementBlock("span",$0,e.toDisplayString(n.error),1)):e.createCommentVNode("",!0)])}}}),I0={class:"w-full relative flex flex-row items-center gap-2"},O0={key:0,class:"text-red-500 text-[14px]"},P0={key:1,class:"text-red-500 text-[10px] absolute bottom-[-14px]"},R0=e.defineComponent({__name:"vs-layout-horizontal",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{default:()=>({container:12,label:3})}},setup(r){const t=r,l=e.computed(()=>t.columns??{container:12,label:3}),n=e.computed(()=>{const{container:i,label:c}=l.value;return!i||i<=0?0:Math.min(Math.max(c??0,0),i)/i}),a=e.computed(()=>{var i;return((i=t.item)==null?void 0:i.type)==="html"||n.value<=0?!1:!!(t.ua||t.label)}),o=e.computed(()=>{if(!a.value)return{};const i=`${n.value*100}%`;return{flexBasis:i,maxWidth:i}}),s=e.computed(()=>{var m;const{container:i,label:c}=l.value;if(!i||i<=0)return{};if(((m=t.item)==null?void 0:m.type)==="html")return{flexBasis:"100%",maxWidth:"100%"};if(!a.value)return{flexBasis:"100%",maxWidth:"100%"};const u=Math.max(i-Math.max(c??0,0),0)/i;if(!u)return{};const d=`${u*100}%`;return{flexBasis:d,maxWidth:d}});return(i,c)=>{var u,d;return e.openBlock(),e.createElementBlock("div",I0,[a.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"text-sm text-gray-900 font-medium flex shrink-0",style:e.normalizeStyle(o.value)},[e.createTextVNode(e.toDisplayString(i.ua||i.label)+" ",1),(d=(u=i.item)==null?void 0:u.rules)!=null&&d.includes("required")&&(i.ua||i.label)?(e.openBlock(),e.createElementBlock("span",O0,"*")):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"flex-1 min-w-0",style:e.normalizeStyle(s.value)},[e.renderSlot(i.$slots,"default",e.normalizeProps(e.guardReactiveProps(i.$attrs)))],4),i.error?(e.openBlock(),e.createElementBlock("span",P0,e.toDisplayString(i.error),1)):e.createCommentVNode("",!0)])}}}),U0={class:"w-full relative"},j0={key:0,class:"text-red-500 text-[10px] absolute bottom-[-14px]"},z0=e.defineComponent({__name:"vs-layout-inline",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",U0,[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps(t.$attrs))),t.error?(e.openBlock(),e.createElementBlock("span",j0,e.toDisplayString(t.error),1)):e.createCommentVNode("",!0)]))}}),H0={class:"flex-1 min-w-0"},q0={key:0,class:"text-sm font-medium text-slate-700 dark:text-slate-200 flex items-center gap-1"},K0={class:"truncate"},G0={key:0,class:"text-red-500 text-[14px]"},W0={key:1,class:"text-xs text-slate-500 dark:text-slate-400"},Y0={key:0,class:"mt-1 text-xs text-red-500"},X0=e.defineComponent({__name:"vs-layout-settings",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{}},setup(r){const t=r,l=e.ref("uk");e.computed(()=>{var i;return((i=t.item??{})==null?void 0:i[l.value])??t.ua??t.label??""});const n=e.computed(()=>{var i;return((i=t.item)==null?void 0:i.description)??""}),a=e.computed(()=>{var i;return Array.isArray((i=t.item)==null?void 0:i.rules)&&t.item.rules.includes("required")}),o=e.computed(()=>(typeof t.error=="string"?t.error:"")??""),s=i=>{i.key==="locale"&&(l.value=i.newValue??"uk")};return e.onMounted(()=>{try{typeof localStorage<"u"&&localStorage.locale&&(l.value=localStorage.locale)}catch{}window.addEventListener("storage",s)}),e.onUnmounted(()=>{window.removeEventListener("storage",s)}),(i,c)=>{var u;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-full relative",{"opacity-60":(u=i.item)==null?void 0:u.disabled}])},[e.createElementVNode("div",{class:e.normalizeClass(["gap-2 md:flex-row md:items-center md:justify-between",[["switcher","native-select"].includes(i.item.type)?"flex flex-col":""]])},[e.createElementVNode("div",H0,[i.ua||i.label?(e.openBlock(),e.createElementBlock("p",q0,[e.createElementVNode("span",K0,e.toDisplayString(i.item[l.value]||i.ua||i.label),1),a.value?(e.openBlock(),e.createElementBlock("span",G0,"*")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),n.value?(e.openBlock(),e.createElementBlock("p",W0,e.toDisplayString(n.value),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["w-full",["select","native-select"].includes(i.item.type)?"md:w-[30%]":"md:w-auto"])},[e.renderSlot(i.$slots,"default",e.normalizeProps(e.guardReactiveProps(i.$attrs)))],2)],2),o.value?(e.openBlock(),e.createElementBlock("p",Y0,e.toDisplayString(o.value),1)):e.createCommentVNode("",!0)],2)}}}),Z0={default:F0,horizontal:R0,inline:z0,settings:X0};function gt(r){return{inputClass:e.computed(()=>{const t=`disabled:opacity-50 disabled:cursor-not-allowed outline-none focus:ring-2 focus:ring-ring focus:ring-${(r==null?void 0:r.primaryColor)||"blue"}-500 border border-solid border-stone-200 rounded-md text-sm text-stone-800 placeholder:text-stone-400 `;return(r==null?void 0:r.size)==="sm"?`${t}h-[32px]`:`${t}h-[38px]`})}}const Q0=["placeholder","disabled"],J0=e.defineComponent({__name:"vs-input-password",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"password","onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),placeholder:o.value,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":s.error}]]),style:{border:"1px solid #CFD9E0"}},null,10,Q0)),[[e.vModelText,n.value]])}}),eh=["placeholder","disabled"],Ol=e.defineComponent({__name:"vs-input-text",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"text","onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),placeholder:o.value,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":s.error}]]),style:{border:"1px solid #CFD9E0"}},null,10,eh)),[[e.vModelText,n.value]])}}),th=["placeholder","disabled","min","max"],rh=e.defineComponent({__name:"vs-input-number",props:e.mergeModels({min:{},max:{},style:{default:()=>({})},customClass:{},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""}},{modelValue:{default:null},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled);return(o,s)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"number",step:"any","onUpdate:modelValue":s[0]||(s[0]=i=>n.value=i),placeholder:o.placeholder,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full bg-white",[e.unref(l)]]),style:{border:"1px solid #CFD9E0"},min:o.min,max:o.max},null,10,th)),[[e.vModelText,n.value]])}}),_e=(r,t)=>{const l=r.__vccOpts||r;for(const[n,a]of t)l[n]=a;return l},lh={},nh={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-check"};function ah(r,t){return e.openBlock(),e.createElementBlock("svg",nh,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M5 12l5 5l10 -10"},null,-1)]))}const oh=_e(lh,[["render",ah]]),sh={class:"flex items-center gap-[4px]"},ih=["value","id","disabled"],ch=["for"],dh={class:"text-[14px] text-gray-700 flex items-center dark:text-neutral-400"},uh=e.defineComponent({__name:"vs-checkbox-default",props:{value:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},id:{},modelValue:{default:""},info:{},error:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=t,n=r,a=e.computed({get:()=>n.modelValue,set:s=>l("update:modelValue",s)}),o=e.computed(()=>!!n.disabled);return(s,i)=>(e.openBlock(),e.createElementBlock("div",sh,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",value:s.value,"onUpdate:modelValue":i[0]||(i[0]=c=>a.value=c),class:e.normalizeClass(["shrink-0 border border-solid hidden border-gray-700 w-3.5 h-3.5 rounded text-blue-600 focus:ring-offset-0 dark:bg-neutral-800 dark:border-neutral-700 cursor-pointer",{"!cursor-not-allowed":o.value}]),id:s.id,disabled:o.value},null,10,ih),[[e.vModelCheckbox,a.value]]),e.createElementVNode("label",{for:s.id,class:e.normalizeClass(["flex flex-1 checkbox-label items-center gap-x-2 cursor-pointer text-sm text-gray-800 dark:text-neutral-300",{"!cursor-not-allowed":o.value}])},[e.createElementVNode("div",{class:e.normalizeClass(["h-[16px] text-white w-[16px] flex items-center justify-center shrink-0 border rounded",[a.value?"bg-blue-600 border-blue-600":"bg-white border-gray-600",s.error?"border-red-600":""]])},[e.createVNode(oh,{height:"12",width:"12"})],2),e.createElementVNode("span",dh,[e.renderSlot(s.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(s.label),1)])])],10,ch)]))}}),mh=["name","value","disabled"],ph={class:"flex items-center gap-[6px] text-[14px]"},fh={key:0,class:"text-[16px]"},hh=["src"],gh=e.defineComponent({__name:"vs-checkbox-buttons",props:{value:{type:[String,Number,Boolean],default:""},label:{default:""},modelValue:{default:""},disabled:{type:Boolean},id:{},icon:{},imgUrl:{},style:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=e.computed({get:()=>l.modelValue,set:i=>{n("update:modelValue",i)}}),o=e.computed(()=>Array.isArray(a.value)?a.value.includes(l.value):a.value===!0||a.value===l.value),s=e.computed(()=>{var i,c;return((i=l.style)==null?void 0:i.size)==="xs"?"p-1.5 text-xs":((c=l.style)==null?void 0:c.size)==="lg"?"p-3.5 text-[20px]":"p-2.5 text-xs"});return(i,c)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["group relative flex justify-center items-center gap-x-3 text-center bg-white text-gray-800 ring-ring ring-2 cursor-pointer rounded-lg",[s.value,o.value?"ring-blue-500":"border border-gray-200 ring-transparent"]])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"hidden",name:i.id,value:i.value,"onUpdate:modelValue":c[0]||(c[0]=u=>a.value=u),disabled:i.disabled},null,8,mh),[[e.vModelCheckbox,a.value]]),e.createElementVNode("span",ph,[i.icon||i.imgUrl?(e.openBlock(),e.createElementBlock("span",fh,[i.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass(i.icon)},null,2)):e.createCommentVNode("",!0),i.imgUrl?(e.openBlock(),e.createElementBlock("img",{key:1,src:i.imgUrl,width:"16",height:"16",alt:"icon"},null,8,hh)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(i.label),1)])])],2))}}),yh={class:"flex items-center"},ea=e.defineComponent({__name:"vs-input-checkbox-item",props:{value:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},view:{default:"default"},modelValue:{type:[Boolean,Array],default:!1},icon:{},imgUrl:{},slots:{},option:{},style:{},error:{default:""}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=`radio-${Math.floor(Math.random()*1e4)}`,o=e.computed({get:()=>Array.isArray(l.modelValue)?Array.isArray(l.modelValue)&&l.modelValue.includes(l.value):l.modelValue,set:i=>{if(Array.isArray(l.modelValue)){let c=[...l.modelValue];i?c.includes(l.value)||c.push(l.value):c=c.filter(u=>u!==l.value),n("update:modelValue",c)}else n("update:modelValue",i)}}),s=e.ref(`vs-checkbox-${l.view||"default"}`);return(i,c)=>{var u;return e.openBlock(),e.createElementBlock("div",yh,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value==="vs-checkbox-buttons"?e.unref(gh):e.unref(uh)),{value:i.value,label:i.label,info:(u=i.option)==null?void 0:u.info,disabled:i.disabled,modelValue:o.value,"onUpdate:modelValue":c[0]||(c[0]=d=>o.value=d),id:a,icon:i.icon,imgUrl:i.imgUrl,style:e.normalizeStyle(i.style),error:i.error},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.label),1)]),_:1},8,["value","label","info","disabled","modelValue","icon","imgUrl","style","error"]))])}}}),bh={},kh={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down"};function xh(r,t){return e.openBlock(),e.createElementBlock("svg",kh,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const wh=_e(bh,[["render",xh]]),_h={},Eh={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"};function Ch(r,t){return e.openBlock(),e.createElementBlock("svg",Eh,t[0]||(t[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 Vh=_e(_h,[["render",Ch]]),Nh={},vh={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"};function Bh(r,t){return e.openBlock(),e.createElementBlock("svg",vh,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M12 9h.01"},null,-1),e.createElementVNode("path",{d:"M11 12h1v4h1"},null,-1),e.createElementVNode("path",{d:"M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z"},null,-1)]))}const Sh=_e(Nh,[["render",Bh]]),Ah={key:0,class:"flex items-start gap-x-1"},Dh={key:0,class:"text-red-500 text-[14px]"},Mh=["title"],Th=["disabled"],ws=e.defineComponent({__name:"vs-input-switcher",props:e.mergeModels({rules:{default:()=>[]},view:{default:"checkbox"},label:{default:""},i:{default:""},text:{default:""},style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue");return(n,a)=>{var o,s;return t.view==="checkbox"?(e.openBlock(),e.createElementBlock("div",Ah,[e.createVNode(ea,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=i=>l.value=i),label:n.text,error:n.error||""},null,8,["modelValue","label","error"]),(o=n.rules)!=null&&o.includes("required")?(e.openBlock(),e.createElementBlock("span",Dh,"*")):e.createCommentVNode("",!0),n.i?(e.openBlock(),e.createElementBlock("button",{key:1,class:"cursor-pointer",title:n.i,onClick:a[1]||(a[1]=e.withModifiers(()=>{},["prevent"]))},[e.createVNode(e.unref(Sh),{class:"text-gray-500 w-[14px] h-[14px]"})],8,Mh)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:e.normalizeClass(["inline-flex h-5 w-9 shrink-0 px-[2px] cursor-pointer items-center rounded-full shadow-sm disabled:cursor-not-allowed disabled:opacity-50",[l.value?`bg-${((s=n.style)==null?void 0:s.primaryColor)||"blue"}-500`:"bg-stone-200",n.customClass]]),disabled:n.disabled,onClick:a[2]||(a[2]=i=>l.value=!l.value)},[e.createElementVNode("span",{"data-state":"checked",class:e.normalizeClass(["pointer-events-none block h-4 w-4 rounded-full bg-white shadow-lg ring-0 transition-transform",[l.value?"translate-x-4":"translate-x-0"]])},null,2)],10,Th))}}}),Lh=["id","innerHTML"],_s=e.defineComponent({__name:"vs-input-static",props:{text:{default:""},html:{default:""},style:{},customClass:{default:""},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",{id:t.name,class:e.normalizeClass(["text-gray-900",t.customClass]),innerHTML:t.html?t.html:t.text},null,10,Lh))}}),$h=["placeholder","disabled","name"],Fh=e.defineComponent({__name:"vs-input-mask",props:e.mergeModels({name:{},mask:{default:""},unmask:{type:Boolean,default:!1},placeholder:{default:"_"},style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.ref(null);let o=null;return e.onMounted(async()=>{if(a.value){const{default:s}=await Promise.resolve().then(()=>GA);o=s(a.value,{mask:t.mask||"",definitions:{9:/[0-9]/,A:/[a-zA-Z]/,"*":/[a-zA-Z0-9]/},lazy:!1}),o.on("accept",()=>{n.value=t.unmask?o.unmaskedValue:o.value}),o.on("complete",()=>{n.value=t.unmask?o.unmaskedValue:o.value}),o.value=n.value??""}}),e.onBeforeUnmount(()=>{o==null||o.destroy()}),e.watch(()=>t.mask,s=>{o&&o.updateOptions({mask:s,definitions:{9:/[0-9]/,A:/[a-zA-Z]/,"*":/[a-zA-Z0-9]/}})}),e.watch(n,s=>{o&&o.unmaskedValue!==s&&(o.value=s||"")}),(s,i)=>(e.openBlock(),e.createElementBlock("input",{type:"text",ref_key:"inputEl",ref:a,placeholder:s.placeholder,disabled:s.disabled,name:s.name,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l)]]),style:{border:"1px solid #CFD9E0"}},null,10,$h))}}),Ih={class:"relative w-full bg-white rounded-lg"},Oh=["placeholder","disabled"],Ph=e.defineComponent({__name:"vs-input-email",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:null},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue");return(a,o)=>(e.openBlock(),e.createElementBlock("div",Ih,[o[1]||(o[1]=e.createStaticVNode('<div class="absolute bottom-2/4 translate-y-2/4 left-[10px] cursor-pointer"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="stroke-gray-500 transition-all"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z"></path><path d="M3 7l9 6l9 -6"></path></svg></div>',1)),e.withDirectives(e.createElementVNode("input",{type:"email","onUpdate:modelValue":o[0]||(o[0]=s=>n.value=s),placeholder:a.placeholder,disabled:a.disabled,class:e.normalizeClass(["!pl-8 py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":a.error}]]),style:{border:"1px solid #CFD9E0"}},null,10,Oh),[[e.vModelText,n.value]])]))}}),Rh=["value","disabled"],Uh={class:"text-[13px] text-gray-700"},jh=e.defineComponent({__name:"vs-input-radio-default",props:e.mergeModels({style:{},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{},value:{},text:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>!!t.disabled);return(a,o)=>{var s,i;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["flex items-center gap-0",[t.customClass,n.value?"cursor-not-allowed opacity-60":""]])},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[0]||(o[0]=c=>l.value=c),type:"radio",value:t.value,disabled:n.value,class:"hidden"},null,8,Rh),[[e.vModelRadio,l.value]]),e.createElementVNode("span",{class:e.normalizeClass(["w-[16px] shrink-0 h-[16px] border rounded-full flex items-center justify-center mr-[10px]",[`border-${((s=t.style)==null?void 0:s.primaryColor)||"blue"}-500`,n.value?"opacity-50 cursor-not-allowed":""]])},[l.value==t.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["w-[12px] h-[12px] shrink-0 rounded-full",[`bg-${((i=t.style)==null?void 0:i.primaryColor)||"blue"}-500`]])},null,2)):e.createCommentVNode("",!0)],2),e.createElementVNode("span",Uh,e.toDisplayString(t.text),1)],2)}}}),zh=["value","disabled"],Hh={class:"text-[13px] text-gray-700"},qh=e.defineComponent({__name:"vs-input-radio-buttons",props:e.mergeModels({style:{},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{},value:{},text:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>!!t.disabled);return(a,o)=>{var s;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["flex items-center border rounded-lg px-2 py-1",[l.value==t.value?`ring-2 ring-ring ring-${((s=t.style)==null?void 0:s.primaryColor)||"blue"}-500`:"",t.customClass,n.value?"cursor-not-allowed opacity-60":""]])},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[0]||(o[0]=i=>l.value=i),type:"radio",value:t.value,disabled:n.value,class:"hidden"},null,8,zh),[[e.vModelRadio,l.value]]),e.createElementVNode("span",Hh,e.toDisplayString(t.text),1)],2)}}}),Kh={"vs-input-radio-default":jh,"vs-input-radio-buttons":qh},Es=e.defineComponent({__name:"vs-input-radio",props:e.mergeModels({options:{},position:{default:"vertical"},view:{default:"default"},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>Kh[`vs-input-radio-${t.view}`]);return(a,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([a.position==="horizontal"?"flex items-center flex-wrap gap-2":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.options,s=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),e.mergeProps({key:s==null?void 0:s.id,text:s.text,value:s.id.toString(),checked:l.value===s.id,modelValue:l.value,"onUpdate:modelValue":o[0]||(o[0]=i=>l.value=i)},{ref_for:!0},a.$attrs),null,16,["text","value","checked","modelValue"]))),128))],2))}}),Gh={key:1,class:"w-full flex flex-col gap-4"},Wh={key:0,class:"text-sm font-medium text-muted-foreground my-2"},Yh="Без категорії",Xh=e.defineComponent({__name:"vs-input-checkbox",props:{options:{default:()=>[]},position:{default:"vertical"},slots:{default:null},colSpan:{default:0},data:{},view:{},group:{default:void 0},values:{default:()=>[]},style:{},customClass:{},disabled:{type:Boolean},modelValue:{default:!1},error:{},name:{},placeholder:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=e.ref([]),o=e.reactive({}),s=p=>(p==null?void 0:p.value)||(p==null?void 0:p.id)||(p==null?void 0:p.text)||p,i=p=>p.text||String(p),c=p=>`lg:col-span-${p||12}`,u=e.computed(()=>[l.position==="vertical"?"flex flex-col":"",l.colSpan?"grid":"flex justify-start"]),d=p=>p==null||p===""?null:typeof p=="string"||typeof p=="number"?p:String(p),m=e.computed(()=>{var w;if(!l.group)return[];const p=new Map;a.value.forEach(x=>{var N;const k=x[l.group],_=d(k);p.has(_)||p.set(_,[]),(N=p.get(_))==null||N.push(x)});const h=[];(w=l.values)!=null&&w.length&&l.values.forEach(x=>{const k=d(x);h.push(k)});const g=new Set,y=x=>{const k=p.get(x)||[];if(!k.length)return null;const _=x===null?"group-null":`group-${String(x)}`,N=x===null?Yh:String(x);return g.add(x),{key:_,label:N,options:k}},b=[];return h.forEach(x=>{const k=y(x);k&&b.push(k)}),p.forEach((x,k)=>{if(g.has(k))return;const _=y(k);_&&b.push(_)}),b}),f=async()=>{try{const p=await fetch(`/api/suggest/${l.data}`).then(h=>h.json());a.value=(p==null?void 0:p.data)||p}catch(p){console.error(p)}};return e.watch(()=>l.modelValue,p=>{if(typeof p=="boolean"&&a.value.length===1){const h=s(a.value[0]);o[h]=p}else if(Array.isArray(p)){const h=new Set(p);a.value.forEach(g=>{if(!g.disabled){const y=s(g);o[y]=h.has(y)}})}},{immediate:!0}),e.watch(o,()=>{if(!a.value.length){n("update:modelValue",null);return}const p=Object.entries(o).filter(([,h])=>h).map(([h])=>h);n("update:modelValue",p.length===0?[]:p)},{deep:!0}),e.onMounted(()=>{if(l.data)f().then(()=>{if(typeof l.modelValue=="boolean"&&a.value.length===1){const p=s(a.value[0]);o[p]=l.modelValue}else if(Array.isArray(l.modelValue)){const p=new Set(l.modelValue);a.value.forEach(h=>{if(!h.disabled){const g=s(h);o[g]=p.has(g)}})}});else if(a.value=l.options,typeof l.modelValue=="boolean"&&a.value.length===1){const p=s(a.value[0]);o[p]=l.modelValue}else if(Array.isArray(l.modelValue)){const p=new Set(l.modelValue);a.value.forEach(h=>{if(!h.disabled){const g=s(h);o[g]=p.has(g)}})}}),(p,h)=>l.group?(e.openBlock(),e.createElementBlock("div",Gh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,g=>(e.openBlock(),e.createElementBlock("div",{key:g.key,class:"flex flex-col gap-2"},[g.label?(e.openBlock(),e.createElementBlock("span",Wh,e.toDisplayString(g.label),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["p-0 w-full gap-[12px]",u.value])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.options,y=>(e.openBlock(),e.createBlock(ea,{modelValue:o[s(y)],"onUpdate:modelValue":b=>o[s(y)]=b,value:s(y),class:e.normalizeClass(c(p.colSpan)),disabled:l.disabled||y.disabled,label:i(y),key:`${g.key}-${s(y)}`,icon:y==null?void 0:y.icon,imgUrl:y==null?void 0:y.imgUrl,option:y,view:p.view},null,8,["modelValue","onUpdate:modelValue","value","class","disabled","label","icon","imgUrl","option","view"]))),128))],2)]))),128))])):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["p-0 w-full gap-[10px]",u.value])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,g=>(e.openBlock(),e.createBlock(ea,{modelValue:o[s(g)],"onUpdate:modelValue":y=>o[s(g)]=y,value:s(g),class:e.normalizeClass(c(p.colSpan)),disabled:l.disabled||g.disabled,label:i(g),key:s(g),icon:g==null?void 0:g.icon,imgUrl:g==null?void 0:g.imgUrl,option:g,view:p.view},null,8,["modelValue","onUpdate:modelValue","value","class","disabled","label","icon","imgUrl","option","view"]))),128))],2))}}),Cs=_e(Xh,[["__scopeId","data-v-8e66207e"]]),Zh=["type","placeholder","disabled"],Qh=e.defineComponent({__name:"vs-input-date1",props:{style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""},mode:{default:"date"}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r;function n(d){return d?l.mode==="datetime"?(d.includes("T")?d:null)||d+(d.includes(" ")?"":"T00:00"):d==null?void 0:d.split(" ")[0]:null}const{inputClass:a}=gt(l.style),o=t,s=e.computed({get:()=>n(l.modelValue),set:d=>o("update:modelValue",d)}),i=e.computed(()=>l.mode==="datetime"?"datetime-local":l.mode),c=e.computed(()=>!!l.disabled),u=e.computed(()=>l.placeholder??"");return(d,m)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:i.value,"onUpdate:modelValue":m[0]||(m[0]=f=>s.value=f),placeholder:u.value,disabled:c.value,ref:"date",class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[d.modelValue?"":"text-opacity-50",e.unref(a)].join(" ")]),style:{border:"1px solid #CFD9E0"}},null,10,Zh)),[[e.vModelDynamic,s.value]])}}),Vs=async(r,t,l,n)=>{var a;try{const o=new FormData;return o.append("unique","true"),o.append("file",r),(a=await fetch(`/file/upload/uploads?id=${t||""}&form=${l||""}&table=${n||""}`,{method:"POST",body:o}).then(s=>s.json()))==null?void 0:a.result}catch(o){return se({type:"error",title:"Помилка!",message:"Сталась помилка під час завантаження файлу",position:"right-bottom"}),console.error("Сталась помилка завантаження файлу",o),null}},Jh=async r=>{try{return await fetch(`file/delete${r}`),!0}catch(t){return console.error(t),!1}},Ns=async r=>{try{const t=await fetch(`file/download/files/uploads${r}`),l=await t.arrayBuffer(),n=t.headers["content-type"],a=new TextDecoder("utf-8").decode(l),o=new Blob([a],{type:n}),s=document.createElement("a");s.setAttribute("download",r),s.href=window.URL.createObjectURL(o),s.click()}catch(t){console.error(t.message)}},eg={},tg={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"};function rg(r,t){return e.openBlock(),e.createElementBlock("svg",tg,t[0]||(t[0]=[e.createElementVNode("path",{d:"M5 12h14"},null,-1),e.createElementVNode("path",{d:"M12 5v14"},null,-1)]))}const el=_e(eg,[["render",rg]]),lg={},ng={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-file-text",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function ag(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",ng,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><line x1="9" y1="9" x2="10" y2="9"></line><line x1="9" y1="13" x2="15" y2="13"></line><line x1="9" y1="17" x2="15" y2="17"></line>',6)]))}const og=_e(lg,[["render",ag]]),sg={},ig={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-table",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function cg(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",ig,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"},null,-1),e.createElementVNode("line",{x1:"4",y1:"10",x2:"20",y2:"10"},null,-1),e.createElementVNode("line",{x1:"10",y1:"4",x2:"10",y2:"20"},null,-1)]))}const dg=_e(sg,[["render",cg]]),ug={},mg={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"};function pg(r,t){return e.openBlock(),e.createElementBlock("svg",mg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M9 9l1 0"></path><path d="M9 13l6 0"></path><path d="M9 17l6 0"></path>',6)]))}const vs=_e(ug,[["render",pg]]),fg={},hg={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-file-zip",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function gg(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",hg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M6 20.735a2 2 0 0 1 -1 -1.735v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-1"></path><path d="M11 17a2 2 0 0 1 2 2v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-2a2 2 0 0 1 2 -2z"></path><line x1="11" y1="5" x2="10" y2="5"></line><line x1="13" y1="7" x2="12" y2="7"></line><line x1="11" y1="9" x2="10" y2="9"></line><line x1="13" y1="11" x2="12" y2="11"></line><line x1="11" y1="13" x2="10" y2="13"></line><line x1="13" y1="15" x2="12" y2="15"></line>',9)]))}const yg=_e(fg,[["render",gg]]),bg={},kg={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-file-code",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function xg(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",kg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M10 13l-1 2l1 2"></path><path d="M14 13l1 2l-1 2"></path>',5)]))}const wg=_e(bg,[["render",xg]]),_g=r=>{if(!r)return"";const t=r==null?void 0:r.split(".");return t[t.length-1]},Eg=r=>{const t=_g(r),l={imageFormat:["tiff","jpg","jpeg","png","svg","ico","webp"],sheetsFormat:["xls","csv","xlsx"],archivesFormat:["zip","rar"],textsFormat:["json","geojson","txt","yml","yaml","shp"],documentsFormat:["pdf"]};return l.imageFormat.includes(t)?"img":l.sheetsFormat.includes(t)?dg:l.textsFormat.includes(t)?wg:l.documentsFormat.includes(t)?og:l.archivesFormat.includes(t)?yg:vs},Cg={},Vg={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-trash"};function Ng(r,t){return e.openBlock(),e.createElementBlock("svg",Vg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 7l16 0"></path><path d="M10 11l0 6"></path><path d="M14 11l0 6"></path><path d="M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12"></path><path d="M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3"></path>',6)]))}const Pl=_e(Cg,[["render",Ng]]),vg={},Bg={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-download"};function Sg(r,t){return e.openBlock(),e.createElementBlock("svg",Bg,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 11l5 5l5 -5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const Bs=_e(vg,[["render",Sg]]),Ag=["title"],Dg={class:"absolute hidden top-0 right-0 flex items-center gap-x-2 w-full h-full justify-center"},Mg=e.defineComponent({__name:"vs-input-file-list-item",props:e.mergeModels({format:{},multiple:{type:Boolean},max_size:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{value:{},valueModifiers:{},item:{},itemModifiers:{}}),emits:["update:value","update:item"],setup(r){const t=e.useModel(r,"value"),l=e.useModel(r,"item"),n=r;return(a,o)=>(e.openBlock(),e.createElementBlock("div",{title:l.value,class:"h-[120px] w-[120px] border text-gray-300 border-dashed border-[#CFD9E0] rounded-lg overflow-hidden relative item-file"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Eg)(l.value)),{src:l.value,alt:"file",class:"w-full h-full object-cover cursor-pointer",onClick:o[0]||(o[0]=s=>e.unref(Ns)(l.value))},null,8,["src"])),e.createElementVNode("div",Dg,[e.createElementVNode("button",{type:"button",onClick:o[1]||(o[1]=s=>{var i;e.unref(Jh)(l.value),t.value=n.multiple?(i=t.value)==null?void 0:i.filter(c=>c!==l.value):""}),class:"w-6 h-6 flex items-center justify-center text-gray-500 bg-gray-200 rounded-lg hover:text-red-500"},[e.createVNode(Pl,{class:"w-4 h-4"})]),e.createElementVNode("button",{type:"button",onClick:o[2]||(o[2]=s=>e.unref(Ns)(l.value)),class:"w-6 h-6 flex items-center justify-center text-gray-500 bg-gray-200 rounded-lg hover:text-blue-500"},[e.createVNode(Bs,{class:"w-4 h-4"})])])],8,Ag))}}),Ss=_e(Mg,[["__scopeId","data-v-286cdbc0"]]),Tg={class:"flex items-center gap-x-2"},Lg=["multiple","disabled"],$g={key:1,class:"flex items-center flex-wrap gap-2"},Fg={key:1,class:"loader"},Ig={key:1,class:"loader"},Og=e.defineComponent({__name:"vs-input-file",props:e.mergeModels({format:{},multiple:{type:Boolean},max_size:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(r,{emit:t}){const l=r,n=e.useModel(r,"modelValue"),a=t,o=e.ref(null),s=e.ref(!1),i=d=>Array.isArray(n.value)&&n.value[d]||"",c=d=>{if(l.max_size&&d.size>l.max_size*1024*1024){const m=(d.size/1048576).toFixed(2);return se({type:"error",title:"Помилка!",message:`Файл "${d.name}" занадто великий. Максимальний розмір: ${l.max_size} МБ, розмір файлу: ${m} МБ`,position:"right-bottom"}),!1}return!0},u=async d=>{const{files:m}=d.target;if(!m||m.length===0)return;const f=Array.from(m);if(l.max_size&&f.filter(p=>!c(p)).length>0){o.value&&(o.value.value="");return}s.value=!0;try{if(l.multiple){const p=Array.from(m).map(async g=>l.format&&!g.name.endsWith(l.format)?null:await Vs(g,"1","form","table")),h=(await Promise.all(p)).filter(g=>g!==null).map(g=>g==null?void 0:g.file_path).filter(Boolean);n.value=[...n.value||[],...h],a("change",n.value)}else{const p=m[0];if(l.format&&!p.name.endsWith(l.format))return;const h=await Vs(p,"1","form","table");n.value=h==null?void 0:h.file_path,a("change",n.value||"")}}finally{s.value=!1,o.value&&(o.value.value="")}};return(d,m)=>(e.openBlock(),e.createElementBlock("div",Tg,[e.createElementVNode("input",{class:"hidden",ref_key:"fileInput",ref:o,type:"file",multiple:d.multiple,onChange:u,disabled:s.value||d.disabled},null,40,Lg),!d.multiple&&n.value?(e.openBlock(),e.createBlock(Ss,{key:0,item:n.value,"onUpdate:item":m[0]||(m[0]=f=>n.value=f),value:n.value,"onUpdate:value":m[1]||(m[1]=f=>n.value=f)},null,8,["item","value"])):d.multiple?(e.openBlock(),e.createElementBlock("div",$g,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(f,p)=>(e.openBlock(),e.createBlock(Ss,{multiple:d.multiple,key:p,value:n.value,"onUpdate:value":m[2]||(m[2]=h=>n.value=h),item:i(p)},null,8,["multiple","value","item"]))),128)),e.createElementVNode("div",{onClick:m[3]||(m[3]=f=>{var p;return!d.disabled&&!s.value&&((p=o.value)==null?void 0:p.click())}),class:e.normalizeClass(["relative h-[120px] w-[120px] border text-gray-300 hover:text-blue-500 border-dashed border-[#CFD9E0] rounded-lg flex items-center justify-center transition-all duration-300",d.disabled||s.value?"opacity-50 cursor-not-allowed":"cursor-pointer hover:border-blue-500 hover:bg-blue-50"])},[s.value?(e.openBlock(),e.createElementBlock("div",Fg)):(e.openBlock(),e.createBlock(el,{key:0,class:"w-6 h-6"}))],2)])):e.createCommentVNode("",!0),d.multiple?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:2,onClick:m[4]||(m[4]=f=>{var p;return(p=o.value)==null?void 0:p.click()}),class:e.normalizeClass([d.disabled||s.value?"opacity-50 cursor-not-allowed":"cursor-pointer hover:border-blue-500","relative h-[120px] w-[120px] border text-gray-300 hover:text-blue-500 border-dashed border-gray-300 rounded-lg flex items-center justify-center cursor-pointer hover:border-blue-500 transition-all duration-300 hover:bg-blue-50"])},[s.value?(e.openBlock(),e.createElementBlock("div",Ig)):(e.openBlock(),e.createBlock(el,{key:0,class:"w-6 h-6"}))],2))]))}}),Pg=_e(Og,[["__scopeId","data-v-e613a523"]]),Rg={class:"max-w-[55vw]"},Ug={class:"text-sm font-semibold text-gray-800 truncate dark:text-neutral-200"},jg={class:"flex items-center text-xs text-gray-500 truncate dark:text-neutral-500"},zg={class:"px-[5px]"},Hg={class:""},Rl=e.defineComponent({__name:"vs-widget-file-info",props:{item:{default:null}},setup(r){const t=r,l=e.computed(()=>{try{return new Date(t.item.cdate).toLocaleDateString("uk-UA",{day:"2-digit",month:"long",year:"numeric"})}catch{return""}});function n(a){if(a<1024)return`${a} B`;const o=a/1024;return o<1024?`${o.toFixed(2)} KB`:`${(o/1024).toFixed(2)} MB`}return(a,o)=>{var s,i,c,u;return e.openBlock(),e.createElementBlock(e.Fragment,null,[o[1]||(o[1]=e.createStaticVNode('<div class="flex items-center justify-center h-[30px] w-[30px]"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="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-file"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path></svg></div>',1)),e.createElementVNode("div",Rg,[e.createElementVNode("p",Ug,e.toDisplayString((s=a.item)==null?void 0:s.uploaded_name),1),e.createElementVNode("p",jg,[e.createElementVNode("span",null,e.toDisplayString((i=a.item)==null?void 0:i.username),1),e.withDirectives(e.createElementVNode("span",zg,"|",512),[[e.vShow,(c=a.item)==null?void 0:c.username]]),e.createElementVNode("span",null,e.toDisplayString(l.value),1),o[0]||(o[0]=e.createElementVNode("span",{class:"px-[5px]"},"|",-1)),e.createElementVNode("span",Hg,e.toDisplayString(n((u=a.item)==null?void 0:u.size)),1)])])],64)}}}),qg={class:"p-3 relative group flex items-center gap-x-3 border border-gray-200 bg-white rounded-md w-full"},Kg={key:0,class:"flex w-full gap-x-3 items-center"},Gg={key:1,class:"flex gap-x-3 w-full items-center"},Wg={key:2,class:"flex gap-x-3 w-full items-center"},Yg=["href"],Xg={key:3,class:"flex gap-x-3 w-full items-center"},Zg={class:"lg:absolute lg:top-3 lg:end-1 opacity-100"},Qg={class:"p-0.5 sm:p-1 inline-flex items-center gap-0.5 bg-white rounded-lg dark:bg-neutral-800 dark:border-neutral-700"},Jg={class:"inline-block"},ey={class:"inline-block"},ty=e.defineComponent({__name:"vs-widget-file-item",props:{item:{default:null},index:{default:0},prefix:{default:"/api"}},emits:["update","openModal","openLightbox"],setup(r,{emit:t}){const l=r,n=t;function a(d){return["pdf","json"].includes(d.ext)}function o(d){return["ppt","pptx","doc","docx","xls","xlsx"].includes(d.ext)}function s(d){const m=document.createElement("a");m.setAttribute("download",d==null?void 0:d.uploaded_name),m.href=d==null?void 0:d.file_path,m.click()}async function i(){try{await fetch(`${l.prefix}/widget/file/${l.item.entity_id}/${l.item.file_id}`),n("update")}catch(d){console.error(d)}}function c(){n("openModal",{title:"Ви впевнені?",message:"Ви впевнені, що хочете видалити цей файл?",confirmButtonText:"Так, я впевнена/ий",cancelButtonText:"Скасувати",confirm:i,updateListOnConfirm:!0})}function u(d){(l.item.ext==="jpg"||l.item.ext==="png")&&n("openLightbox",{item:l.item,index:d})}return(d,m)=>(e.openBlock(),e.createElementBlock("div",qg,[d.item.ext==="jpg"||d.item.ext==="png"?(e.openBlock(),e.createElementBlock("div",Kg,[e.createElementVNode("div",{class:"max-w-[55vw] cursor-pointer flex gap-x-3 w-full items-center",onClick:m[0]||(m[0]=f=>u(d.index))},[e.createVNode(Rl,{item:d.item},null,8,["item"])])])):a(d.item)?(e.openBlock(),e.createElementBlock("div",Gg,[e.createVNode(Rl,{item:d.item},null,8,["item"])])):o(d.item)?(e.openBlock(),e.createElementBlock("div",Wg,[e.createElementVNode("a",{href:`/api/file-preview?id=${d.item.file_id}`,target:"_blank",class:"flex gap-x-3 w-full items-center"},[e.createVNode(Rl,{item:d.item},null,8,["item"])],8,Yg)])):(e.openBlock(),e.createElementBlock("div",Xg,[e.createVNode(Rl,{item:d.item},null,8,["item"])])),e.createElementVNode("div",Zg,[e.createElementVNode("div",Qg,[e.createElementVNode("div",Jg,[e.createElementVNode("button",{class:"inline-flex p-[6px] justify-center items-center gap-x-2 rounded-lg border border-transparent text-gray-500 hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:text-neutral-400 focus:outline-none focus:bg-gray-100 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",onClick:m[1]||(m[1]=f=>s(d.item))},[e.createVNode(Bs,{height:"14",width:"14"})])]),m[3]||(m[3]=e.createElementVNode("div",{class:"w-px h-5 mx-1 bg-gray-200 dark:bg-neutral-700"},null,-1)),e.createElementVNode("div",ey,[e.createElementVNode("button",{type:"button",class:"size-[30px] inline-flex justify-center items-center gap-x-2 rounded-lg border border-transparent text-red-600 hover:bg-red-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-red-100 dark:text-red-500 dark:hover:bg-red-500/20 dark:focus:bg-red-500/20",onClick:m[2]||(m[2]=f=>c())},[e.createVNode(Pl,{height:"14",width:"14"})])])])])]))}}),ry={},ly={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-download"};function ny(r,t){return e.openBlock(),e.createElementBlock("svg",ly,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 11l5 5l5 -5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const ay=_e(ry,[["render",ny]]),oy={class:"flex flex-col widget-file xl:bg-white xl:rounded-xl dark:xl:bg-neutral-800 dark:xl:border-neutral-700 w-full"},sy={class:"flex w-full mb-[12px] items-center gap-x-2"},iy={class:"font-semibold text-gray-800 dark:text-neutral-200 text-[14px]"},cy={class1:"ml-auto"},dy={class:"py-1.5 px-4 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg bg-gray-100 cursor-pointer hover:bg-gray-200 text-gray-800 shadow-2xs hover:bg-gray-50 focus:outline-hidden focus:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700"},uy={key:0,class:"py-4 mb-4 space-y-4 border-gray-200 border-y dark:border-neutral-700"},my={class:"relative"},py={key:1,class:"space-y-3 max-h-[300px] overflow-y-auto [&::-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"},fy={key:0},hy=e.defineComponent({__name:"vs-input-file-list",props:{id:{default:""},prefix:{default:"/api"},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},emits:["update"],setup(r,{emit:t}){const l=r,n=e.inject("form"),a=e.computed(()=>n.value.formId),o=e.ref(!1),s=e.ref(0),i=t,c=e.ref(!1),u=e.ref({}),d=e.ref([]),m=e.ref(""),f=e.computed(()=>Array.isArray(d.value)?d.value.filter(x=>x.ext==="jpg"||x.ext==="png").map(x=>x==null?void 0:x.file_path):[]),p=e.computed(()=>m.value===""?d.value:d.value.filter(x=>{var k;return(k=x==null?void 0:x.uploaded_name)==null?void 0:k.includes(m.value)})),h=x=>{const k=f.value.findIndex(_=>_===x.item.file_path);k!==-1&&(o.value=!0,s.value=k)},g=async()=>{try{const x=await fetch(`${l.prefix}/widget/file/${a.value}`).then(k=>k.json());d.value=x==null?void 0:x.rows}catch(x){console.error(x)}},y=async x=>{await Promise.all(Array.from(x.target.files).map(async k=>{const _=new FormData;_.append("file",k);try{const N=`${l.prefix}/widget/file/${a.value}`,V=await fetch(N,{method:"POST",body:_});return V.ok?(i("update","file-list"),k):(se({type:V.status>=400&&V.status<500?"warning":"error",title:"Error",message:`Error code: ${V.status}`}),null)}catch(N){return se({type:"error",title:"Error",message:N.message||"Unknown error"}),console.error(N),null}})),await g()},b=x=>{const k={...x};return x.cancel||(k.cancel=()=>{c.value=!1}),x.updateListOnConfirm&&(k.confirm=async()=>{await x.confirm(),c.value=!1,g()}),k},w=x=>{u.value=b(x),c.value=!0};return e.watch(a,x=>{x&&g()}),e.onMounted(()=>{a.value&&g()}),(x,k)=>{var V,P,$;const _=e.resolveComponent("Lightbox"),N=e.resolveComponent("MessageBox");return e.openBlock(),e.createElementBlock("div",oy,[e.createElementVNode("div",sy,[e.createElementVNode("h2",iy," Файлів: "+e.toDisplayString((V=d.value)==null?void 0:V.length),1),e.createElementVNode("div",cy,[e.createElementVNode("label",null,[e.createElementVNode("input",{type:"file",class:"hidden",onChange:k[0]||(k[0]=M=>y(M))},null,32),e.createElementVNode("div",dy,[e.createVNode(ay,{height:"16",width:"16"})])])])]),((P=d.value)==null?void 0:P.length)>4?(e.openBlock(),e.createElementBlock("div",uy,[e.createElementVNode("div",null,[e.createElementVNode("div",my,[k[8]||(k[8]=e.createElementVNode("div",{class:"absolute inset-y-0 start-0 flex items-center pointer-events-none z-[1] ps-3.5"},[e.createElementVNode("svg",{class:"flex-shrink-0 text-gray-500 size-4 dark:text-neutral-400",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"},[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"}),e.createElementVNode("path",{d:"m21 21-4.3-4.3"})])],-1)),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":k[1]||(k[1]=M=>m.value=M),class:"py-2 px-3 ps-10 pe-16 block w-full bg-gray-200 xl:bg-gray-100 rounded-lg text-sm focus:border-blue-500 h-[40px] focus:border-2 focus:outline-none disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:border-transparent dark:text-neutral-400 dark:placeholder:text-neutral-400 dark:focus:ring-neutral-600",placeholder:"Введіть назву файлу"},null,512),[[e.vModelText,m.value,void 0,{trim:!0}]])])])])):e.createCommentVNode("",!0),($=d.value)!=null&&$.length?(e.openBlock(),e.createElementBlock("div",py,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(M,D)=>(e.openBlock(),e.createBlock(ty,{key:D,prefix:x.prefix,item:M,index:D,onUpdate:k[2]||(k[2]=q=>x.$emit("update","file-list")),onOpenModal:k[3]||(k[3]=q=>w(q)),onOpenLightbox:k[4]||(k[4]=q=>h(q))},null,8,["prefix","item","index"]))),128)),p.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",fy,k[9]||(k[9]=[e.createElementVNode("p",{class:"text-sm text-gray-600 font-sm"}," Файлів з такою назвою не існує, введіть інше пошукове слово ",-1)])))])):e.createCommentVNode("",!0),e.createVNode(_,{modelValue:o.value,"onUpdate:modelValue":k[5]||(k[5]=M=>o.value=M),startIndex:s.value,"onUpdate:index":k[6]||(k[6]=M=>s.value=M),images:f.value},null,8,["modelValue","startIndex","images"]),e.createVNode(N,e.mergeProps({modelValue:c.value,"onUpdate:modelValue":k[7]||(k[7]=M=>c.value=M),onConfirm:u.value.confirm},u.value),null,16,["modelValue","onConfirm"])])}}}),gy={class:"flex items-center justify-between"},yy={class:"text-[16px] text-gray-900 font-medium"},by={class:"grid gap-3"},ky=e.defineComponent({__name:"vs-container-switcher",props:{title:{type:String,default:""},style:{type:Object,default:()=>({})},isOpen:{type:Boolean,default:!1}},setup(r){const t=r,l=e.ref(t.isOpen);return e.watch(()=>t.isOpen,n=>{l.value=n}),(n,a)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",gy,[e.createElementVNode("p",yy,e.toDisplayString(r.title),1),e.createVNode(ws,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=o=>l.value=o),style:e.normalizeStyle(r.style)},null,8,["modelValue","style"])]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",by,[e.renderSlot(n.$slots,"default",{},void 0,!0)],512),[[e.vShow,l.value]])]),_:3})]))}}),xy=_e(ky,[["__scopeId","data-v-90320b87"]]),wy={class:"text-[16px] text-gray-900 font-medium"},_y={class:"grid gap-3"},Ey=e.defineComponent({__name:"vs-container-accordion",props:{title:{type:String,default:""},style:{type:Object,default:()=>({})},isOpen:{type:Boolean,default:!1}},setup(r){const t=r,l=e.ref(t.isOpen);return e.watch(()=>t.isOpen,n=>{l.value=n}),(n,a)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{type:"button",onClick:a[0]||(a[0]=o=>l.value=!l.value),class:"flex items-center gap-2"},[e.createVNode(e.unref(wh),{class:e.normalizeClass(["h-4 w-4 duration-300",[l.value?"-rotate-180":""]])},null,8,["class"]),e.createElementVNode("span",wy,e.toDisplayString(r.title),1)]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",_y,[e.renderSlot(n.$slots,"default",{},void 0,!0)],512),[[e.vShow,l.value]])]),_:3})]))}}),Cy=_e(Ey,[["__scopeId","data-v-590eff11"]]),Vy={class:"flex items-center justify-between"},Ny=e.defineComponent({__name:"vs-container-default",props:{title:{type:String,default:""},style:{type:Object,default:()=>({})}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",Vy,[e.createElementVNode("p",null,e.toDisplayString(r.title),1)]),e.renderSlot(t.$slots,"default")]))}}),vy={switcher:xy,accordion:Cy,default:Ny},Et={Equal:"==",Inequal:"!=",Higer:">",HigerOrEqual:">=",Lower:"<",LowerOrEqual:"<=",Between:"between",StartWith:"^",EndWith:"$",Contain:"*",In:"in",NotIn:"not_in"},By=(r,t)=>String(r)===String(t),Sy=(r,t)=>String(r)!==String(t),Ay=(r,t)=>r>t,Dy=(r,t)=>r>=t,My=(r,t)=>r<t,Ty=(r,t)=>r<=t,Ly=(r,t)=>Array.isArray(t)&&t.length===2?r>=t[0]&&r<=t[1]:!1,$y=(r,t)=>String(r).startsWith(String(t)),Fy=(r,t)=>String(r).endsWith(String(t)),Iy=(r,t)=>String(r).includes(String(t)),Oy=(r,t)=>Array.isArray(t)?t.includes(r):!1,Py=(r,t)=>Array.isArray(t)?!t.includes(r):!0,As=(r,t)=>{if(!t)return!0;switch(t==null?void 0:t[1]){case Et.Equal:return By(r,t==null?void 0:t[2]);case Et.Inequal:return Sy(r,t==null?void 0:t[2]);case Et.Higer:return Ay(r,t==null?void 0:t[2]);case Et.HigerOrEqual:return Dy(r,t==null?void 0:t[2]);case Et.Lower:return My(r,t==null?void 0:t[2]);case Et.LowerOrEqual:return Ty(r,t==null?void 0:t[2]);case Et.Between:return Ly(r,t==null?void 0:t[2]);case Et.StartWith:return $y(r,t==null?void 0:t[2]);case Et.EndWith:return Fy(r,t==null?void 0:t[2]);case Et.Contain:return Iy(r,t==null?void 0:t[2]);case Et.In:return Oy(r,t==null?void 0:t[2]);case Et.NotIn:return Py(r,t==null?void 0:t[2]);default:return!0}},Ry=e.defineComponent({__name:"vs-input-container",props:{style:{type:Object,default:()=>({})},title:{type:String,default:""},view:{type:String,default:"default"},name:{type:String,default:""},schema:{type:Array,default:()=>[]}},setup(r){const t=r,l=e.inject("values",e.ref({})),n=e.inject("form"),a=e.computed(()=>{var i;return(i=t.schema)==null?void 0:i.filter(c=>{var f,p,h,g;const u=c==null?void 0:c.conditions;if(!u)return!0;const d=Array.isArray(u)?u[0]:u,m=t.name?((p=(f=l.value)==null?void 0:f[t.name])==null?void 0:p[d])??((h=l.value)==null?void 0:h[d]):(g=l.value)==null?void 0:g[d];return As(m,u)})}),o=e.computed(()=>vy[t.view]),s=e.computed(()=>{if(l.value||(l.value={}),!t.name)return l.value;const i=l.value[t.name];if(i)return i;const c={};return l.value={...l.value,[t.name]:c},c});return(i,c)=>{var u;return(u=r.schema)!=null&&u.length?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{key:0,title:r.title,style:e.normalizeStyle(r.style)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,d=>{var m,f;return e.openBlock(),e.createBlock(Ms,e.mergeProps({key:d.name},{ref_for:!0},d,{item:d,modelValue:s.value[d.name],"onUpdate:modelValue":p=>s.value[d.name]=p,style:r.style,error:(f=(m=e.unref(n))==null?void 0:m.errors)==null?void 0:f[d.name]}),null,16,["item","modelValue","onUpdate:modelValue","style","error"])}),128))]),_:1},8,["title","style"])):e.createCommentVNode("",!0)}}}),Uy=["aria-expanded","data-focus"],jy={key:0,class:"flex flex-wrap items-center gap-1 overflow-y-auto min-w-0 flex-1"},zy={class:"flex items-center min-w-0"},Hy=["title"],qy=["innerHTML"],Ky=["onClick"],Gy={class:"flex-1 min-w-[2px]"},Wy=["placeholder"],Yy=["title"],Xy=["innerHTML"],Zy={key:2,class:"flex-1 min-w-[2px]"},Qy=["placeholder"],Jy={class:"flex items-center shrink-0"},eb=["disabled"],tb=["disabled","title"],rb=["aria-disabled","onClick"],lb=["innerHTML"],nb={key:1,class:"px-3 py-2 text-center text-gray-500"},ab=["disabled"],ta=e.defineComponent({__name:"vs-input-select",props:{multiple:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},mode:{},defaultValue:{},search:{type:Boolean,default:!0},placeholder:{default:"Оберіть значення"},prefix:{default:"api"},host:{default:""},data:{default:""},options:{default:()=>[]},api:{default:null},maxHeight:{default:400},parent:{},set:{},slot:{},add:{},teleport:{default:"body"},auto:{default:0},style:{default:()=>({})},customClass:{default:""},modelValue:{},error:{default:null},name:{}},emits:["change","update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=e.computed(()=>l.multiple),o=e.computed(()=>l.disabled);gt(l.style);const s=e.computed({get:()=>l.modelValue,set:B=>n("update:modelValue",B)});!s.value&&l.defaultValue&&(s.value=l.defaultValue);const i=e.ref(null),c=e.ref(null),u=e.ref(null),d=e.ref(null),m=e.ref(!1),f=e.ref(!1),p=e.ref(null),h=e.ref([]),g=e.ref(-1),y=e.ref([]),b=e.ref(""),w=e.ref(null),x=e.ref("bottom"),k=e.ref({}),_=e.ref([]),N=e.computed(()=>{if(!_.value.length)return[];const B=h.value,T=new Map(B.map(W=>{var te;return[(te=W.id)==null?void 0:te.toString(),W]}));return _.value.map(W=>T.get(W==null?void 0:W.toString())).filter(W=>!!W)}),V=e.computed(()=>l.placeholder||"Select..."),P=e.computed(()=>A(p.value));e.computed(()=>a.value?!_.value.length&&b.value==="":!P.value&&b.value==="");const $=e.computed(()=>o.value?!1:a.value?_.value.length>0:!!s.value),M=B=>{var T;return a.value?_.value.some(W=>(W==null?void 0:W.toString())===(B==null?void 0:B.toString())):((T=s.value)==null?void 0:T.toString())===(B==null?void 0:B.toString())},D=e.computed(()=>{let B=h.value??[];if(!l.data&&b.value.trim()!==""){const T=b.value.toLowerCase();B=B.filter(W=>{var we,Oe;const te=A(W).toLowerCase(),ye=((Oe=(we=W.text)==null?void 0:we.toLowerCase)==null?void 0:Oe.call(we))||"";return te.includes(T)||ye.includes(T)})}if(a.value&&_.value.length){const T=new Set(_.value.map(W=>W==null?void 0:W.toString()));B=B.filter(W=>{var te;return!T.has((te=W.id)==null?void 0:te.toString())})}return B}),q=e.inject("values"),Q=/\{\{\s*([^}]+?)\s*\}\}/g,R=B=>(B?String(B):"").replace(/<[^>]*>/g,"").trim(),I=e.computed(()=>l.slot??(l==null?void 0:l.optionTemplate)??""),F=B=>{if(!B)return"";const T=I.value;return T?T.replace(Q,(W,te)=>{const ye=te.trim(),we=B[ye];return we!=null?String(we):""}):B.text??""},A=B=>{if(!B)return"";if(!I.value)return B.text??"";const T=F(B);return R(T)||B.text||""},z=B=>{l.set&&(q!=null&&q.value)&&Object.entries(l.set).forEach(([T,W])=>{if(!T)return;const te=B?B[W]:null;q.value[T]=te??null})},ee=e.computed(()=>{var B,T;return l.parent?((T=(B=q==null?void 0:q.value)==null?void 0:B[l.parent])==null?void 0:T.toString())??null:null}),pe=async B=>{var T;if(!l.data){let W=l.options??[];if(B!=null&&B.trim()){const te=B.toLowerCase();W=W.filter(ye=>{var oe,ft;const we=A(ye).toLowerCase(),Oe=((ft=(oe=ye.text)==null?void 0:oe.toLowerCase)==null?void 0:ft.call(oe))||"";return we.includes(te)||Oe.includes(te)})}return W}try{const W=l.host??"",te=l.prefix??"api",ye=l.api??`/${te}/suggest/${l.data}`,we=`${W}${ye}`,Oe=new URLSearchParams;return Oe.set("json","1"),B&&Oe.set("key",B),ee.value!==void 0&&ee.value!==null&&ee.value!==""&&Oe.set("parent",ee.value),((T=await fetch(`${we}?${Oe.toString()}`).then(oe=>oe.json()))==null?void 0:T.data)??[]}catch{return[]}},Ne=async()=>{l.data?h.value=await pe(b.value):h.value=l.options?[...l.options]:[]},Xe=async B=>{var W,te,ye;if(B==null)return null;const T=(W=h.value)==null?void 0:W.find(we=>{var Oe;return((Oe=we==null?void 0:we.id)==null?void 0:Oe.toString())===String(B)});if(T)return T;if(l.data)try{const we=l.host??"",Oe=l.prefix??"api",oe=l.api??`/${Oe}/suggest/${l.data}`,ft=`${we}${oe}`,Dt=new URLSearchParams;return Dt.set("json","1"),Dt.set("val",String(B)),ee.value!==void 0&&ee.value!==null&&ee.value!==""&&Dt.set("parent",ee.value),((ye=((te=await fetch(`${ft}?${Dt.toString()}`).then(_r=>_r.json()))==null?void 0:te.data)??[])==null?void 0:ye[0])??null}catch{return null}return null},Jt=async B=>{const T=new Set(h.value.map(te=>{var ye;return(ye=te.id)==null?void 0:ye.toString()})),W=B.filter(te=>!T.has(te==null?void 0:te.toString()));W.length&&await W.reduce(async(te,ye)=>{await te;const we=await Xe(ye);we&&h.value.push(we)},Promise.resolve())},Re=async()=>{o.value||(m.value=!0,await Ne(),await e.nextTick(()=>{var B;re(),(B=w.value)==null||B.focus(),D.value.length?g.value=0:g.value=-1}))},Ze=()=>{m.value=!1,g.value=-1},At=async B=>{o.value||(m.value?Ze():await Re())},xt=async()=>{var B;m.value?(B=w.value)==null||B.focus():await Re()},Nt=()=>{a.value?(_.value=[],s.value=[],n("change",[])):(p.value=null,s.value=null,n("change",null)),z(null),b.value="",e.nextTick(()=>{var B;return(B=w.value)==null?void 0:B.focus()})},jt=B=>{a.value&&(_.value=_.value.filter(T=>(T==null?void 0:T.toString())!==(B==null?void 0:B.toString())),s.value=[..._.value],n("change",s.value),e.nextTick(()=>{var T;return(T=w.value)==null?void 0:T.focus()}))},ot=B=>{a.value?(M(B.id)||(_.value=[..._.value,B.id],s.value=[..._.value],n("change",s.value)),b.value="",e.nextTick(()=>{var T;(T=w.value)==null||T.focus(),g.value=Math.min(g.value,D.value.length-1)}),z(null)):(p.value=B,s.value=B.id,n("change",s.value),b.value="",Ze(),z(B))},ct=B=>{M(B.id)||ot(B)},U=(B,T)=>{if(!B||!T)return;const W=B.offsetTop,te=W+B.offsetHeight,ye=T.scrollTop,we=ye+T.clientHeight;let Oe=T.scrollTop;W<ye?Oe=W-80:te>we&&(Oe=te-T.clientHeight+4);const oe=T;oe.scrollTop=Oe},Y=B=>{let T=B.parentElement;for(;T;){if(T.classList.contains("ui-dialog__content"))return T;const W=window.getComputedStyle(T),te=W.overflow+W.overflowY+W.overflowX;if(te.includes("auto")||te.includes("scroll")||T===document.body||T===document.documentElement)return T;T=T.parentElement}return document.body},re=()=>{if(!c.value)return;const B=c.value.getBoundingClientRect(),T=window.innerHeight||document.documentElement.clientHeight,W=window.innerWidth||document.documentElement.clientWidth,te=8,ye=8,we=l.maxHeight||300,Oe=T-B.bottom-ye-te,oe=B.top-ye-te,ft=Oe>=oe,Dt=Math.max(W-te*2,0);let{width:_r}=B;Dt>0&&_r>Dt&&(_r=Dt);let{left:_l}=B;_l+_r+te>W&&(_l=W-_r-te),_l=Math.max(_l,te);const XA=Math.min(we,Math.max(ft?Oe:oe,50));x.value=ft?"bottom":"top",k.value={position:"fixed",left:`${_l}px`,width:`${_r}px`,minWidth:"300px",maxHeight:`${XA}px`,transform:ft?"none":"translateY(-100%)",top:ft?`${B.bottom+ye}px`:`${B.top-ye}px`}},le=async B=>{o.value||!m.value&&(B.key==="ArrowDown"||B.key==="ArrowUp")&&(B.preventDefault(),await Re())},ue=B=>{var W;if(!m.value)return;const{key:T}=B;if(T==="ArrowDown")B.preventDefault(),g.value+1<D.value.length&&(g.value+=1,U(y.value[g.value],u.value));else if(T==="ArrowUp")B.preventDefault(),g.value>0&&(g.value-=1,U(y.value[g.value],u.value));else if(T==="Enter"){B.preventDefault();const te=D.value[g.value];te&&ot(te),(W=w.value)==null||W.blur()}else T==="Escape"?(B.preventDefault(),Ze()):T==="Backspace"?a.value&&b.value===""&&_.value.length&&(_.value=_.value.slice(0,-1),s.value=[..._.value],n("change",s.value)):T==="Home"?(g.value=0,U(y.value[0],u.value)):T==="End"?(g.value=D.value.length-1,U(y.value[g.value],u.value)):T==="Tab"&&Ze()},Te=()=>{o.value||(f.value=!0)},C=()=>{f.value=!1,b.value=""},v=B=>{B.key==="Escape"&&m.value&&Ze()},H=B=>{var W,te;const T=B.target;(W=i.value)!=null&&W.contains(T)||(te=d.value)!=null&&te.contains(T)||Ze()},ne=B=>{m.value&&u.value&&!u.value.contains(B.target)&&re()},$e=()=>{m.value&&re()},Fe=()=>{m.value&&re()};e.watch(()=>l.options,B=>{B!=null&&B.length&&(h.value=[...B],be())},{immediate:!0});async function be(){if(a.value)Array.isArray(s.value)?_.value=[...s.value]:(_.value=s.value==null?[]:[s.value],s.value=[..._.value]),l.data&&_.value.length&&(await Jt(_.value),await e.nextTick());else{if(Array.isArray(s.value)){const B=s.value[0]??null;s.value=B??null}s.value!=null&&(p.value=await Xe(s.value)),z(p.value??null)}}e.watch(s,()=>{be()}),e.onMounted(async()=>{var B;addEventListener("keydown",v),addEventListener("scroll",ne,!0),addEventListener("resize",$e),document.addEventListener("click",H,!0),c.value&&Y(c.value).addEventListener("scroll",Fe,!0),(B=l.options)!=null&&B.length&&!l.data?h.value=[...l.options]:l.data&&(h.value=await pe("")),await be(),Z.value=!1}),e.onUnmounted(()=>{removeEventListener("keydown",v),removeEventListener("scroll",ne,!0),removeEventListener("resize",$e),document.removeEventListener("click",H,!0),c.value&&Y(c.value).removeEventListener("scroll",Fe,!0)});const O=e.ref(!1),K=e.ref({}),ke=e.ref([]),Se=e.ref(null);async function E(){var W,te;if(!((W=l.add)!=null&&W.token)||Se!=null&&Se.value.validate())return;const B=l.add.api??`/api/table/${l.add.token}`,{id:T}=await fetch(B,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(K.value)}).then(ye=>ye.json());if(!((te=l.options)!=null&&te.length)&&l.data){const{data:ye}=await fetch(`${l.api??`/api/suggest/${l.data}`}?val=${T}`).then(we=>we.json());p.value=ye[0],h.value.push(ye[0]),s.value=T}O.value=!1,se({title:"Success!",message:"Object created."})}async function S(){if(!l.add)return null;const B=await fetch(`/api/template/form/${l.add.form}`).then(T=>T.json());return ke.value=B.schema,O.value=!0,null}function j(B,T=200){let W;return(...te)=>{W&&clearTimeout(W),W=window.setTimeout(()=>B(...te),T)}}const G=j(async B=>{h.value=await pe(B)},200);e.watch(b,B=>{l.data&&G(B.trim())}),e.watch(()=>l.options,B=>{!l.data&&(B!=null&&B.length)&&(h.value=[...B],be())},{immediate:!0}),e.watch(()=>l.parent??l.parentValue,()=>{l.data&&Ne()});const Z=e.ref(!0);return e.watch(ee,async()=>{if(l.data&&(Z.value||(a.value?(_.value=[],s.value=[],n("change",[])):(p.value=null,s.value=null,n("change",null))),await Ne(),l.auto===1&&ee.value&&h.value.length>0)){const B=h.value[0];B&&ot(B)}}),(B,T)=>{var W,te,ye,we,Oe;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Gt),{visible:O.value,"onUpdate:visible":T[1]||(T[1]=oe=>O.value=oe),title:"Додати",buttonText:"Додати",onDone:E,teleport:B.teleport},{default:e.withCtx(()=>[e.createVNode(He,{schema:ke.value,modelValue:K.value,"onUpdate:modelValue":T[0]||(T[0]=oe=>K.value=oe),ref_key:"addForm",ref:Se},null,8,["schema","modelValue"])]),_:1},8,["visible","teleport"]),e.createElementVNode("div",{class:"flex gap-1 w-full",ref_key:"selectRoot",ref:i,onClick:T[5]||(T[5]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",{class:e.normalizeClass(["relative w-full font-sans",l.customClass])},[T[10]||(T[10]=e.createElementVNode("span",{id:"react-select-live-region",class:"sr-only"},null,-1)),T[11]||(T[11]=e.createElementVNode("span",{"aria-live":"polite","aria-atomic":"false","aria-relevant":"additions text",role:"log",class:"sr-only"},null,-1)),e.createElementVNode("div",{class:e.normalizeClass(["flex min-h-[38px] items-center justify-between rounded border transition-colors bg-white","border-gray-300 hover:border-gray-400",m.value||f.value?"border-blue-500 ring-1 ring-blue-500":"",o.value?"bg-gray-100 text-gray-400 cursor-not-allowed hover:border-gray-300":""]),role:"combobox","aria-expanded":m.value,"aria-haspopup":"listbox",onKeydown:le,onClick:xt,"data-focus":m.value||f.value?"true":"false"},[e.createElementVNode("div",{class:"flex flex-1 items-center gap-1 py-0.5 pl-2 pr-0 overflow-hidden h-full",ref_key:"triggerRef",ref:c},[a.value?(e.openBlock(),e.createElementBlock("div",jy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,oe=>(e.openBlock(),e.createElementBlock("div",{class:"flex min-w-0 bg-[#e6e6e6] rounded-sm m-0.5 box-border max-w-full",key:oe.id},[e.createElementVNode("div",zy,[oe!=null&&oe.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"w-[16px] h-[16px] rounded-md block ml-1.5 flex-shrink-0",style:e.normalizeStyle({backgroundColor:oe==null?void 0:oe.color})},null,4)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"truncate text-gray-900 overflow-hidden max-w-[200px] px-0.5 py-[2px] pl-1.5",title:A(oe)},[I.value?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:F(oe)},null,8,qy)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(oe.text),1)],64))],8,Hy)]),e.createElementVNode("div",{role:"button",class:"flex items-center rounded-sm px-1 box-border hover:bg-[#ffbdad] hover:text-[#de350b] flex-shrink-0",onClick:e.withModifiers(ft=>jt(oe.id),["stop"])},T[6]||(T[6]=[e.createElementVNode("svg",{height:"14",width:"14",viewBox:"0 0 20 20","aria-hidden":"true",focusable:"false",class:"inline-block fill-current stroke-current leading-none stroke-0"},[e.createElementVNode("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"})],-1)]),8,Ky)]))),128)),e.createElementVNode("div",Gy,[!o.value&&B.search?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:w,class:"w-full bg-transparent outline-none border-0 m-0 p-0 text-gray-900",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",type:"text",tabindex:"0","aria-autocomplete":"list",placeholder:_.value.length?" ":V.value,"onUpdate:modelValue":T[2]||(T[2]=oe=>b.value=oe),onFocus:Te,onBlur:C,onKeydown:ue},null,40,Wy)),[[e.vModelText,b.value]]):e.createCommentVNode("",!0)])])):!a.value&&!f.value&&P.value&&b.value===""?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["truncate text-gray-900"]),title:P.value},[(W=p.value)!=null&&W.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"w-[14px] h-[14px] rounded-md block mr-1 mt-1 absolute",style:e.normalizeStyle({backgroundColor:(te=p.value)==null?void 0:te.color})},null,4)):e.createCommentVNode("",!0),I.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass({"pl-5":(ye=p.value)==null?void 0:ye.color}),innerHTML:F(p.value)},null,10,Xy)):(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass({"pl-5":(we=p.value)==null?void 0:we.color})},e.toDisplayString((Oe=p.value)==null?void 0:Oe.text),3))],8,Yy)):e.createCommentVNode("",!0),a.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Zy,[!o.value&&B.search?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:w,class:"w-full bg-transparent outline-none border-0 m-0 p-0 text-gray-900",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",type:"text",tabindex:"0","aria-autocomplete":"list",placeholder:P.value?" ":V.value,"onUpdate:modelValue":T[3]||(T[3]=oe=>b.value=oe),onFocus:Te,onBlur:C,onKeydown:ue},null,40,Qy)),[[e.vModelText,b.value]]):e.createCommentVNode("",!0)]))],512),e.createElementVNode("div",Jy,[$.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50","aria-hidden":"true",disabled:o.value,onClick:e.withModifiers(Nt,["stop"])},T[7]||(T[7]=[e.createElementVNode("svg",{height:"20",width:"20",viewBox:"0 0 20 20",class:"fill-current"},[e.createElementVNode("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"})],-1)]),8,eb)):e.createCommentVNode("",!0),T[9]||(T[9]=e.createElementVNode("div",{class:"self-stretch w-px bg-[#ccc] my-[1px]"},null,-1)),e.createElementVNode("button",{type:"button",class:"px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50","aria-hidden":"true",disabled:o.value,onClick:T[4]||(T[4]=e.withModifiers(oe=>At(),["stop"])),title:m.value?"Закрити список":"Відкрити список"},T[8]||(T[8]=[e.createElementVNode("svg",{height:"20",width:"20",viewBox:"0 0 20 20",class:"fill-current"},[e.createElementVNode("path",{d:"M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"})],-1)]),8,tb)])],42,Uy),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[m.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:d,class:e.normalizeClass(["fixed z-[3000] rounded bg-white shadow-[0_0_0_1px_rgba(0,0,0,0.1),0_4px_11px_rgba(0,0,0,0.1)]"]),style:e.normalizeStyle(k.value),role:"listbox"},[e.createElementVNode("div",{class:"overflow-y-auto py-1",style:e.normalizeStyle({maxHeight:k.value.maxHeight||"300px"}),ref_key:"listRef",ref:u},[D.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(D.value,(oe,ft)=>(e.openBlock(),e.createElementBlock("div",{key:oe.id,ref_for:!0,ref:Dt=>y.value[ft]=Dt,class:e.normalizeClass(["flex px-3 py-2 cursor-default select-none text-gray-900 ",M(oe.id)?"bg-blue-500 text-white":"bg-white hover:bg-blue-100",g.value===ft&&!M(oe.id)?"bg-blue-100":""]),"aria-disabled":M(oe.id)?"true":"false",role:"option",tabindex:"-1",onClick:Dt=>ct(oe)},[oe!=null&&oe.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"w-[11px] h-[11px] rounded-full block mr-1 mt-1.5",style:e.normalizeStyle({backgroundColor:oe==null?void 0:oe.color})},null,4)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["leading-[19px]",g.value===oe.id?"text-white":"",(g.value,"")])},[I.value?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:F(oe)},null,8,lb)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(oe.text),1)],64))],2)],10,rb))),128)):(e.openBlock(),e.createElementBlock("div",nb," No options "))],4)],4)):e.createCommentVNode("",!0)]))],2),l.add?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:S,class:"bg-white hover:bg-gray-100 text-sm text-gray-900 py-[10px] px-3 border border-stone-200 rounded-md h-[38px] flex items-center gap-2",disabled:o.value,type:"button"},[e.createVNode(el,{width:"16",height:"16"}),T[12]||(T[12]=e.createElementVNode("span",null,"Додати",-1))],8,ab)):e.createCommentVNode("",!0)],512)],64)}}}),ob=["placeholder","disabled"],sb=e.defineComponent({__name:"vs-input-textarea",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("textarea",{"onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),placeholder:o.value,disabled:a.value,row:"2",class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] h-auto bg-white",[e.unref(l)]]),style:{border:"1px solid #CFD9E0"}},null,10,ob)),[[e.vModelText,n.value]])}}),ib={},cb={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-search stroke-gray-500 transition-all"};function db(r,t){return e.openBlock(),e.createElementBlock("svg",cb,t[0]||(t[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 ub=_e(ib,[["render",db]]),mb={},pb={class:"flex-shrink-0 mt-0.5 size-3.5",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"};function fb(r,t){return e.openBlock(),e.createElementBlock("svg",pb,t[0]||(t[0]=[e.createElementVNode("path",{d:"m3 16 4 4 4-4"},null,-1),e.createElementVNode("path",{d:"M7 20V4"},null,-1),e.createElementVNode("path",{d:"m21 8-4-4-4 4"},null,-1),e.createElementVNode("path",{d:"M17 4v16"},null,-1)]))}const hb=_e(mb,[["render",fb]]),gb={},yb={xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"};function bb(r,t){return e.openBlock(),e.createElementBlock("svg",yb,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 9l5 -5l5 5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const kb=_e(gb,[["render",bb]]),xb={},wb={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"};function _b(r,t){return e.openBlock(),e.createElementBlock("svg",wb,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 11l5 5l5 -5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const Eb=_e(xb,[["render",_b]]),Cb={},Vb={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"};function Nb(r,t){return e.openBlock(),e.createElementBlock("svg",Vb,t[0]||(t[0]=[e.createStaticVNode('<circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle>',6)]))}const Ds=_e(Cb,[["render",Nb]]),vb={},Bb={viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function Sb(r,t){return e.openBlock(),e.createElementBlock("svg",Bb,t[0]||(t[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 Ab=_e(vb,[["render",Sb]]),Db={},Mb={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"};function Tb(r,t){return e.openBlock(),e.createElementBlock("svg",Mb,t[0]||(t[0]=[e.createElementVNode("path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"},null,-1)]))}const Lb=_e(Db,[["render",Tb]]),$b={class:"vs-datatable border rounded-xl w-full flex-grow"},Fb={class:"flex items-center npm gap-[16px] justify-between p-[20px] pb-[16px]"},Ib={class:"relative w-full"},Ob={class:"table-wrapper flex gap-2"},Pb={class:"vs-popover inline-block text-slate-700"},Rb={class:"text-center"},Ub={class:""},jb={class:"py-1 px-0 w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg focus:outline-none focus:bg-stone-100 dark:bg-neutral-900 dark:text-neutral-200 dark:focus:bg-neutral-800 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"},zb={class:"flex flex-col p-[1px] gap-[2px] w-[140px]"},Hb={class:"text-sm items-center text-gray-800 flex gap-1"},qb={class:"w-full overflow-x-auto"},Kb={class:"w-full table-auto caption-bottom text-sm"},Gb={class:"[&_tr]:border-b"},Wb={class:"border-b data-[state=selected]:bg-muted bg-slate-50/50 dark:bg-slate-700/50 hover:bg-slate-50/80 dark:hover:bg-slate-700/80 transition-colors"},Yb={class:"h-10 px-2 align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] w-12 text-center"},Xb={key:0,colspan:"100%",class:"text-center"},Zb={class:"w-full"},Qb={class:"p-5 min-h-[200px] flex flex-col justify-center items-center text-center"},Jb=["onDragstart","onDragover","onDrop"],e1={class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] text-center"},t1={class:"flex items-center justify-center"},r1={key:0,class:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors"},l1={key:0},n1=["src"],a1={key:1,class:"rounded-md max-w-[45px] w-[45px] max-h-[45px] h-[45px] bg-gray-200 flex items-center justify-center"},o1=["innerHTML"],s1={key:2,class:"line-clamp-2 rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors"},i1={key:3,class:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors"},c1={class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]"},d1={class:"flex items-center justify-center gap-2"},u1=["onClick"],m1=["onClick"],p1={class:"vs-form__head mr-5 mt-3 flex items-center justify-end sticky top-0 left-0 z-[60] bg-white"},f1=e.defineComponent({__name:"vs-input-datatable",props:e.mergeModels({colModel:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{default:[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.ref({}),a=e.ref(""),o=e.computed(()=>{if(!a.value)return l.value??[];const I=a.value.toLowerCase();return l.value.filter(F=>{var A;return(A=t.colModel)==null?void 0:A.some(z=>{const ee=F[z.key];return ee?Array.isArray(ee)?ee.join(", ").toLowerCase().includes(I):String(ee).toLowerCase().includes(I):!1})})}),s=e.ref(null),i=e.ref(null),c=e.ref(!1),u=e.ref(null),d=e.ref({top:0,left:0}),m=I=>{s.value=I},f=I=>{i.value=I},p=I=>{if(s.value===null||s.value===I){s.value=null,i.value=null;return}const F=[...l.value],[A]=F.splice(s.value,1);F.splice(I,0,A),l.value=F,s.value=null,i.value=null},h=I=>{const F=I.currentTarget.getBoundingClientRect();d.value={top:F.bottom+window.scrollY,left:F.left+window.scrollX},c.value=!c.value},g=()=>{u.value&&u.value.click()},y=I=>{const F=[".jpg",".jpeg",".png",".gif",".bmp",".webp",".svg",".ico",".tiff",".tif"],A=I.toLowerCase();return F.some(z=>A.endsWith(z))},b=I=>{var z;const F=(z=I.target.files)==null?void 0:z[0];if(!F)return;const A=new FileReader;A.onload=ee=>{var pe;try{const Ne=(pe=ee.target)==null?void 0:pe.result;if(typeof Ne=="string"){const Xe=JSON.parse(Ne);Array.isArray(Xe)&&l.value.push(...Xe)}}catch(Ne){console.error("Error parsing file:",Ne)}},A.readAsText(F)},w=()=>{const I=JSON.stringify(l.value,null,2),F=new Blob([I],{type:"application/json"}),A=URL.createObjectURL(F),z=document.createElement("a");z.href=A,z.download="data.json",z.click(),URL.revokeObjectURL(A)};e.onMounted(async()=>{var F;const I=(F=t.colModel)==null?void 0:F.filter(A=>A.data);I!=null&&I.length&&Promise.all(I.map(async A=>{const z=await(await fetch(`/api/suggest/${A.data}`)).json();n.value[A.key]=z.data}))});const x=e.ref(""),k=e.ref(!1);let _="edit",N=0;const V=e.ref({}),P=e.ref({});async function $(){x.value="Додати",k.value=!0,_="add",V.value={}}function M(I,F){var z;const A=F.key||F.name;return n.value[A]&&I[A]?((z=n.value[A].find(ee=>ee.id.toString()===I[A].toString()))==null?void 0:z.text)??I[A]:I[A]||"-"}async function D(I,F){x.value="Редагувати",k.value=!0,_="edit",N=F,V.value={...I}}function q(){const I=P.value.validate();if(I){se({type:"warning",title:"Помилка валідації",message:Object.entries(I).map(([F,A])=>`${F}: ${A}`).join(`
|
|
237
|
+
About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guide/advanced/composition.html`,[Lt.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE]:"'v-t' has been deprecated in v11. Use translate APIs ('t' or '$t') instead."};function Xr(r,...t){return Bl(zu[r],...t)}function Zr(r){if(!Ee(r)||wt(r))return r;for(const t in r)if(Bt(r,t))if(!t.includes("."))Ee(r[t])&&Zr(r[t]);else{const l=t.split("."),n=l.length-1;let a=r,o=!1;for(let s=0;s<n;s++){if(l[s]==="__proto__")throw new Error(`unsafe key: ${l[s]}`);if(l[s]in a||(a[l[s]]=Ae()),!Ee(a[l[s]])){process.env.NODE_ENV!=="production"&&tr(Xr(Lt.IGNORE_OBJ_FLATTEN,{key:l[s]})),o=!0;break}a=a[l[s]]}if(o||(wt(a)?xo.includes(l[n])||delete r[t]:(a[l[n]]=r[t],delete r[t])),!wt(a)){const s=a[l[n]];Ee(s)&&Zr(s)}}return r}function Hn(r,t){const{messages:l,__i18n:n,messageResolver:a,flatJson:o}=t,s=xe(l)?l:Pe(n)?Ae():{[r]:Ae()};if(Pe(n)&&n.forEach(i=>{if("locale"in i&&"resource"in i){const{locale:c,resource:u}=i;c?(s[c]=s[c]||Ae(),Dl(u,s[c])):Dl(u,s)}else J(i)&&Dl(JSON.parse(i),s)}),a==null&&o)for(const i in s)Bt(s,i)&&Zr(s[i]);return s}function Qo(r){return r.type}function Jo(r,t,l){let n=Ee(t.messages)?t.messages:Ae();"__i18nGlobal"in l&&(n=Hn(r.locale.value,{messages:n,__i18n:l.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(o=>{r.mergeLocaleMessage(o,n[o])});{if(Ee(t.datetimeFormats)){const o=Object.keys(t.datetimeFormats);o.length&&o.forEach(s=>{r.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(Ee(t.numberFormats)){const o=Object.keys(t.numberFormats);o.length&&o.forEach(s=>{r.mergeNumberFormat(s,t.numberFormats[s])})}}}function es(r){return e.createVNode(e.Text,null,r,0)}const ts="__INTLIFY_META__",rs=()=>[],Hu=()=>!1;let ls=0;function ns(r){return(t,l,n,a)=>r(l,n,e.getCurrentInstance()||void 0,a)}const qu=()=>{const r=e.getCurrentInstance();let t=null;return r&&(t=Qo(r)[ts])?{[ts]:t}:null};function qn(r={}){const{__root:t,__injectWithOption:l}=r,n=t===void 0,a=r.flatJson,o=vt?e.ref:e.shallowRef;let s=Ce(r.inheritLocale)?r.inheritLocale:!0;const i=o(t&&s?t.locale.value:J(r.locale)?r.locale:Gr),c=o(t&&s?t.fallbackLocale.value:J(r.fallbackLocale)||Pe(r.fallbackLocale)||xe(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:i.value),u=o(Hn(i.value,r)),d=o(xe(r.datetimeFormats)?r.datetimeFormats:{[i.value]:{}}),m=o(xe(r.numberFormats)?r.numberFormats:{[i.value]:{}});let f=t?t.missingWarn:Ce(r.missingWarn)||vr(r.missingWarn)?r.missingWarn:!0,p=t?t.fallbackWarn:Ce(r.fallbackWarn)||vr(r.fallbackWarn)?r.fallbackWarn:!0,h=t?t.fallbackRoot:Ce(r.fallbackRoot)?r.fallbackRoot:!0,g=!!r.fallbackFormat,y=Me(r.missing)?r.missing:null,b=Me(r.missing)?ns(r.missing):null,w=Me(r.postTranslation)?r.postTranslation:null,x=t?t.warnHtmlMessage:Ce(r.warnHtmlMessage)?r.warnHtmlMessage:!0,k=!!r.escapeParameter;const _=t?t.modifiers:xe(r.modifiers)?r.modifiers:{};let N=r.pluralRules||t&&t.pluralRules,V;V=(()=>{n&&Mo(null);const O={version:Ru,locale:i.value,fallbackLocale:c.value,messages:u.value,modifiers:_,pluralRules:N,missing:b===null?void 0:b,missingWarn:f,fallbackWarn:p,fallbackFormat:g,unresolving:!0,postTranslation:w===null?void 0:w,warnHtmlMessage:x,escapeParameter:k,messageResolver:r.messageResolver,messageCompiler:r.messageCompiler,__meta:{framework:"vue"}};O.datetimeFormats=d.value,O.numberFormats=m.value,O.__datetimeFormatters=xe(V)?V.__datetimeFormatters:void 0,O.__numberFormatters=xe(V)?V.__numberFormatters:void 0,process.env.NODE_ENV!=="production"&&(O.__v_emitter=xe(V)?V.__v_emitter:void 0);const K=yu(O);return n&&Mo(K),K})(),Wr(V,i.value,c.value);function $(){return[i.value,c.value,u.value,d.value,m.value]}const M=e.computed({get:()=>i.value,set:O=>{V.locale=O,i.value=O}}),D=e.computed({get:()=>c.value,set:O=>{V.fallbackLocale=O,c.value=O,Wr(V,i.value,O)}}),q=e.computed(()=>u.value),Q=e.computed(()=>d.value),R=e.computed(()=>m.value);function I(){return Me(w)?w:null}function F(O){w=O,V.postTranslation=O}function A(){return y}function z(O){O!==null&&(b=ns(O)),y=O,V.missing=b}function ee(O,K){return O!=="translate"||!K.resolvedMessage}const pe=(O,K,ke,Se,E,S)=>{$();let j;try{process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__,n||(V.fallbackContext=t?gu():void 0),j=O(V)}finally{process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__,n||(V.fallbackContext=void 0)}if(ke!=="translate exists"&&Ke(j)&&j===Ll||ke==="translate exists"&&!j){const[G,Z]=K();if(process.env.NODE_ENV!=="production"&&t&&J(G)&&ee(ke,Z)&&(h&&(Fl(p,G)||Lo(f,G))&&tr(Xr(Lt.FALLBACK_TO_ROOT,{key:G,type:ke})),process.env.NODE_ENV!=="production")){const{__v_emitter:B}=V;B&&h&&B.emit("fallback",{type:ke,key:G,to:"global",groupId:`${ke}:${G}`})}return t&&h?Se(t):E(G)}else{if(S(j))return j;throw ut(Le.UNEXPECTED_RETURN_TYPE)}};function Ne(...O){return pe(K=>Reflect.apply(Ko,null,[K,...O]),()=>On(...O),"translate",K=>Reflect.apply(K.t,K,[...O]),K=>K,K=>J(K))}function Xe(...O){const[K,ke,Se]=O;if(Se&&!Ee(Se))throw ut(Le.INVALID_ARGUMENT);return Ne(K,ke,We({resolvedMessage:!0},Se||{}))}function Jt(...O){return pe(K=>Reflect.apply(Oo,null,[K,...O]),()=>Fn(...O),"datetime format",K=>Reflect.apply(K.d,K,[...O]),()=>$l,K=>J(K)||Pe(K))}function Re(...O){return pe(K=>Reflect.apply(Uo,null,[K,...O]),()=>In(...O),"number format",K=>Reflect.apply(K.n,K,[...O]),()=>$l,K=>J(K)||Pe(K))}function Ze(O){return O.map(K=>J(K)||Ke(K)||Ce(K)?es(String(K)):K)}const xt={normalize:Ze,interpolate:O=>O,type:"vnode"};function Nt(...O){return pe(K=>{let ke;const Se=K;try{Se.processor=xt,ke=Reflect.apply(Ko,null,[Se,...O])}finally{Se.processor=null}return ke},()=>On(...O),"translate",K=>K[Rn](...O),K=>[es(K)],K=>Pe(K))}function jt(...O){return pe(K=>Reflect.apply(Uo,null,[K,...O]),()=>In(...O),"number format",K=>K[jn](...O),rs,K=>J(K)||Pe(K))}function ot(...O){return pe(K=>Reflect.apply(Oo,null,[K,...O]),()=>Fn(...O),"datetime format",K=>K[Un](...O),rs,K=>J(K)||Pe(K))}function ct(O){N=O,V.pluralRules=N}function U(O,K){return pe(()=>{if(!O)return!1;const ke=J(K)?K:i.value,Se=le(ke),E=V.messageResolver(Se,O);return wt(E)||_t(E)||J(E)},()=>[O],"translate exists",ke=>Reflect.apply(ke.te,ke,[O,K]),Hu,ke=>Ce(ke))}function Y(O){let K=null;const ke=Eo(V,c.value,i.value);for(let Se=0;Se<ke.length;Se++){const E=u.value[ke[Se]]||{},S=V.messageResolver(E,O);if(S!=null){K=S;break}}return K}function re(O){const K=Y(O);return K??(t?t.tm(O)||{}:{})}function le(O){return u.value[O]||{}}function ue(O,K){if(a){const ke={[O]:K};for(const Se in ke)Bt(ke,Se)&&Zr(ke[Se]);K=ke[O]}u.value[O]=K,V.messages=u.value}function Te(O,K){u.value[O]=u.value[O]||{};const ke={[O]:K};if(a)for(const Se in ke)Bt(ke,Se)&&Zr(ke[Se]);K=ke[O],Dl(K,u.value[O]),V.messages=u.value}function C(O){return d.value[O]||{}}function v(O,K){d.value[O]=K,V.datetimeFormats=d.value,Ro(V,O,K)}function H(O,K){d.value[O]=We(d.value[O]||{},K),V.datetimeFormats=d.value,Ro(V,O,K)}function ne(O){return m.value[O]||{}}function $e(O,K){m.value[O]=K,V.numberFormats=m.value,zo(V,O,K)}function Fe(O,K){m.value[O]=We(m.value[O]||{},K),V.numberFormats=m.value,zo(V,O,K)}ls++,t&&vt&&(e.watch(t.locale,O=>{s&&(i.value=O,V.locale=O,Wr(V,i.value,c.value))}),e.watch(t.fallbackLocale,O=>{s&&(c.value=O,V.fallbackLocale=O,Wr(V,i.value,c.value))}));const be={id:ls,locale:M,fallbackLocale:D,get inheritLocale(){return s},set inheritLocale(O){s=O,O&&t&&(i.value=t.locale.value,c.value=t.fallbackLocale.value,Wr(V,i.value,c.value))},get availableLocales(){return Object.keys(u.value).sort()},messages:q,get modifiers(){return _},get pluralRules(){return N||{}},get isGlobal(){return n},get missingWarn(){return f},set missingWarn(O){f=O,V.missingWarn=f},get fallbackWarn(){return p},set fallbackWarn(O){p=O,V.fallbackWarn=p},get fallbackRoot(){return h},set fallbackRoot(O){h=O},get fallbackFormat(){return g},set fallbackFormat(O){g=O,V.fallbackFormat=g},get warnHtmlMessage(){return x},set warnHtmlMessage(O){x=O,V.warnHtmlMessage=O},get escapeParameter(){return k},set escapeParameter(O){k=O,V.escapeParameter=O},t:Ne,getLocaleMessage:le,setLocaleMessage:ue,mergeLocaleMessage:Te,getPostTranslationHandler:I,setPostTranslationHandler:F,getMissingHandler:A,setMissingHandler:z,[Xo]:ct};return be.datetimeFormats=Q,be.numberFormats=R,be.rt=Xe,be.te=U,be.tm=re,be.d=Jt,be.n=Re,be.getDateTimeFormat=C,be.setDateTimeFormat=v,be.mergeDateTimeFormat=H,be.getNumberFormat=ne,be.setNumberFormat=$e,be.mergeNumberFormat=Fe,be[Zo]=l,be[Rn]=Nt,be[Un]=ot,be[jn]=jt,process.env.NODE_ENV!=="production"&&(be[pr]=O=>{V.__v_emitter=O},be[Yr]=()=>{V.__v_emitter=void 0}),be}const as="vue-i18n: composer properties",Kn={"vue-devtools-plugin-vue-i18n":"Vue I18n DevTools","vue-i18n-resource-inspector":"Vue I18n DevTools","vue-i18n-timeline":"Vue I18n"},Ku={"vue-i18n-resource-inspector":"Search for scopes ..."},Gu={"vue-i18n-timeline":16764185};let Gn;async function Wu(r,t){return new Promise((l,n)=>{try{Pu({id:"vue-devtools-plugin-vue-i18n",label:Kn["vue-devtools-plugin-vue-i18n"],packageName:"vue-i18n",homepage:"https://vue-i18n.intlify.dev",logo:"https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png",componentStateTypes:[as],app:r},a=>{Gn=a,a.on.visitComponentTree(({componentInstance:s,treeNode:i})=>{Yu(s,i,t)}),a.on.inspectComponent(({componentInstance:s,instanceData:i})=>{s.vnode.el&&s.vnode.el.__VUE_I18N__&&i&&(t.mode==="legacy"?s.vnode.el.__VUE_I18N__!==t.global.__composer&&ss(i,s.vnode.el.__VUE_I18N__):ss(i,s.vnode.el.__VUE_I18N__))}),a.addInspector({id:"vue-i18n-resource-inspector",label:Kn["vue-i18n-resource-inspector"],icon:"language",treeFilterPlaceholder:Ku["vue-i18n-resource-inspector"]}),a.on.getInspectorTree(s=>{s.app===r&&s.inspectorId==="vue-i18n-resource-inspector"&&em(s,t)});const o=new Map;a.on.getInspectorState(async s=>{if(s.app===r&&s.inspectorId==="vue-i18n-resource-inspector")if(a.unhighlightElement(),rm(s,t),s.nodeId==="global"){if(!o.has(s.app)){const[i]=await a.getComponentInstances(s.app);o.set(s.app,i)}a.highlightElement(o.get(s.app))}else{const i=tm(s.nodeId,t);i&&a.highlightElement(i)}}),a.on.editInspectorState(s=>{s.app===r&&s.inspectorId==="vue-i18n-resource-inspector"&&nm(s,t)}),a.addTimelineLayer({id:"vue-i18n-timeline",label:Kn["vue-i18n-timeline"],color:Gu["vue-i18n-timeline"]}),l(!0)})}catch(a){console.error(a),n(!1)}})}function os(r){return r.type.name||r.type.displayName||r.type.__file||"Anonymous"}function Yu(r,t,l){const n=l.mode==="composition"?l.global:l.global.__composer;if(r&&r.vnode.el&&r.vnode.el.__VUE_I18N__&&r.vnode.el.__VUE_I18N__!==n){const a={label:`i18n (${os(r)} Scope)`,textColor:0,backgroundColor:16764185};t.tags.push(a)}}function ss(r,t){const l=as;r.state.push({type:l,key:"locale",editable:!0,value:t.locale.value}),r.state.push({type:l,key:"availableLocales",editable:!1,value:t.availableLocales}),r.state.push({type:l,key:"fallbackLocale",editable:!0,value:t.fallbackLocale.value}),r.state.push({type:l,key:"inheritLocale",editable:!0,value:t.inheritLocale}),r.state.push({type:l,key:"messages",editable:!1,value:Wn(t.messages.value)}),r.state.push({type:l,key:"datetimeFormats",editable:!1,value:t.datetimeFormats.value}),r.state.push({type:l,key:"numberFormats",editable:!1,value:t.numberFormats.value})}function Wn(r){const t={};return Object.keys(r).forEach(l=>{const n=r[l];Me(n)&&"source"in n?t[l]=Ju(n):wt(n)&&n.loc&&n.loc.source?t[l]=n.loc.source:Ee(n)?t[l]=Wn(n):t[l]=n}),t}const Xu={"<":"<",">":">",'"':""","&":"&"};function Zu(r){return r.replace(/[<>"&]/g,Qu)}function Qu(r){return Xu[r]||r}function Ju(r){return{_custom:{type:"function",display:`<span>ƒ</span> ${r.source?`("${Zu(r.source)}")`:"(?)"}`}}}function em(r,t){r.rootNodes.push({id:"global",label:"Global Scope"});const l=t.mode==="composition"?t.global:t.global.__composer;for(const[n,a]of t.__instances){const o=t.mode==="composition"?a:a.__composer;l!==o&&r.rootNodes.push({id:o.id.toString(),label:`${os(n)} Scope`})}}function tm(r,t){let l=null;if(r!=="global"){for(const[n,a]of t.__instances.entries())if(a.id.toString()===r){l=n;break}}return l}function is(r,t){if(r==="global")return t.mode==="composition"?t.global:t.global.__composer;{const l=Array.from(t.__instances.values()).find(n=>n.id.toString()===r);return l?t.mode==="composition"?l:l.__composer:null}}function rm(r,t){const l=is(r.nodeId,t);return l&&(r.state=lm(l)),null}function lm(r){const t={},l="Locale related info",n=[{type:l,key:"locale",editable:!0,value:r.locale.value},{type:l,key:"fallbackLocale",editable:!0,value:r.fallbackLocale.value},{type:l,key:"availableLocales",editable:!1,value:r.availableLocales},{type:l,key:"inheritLocale",editable:!0,value:r.inheritLocale}];t[l]=n;const a="Locale messages info",o=[{type:a,key:"messages",editable:!1,value:Wn(r.messages.value)}];t[a]=o;{const s="Datetime formats info",i=[{type:s,key:"datetimeFormats",editable:!1,value:r.datetimeFormats.value}];t[s]=i;const c="Datetime formats info",u=[{type:c,key:"numberFormats",editable:!1,value:r.numberFormats.value}];t[c]=u}return t}function Qr(r,t){if(Gn){let l;t&&"groupId"in t&&(l=t.groupId,delete t.groupId),Gn.addTimelineEvent({layerId:"vue-i18n-timeline",event:{title:r,groupId:l,time:Date.now(),meta:{},data:t||{},logType:r==="compile-error"?"error":r==="fallback"||r==="missing"?"warning":"default"}})}}function nm(r,t){const l=is(r.nodeId,t);if(l){const[n]=r.path;n==="locale"&&J(r.state.value)?l.locale.value=r.state.value:n==="fallbackLocale"&&(J(r.state.value)||Pe(r.state.value)||Ee(r.state.value))?l.fallbackLocale.value=r.state.value:n==="inheritLocale"&&Ce(r.state.value)&&(l.inheritLocale=r.state.value)}}function am(r){const t=J(r.locale)?r.locale:Gr,l=J(r.fallbackLocale)||Pe(r.fallbackLocale)||xe(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:t,n=Me(r.missing)?r.missing:void 0,a=Ce(r.silentTranslationWarn)||vr(r.silentTranslationWarn)?!r.silentTranslationWarn:!0,o=Ce(r.silentFallbackWarn)||vr(r.silentFallbackWarn)?!r.silentFallbackWarn:!0,s=Ce(r.fallbackRoot)?r.fallbackRoot:!0,i=!!r.formatFallbackMessages,c=xe(r.modifiers)?r.modifiers:{},u=r.pluralizationRules,d=Me(r.postTranslation)?r.postTranslation:void 0,m=J(r.warnHtmlInMessage)?r.warnHtmlInMessage!=="off":!0,f=!!r.escapeParameterHtml,p=Ce(r.sync)?r.sync:!0;let h=r.messages;if(xe(r.sharedMessages)){const _=r.sharedMessages;h=Object.keys(_).reduce((V,P)=>{const $=V[P]||(V[P]={});return We($,_[P]),V},h||{})}const{__i18n:g,__root:y,__injectWithOption:b}=r,w=r.datetimeFormats,x=r.numberFormats,k=r.flatJson;return{locale:t,fallbackLocale:l,messages:h,flatJson:k,datetimeFormats:w,numberFormats:x,missing:n,missingWarn:a,fallbackWarn:o,fallbackRoot:s,fallbackFormat:i,modifiers:c,pluralRules:u,postTranslation:d,warnHtmlMessage:m,escapeParameter:f,messageResolver:r.messageResolver,inheritLocale:p,__i18n:g,__root:y,__injectWithOption:b}}function Yn(r={}){const t=qn(am(r)),{__extender:l}=r,n={id:t.id,get locale(){return t.locale.value},set locale(a){t.locale.value=a},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(a){t.fallbackLocale.value=a},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(a){t.setMissingHandler(a)},get silentTranslationWarn(){return Ce(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(a){t.missingWarn=Ce(a)?!a:a},get silentFallbackWarn(){return Ce(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(a){t.fallbackWarn=Ce(a)?!a:a},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(a){t.fallbackFormat=a},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(a){t.setPostTranslationHandler(a)},get sync(){return t.inheritLocale},set sync(a){t.inheritLocale=a},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(a){t.warnHtmlMessage=a!=="off"},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(a){t.escapeParameter=a},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t(...a){return Reflect.apply(t.t,t,[...a])},rt(...a){return Reflect.apply(t.rt,t,[...a])},te(a,o){return t.te(a,o)},tm(a){return t.tm(a)},getLocaleMessage(a){return t.getLocaleMessage(a)},setLocaleMessage(a,o){t.setLocaleMessage(a,o)},mergeLocaleMessage(a,o){t.mergeLocaleMessage(a,o)},d(...a){return Reflect.apply(t.d,t,[...a])},getDateTimeFormat(a){return t.getDateTimeFormat(a)},setDateTimeFormat(a,o){t.setDateTimeFormat(a,o)},mergeDateTimeFormat(a,o){t.mergeDateTimeFormat(a,o)},n(...a){return Reflect.apply(t.n,t,[...a])},getNumberFormat(a){return t.getNumberFormat(a)},setNumberFormat(a,o){t.setNumberFormat(a,o)},mergeNumberFormat(a,o){t.mergeNumberFormat(a,o)}};return n.__extender=l,process.env.NODE_ENV!=="production"&&(n.__enableEmitter=a=>{const o=t;o[pr]&&o[pr](a)},n.__disableEmitter=()=>{const a=t;a[Yr]&&a[Yr]()}),n}function om(r,t,l){return{beforeCreate(){const n=e.getCurrentInstance();if(!n)throw ut(Le.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const o=a.i18n;if(a.__i18n&&(o.__i18n=a.__i18n),o.__root=t,this===this.$root)this.$i18n=cs(r,o);else{o.__injectWithOption=!0,o.__extender=l.__vueI18nExtend,this.$i18n=Yn(o);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=cs(r,a);else{this.$i18n=Yn({__i18n:a.__i18n,__injectWithOption:!0,__extender:l.__vueI18nExtend,__root:t});const o=this.$i18n;o.__extender&&(o.__disposer=o.__extender(this.$i18n))}else this.$i18n=r;a.__i18nGlobal&&Jo(t,a,a),this.$t=(...o)=>this.$i18n.t(...o),this.$rt=(...o)=>this.$i18n.rt(...o),this.$te=(o,s)=>this.$i18n.te(o,s),this.$d=(...o)=>this.$i18n.d(...o),this.$n=(...o)=>this.$i18n.n(...o),this.$tm=o=>this.$i18n.tm(o),l.__setInstance(n,this.$i18n)},mounted(){if(process.env.NODE_ENV!=="production"&&this.$el&&this.$i18n){const n=this.$i18n;this.$el.__VUE_I18N__=n.__composer;const a=this.__v_emitter=Nn();n.__enableEmitter&&n.__enableEmitter(a),a.on("*",Qr)}},unmounted(){const n=e.getCurrentInstance();if(!n)throw ut(Le.UNEXPECTED_ERROR);const a=this.$i18n;process.env.NODE_ENV!=="production"&&this.$el&&this.$el.__VUE_I18N__&&(this.__v_emitter&&(this.__v_emitter.off("*",Qr),delete this.__v_emitter),this.$i18n&&(a.__disableEmitter&&a.__disableEmitter(),delete this.$el.__VUE_I18N__)),delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),l.__deleteInstance(n),delete this.$i18n}}}function cs(r,t){r.locale=t.locale||r.locale,r.fallbackLocale=t.fallbackLocale||r.fallbackLocale,r.missing=t.missing||r.missing,r.silentTranslationWarn=t.silentTranslationWarn||r.silentFallbackWarn,r.silentFallbackWarn=t.silentFallbackWarn||r.silentFallbackWarn,r.formatFallbackMessages=t.formatFallbackMessages||r.formatFallbackMessages,r.postTranslation=t.postTranslation||r.postTranslation,r.warnHtmlInMessage=t.warnHtmlInMessage||r.warnHtmlInMessage,r.escapeParameterHtml=t.escapeParameterHtml||r.escapeParameterHtml,r.sync=t.sync||r.sync,r.__composer[Xo](t.pluralizationRules||r.pluralizationRules);const l=Hn(r.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(l).forEach(n=>r.mergeLocaleMessage(n,l[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>r.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>r.mergeNumberFormat(n,t.numberFormats[n])),r}const Xn={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:r=>r==="parent"||r==="global",default:"parent"},i18n:{type:Object}};function sm({slots:r},t){return t.length===1&&t[0]==="default"?(r.default?r.default():[]).reduce((n,a)=>[...n,...a.type===e.Fragment?a.children:[a]],[]):t.reduce((l,n)=>{const a=r[n];return a&&(l[n]=a()),l},Ae())}function ds(){return e.Fragment}const us=e.defineComponent({name:"i18n-t",props:We({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:r=>Ke(r)||!isNaN(r)}},Xn),setup(r,t){const{slots:l,attrs:n}=t,a=r.i18n||Be({useScope:r.scope,__useComponent:!0});return()=>{const o=Object.keys(l).filter(m=>m[0]!=="_"),s=Ae();r.locale&&(s.locale=r.locale),r.plural!==void 0&&(s.plural=J(r.plural)?+r.plural:r.plural);const i=sm(t,o),c=a[Rn](r.keypath,i,s),u=We(Ae(),n),d=J(r.tag)||Ee(r.tag)?r.tag:ds();return e.h(d,u,c)}}});function im(r){return Pe(r)&&!J(r[0])}function ms(r,t,l,n){const{slots:a,attrs:o}=t;return()=>{const s={part:!0};let i=Ae();r.locale&&(s.locale=r.locale),J(r.format)?s.key=r.format:Ee(r.format)&&(J(r.format.key)&&(s.key=r.format.key),i=Object.keys(r.format).reduce((f,p)=>l.includes(p)?We(Ae(),f,{[p]:r.format[p]}):f,Ae()));const c=n(r.value,s,i);let u=[s.key];Pe(c)?u=c.map((f,p)=>{const h=a[f.type],g=h?h({[f.type]:f.value,index:p,parts:c}):[f.value];return im(g)&&(g[0].key=`${f.type}-${p}`),g}):J(c)&&(u=[c]);const d=We(Ae(),o),m=J(r.tag)||Ee(r.tag)?r.tag:ds();return e.h(m,d,u)}}const ps=e.defineComponent({name:"i18n-n",props:We({value:{type:Number,required:!0},format:{type:[String,Object]}},Xn),setup(r,t){const l=r.i18n||Be({useScope:r.scope,__useComponent:!0});return ms(r,t,jo,(...n)=>l[jn](...n))}});function cm(r,t){const l=r;if(r.mode==="composition")return l.__getInstance(t)||r.global;{const n=l.__getInstance(t);return n!=null?n.__composer:r.global.__composer}}function dm(r){const t=s=>{process.env.NODE_ENV!=="production"&&Vn(Xr(Lt.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE));const{instance:i,value:c}=s;if(!i||!i.$)throw ut(Le.UNEXPECTED_ERROR);const u=cm(r,i.$),d=fs(c);return[Reflect.apply(u.t,u,[...hs(d)]),u]};return{created:(s,i)=>{const[c,u]=t(i);vt&&r.global===u&&(s.__i18nWatcher=e.watch(u.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=u,s.textContent=c},unmounted:s=>{vt&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const c=s.__composer,u=fs(i);s.textContent=Reflect.apply(c.t,c,[...hs(u)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function fs(r){if(J(r))return{path:r};if(xe(r)){if(!("path"in r))throw ut(Le.REQUIRED_VALUE,"path");return r}else throw ut(Le.INVALID_VALUE)}function hs(r){const{path:t,locale:l,args:n,choice:a,plural:o}=r,s={},i=n||{};return J(l)&&(s.locale=l),Ke(a)&&(s.plural=a),Ke(o)&&(s.plural=o),[t,i,s]}function um(r,t,...l){const n=xe(l[0])?l[0]:{};(Ce(n.globalInstall)?n.globalInstall:!0)&&([us.name,"I18nT"].forEach(o=>r.component(o,us)),[ps.name,"I18nN"].forEach(o=>r.component(o,ps)),[ys.name,"I18nD"].forEach(o=>r.component(o,ys))),r.directive("t",dm(t))}const mm=Mt("global-vue-i18n");function pm(r={}){const t=__VUE_I18N_LEGACY_API__&&Ce(r.legacy)?r.legacy:__VUE_I18N_LEGACY_API__;process.env.NODE_ENV!=="production"&&t&&Vn(Xr(Lt.DEPRECATE_LEGACY_MODE));const l=Ce(r.globalInjection)?r.globalInjection:!0,n=new Map,[a,o]=fm(r,t),s=Mt(process.env.NODE_ENV!=="production"?"vue-i18n":"");function i(m){return n.get(m)||null}function c(m,f){n.set(m,f)}function u(m){n.delete(m)}const d={get mode(){return __VUE_I18N_LEGACY_API__&&t?"legacy":"composition"},async install(m,...f){if(process.env.NODE_ENV!=="production"&&(m.__VUE_I18N__=d),m.__VUE_I18N_SYMBOL__=s,m.provide(m.__VUE_I18N_SYMBOL__,d),xe(f[0])){const g=f[0];d.__composerExtend=g.__composerExtend,d.__vueI18nExtend=g.__vueI18nExtend}let p=null;!t&&l&&(p=_m(m,d.global)),__VUE_I18N_FULL_INSTALL__&&um(m,d,...f),__VUE_I18N_LEGACY_API__&&t&&m.mixin(om(o,o.__composer,d));const h=m.unmount;if(m.unmount=()=>{p&&p(),d.dispose(),h()},process.env.NODE_ENV!=="production"){if(!await Wu(m,d))throw ut(Le.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN);const y=Nn();if(t){const b=o;b.__enableEmitter&&b.__enableEmitter(y)}else{const b=o;b[pr]&&b[pr](y)}y.on("*",Qr)}},get global(){return o},dispose(){a.stop()},__instances:n,__getInstance:i,__setInstance:c,__deleteInstance:u};return d}function Be(r={}){const t=e.getCurrentInstance();if(t==null)throw ut(Le.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw ut(Le.NOT_INSTALLED);const l=hm(t),n=ym(l),a=Qo(t),o=gm(r,a);if(o==="global")return Jo(n,r,a),n;if(o==="parent"){let c=bm(l,t,r.__useComponent);return c==null&&(process.env.NODE_ENV!=="production"&&tr(Xr(Lt.NOT_FOUND_PARENT_SCOPE)),c=n),c}const s=l;let i=s.__getInstance(t);if(i==null){const c=We({},r);"__i18n"in a&&(c.__i18n=a.__i18n),n&&(c.__root=n),i=qn(c),s.__composerExtend&&(i[zn]=s.__composerExtend(i)),xm(s,t,i),s.__setInstance(t,i)}return i}function fm(r,t){const l=e.effectScope(),n=__VUE_I18N_LEGACY_API__&&t?l.run(()=>Yn(r)):l.run(()=>qn(r));if(n==null)throw ut(Le.UNEXPECTED_ERROR);return[l,n]}function hm(r){const t=e.inject(r.isCE?mm:r.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw ut(r.isCE?Le.NOT_INSTALLED_WITH_PROVIDE:Le.UNEXPECTED_ERROR);return t}function gm(r,t){return Sl(r)?"__i18n"in t?"local":"global":r.useScope?r.useScope:"local"}function ym(r){return r.mode==="composition"?r.global:r.global.__composer}function bm(r,t,l=!1){let n=null;const a=t.root;let o=km(t,l);for(;o!=null;){const s=r;if(r.mode==="composition")n=s.__getInstance(o);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(o);i!=null&&(n=i.__composer,l&&n&&!n[Zo]&&(n=null))}if(n!=null||a===o)break;o=o.parent}return n}function km(r,t=!1){return r==null?null:t&&r.vnode.ctx||r.parent}function xm(r,t,l){let n=null;e.onMounted(()=>{if(process.env.NODE_ENV!=="production"&&t.vnode.el){t.vnode.el.__VUE_I18N__=l,n=Nn();const a=l;a[pr]&&a[pr](n),n.on("*",Qr)}},t),e.onUnmounted(()=>{const a=l;process.env.NODE_ENV!=="production"&&t.vnode.el&&t.vnode.el.__VUE_I18N__&&(n&&n.off("*",Qr),a[Yr]&&a[Yr](),delete t.vnode.el.__VUE_I18N__),r.__deleteInstance(t);const o=a[zn];o&&(o(),delete a[zn])},t)}const wm=["locale","fallbackLocale","availableLocales"],gs=["t","rt","d","n","tm","te"];function _m(r,t){const l=Object.create(null);return wm.forEach(a=>{const o=Object.getOwnPropertyDescriptor(t,a);if(!o)throw ut(Le.UNEXPECTED_ERROR);const s=e.isRef(o.value)?{get(){return o.value.value},set(i){o.value.value=i}}:{get(){return o.get&&o.get()}};Object.defineProperty(l,a,s)}),r.config.globalProperties.$i18n=l,gs.forEach(a=>{const o=Object.getOwnPropertyDescriptor(t,a);if(!o||!o.value)throw ut(Le.UNEXPECTED_ERROR);Object.defineProperty(r.config.globalProperties,`$${a}`,o)}),()=>{delete r.config.globalProperties.$i18n,gs.forEach(a=>{delete r.config.globalProperties[`$${a}`]})}}const ys=e.defineComponent({name:"i18n-d",props:We({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Xn),setup(r,t){const l=r.i18n||Be({useScope:r.scope,__useComponent:!0});return ms(r,t,Po,(...n)=>l[Un](...n))}});if(Uu(),uu(zd),mu(ou),pu(Eo),process.env.NODE_ENV!=="production"||__INTLIFY_PROD_DEVTOOLS__){const r=ur();r.__INTLIFY__=!0,Hd(r.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}process.env.NODE_ENV;const Em={class:"flex items-center justify-between"},Cm={class:"flex items-center gap-2"},Vm={class:"text-4xl font-bold text-slate-800 dark:text-slate-100 mb-2"},Nm=["href","title"],vm={class:"text-lg text-slate-600 dark:text-slate-300"},Bm=e.defineComponent({__name:"DashboardHeader",setup(r){const{locale:t}=Be();return(l,n)=>{const a=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",Em,[e.createElementVNode("div",null,[e.createElementVNode("div",Cm,[e.createElementVNode("h1",Vm,e.toDisplayString(l.$t("cms.dashboard.title")),1),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(t)}/get-started/app-overview`,target:"_blank",title:l.$t("cms.guide.appOverview")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,Nm)]),e.createElementVNode("div",vm,e.toDisplayString(l.$t("cms.dashboard.description")),1)]),e.createElementVNode("div",null,[e.createVNode(a,{to:"/settings/collections",class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 shadow h-9 px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white"},{default:e.withCtx(()=>[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(l.$t("cms.dashboard.newCollection")),1)]),_:1})])])}}}),Sm={class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-300 transform hover:scale-105"},Am={class:"p-6"},Dm={class:"flex items-start justify-between"},Mm={class:"flex-1"},Tm={class:"flex items-center space-x-2 mb-2"},Lm={class:"text-sm font-medium text-slate-600 dark:text-slate-400"},$m={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-1"},Fm={class:"text-xs text-slate-500 dark:text-slate-400 mb-3"},Im=e.defineComponent({__name:"StatCard",props:{stat:{}},setup(r){const t=l=>({"file-text":Hr,users:_n,image:Vl,eye:yn})[l]||Hr;return(l,n)=>(e.openBlock(),e.createElementBlock("div",Sm,[e.createElementVNode("div",Am,[e.createElementVNode("div",Dm,[e.createElementVNode("div",Mm,[e.createElementVNode("div",Tm,[e.createElementVNode("div",{class:e.normalizeClass(`p-2 rounded-lg bg-${l.stat.color}-50 dark:bg-${l.stat.color}-900/20`)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t(l.stat.icon)),{class:e.normalizeClass(`w-5 h-5 text-${l.stat.color}-600`)},null,8,["class"]))],2),e.createElementVNode("p",Lm,e.toDisplayString(l.stat.title),1)]),e.createElementVNode("p",$m,e.toDisplayString(l.stat.value),1),e.createElementVNode("p",Fm,e.toDisplayString(l.stat.description),1)])])])]))}}),Om={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6"},Pm=e.defineComponent({__name:"StatsGrid",props:{stats:{}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",Om,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.stats,n=>(e.openBlock(),e.createBlock(Im,{key:n.id,stat:n},null,8,["stat"]))),128))]))}}),Rm={class:"p-4 hover:bg-slate-50 dark:hover:bg-slate-700/50 transition-colors"},Um={class:"flex items-center justify-between"},jm={class:"flex-1"},zm={class:"flex items-center space-x-3 mb-2"},Hm={class:"inline-flex items-center rounded-md border px-2.5 py-0.5 font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 text-xs bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-600 dark:text-slate-300"},qm={class:"font-semibold text-slate-800 dark:text-slate-100 mb-1"},Km={class:"flex items-center space-x-4 text-sm text-slate-500 dark:text-slate-400"},Gm={class:"flex items-center"},Wm={class:"flex items-center"},Ym={class:"flex items-center"},Xm={class:"flex items-center space-x-2"},Zm=e.defineComponent({__name:"ContentItem",props:{item:{}},setup(r){const t=n=>{const a={published:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-green-100 dark:bg-green-900/30 text-green-800 dark:text-green-300",draft:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-yellow-100 dark:bg-yellow-900/30 text-yellow-800 dark:text-yellow-300",review:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-blue-100 dark:bg-blue-900/30 text-blue-800 dark:text-blue-300"};return a[n]||a.draft},l=n=>{if(!n)return"--.--.--";const a=new Date(n);return new Intl.DateTimeFormat("en-US",{year:"numeric",month:"short",day:"numeric"}).format(a)};return(n,a)=>{const o=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",Rm,[e.createElementVNode("div",Um,[e.createElementVNode("div",jm,[e.createElementVNode("div",zm,[e.createElementVNode("div",Hm,e.toDisplayString(n.item.type),1),e.createElementVNode("div",{class:e.normalizeClass(t(n.item.status))},e.toDisplayString(n.item.status||"--"),3)]),e.createElementVNode("h3",qm,e.toDisplayString(n.item.title||"--"),1),e.createElementVNode("div",Km,[e.createElementVNode("span",Gm,[e.createVNode(e.unref(_n),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(n.item.author||"--"),1)]),e.createElementVNode("span",Wm,[e.createVNode(e.unref(Cl),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(l(n.item.updated_at)||"--.--.--"),1)]),e.createElementVNode("span",Ym,[e.createVNode(e.unref(yn),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(n.item.views||"--")+" "+e.toDisplayString(n.$t("cms.dashboard.views")),1)])])]),e.createElementVNode("div",Xm,[e.createVNode(o,{to:`/collections/${n.item.object_id}/${n.item.content_id}`,class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors border shadow-sm rounded-md text-xs h-8 w-8 p-0 bg-white border-slate-300 hover:text-accent-foreground hover:bg-slate-50 dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600"},{default:e.withCtx(()=>[e.createVNode(e.unref(Nr),{class:"w-4 h-4 dark:text-blue-50"})]),_:1},8,["to"])])])])}}}),Qm={class:"lg:col-span-2"},Jm={class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm"},ep={class:"flex flex-col space-y-1.5 p-6 border-b border-slate-200 dark:border-slate-700 bg-gradient-to-r from-slate-50 dark:from-slate-800 to-white dark:to-slate-800"},tp={class:"flex items-center justify-between"},rp={class:"tracking-tight text-xl font-semibold text-slate-800 dark:text-slate-100 flex items-center"},lp={class:"p-0"},np={class:"divide-y divide-slate-100 dark:divide-slate-700"},ap=e.defineComponent({__name:"RecentContent",props:{content:{}},setup(r){const t=qe.useRouter(),l=n=>{t.push(n)};return(n,a)=>(e.openBlock(),e.createElementBlock("div",Qm,[e.createElementVNode("div",Jm,[e.createElementVNode("div",ep,[e.createElementVNode("div",tp,[e.createElementVNode("h3",rp,[e.createVNode(e.unref($c),{class:"w-5 h-5 mr-2"}),e.createTextVNode(" "+e.toDisplayString(n.$t("cms.dashboard.recentContent")),1)]),e.createElementVNode("button",{onClick:a[0]||(a[0]=o=>l("/settings/collections")),class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border shadow-sm hover:text-accent-foreground h-8 rounded-md px-3 text-xs bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-slate-600"},e.toDisplayString(n.$t("cms.dashboard.viewAll")),1)])]),e.createElementVNode("div",lp,[e.createElementVNode("div",np,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.content,o=>(e.openBlock(),e.createBlock(Zm,{key:o.id,item:o},null,8,["item"]))),128))])])])]))}}),op={class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm"},sp={class:"flex flex-col space-y-1.5 p-6 border-b border-slate-200 dark:border-slate-700 bg-gradient-to-r from-slate-50 dark:from-slate-800 to-white dark:to-slate-800"},ip={class:"tracking-tight text-lg font-semibold text-slate-800 dark:text-slate-100 flex items-center"},cp={class:"p-4"},dp={class:"grid grid-cols-2 gap-3"},up=["onClick"],mp={class:"p-2 rounded-lg bg-blue-50 dark:bg-blue-900/20 mb-2 w-fit"},pp={class:"font-medium text-slate-800 dark:text-slate-100 text-sm mb-1 group-hover:text-slate-900 dark:group-hover:text-slate-50"},fp={class:"text-xs text-slate-500 dark:text-slate-400 group-hover:text-slate-600 dark:group-hover:text-slate-300"},hp=e.defineComponent({__name:"QuickActions",setup(r){const t=qe.useRouter(),{t:l}=Be(),n=[{id:"create-article",title:l("cms.dashboard.createArticle"),description:l("cms.dashboard.createArticleDescription"),icon:Hr,iconColor:"text-blue-500",link:"/collections/pages/create"},{id:"upload-media",title:l("cms.dashboard.uploadMedia"),description:l("cms.dashboard.uploadMediaDescription"),icon:Vl,iconColor:"text-purple-500",link:"/media"},{id:"manage-users",title:l("cms.dashboard.manageUsers"),description:l("cms.dashboard.manageUsersDescription"),icon:_n,iconColor:"text-green-500",link:"/settings/users"}],a=o=>{o&&t.push(o)};return(o,s)=>(e.openBlock(),e.createElementBlock("div",op,[e.createElementVNode("div",sp,[e.createElementVNode("h3",ip,[e.createVNode(e.unref(Kc),{class:"w-5 h-5 mr-2"}),e.createTextVNode(" "+e.toDisplayString(o.$t("cms.dashboard.quickActions")),1)])]),e.createElementVNode("div",cp,[e.createElementVNode("div",dp,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,i=>e.createElementVNode("button",{key:i.id,class:"p-3 rounded-lg border border-slate-200 transition-all duration-200 text-left group hover:bg-slate-50 hover:shadow-md dark:border-slate-600 bg-white dark:bg-slate-700 dark:hover:bg-slate-600",onClick:c=>a(i==null?void 0:i.link)},[e.createElementVNode("div",mp,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i==null?void 0:i.icon),{class:e.normalizeClass(`w-4 h-4 ${i==null?void 0:i.iconColor}`)},null,8,["class"]))]),e.createElementVNode("h3",pp,e.toDisplayString(i==null?void 0:i.title),1),e.createElementVNode("p",fp,e.toDisplayString(i==null?void 0:i.description),1)],8,up)),64))])])]))}}),gp={class:"w-full max-w-7xl mx-auto space-y-8"},yp={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},Zn=e.defineComponent({__name:"Dashboard",setup(r){const{t}=Be(),l=e.ref([{id:"total-content",title:t("cms.dashboard.totalContent"),value:"2,847",description:t("cms.dashboard.articlesPostsPages"),change:{value:"+12.5%",isPositive:!0},icon:"file-text",color:"blue"},{id:"active-users",title:t("cms.dashboard.activeUsers"),value:"1,234",description:t("cms.dashboard.monthlyActiveUsers"),change:{value:"+8.2%",isPositive:!0},icon:"users",color:"emerald"},{id:"media-files",title:t("cms.dashboard.mediaFiles"),value:"5,692",description:t("cms.dashboard.imagesVideosDocs"),change:{value:"+23.1%",isPositive:!0},icon:"image",color:"purple"},{id:"new-media",title:t("cms.dashboard.newMediaFiles"),value:"89.2K",description:t("cms.dashboard.thisMonth"),change:{value:"-2.4%",isPositive:!1},icon:"eye",color:"orange"}]),n=e.ref([{id:1,type:"Article",status:"published",title:t("cms.dashboard.gettingStartedWithNextJs14"),author:t("cms.dashboard.sarahJohnson"),updated_at:"2024-01-15",views:1247},{id:2,type:"Post",status:"draft",title:t("cms.dashboard.advancedReactPatterns"),author:t("cms.dashboard.mikeChen"),updated_at:"2024-01-14",views:0},{id:3,type:"Article",status:"published",title:t("cms.dashboard.uiUxDesignPrinciples"),author:t("cms.dashboard.emmaWilson"),updated_at:"2024-01-13",views:892},{id:4,type:"Post",status:"review",title:t("cms.dashboard.databaseOptimizationTips"),author:t("cms.dashboard.alexRodriguez"),updated_at:"2024-01-12",views:0}]),a=s=>{l.value=l.value.map(i=>{var c,u,d,m;switch(i.id){case"total-content":return{...i,value:((c=s.totalContent)==null?void 0:c.toLocaleString())??i.value};case"active-users":return{...i,value:((u=s.totalUsers)==null?void 0:u.toLocaleString())??i.value};case"media-files":return{...i,value:((d=s.totalMediaFiles)==null?void 0:d.toLocaleString())??i.value};case"new-media":return{...i,value:((m=s.newMediaFiles)==null?void 0:m.toLocaleString())??i.value};default:return i}})},o=async()=>{const i=await(await fetch("api/cms-stat")).json();n.value=i.recentContent,a(i.stat)};return e.onMounted(()=>{o()}),(s,i)=>(e.openBlock(),e.createElementBlock("div",gp,[e.createVNode(Bm),e.createVNode(Pm,{stats:l.value},null,8,["stats"]),e.createElementVNode("div",yp,[e.createVNode(ap,{content:n.value,class:"lg:col-span-2"},null,8,["content"]),e.createElementVNode("div",null,[e.createVNode(hp)])])]))}}),bp={class:"rounded-xl text-card-foreground shadow-lg bg-white dark:bg-slate-800 backdrop-blur-sm border-2 border-dashed border-slate-300 dark:border-slate-600"},kp={class:"p-12 text-center"},xp={class:"text-lg font-medium text-slate-600 dark:text-slate-300 mb-2"},wp={class:"text-slate-500 dark:text-slate-400 mb-6"},bs={__name:"EmptyData",props:{title:{type:String,default:()=>"emptyData.title"},description:{type:String,default:()=>"emptyData.description"},buttonText:{type:String,default:()=>"emptyData.buttonText"},showButton:{type:Boolean,default:!0}},emits:["action"],setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",bp,[e.createElementVNode("div",kp,[l[2]||(l[2]=e.createElementVNode("svg",{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-layers w-12 h-12 mx-auto mb-4 text-slate-400 dark:text-slate-500"},[e.createElementVNode("path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z"}),e.createElementVNode("path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65"}),e.createElementVNode("path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65"})],-1)),e.createElementVNode("h3",xp,e.toDisplayString(t.$t(r.title)),1),e.createElementVNode("p",wp,e.toDisplayString(t.$t(r.description)),1),r.showButton?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:l[0]||(l[0]=n=>t.$emit("action")),class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 shadow h-9 px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white"},[l[1]||(l[1]=e.createElementVNode("svg",{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-plus w-4 h-4 mr-2"},[e.createElementVNode("path",{d:"M5 12h14"}),e.createElementVNode("path",{d:"M12 5v14"})],-1)),e.createTextVNode(" "+e.toDisplayString(t.$t(r.buttonText)),1)])):e.createCommentVNode("",!0)])]))}},_p={class:"space-y-6 max-w-7xl mx-auto"},Ep={class:"flex items-center justify-between mb-8"},Cp={class:"flex gap-4"},Vp={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-2"},Np={class:"text-slate-600 dark:text-slate-300"},vp=["href","title"],Bp={class:"relative w-full max-w-sm"},Sp={class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},Ap=["placeholder"],Dp={key:0},Mp={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 mb-6"},Tp=["onClick"],Lp={class:"flex items-start justify-between"},$p={class:"flex items-start gap-3"},Fp={class:"text-sm font-semibold text-gray-800 mb-1"},Ip={class:"text-xs text-gray-600"},Op={class:"flex items-center gap-2"},Pp={class:"text-xs text-gray-500 whitespace-nowrap"},Rp={key:1,class:"flex items-center justify-center min-h-[400px]"},Qn=e.defineComponent({__name:"CollectionsPage",setup(r){const{t,locale:l}=Be(),n=qe.useRouter();e.inject("fetchContentTypes");const a=e.ref([]),o=e.ref(""),s=e.computed(()=>{const u=a.value.filter(p=>p.type!=="single"),d=o.value.trim().toLowerCase();return[...d?u.filter(p=>[p==null?void 0:p.title,p==null?void 0:p.name,p==null?void 0:p.id,p==null?void 0:p.description].filter(Boolean).join(" ").toLowerCase().includes(d)):u].sort((p,h)=>p.id==="pages"?-1:h.id==="pages"?1:0)});async function i(){try{const u=await fetch("/api/cms-type?type=collection");if(!u.ok)throw new Error("Failed to fetch collections");const d=await u.json();a.value=d.rows||[]}catch(u){console.error("Error fetching collections:",u)}}const c=u=>{n.push(`/collections/${u.id}`)};return e.onMounted(()=>{i()}),(u,d)=>(e.openBlock(),e.createElementBlock("div",_p,[e.createElementVNode("div",Ep,[e.createElementVNode("div",Cp,[e.createElementVNode("div",null,[e.createElementVNode("h1",Vp,e.toDisplayString(u.$t("cms.navigation.collections")),1),e.createElementVNode("p",Np,e.toDisplayString(u.$t("cms.collections.selectCollection")),1)]),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/collections/`,target:"_blank",title:u.$t("cms.guide.collections"),class:"mt-2"},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,vp)]),e.createElementVNode("div",Bp,[e.createElementVNode("div",Sp,[e.createVNode(e.unref(wn),{class:"w-5 h-5 text-gray-400"})]),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=m=>o.value=m),type:"text",class:"block w-full py-2 pl-10 pr-3 leading-5 text-gray-900 placeholder-gray-500 transition-colors bg-white border border-gray-300 rounded-md dark:border-gray-600 dark:bg-gray-700 dark:placeholder-gray-400 focus:outline-none focus:ring-sky-500 focus:border-sky-500 dark:text-white sm:text-sm",placeholder:u.$t("cms.collections.searchCollections")},null,8,Ap),[[e.vModelText,o.value]])])]),a.value.length>0?(e.openBlock(),e.createElementBlock("div",Dp,[e.createElementVNode("div",Mp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,m=>(e.openBlock(),e.createElementBlock("button",{key:m.id,onClick:f=>c(m),class:"w-full border border-gray-200 bg-white rounded-lg p-4 text-left hover:shadow-md transition-all hover:border-gray-300"},[e.createElementVNode("div",Lp,[e.createElementVNode("div",$p,[m.id==="pages"?(e.openBlock(),e.createBlock(e.unref(Cr),{key:0,class:"shrink-0 lucide lucide-page w-5 h-5 text-blue-600"})):(e.openBlock(),e.createBlock(e.unref(Vr),{key:1,class:"shrink-0 lucide lucide-layers w-5 h-5 text-blue-600"})),e.createElementVNode("div",null,[e.createElementVNode("h4",Fp,e.toDisplayString(m.title),1),e.createElementVNode("p",Ip,e.toDisplayString(m.description||"Опис відсутній"),1)])]),e.createElementVNode("div",Op,[e.createElementVNode("span",Pp,e.toDisplayString(m.entries)+" записів",1),e.createVNode(e.unref(Er),{class:"w-4 h-4 text-gray-400"})])])],8,Tp))),128))])])):(e.openBlock(),e.createElementBlock("div",Rp,[e.createVNode(bs)]))]))}}),Up={class:"text-card-foreground border-0 bg-white/80 dark:bg-slate-800/80 backdrop-blur-sm"},jp={class:"p-0"},zp={class:"table-scroll overflow-x-auto"},Hp={class:"relative w-full overflow-auto max-h-[calc(100vh-270px)]"},qp={class:"w-full caption-bottom text-sm"},Kp={class:"border-b border-slate-200 dark:border-slate-700 bg-slate-50/50 dark:bg-slate-700/50 hover:bg-slate-50/80 dark:hover:bg-slate-700/80 transition-colors"},Gp={class:"flex items-center gap-2"},Wp={class:"h-10 text-center px-4 font-semibold text-slate-700 dark:text-slate-300 max-w-32"},Yp=["onClick"],Xp={key:1,class:"whitespace-nowrap"},Zp={key:2,class:"whitespace-nowrap"},Qp={key:3,class:"flex items-center"},Jp={key:4,class:"inline-flex whitespace-nowrap items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300"},ef={key:5,class:"flex items-center"},tf={key:6,class:"flex items-center gap-3"},rf={key:8,class:"flex items-center gap-3"},lf={key:11,class:"flex items-center gap-3"},nf={class:"line-clamp-2"},af={class:"flex justify-end py-2 px-4 align-middle max-w-40"},of={class:"flex items-center justify-center gap-1"},sf=["onClick"],cf=["onClick"],Jn=e.defineComponent({__name:"UniversalTable",props:{rows:{},query:{},filterFn:{type:Function},onEdit:{type:Function},onView:{type:Function},onDelete:{type:Function},columns:{},onMore:{type:Function},customRender:{}},emits:["edit","view","delete","more"],setup(r,{emit:t}){const{t:l}=Be({useScope:"global"});e.ref(null);const n=r,a=t,o=e.computed(()=>!n.query||!n.filterFn?n.rows:n.rows.filter(m=>n.filterFn(m,n.query))),s=m=>{if(!m)return"";const f=new Date(m);return isNaN(f.getTime())?"":m.includes("T")||m.includes(" ")||m.includes(":")?f.toLocaleString("uk-UA",{dateStyle:"medium",timeStyle:"medium"}):f.toLocaleDateString("uk-UA",{dateStyle:"medium"})},i=m=>{switch(m){case"published":return{icon:Wa,text:l("cms.common.status.published"),classes:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-200 border-green-200 dark:border-green-700"};case"draft":return{icon:Nr,text:l("cms.common.status.draft"),classes:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-200 border-yellow-200 dark:border-yellow-700"};case"archived":return{icon:ro,text:l("cms.common.status.archived"),classes:"bg-gray-100 text-gray-800 dark:bg-gray-900/30 dark:text-gray-300 border-gray-200 dark:border-gray-700"};default:return null}},c=(m,f)=>{switch(m){case"edit":a("edit",f),n.onEdit&&n.onEdit(f);break;case"view":a("view",f),n.onView&&n.onView(f);break;case"delete":a("delete",f);break;case"more":a("more",f),n.onMore&&n.onMore(f);break}},u=m=>{c("edit",m)},d=m=>{const f=new Date,p=new Date(m),h=f-p,g=Math.floor(h/1e3),y=Math.floor(g/60),b=Math.floor(y/60),w=Number(Math.floor(b/24)),x=Number(Math.floor(w/7));return x>=2?l("cms.table.time.weeksAgo",{count:x}):x===1?l("cms.table.time.weekAgo"):w>=2?l("cms.table.time.daysAgo",{count:w}):w===1?l("cms.table.time.dayAgo"):b>=2?l("cms.table.time.hoursAgo",{count:b}):b===1?l("cms.table.time.hourAgo"):y>=2?l("cms.table.time.minutesAgo",{count:y}):l(y===1?"cms.table.time.minuteAgo":"cms.table.time.justNow")};return(m,f)=>(e.openBlock(),e.createElementBlock("div",Up,[e.createElementVNode("div",jp,[e.createElementVNode("div",zp,[e.createElementVNode("div",Hp,[e.createElementVNode("table",qp,[e.createElementVNode("thead",null,[e.createElementVNode("tr",Kp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.columns,p=>(e.openBlock(),e.createElementBlock("th",{key:p.name,class:e.normalizeClass(["h-10 px-4 text-left align-middle font-semibold text-slate-700 dark:text-slate-300 max-w-80",{"min-w-[200px]":["title","name"].includes(p.name),"min-w-[150px]":p.name==="slug","min-w-[250px]":p.name==="description"}])},[e.createElementVNode("div",Gp,[p.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p.icon),{key:0,class:"w-5 h-5"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(p.label||p.title||p.ua||p.name),1)])],2))),128)),e.createElementVNode("th",Wp,e.toDisplayString(m.$t("cms.table.actions")),1)])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,p=>(e.openBlock(),e.createElementBlock("tr",{key:p.id||p._id||p.name,class:"transition-all duration-200 hover:bg-slate-50/60 dark:hover:bg-slate-700/60"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.columns,(h,g)=>{var y,b,w,x,k;return e.openBlock(),e.createElementBlock("td",{key:h.name,class:e.normalizeClass(["py-2 px-4 align-middle max-w-80",{"font-medium text-slate-800 dark:text-white cursor-pointer":g===0,"text-slate-600 dark:text-slate-400 font-mono text-sm":g!==0}]),onClick:_=>g===0?u(p):void 0},[m.customRender&&m.customRender[h.name]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m.customRender[h.name](p[h.name],p)),{key:0})):e.createCommentVNode("",!0),["published_at","publish_at","created_at","date"].includes(h.name)&&p[h.name]?(e.openBlock(),e.createElementBlock("span",Xp,e.toDisplayString(s(p[h.name])),1)):["updated_at","lastModified","last_edit"].includes(h.name)?(e.openBlock(),e.createElementBlock("span",Zp,e.toDisplayString(d(p[h.name])||"--"),1)):h.name==="views"?(e.openBlock(),e.createElementBlock("div",Qp,[e.createVNode(e.unref(yn),{class:"w-4 h-4 mr-1"}),e.createTextVNode(" "+e.toDisplayString(((b=(y=p[h.name])==null?void 0:y.toLocaleString)==null?void 0:b.call(y))??p[h.name]),1)])):["entries","fields"].includes(h.name)?(e.openBlock(),e.createElementBlock("div",Jp,e.toDisplayString(p[h.name]||"-"),1)):h.name==="type"?(e.openBlock(),e.createElementBlock("div",ef,[e.createElementVNode("div",{class:e.normalizeClass(["whitespace-nowrap inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors border-transparent hover:bg-secondary/80",p[h.name]==="pages"?"bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-300":"bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-300"])},e.toDisplayString(p[h.name]||"-"),3)])):h.name==="name"?(e.openBlock(),e.createElementBlock("div",tf,[p.type==="single"?(e.openBlock(),e.createBlock(e.unref(Cr),{key:0,class:"shrink-0 lucide lucide-page w-5 h-5 text-blue-600"})):(e.openBlock(),e.createBlock(e.unref(Vr),{key:1,class:"shrink-0 lucide lucide-layers w-5 h-5 text-blue-600"})),e.createTextVNode(" "+e.toDisplayString(p[h.name]),1)])):h.name==="status"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:7},[i(p[h.name])?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["whitespace-nowrap rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors hover:bg-secondary/80 flex items-center w-fit bg-green-100 text-green-800 border-green-200 dark:bg-green-900/30 dark:text-green-300 dark:border-green-700",(w=i(p[h.name]))==null?void 0:w.classes])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((x=i(p[h.name]))==null?void 0:x.icon),{class:"w-3 h-3 mr-1"})),e.createTextVNode(" "+e.toDisplayString((k=i(p[h.name]))==null?void 0:k.text),1)],2)):e.createCommentVNode("",!0)],64)):h.name==="slug"?(e.openBlock(),e.createElementBlock("div",rf,e.toDisplayString(p[h.name]?"/"+p[h.name]:"-"),1)):h.name==="color"?(e.openBlock(),e.createElementBlock("span",{key:9,class:e.normalizeClass(["w-4 h-4 rounded-full block ml-2","bg-["+p[h.name]+"]"])},null,2)):h.name==="enabled"?(e.openBlock(),e.createElementBlock("span",{key:10,class:e.normalizeClass(["whitespace-nowrap rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors hover:bg-secondary/80 flex items-center w-fit",p[h.name]?"bg-green-100 text-green-800 border-green-200":"bg-red-100 text-red-800 border-red-200"])},e.toDisplayString(p[h.name]?"Доступ":"Заборонено"),3)):(e.openBlock(),e.createElementBlock("div",lf,[e.createElementVNode("p",nf,e.toDisplayString(p[h.name]||"-"),1)]))],10,Yp)}),128)),e.createElementVNode("td",af,[e.createElementVNode("div",of,[e.createElementVNode("button",{onClick:e.withModifiers(h=>c("edit",p),["stop"]),class:"inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:text-slate-200 hover:border-blue-300 hover:bg-blue-50 hover:text-blue-600",title:"Edit"},[e.createVNode(e.unref(kn),{class:"text-slate-800 dark:text-slate-200 w-4 h-4 group-hover:text-green-600 dark:group-hover:text-blue-50"})],8,sf),e.createElementVNode("button",{onClick:e.withModifiers(h=>c("delete",p),["stop"]),class:"inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:text-slate-200 hover:border-blue-300 hover:bg-blue-50 hover:text-blue-600",title:"Preview"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4 text-slate-800 dark:text-slate-200 group-hover:text-red-600 dark:group-hover:text-blue-50"})],8,cf),e.renderSlot(m.$slots,"actions",{row:p})])])]))),128))])])])])])]))}}),df={class:"flex items-center justify-between px-6 py-4 border-t border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-800"},uf={class:"flex justify-between flex-1 sm:hidden"},mf={class:"relative inline-flex items-center px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"},pf={class:"relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50"},ff={class:"hidden sm:flex-1 sm:flex sm:items-center sm:justify-between"},hf={class:"text-sm text-slate-600 dark:text-slate-400"},gf={class:"font-medium text-slate-800 dark:text-slate-100"},yf={class:"font-medium text-slate-800 dark:text-slate-100"},bf={class:"relative z-0 inline-flex space-x-2 rounded-md shadow-sm","aria-label":"Pagination"},kf=["disabled"],xf={class:"sr-only"},wf={class:"space-x-1"},_f={key:0,class:"px-2 py-2 text-gray-400"},Ef=["onClick"],Cf=["disabled"],Vf={class:"sr-only"},ks=e.defineComponent({__name:"UniversalTablePagination",props:e.mergeModels({total:{},count:{},limit:{}},{page:{},pageModifiers:{}}),emits:["update:page"],setup(r){const t=e.useModel(r,"page"),l=e.computed(()=>Math.ceil(r.total/r.limit)),n=e.computed(()=>{const o=[];if(l.value<=4){for(let c=1;c<=l.value;c++)o.push(c);return o}const s=Math.max(2,t.value-2),i=Math.min(l.value-1,t.value+2);o.push(1),s>2&&o.push("ellipsis");for(let c=s;c<=i;c++)o.push(c);return i<l.value-1&&o.push("ellipsis"),o.push(l.value),o});return(a,o)=>(e.openBlock(),e.createElementBlock("div",df,[e.createElementVNode("div",uf,[e.createElementVNode("button",mf,e.toDisplayString(a.$t("cms.common.pagination.previous")),1),e.createElementVNode("button",pf,e.toDisplayString(a.$t("cms.common.pagination.next")),1)]),e.createElementVNode("div",ff,[e.createElementVNode("div",null,[e.createElementVNode("p",hf,[e.createTextVNode(e.toDisplayString(a.$t("cms.common.pagination.showing"))+" ",1),e.createElementVNode("span",gf,e.toDisplayString(a.count),1),e.createTextVNode(" "+e.toDisplayString(a.$t("cms.common.pagination.of"))+" ",1),e.createElementVNode("span",yf,e.toDisplayString(a.total),1),e.createTextVNode(" "+e.toDisplayString(a.$t("cms.common.pagination.results")),1)])]),e.createElementVNode("div",null,[e.createElementVNode("nav",bf,[e.createElementVNode("button",{onClick:o[0]||(o[0]=s=>t.value=t.value>1?t.value-1:1),disabled:t.value===1,class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors border shadow-sm rounded-md text-xs h-8 w-8 p-0 bg-white border-slate-300 text-slate-600 disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed hover:text-accent-foreground hover:bg-slate-50 dark:bg-slate-700 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-slate-600"},[e.createElementVNode("span",xf,e.toDisplayString(a.$t("cms.common.pagination.previous")),1),e.createVNode(e.unref(Ic),{class:"w-5 h-5"})],8,kf),e.createElementVNode("div",wf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s+"-"+i},[s==="ellipsis"?(e.openBlock(),e.createElementBlock("span",_f,"...")):(e.openBlock(),e.createElementBlock("button",{key:1,onClick:c=>t.value=s,class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors h-8 w-8 p-0 text-sm rounded-md",{"border shadow-sm hover:text-accent-foreground bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-600 dark:text-slate-300 hover:border-blue-600 hover:bg-slate-50 dark:hover:bg-slate-600":s!==t.value,"shadow bg-blue-600 hover:bg-blue-700 text-white border-blue-600":s===t.value}])},e.toDisplayString(s),11,Ef))],64))),128))]),e.createElementVNode("button",{onClick:o[1]||(o[1]=s=>t.value=t.value<Math.ceil(a.total/a.limit)?t.value+1:Math.ceil(a.total/a.limit)),disabled:t.value===Math.ceil(a.total/a.limit),class:"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors border shadow-sm rounded-md text-xs h-8 w-8 p-0 bg-white border-slate-300 text-slate-600 disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed hover:text-accent-foreground hover:bg-slate-50 dark:bg-slate-700 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-slate-600"},[e.createElementVNode("span",Vf,e.toDisplayString(a.$t("cms.common.pagination.next")),1),e.createVNode(e.unref(Er),{class:"w-5 h-5"})],8,Cf)])])])]))}}),fr=(r,t)=>{const l=r.__vccOpts||r;for(const[n,a]of t)l[n]=a;return l},Nf={key:0,class:"fixed inset-0 z-[2000] flex items-center justify-center bg-gray-600 bg-opacity-75"},vf={key:0,class:"relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-lg",role:"dialog","aria-modal":"true","aria-labelledby":"dialog-title"},Bf={class:"bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4"},Sf={class:"mt-3 text-center sm:mt-5"},Af={id:"dialog-title",class:"text-base font-semibold text-gray-900"},Df={class:"mt-2"},Mf={class:"text-sm text-gray-500"},Tf={class:"bg-gray-50 px-4 py-3 sm:px-6 flex justify-center"},Lf={key:1,class:"relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-lg",role:"dialog","aria-modal":"true","aria-labelledby":"dialog-title"},$f={class:"bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4"},Ff={class:"sm:flex sm:items-start"},If={class:"mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left"},Of={id:"dialog-title",class:"text-base font-semibold text-gray-900"},Pf={class:"mt-2"},Rf={class:"text-sm text-gray-500"},Uf={key:0,class:"mt-2"},jf=["placeholder"],zf=e.defineComponent({__name:"message-box",props:{type:{default:"error"},mode:{default:"confirm"},title:{default:""},message:{default:""},confirmButtonText:{default:"OK"},cancelButtonText:{default:"Cancel"},modelValue:{type:Boolean,default:!1},promptPlaceholder:{default:""},align:{type:Boolean,default:!0}},emits:["confirm","cancel","update:modelValue"],setup(r,{emit:t}){const l=e.ref(null);e.onMounted(()=>{var h;(h=l.value)==null||h.focus()});const n={success:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","aria-hidden":"true",class:"size-6 text-green-600"},[e.h("path",{d:"m4.5 12.75 6 6 9-13.5","stroke-linecap":"round","stroke-linejoin":"round"})]),error:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","aria-hidden":"true",class:"size-6 text-red-600"},[e.h("path",{d:"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126ZM12 15.75h.007v.008H12v-.008Z","stroke-linecap":"round","stroke-linejoin":"round"})]),info:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5",class:"size-6 text-blue-600"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M13 16h-1v-4h-1m1-4h.01M12 20a8 8 0 100-16 8 8 0 000 16z"})]),warning:()=>e.h("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5",class:"size-6 text-yellow-600"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v2m0 4h.01M10.29 3.86L1.82 17a1 1 0 0 0 .87 1.5h18.62a1 1 0 0 0 .87-1.5L13.71 3.86a1 1 0 0 0-1.42 0z"})])},a=r,o=t,s=e.ref(a.modelValue),i=e.ref("");e.watch(()=>a.modelValue,h=>{s.value=h,h===!0&&a.mode==="prompt"&&(i.value="")});function c(h){s.value=!1,o("update:modelValue",!1),h==="confirm"&&a.mode==="prompt"?o("confirm",i.value):o(h)}function u(){c("confirm")}const d=e.computed(()=>{switch(a.type){case"success":return"bg-green-100";case"error":return"bg-red-100";case"info":return"bg-blue-100";case"warning":return"bg-yellow-100";default:return"bg-gray-100"}}),m=e.computed(()=>a.type==="warning"?"bg-orange-600 hover:bg-orange-500":a.type==="success"?"bg-green-600 hover:bg-green-500":a.type==="error"?"bg-red-600 hover:bg-red-500":"bg-blue-600 hover:bg-blue-500"),f=e.computed(()=>n[a.type||"error"]||n.error),p=e.computed(()=>a.title&&a.title.trim()!==""?a.title:a.type?a.type.charAt(0).toUpperCase()+a.type.slice(1):"Notification");return(h,g)=>{const y=e.resolveDirective("focus");return e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[s.value?(e.openBlock(),e.createElementBlock("div",Nf,[h.mode==="alert"?(e.openBlock(),e.createElementBlock("div",vf,[e.createElementVNode("div",Bf,[e.createElementVNode("div",null,[g[4]||(g[4]=e.createElementVNode("div",{class:"mx-auto flex size-12 shrink-0 items-center justify-center rounded-full bg-green-100"},[e.createElementVNode("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","aria-hidden":"true",class:"size-6 text-green-600"},[e.createElementVNode("path",{d:"m4.5 12.75 6 6 9-13.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),e.createElementVNode("div",Sf,[e.createElementVNode("h3",Af,e.toDisplayString(p.value),1),e.createElementVNode("div",Df,[e.createElementVNode("p",Mf,e.toDisplayString(h.message),1)])])])]),e.createElementVNode("div",Tf,[e.createElementVNode("button",{type:"button",onClick:g[0]||(g[0]=b=>c("confirm")),class:"inline-flex min-w-[70px] w-full justify-center rounded-md bg-indigo-600 px-3 py-2 text-sm font-semibold text-white shadow-xs hover:bg-indigo-500 sm:w-auto"},e.toDisplayString(h.confirmButtonText),1)])])):(e.openBlock(),e.createElementBlock("div",Lf,[e.createElementVNode("div",$f,[e.createElementVNode("div",Ff,[e.createElementVNode("div",{class:e.normalizeClass(["mx-auto flex size-12 shrink-0 items-center justify-center rounded-full sm:mx-0 sm:size-10",d.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f.value)))],2),e.createElementVNode("div",If,[e.createElementVNode("h3",Of,e.toDisplayString(p.value),1),e.createElementVNode("div",Pf,[e.createElementVNode("p",Rf,e.toDisplayString(h.message),1)]),h.mode==="prompt"?(e.openBlock(),e.createElementBlock("div",Uf,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":g[1]||(g[1]=b=>i.value=b),placeholder:h.promptPlaceholder,class:"w-full rounded-md py-1.5 pl-2 text-gray-900 shadow-sm placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6",onKeyup:e.withKeys(u,["enter"]),type:"text"},null,40,jf),[[e.vModelText,i.value],[y]])])):e.createCommentVNode("",!0)])])]),e.createElementVNode("div",{class:e.normalizeClass(["bg-gray-50 px-4 py-3",h.align?"sm:flex sm:flex-row-reverse sm:px-6 gap-x-2.5":"sm:flex sm:flex-row sm:px-6 gap-x-2.5"])},[e.createElementVNode("button",{type:"button",onClick:g[2]||(g[2]=b=>c("confirm")),class:e.normalizeClass(["inline-flex w-full justify-center rounded-md px-3 py-2 text-sm font-semibold text-white shadow-xs sm:w-auto",m.value])},e.toDisplayString(h.confirmButtonText),3),e.createElementVNode("button",{type:"button",onClick:g[3]||(g[3]=b=>c("cancel")),class:"mt-3 inline-flex w-full justify-center rounded-md bg-white px-3 py-2 text-sm font-semibold text-gray-900 shadow-xs ring-1 ring-inset ring-gray-300 hover:bg-gray-50 sm:mt-0 sm:w-auto"},e.toDisplayString(h.cancelButtonText),1)],2)]))])):e.createCommentVNode("",!0)])}}}),Hf=fr(zf,[["__scopeId","data-v-047caa71"]]);e.defineComponent({props:{modelValue:{type:Boolean,default:()=>!1},title:{type:String,default:()=>""},disabled:{type:Boolean,default:()=>!1}},data(){return{}},mounted(){this.modelValue||this.$emit("update:modelValue",!1)},computed:{modelState:{get(){return this.modelValue},set(r){this.$emit("update:modelValue",r)}},labelCursorClasses(){return[{"cursor-not-allowed":this.disabled},{"cursor-pointer":!this.disabled}]}},methods:{handleEnterDown(r){const{keyCode:t}=r;t===13&&(this.modelState=!this.modelState)},addKeyHandler(){window.addEventListener("keydown",this.handleEnterDown)},removeKeyHandler(){window.removeEventListener("keydown",this.handleEnterDown)}}});const qf={key:0,class:"vsTailwind ui-dialog__wrapper text-gray-800"},Kf={class:"py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]"},Gf={class:"font-medium text-gray-800 dark:text-[#ffffff]"},Wf={class:"ui-dialog__content p-4"},Yf={key:0,class:"flex justify-end gap-x-2"},Xf={key:1,class:"flex justify-end items-center gap-x-2 py-3 px-4 border-t border-gray-200 dark:border-neutral-700"},Zf=e.defineComponent({__name:"vs-modal",props:{title:{default:""},template:{},visible:{type:Boolean,default:!1},size:{default:"small"},closeClickBack:{type:Boolean,default:!1},content:{},buttonText:{},contentProps:{},teleport:{default:"body"}},emits:["update:visible","close","done"],setup(r,{emit:t}){const l=r,n=t,a=e.computed(()=>l.size==="small"?"md:w-5/12 w-9/12":l.size==="medium"?"md:w-6/12 w-9/12":"lg:w-7/12 w-11/12"),o=e.useAttrs();function s(){n("done")}function i(){n("update:visible",!1),n("close")}function c(d){d.key==="Escape"&&i()}function u(d,m){m&&d.target.classList.contains("vs-dialog-overlay")&&i()}return e.onMounted(()=>{window.addEventListener("keydown",c)}),e.onUnmounted(()=>{window.removeEventListener("keydown",c)}),(d,m)=>(e.openBlock(),e.createBlock(e.Teleport,{to:d.teleport},[d.visible?(e.openBlock(),e.createElementBlock("div",qf,[e.createElementVNode("div",{onMousedown:m[0]||(m[0]=f=>u(f,d.closeClickBack)),class:e.normalizeClass(["vs-dialog-overlay vs-dialog w-full h-full fixed top-0 start-0 bg-black bg-opacity-50",[e.unref(o).class]])},[e.createVNode(e.Transition,{name:"content",appear:""},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["ui-dialog__modal opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-xl",a.value])},[e.createElementVNode("div",Kf,[e.createElementVNode("h3",Gf,e.toDisplayString(d.title),1),e.createElementVNode("button",{type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600",onClick:i},[...m[1]||(m[1]=[e.createElementVNode("span",{class:"sr-only"},"Close",-1),e.createElementVNode("svg",{class:"flex-shrink-0 w-4 h-4",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"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])])]),e.createElementVNode("div",Wf,[e.renderSlot(d.$slots,"default",{},void 0,!0)]),d.$slots.footer?(e.openBlock(),e.createElementBlock("div",Yf,[e.renderSlot(d.$slots,"footer",{handleClose:i},void 0,!0)])):e.createCommentVNode("",!0),d.buttonText?(e.openBlock(),e.createElementBlock("div",Xf,[e.createElementVNode("button",{type:"button",class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg border border-gray-200 bg-white text-gray-800 shadow-2xs hover:bg-gray-50 focus:outline-hidden focus:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",onClick:i}," Close "),e.createElementVNode("button",{type:"button",onClick:s,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent bg-blue-600 text-white hover:bg-blue-700 focus:outline-hidden focus:bg-blue-700 disabled:opacity-50 disabled:pointer-events-none"},e.toDisplayString(d.buttonText),1)])):e.createCommentVNode("",!0)],2)]),_:3})],34)])):e.createCommentVNode("",!0)],8,["to"]))}}),Gt=fr(Zf,[["__scopeId","data-v-a6807cab"]]),Qf={key:0,class:"vsTailwind ui-drawer__wrapper"},Jf={class:"py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]"},e0={class:"font-medium text-gray-800 dark:text-[#ffffff]"},t0={class:"flex gap-2"},r0={class:"sr-only"},l0={key:0,class:"flex-shrink-0 w-4 h-4",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"},n0={key:1,class:"flex-shrink-0 w-4 h-4",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"},a0={class:"ui-drawer__content p-4 flex-1 overflow-auto"},o0={key:0,class:"flex justify-end gap-x-2 p-4 border-0 border-t border-solid border-gray-200 dark:border-t-[#454545]"},s0=e.defineComponent({__name:"vs-drawer",props:{title:{default:""},visible:{type:Boolean,default:!1},position:{default:"right"},size:{default:"500px"},closeClickBack:{type:Boolean,default:!1}},emits:["update:visible","close"],setup(r,{emit:t}){const l=r,n=t,a=e.ref(!1),o=e.computed(()=>a.value?"fixed top-0 left-0 w-full h-full":l.position==="left"?"fixed top-0 left-0 h-full":l.position==="right"?"fixed top-0 right-0 h-full":l.position==="top"?"fixed top-0 left-0 w-full":"fixed bottom-0 left-0 w-full");function s(){n("update:visible",!1),n("close")}function i(){a.value=!a.value}function c(d){d.key==="Escape"&&s()}function u(d,m){m&&d.target.classList.contains("vs-drawer-overlay")&&s()}return e.onMounted(()=>{window.addEventListener("keydown",c)}),e.onUnmounted(()=>{window.removeEventListener("keydown",c)}),(d,m)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"#modal"},[d.visible?(e.openBlock(),e.createElementBlock("div",Qf,[e.createElementVNode("div",{onMousedown:m[0]||(m[0]=f=>u(f,d.closeClickBack)),class:"vs-drawer-overlay vs-drawer w-full h-full fixed top-0 start-0 bg-black bg-opacity-50"},[e.createVNode(e.Transition,{name:"drawer",appear:""},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["ui-drawer__drawer opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)]",[o.value,a.value?"w-full":`w-[${l.size}]`,`drawer-${l.position}`]])},[e.createElementVNode("div",Jf,[e.createElementVNode("h3",e0,e.toDisplayString(d.title),1),e.createElementVNode("div",t0,[e.createElementVNode("button",{type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600",onClick:i},[e.createElementVNode("span",r0,e.toDisplayString(a.value?"Exit fullscreen":"Enter fullscreen"),1),a.value?(e.openBlock(),e.createElementBlock("svg",n0,[...m[2]||(m[2]=[e.createElementVNode("path",{d:"M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",l0,[...m[1]||(m[1]=[e.createElementVNode("path",{d:"M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"},null,-1)])]))]),e.createElementVNode("button",{type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600",onClick:s},[...m[3]||(m[3]=[e.createElementVNode("span",{class:"sr-only"},"Close",-1),e.createElementVNode("svg",{class:"flex-shrink-0 w-4 h-4",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"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)])])])]),e.createElementVNode("div",a0,[e.renderSlot(d.$slots,"default",{},void 0,!0)]),d.$slots.footer?(e.openBlock(),e.createElementBlock("div",o0,[e.renderSlot(d.$slots,"footer",{handleClose:s},void 0,!0)])):e.createCommentVNode("",!0)],2)]),_:3})],32)])):e.createCommentVNode("",!0)]))}}),xs=fr(s0,[["__scopeId","data-v-c808fe88"]]),i0={},c0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-green-600"};function d0(r,t){return e.openBlock(),e.createElementBlock("svg",c0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])])}const u0=fr(i0,[["render",d0]]),m0={},p0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"orange",class:"size-6 text-orange-600"};function f0(r,t){return e.openBlock(),e.createElementBlock("svg",p0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v3m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"},null,-1)])])}const h0=fr(m0,[["render",f0]]),g0={},y0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-6 text-blue-600"};function b0(r,t){return e.openBlock(),e.createElementBlock("svg",y0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"},null,-1)])])}const k0=fr(g0,[["render",b0]]),x0={},w0={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"red",class:"size-6 text-red-600"};function _0(r,t){return e.openBlock(),e.createElementBlock("svg",w0,[...t[0]||(t[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)])])}const E0=fr(x0,[["render",_0]]),C0={class:"rounded-md border border-gray-300 bg-white p-4 shadow-sm"},V0={class:"flex items-start gap-4 opacity-100 scale-5 transition-all duration-300"},N0={class:"flex-1"},v0={class:"font-medium text-gray-900"},B0={class:"mt-0.5 text-sm text-gray-700"},S0=e.defineComponent({__name:"vs-notify",props:{type:{},title:{},message:{}},setup(r){const t={success:u0,warning:h0,error:E0,info:k0};return(l,n)=>(e.openBlock(),e.createElementBlock("div",C0,[e.createElementVNode("div",V0,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t[l.type]))),e.createElementVNode("div",N0,[e.createElementVNode("strong",v0,e.toDisplayString(l.title),1),e.createElementVNode("p",B0,e.toDisplayString(l.message),1)]),n[0]||(n[0]=e.createElementVNode("button",{class:"m-3 rounded-full p-1.5 text-gray-500 transition-colors hover:bg-gray-50 hover:text-gray-700",type:"button","aria-label":"Dismiss notify"},[e.createElementVNode("span",{class:"sr-only"},"Dismiss popup"),e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"size-5"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})])],-1))])]))}}),Jr=r=>{const{message:t,title:l,mode:n="confirm",type:a="info",confirmButtonText:o,cancelButtonText:s,onConfirm:i,onCancel:c,cascade:u,confirmButtonStyle:d,cancelButtonStyle:m}=r||{},f=document.querySelector("body");if(!f){console.error('Modal root element with id "#modal" not found!');return}const p=document.createElement("div");f.appendChild(p);const h=()=>{p.remove()};e.createApp({render(){return e.h(Hf,{title:l,message:t,mode:n,type:a,cascade:u,confirmButtonText:o,cancelButtonText:s,cancelButtonStyle:m,confirmButtonStyle:d,modelValue:!0,onConfirm:()=>{i==null||i(),h()},onCancel:()=>{c==null||c(),h()}})}}).mount(p)};e.reactive({visible:!0});const A0=r=>{const{template:t="",title:l="",content:n,contentProps:a={},size:o="medium"}=r,s=document.querySelector("body");if(!s)return console.error('Modal root element with id "#modal" not found!'),{close:()=>{}};const i=document.createElement("div");s.appendChild(i);const c={title:l,template:t,visible:!0,size:o,closeClickBack:!0,onClose:d},u=e.createApp({render(){return e.h(Gt,c,{default:()=>[n?e.h(n,a):e.h("p",t)]})}});function d(){u.unmount(),i.remove()}return u.mount(i),{close:d}},Il={top:"top-4 left-1/2 transform -translate-x-1/2","left-bottom":"bottom-4 left-4 transform","right-bottom":"bottom-4 right-4 transform",bottom:"bottom-4 left-1/2 transform -translate-x-1/2"},se=r=>{var c;const{type:t="info",title:l,message:n,position:a="right-bottom"}=r||{};let o=document.querySelector("#notify-root");o||(o=document.createElement("div"),o.id="notify-root",o.className=`fixed z-[2000] flex flex-col gap-3 ${Il[a]} p-6 max-w-md mx-auto font-sans antialiased`,document.body.appendChild(o)),o.className.includes(Il[a])||(Object.values(Il).forEach(u=>{o.classList.remove(...u.split(" "))}),o.classList.add(...Il[a].split(" ")));const s=document.createElement("div");o.appendChild(s);const i=e.createApp({render(){return e.h(S0,{type:t,title:l,message:n,onClose:()=>{i.unmount(),s.remove()}})}});i.mount(s),(c=s.querySelector("button"))==null||c.addEventListener("click",()=>{s.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{i.unmount(),s.remove()},350)}),setTimeout(()=>{s.classList.add("opacity-0","scale-95","transition-all","duration-300"),setTimeout(()=>{i.unmount(),s.remove()},350)},3500)},D0={class:"w-full relative"},M0={key:0,class:"text-[14px] font-medium text-gray-900 mb-2"},T0={class:"opacity-100"},L0={key:0,class:"text-red-500 text-[14px]"},$0={key:1,class:"text-red-500 text-[10px] absolute bottom-[-14px]"},F0=e.defineComponent({__name:"vs-layout-default",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{}},setup(r){const t=e.ref("uk"),l=n=>{n.detail.key==="locale"&&(t.value=n.detail.newValue)};return e.onMounted(()=>{t.value=localStorage.locale,window.addEventListener("storage",l)}),e.onUnmounted(()=>{window.removeEventListener("resize",l)}),(n,a)=>{var o,s;return e.openBlock(),e.createElementBlock("div",D0,[n.ua||n.label?(e.openBlock(),e.createElementBlock("div",M0,[e.createElementVNode("span",T0,e.toDisplayString(n.item[t.value]||n.ua||n.label),1),(s=(o=n.item)==null?void 0:o.rules)!=null&&s.includes("required")?(e.openBlock(),e.createElementBlock("span",L0,"*")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default",e.mergeProps(n.$attrs,{class:{"opacity-60":n.item.disabled}})),n.error?(e.openBlock(),e.createElementBlock("span",$0,e.toDisplayString(n.error),1)):e.createCommentVNode("",!0)])}}}),I0={class:"w-full relative flex flex-row items-center gap-2"},O0={key:0,class:"text-red-500 text-[14px]"},P0={key:1,class:"text-red-500 text-[10px] absolute bottom-[-14px]"},R0=e.defineComponent({__name:"vs-layout-horizontal",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{default:()=>({container:12,label:3})}},setup(r){const t=r,l=e.computed(()=>t.columns??{container:12,label:3}),n=e.computed(()=>{const{container:i,label:c}=l.value;return!i||i<=0?0:Math.min(Math.max(c??0,0),i)/i}),a=e.computed(()=>{var i;return((i=t.item)==null?void 0:i.type)==="html"||n.value<=0?!1:!!(t.ua||t.label)}),o=e.computed(()=>{if(!a.value)return{};const i=`${n.value*100}%`;return{flexBasis:i,maxWidth:i}}),s=e.computed(()=>{var m;const{container:i,label:c}=l.value;if(!i||i<=0)return{};if(((m=t.item)==null?void 0:m.type)==="html")return{flexBasis:"100%",maxWidth:"100%"};if(!a.value)return{flexBasis:"100%",maxWidth:"100%"};const u=Math.max(i-Math.max(c??0,0),0)/i;if(!u)return{};const d=`${u*100}%`;return{flexBasis:d,maxWidth:d}});return(i,c)=>{var u,d;return e.openBlock(),e.createElementBlock("div",I0,[a.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"text-sm text-gray-900 font-medium flex shrink-0",style:e.normalizeStyle(o.value)},[e.createTextVNode(e.toDisplayString(i.ua||i.label)+" ",1),(d=(u=i.item)==null?void 0:u.rules)!=null&&d.includes("required")&&(i.ua||i.label)?(e.openBlock(),e.createElementBlock("span",O0,"*")):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"flex-1 min-w-0",style:e.normalizeStyle(s.value)},[e.renderSlot(i.$slots,"default",e.normalizeProps(e.guardReactiveProps(i.$attrs)))],4),i.error?(e.openBlock(),e.createElementBlock("span",P0,e.toDisplayString(i.error),1)):e.createCommentVNode("",!0)])}}}),U0={class:"w-full relative"},j0={key:0,class:"text-red-500 text-[10px] absolute bottom-[-14px]"},z0=e.defineComponent({__name:"vs-layout-inline",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",U0,[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps(t.$attrs))),t.error?(e.openBlock(),e.createElementBlock("span",j0,e.toDisplayString(t.error),1)):e.createCommentVNode("",!0)]))}}),H0={class:"flex-1 min-w-0"},q0={key:0,class:"text-sm font-medium text-slate-700 dark:text-slate-200 flex items-center gap-1"},K0={class:"truncate"},G0={key:0,class:"text-red-500 text-[14px]"},W0={key:1,class:"text-xs text-slate-500 dark:text-slate-400"},Y0={key:0,class:"mt-1 text-xs text-red-500"},X0=e.defineComponent({__name:"vs-layout-settings",props:{ua:{default:""},uk:{},en:{},de:{},es:{},fr:{},item:{default:()=>({})},error:{type:[String,Boolean],default:""},label:{default:""},columns:{}},setup(r){const t=r,l=e.ref("uk");e.computed(()=>{var i;return((i=t.item??{})==null?void 0:i[l.value])??t.ua??t.label??""});const n=e.computed(()=>{var i;return((i=t.item)==null?void 0:i.description)??""}),a=e.computed(()=>{var i;return Array.isArray((i=t.item)==null?void 0:i.rules)&&t.item.rules.includes("required")}),o=e.computed(()=>(typeof t.error=="string"?t.error:"")??""),s=i=>{i.key==="locale"&&(l.value=i.newValue??"uk")};return e.onMounted(()=>{try{typeof localStorage<"u"&&localStorage.locale&&(l.value=localStorage.locale)}catch{}window.addEventListener("storage",s)}),e.onUnmounted(()=>{window.removeEventListener("storage",s)}),(i,c)=>{var u;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-full relative",{"opacity-60":(u=i.item)==null?void 0:u.disabled}])},[e.createElementVNode("div",{class:e.normalizeClass(["gap-2 md:flex-row md:items-center md:justify-between",[["switcher","native-select"].includes(i.item.type)?"flex flex-col":""]])},[e.createElementVNode("div",H0,[i.ua||i.label?(e.openBlock(),e.createElementBlock("p",q0,[e.createElementVNode("span",K0,e.toDisplayString(i.item[l.value]||i.ua||i.label),1),a.value?(e.openBlock(),e.createElementBlock("span",G0,"*")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),n.value?(e.openBlock(),e.createElementBlock("p",W0,e.toDisplayString(n.value),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["w-full",["select","native-select"].includes(i.item.type)?"md:w-[30%]":"md:w-auto"])},[e.renderSlot(i.$slots,"default",e.normalizeProps(e.guardReactiveProps(i.$attrs)))],2)],2),o.value?(e.openBlock(),e.createElementBlock("p",Y0,e.toDisplayString(o.value),1)):e.createCommentVNode("",!0)],2)}}}),Z0={default:F0,horizontal:R0,inline:z0,settings:X0};function gt(r){return{inputClass:e.computed(()=>{const t=`disabled:opacity-50 disabled:cursor-not-allowed outline-none focus:ring-2 focus:ring-ring focus:ring-${(r==null?void 0:r.primaryColor)||"blue"}-500 border border-solid border-stone-200 rounded-md text-sm text-stone-800 placeholder:text-stone-400 `;return(r==null?void 0:r.size)==="sm"?`${t}h-[32px]`:`${t}h-[38px]`})}}const Q0=["placeholder","disabled"],J0=e.defineComponent({__name:"vs-input-password",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"password","onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),placeholder:o.value,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":s.error}]]),style:{border:"1px solid #CFD9E0"}},null,10,Q0)),[[e.vModelText,n.value]])}}),eh=["placeholder","disabled"],Ol=e.defineComponent({__name:"vs-input-text",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"text","onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),placeholder:o.value,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":s.error}]]),style:{border:"1px solid #CFD9E0"}},null,10,eh)),[[e.vModelText,n.value]])}}),th=["placeholder","disabled","min","max"],rh=e.defineComponent({__name:"vs-input-number",props:e.mergeModels({min:{},max:{},style:{default:()=>({})},customClass:{},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""}},{modelValue:{default:null},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled);return(o,s)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"number",step:"any","onUpdate:modelValue":s[0]||(s[0]=i=>n.value=i),placeholder:o.placeholder,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full bg-white",[e.unref(l)]]),style:{border:"1px solid #CFD9E0"},min:o.min,max:o.max},null,10,th)),[[e.vModelText,n.value]])}}),_e=(r,t)=>{const l=r.__vccOpts||r;for(const[n,a]of t)l[n]=a;return l},lh={},nh={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-check"};function ah(r,t){return e.openBlock(),e.createElementBlock("svg",nh,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M5 12l5 5l10 -10"},null,-1)]))}const oh=_e(lh,[["render",ah]]),sh={class:"flex items-center gap-[4px]"},ih=["value","id","disabled"],ch=["for"],dh={class:"text-[14px] text-gray-700 flex items-center dark:text-neutral-400"},uh=e.defineComponent({__name:"vs-checkbox-default",props:{value:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},id:{},modelValue:{default:""},info:{},error:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=t,n=r,a=e.computed({get:()=>n.modelValue,set:s=>l("update:modelValue",s)}),o=e.computed(()=>!!n.disabled);return(s,i)=>(e.openBlock(),e.createElementBlock("div",sh,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",value:s.value,"onUpdate:modelValue":i[0]||(i[0]=c=>a.value=c),class:e.normalizeClass(["shrink-0 border border-solid hidden border-gray-700 w-3.5 h-3.5 rounded text-blue-600 focus:ring-offset-0 dark:bg-neutral-800 dark:border-neutral-700 cursor-pointer",{"!cursor-not-allowed":o.value}]),id:s.id,disabled:o.value},null,10,ih),[[e.vModelCheckbox,a.value]]),e.createElementVNode("label",{for:s.id,class:e.normalizeClass(["flex flex-1 checkbox-label items-center gap-x-2 cursor-pointer text-sm text-gray-800 dark:text-neutral-300",{"!cursor-not-allowed":o.value}])},[e.createElementVNode("div",{class:e.normalizeClass(["h-[16px] text-white w-[16px] flex items-center justify-center shrink-0 border rounded",[a.value?"bg-blue-600 border-blue-600":"bg-white border-gray-600",s.error?"border-red-600":""]])},[e.createVNode(oh,{height:"12",width:"12"})],2),e.createElementVNode("span",dh,[e.renderSlot(s.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(s.label),1)])])],10,ch)]))}}),mh=["name","value","disabled"],ph={class:"flex items-center gap-[6px] text-[14px]"},fh={key:0,class:"text-[16px]"},hh=["src"],gh=e.defineComponent({__name:"vs-checkbox-buttons",props:{value:{type:[String,Number,Boolean],default:""},label:{default:""},modelValue:{default:""},disabled:{type:Boolean},id:{},icon:{},imgUrl:{},style:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=e.computed({get:()=>l.modelValue,set:i=>{n("update:modelValue",i)}}),o=e.computed(()=>Array.isArray(a.value)?a.value.includes(l.value):a.value===!0||a.value===l.value),s=e.computed(()=>{var i,c;return((i=l.style)==null?void 0:i.size)==="xs"?"p-1.5 text-xs":((c=l.style)==null?void 0:c.size)==="lg"?"p-3.5 text-[20px]":"p-2.5 text-xs"});return(i,c)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["group relative flex justify-center items-center gap-x-3 text-center bg-white text-gray-800 ring-ring ring-2 cursor-pointer rounded-lg",[s.value,o.value?"ring-blue-500":"border border-gray-200 ring-transparent"]])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",class:"hidden",name:i.id,value:i.value,"onUpdate:modelValue":c[0]||(c[0]=u=>a.value=u),disabled:i.disabled},null,8,mh),[[e.vModelCheckbox,a.value]]),e.createElementVNode("span",ph,[i.icon||i.imgUrl?(e.openBlock(),e.createElementBlock("span",fh,[i.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass(i.icon)},null,2)):e.createCommentVNode("",!0),i.imgUrl?(e.openBlock(),e.createElementBlock("img",{key:1,src:i.imgUrl,width:"16",height:"16",alt:"icon"},null,8,hh)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(i.label),1)])])],2))}}),yh={class:"flex items-center"},ea=e.defineComponent({__name:"vs-input-checkbox-item",props:{value:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},view:{default:"default"},modelValue:{type:[Boolean,Array],default:!1},icon:{},imgUrl:{},slots:{},option:{},style:{},error:{default:""}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=`radio-${Math.floor(Math.random()*1e4)}`,o=e.computed({get:()=>Array.isArray(l.modelValue)?Array.isArray(l.modelValue)&&l.modelValue.includes(l.value):l.modelValue,set:i=>{if(Array.isArray(l.modelValue)){let c=[...l.modelValue];i?c.includes(l.value)||c.push(l.value):c=c.filter(u=>u!==l.value),n("update:modelValue",c)}else n("update:modelValue",i)}}),s=e.ref(`vs-checkbox-${l.view||"default"}`);return(i,c)=>{var u;return e.openBlock(),e.createElementBlock("div",yh,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value==="vs-checkbox-buttons"?e.unref(gh):e.unref(uh)),{value:i.value,label:i.label,info:(u=i.option)==null?void 0:u.info,disabled:i.disabled,modelValue:o.value,"onUpdate:modelValue":c[0]||(c[0]=d=>o.value=d),id:a,icon:i.icon,imgUrl:i.imgUrl,style:e.normalizeStyle(i.style),error:i.error},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.label),1)]),_:1},8,["value","label","info","disabled","modelValue","icon","imgUrl","style","error"]))])}}}),bh={},kh={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-chevron-down"};function xh(r,t){return e.openBlock(),e.createElementBlock("svg",kh,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)]))}const wh=_e(bh,[["render",xh]]),_h={},Eh={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"};function Ch(r,t){return e.openBlock(),e.createElementBlock("svg",Eh,t[0]||(t[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 Vh=_e(_h,[["render",Ch]]),Nh={},vh={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"};function Bh(r,t){return e.openBlock(),e.createElementBlock("svg",vh,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M12 9h.01"},null,-1),e.createElementVNode("path",{d:"M11 12h1v4h1"},null,-1),e.createElementVNode("path",{d:"M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z"},null,-1)]))}const Sh=_e(Nh,[["render",Bh]]),Ah={key:0,class:"flex items-start gap-x-1"},Dh={key:0,class:"text-red-500 text-[14px]"},Mh=["title"],Th=["disabled"],ws=e.defineComponent({__name:"vs-input-switcher",props:e.mergeModels({rules:{default:()=>[]},view:{default:"checkbox"},label:{default:""},i:{default:""},text:{default:""},style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue");return(n,a)=>{var o,s;return t.view==="checkbox"?(e.openBlock(),e.createElementBlock("div",Ah,[e.createVNode(ea,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=i=>l.value=i),label:n.text,error:n.error||""},null,8,["modelValue","label","error"]),(o=n.rules)!=null&&o.includes("required")?(e.openBlock(),e.createElementBlock("span",Dh,"*")):e.createCommentVNode("",!0),n.i?(e.openBlock(),e.createElementBlock("button",{key:1,class:"cursor-pointer",title:n.i,onClick:a[1]||(a[1]=e.withModifiers(()=>{},["prevent"]))},[e.createVNode(e.unref(Sh),{class:"text-gray-500 w-[14px] h-[14px]"})],8,Mh)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:e.normalizeClass(["inline-flex h-5 w-9 shrink-0 px-[2px] cursor-pointer items-center rounded-full shadow-sm disabled:cursor-not-allowed disabled:opacity-50",[l.value?`bg-${((s=n.style)==null?void 0:s.primaryColor)||"blue"}-500`:"bg-stone-200",n.customClass]]),disabled:n.disabled,onClick:a[2]||(a[2]=i=>l.value=!l.value)},[e.createElementVNode("span",{"data-state":"checked",class:e.normalizeClass(["pointer-events-none block h-4 w-4 rounded-full bg-white shadow-lg ring-0 transition-transform",[l.value?"translate-x-4":"translate-x-0"]])},null,2)],10,Th))}}}),Lh=["id","innerHTML"],_s=e.defineComponent({__name:"vs-input-static",props:{text:{default:""},html:{default:""},style:{},customClass:{default:""},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",{id:t.name,class:e.normalizeClass(["text-gray-900",t.customClass]),innerHTML:t.html?t.html:t.text},null,10,Lh))}}),$h=["placeholder","disabled","name"],Fh=e.defineComponent({__name:"vs-input-mask",props:e.mergeModels({name:{},mask:{default:""},unmask:{type:Boolean,default:!1},placeholder:{default:"_"},style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.ref(null);let o=null;return e.onMounted(async()=>{if(a.value){const{default:s}=await Promise.resolve().then(()=>GA);o=s(a.value,{mask:t.mask||"",definitions:{9:/[0-9]/,A:/[a-zA-Z]/,"*":/[a-zA-Z0-9]/},lazy:!1}),o.on("accept",()=>{n.value=t.unmask?o.unmaskedValue:o.value}),o.on("complete",()=>{n.value=t.unmask?o.unmaskedValue:o.value}),o.value=n.value??""}}),e.onBeforeUnmount(()=>{o==null||o.destroy()}),e.watch(()=>t.mask,s=>{o&&o.updateOptions({mask:s,definitions:{9:/[0-9]/,A:/[a-zA-Z]/,"*":/[a-zA-Z0-9]/}})}),e.watch(n,s=>{o&&o.unmaskedValue!==s&&(o.value=s||"")}),(s,i)=>(e.openBlock(),e.createElementBlock("input",{type:"text",ref_key:"inputEl",ref:a,placeholder:s.placeholder,disabled:s.disabled,name:s.name,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l)]]),style:{border:"1px solid #CFD9E0"}},null,10,$h))}}),Ih={class:"relative w-full bg-white rounded-lg"},Oh=["placeholder","disabled"],Ph=e.defineComponent({__name:"vs-input-email",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:null},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue");return(a,o)=>(e.openBlock(),e.createElementBlock("div",Ih,[o[1]||(o[1]=e.createStaticVNode('<div class="absolute bottom-2/4 translate-y-2/4 left-[10px] cursor-pointer"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="stroke-gray-500 transition-all"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z"></path><path d="M3 7l9 6l9 -6"></path></svg></div>',1)),e.withDirectives(e.createElementVNode("input",{type:"email","onUpdate:modelValue":o[0]||(o[0]=s=>n.value=s),placeholder:a.placeholder,disabled:a.disabled,class:e.normalizeClass(["!pl-8 py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":a.error}]]),style:{border:"1px solid #CFD9E0"}},null,10,Oh),[[e.vModelText,n.value]])]))}}),Rh=["value","disabled"],Uh={class:"text-[13px] text-gray-700"},jh=e.defineComponent({__name:"vs-input-radio-default",props:e.mergeModels({style:{},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{},value:{},text:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>!!t.disabled);return(a,o)=>{var s,i;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["flex items-center gap-0",[t.customClass,n.value?"cursor-not-allowed opacity-60":""]])},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[0]||(o[0]=c=>l.value=c),type:"radio",value:t.value,disabled:n.value,class:"hidden"},null,8,Rh),[[e.vModelRadio,l.value]]),e.createElementVNode("span",{class:e.normalizeClass(["w-[16px] shrink-0 h-[16px] border rounded-full flex items-center justify-center mr-[10px]",[`border-${((s=t.style)==null?void 0:s.primaryColor)||"blue"}-500`,n.value?"opacity-50 cursor-not-allowed":""]])},[l.value==t.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["w-[12px] h-[12px] shrink-0 rounded-full",[`bg-${((i=t.style)==null?void 0:i.primaryColor)||"blue"}-500`]])},null,2)):e.createCommentVNode("",!0)],2),e.createElementVNode("span",Uh,e.toDisplayString(t.text),1)],2)}}}),zh=["value","disabled"],Hh={class:"text-[13px] text-gray-700"},qh=e.defineComponent({__name:"vs-input-radio-buttons",props:e.mergeModels({style:{},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{},value:{},text:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>!!t.disabled);return(a,o)=>{var s;return e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["flex items-center border rounded-lg px-2 py-1",[l.value==t.value?`ring-2 ring-ring ring-${((s=t.style)==null?void 0:s.primaryColor)||"blue"}-500`:"",t.customClass,n.value?"cursor-not-allowed opacity-60":""]])},[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":o[0]||(o[0]=i=>l.value=i),type:"radio",value:t.value,disabled:n.value,class:"hidden"},null,8,zh),[[e.vModelRadio,l.value]]),e.createElementVNode("span",Hh,e.toDisplayString(t.text),1)],2)}}}),Kh={"vs-input-radio-default":jh,"vs-input-radio-buttons":qh},Es=e.defineComponent({__name:"vs-input-radio",props:e.mergeModels({options:{},position:{default:"vertical"},view:{default:"default"},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>Kh[`vs-input-radio-${t.view}`]);return(a,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([a.position==="horizontal"?"flex items-center flex-wrap gap-2":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.options,s=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),e.mergeProps({key:s==null?void 0:s.id,text:s.text,value:s.id.toString(),checked:l.value===s.id,modelValue:l.value,"onUpdate:modelValue":o[0]||(o[0]=i=>l.value=i)},{ref_for:!0},a.$attrs),null,16,["text","value","checked","modelValue"]))),128))],2))}}),Gh={key:1,class:"w-full flex flex-col gap-4"},Wh={key:0,class:"text-sm font-medium text-muted-foreground my-2"},Yh="Без категорії",Xh=e.defineComponent({__name:"vs-input-checkbox",props:{options:{default:()=>[]},position:{default:"vertical"},slots:{default:null},colSpan:{default:0},data:{},view:{},group:{default:void 0},values:{default:()=>[]},style:{},customClass:{},disabled:{type:Boolean},modelValue:{default:!1},error:{},name:{},placeholder:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=e.ref([]),o=e.reactive({}),s=p=>(p==null?void 0:p.value)||(p==null?void 0:p.id)||(p==null?void 0:p.text)||p,i=p=>p.text||String(p),c=p=>`lg:col-span-${p||12}`,u=e.computed(()=>[l.position==="vertical"?"flex flex-col":"",l.colSpan?"grid":"flex justify-start"]),d=p=>p==null||p===""?null:typeof p=="string"||typeof p=="number"?p:String(p),m=e.computed(()=>{var w;if(!l.group)return[];const p=new Map;a.value.forEach(x=>{var N;const k=x[l.group],_=d(k);p.has(_)||p.set(_,[]),(N=p.get(_))==null||N.push(x)});const h=[];(w=l.values)!=null&&w.length&&l.values.forEach(x=>{const k=d(x);h.push(k)});const g=new Set,y=x=>{const k=p.get(x)||[];if(!k.length)return null;const _=x===null?"group-null":`group-${String(x)}`,N=x===null?Yh:String(x);return g.add(x),{key:_,label:N,options:k}},b=[];return h.forEach(x=>{const k=y(x);k&&b.push(k)}),p.forEach((x,k)=>{if(g.has(k))return;const _=y(k);_&&b.push(_)}),b}),f=async()=>{try{const p=await fetch(`/api/suggest/${l.data}`).then(h=>h.json());a.value=(p==null?void 0:p.data)||p}catch(p){console.error(p)}};return e.watch(()=>l.modelValue,p=>{if(typeof p=="boolean"&&a.value.length===1){const h=s(a.value[0]);o[h]=p}else if(Array.isArray(p)){const h=new Set(p);a.value.forEach(g=>{if(!g.disabled){const y=s(g);o[y]=h.has(y)}})}},{immediate:!0}),e.watch(o,()=>{if(!a.value.length){n("update:modelValue",null);return}const p=Object.entries(o).filter(([,h])=>h).map(([h])=>h);n("update:modelValue",p.length===0?[]:p)},{deep:!0}),e.onMounted(()=>{if(l.data)f().then(()=>{if(typeof l.modelValue=="boolean"&&a.value.length===1){const p=s(a.value[0]);o[p]=l.modelValue}else if(Array.isArray(l.modelValue)){const p=new Set(l.modelValue);a.value.forEach(h=>{if(!h.disabled){const g=s(h);o[g]=p.has(g)}})}});else if(a.value=l.options,typeof l.modelValue=="boolean"&&a.value.length===1){const p=s(a.value[0]);o[p]=l.modelValue}else if(Array.isArray(l.modelValue)){const p=new Set(l.modelValue);a.value.forEach(h=>{if(!h.disabled){const g=s(h);o[g]=p.has(g)}})}}),(p,h)=>l.group?(e.openBlock(),e.createElementBlock("div",Gh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,g=>(e.openBlock(),e.createElementBlock("div",{key:g.key,class:"flex flex-col gap-2"},[g.label?(e.openBlock(),e.createElementBlock("span",Wh,e.toDisplayString(g.label),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["p-0 w-full gap-[12px]",u.value])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.options,y=>(e.openBlock(),e.createBlock(ea,{modelValue:o[s(y)],"onUpdate:modelValue":b=>o[s(y)]=b,value:s(y),class:e.normalizeClass(c(p.colSpan)),disabled:l.disabled||y.disabled,label:i(y),key:`${g.key}-${s(y)}`,icon:y==null?void 0:y.icon,imgUrl:y==null?void 0:y.imgUrl,option:y,view:p.view},null,8,["modelValue","onUpdate:modelValue","value","class","disabled","label","icon","imgUrl","option","view"]))),128))],2)]))),128))])):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["p-0 w-full gap-[10px]",u.value])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,g=>(e.openBlock(),e.createBlock(ea,{modelValue:o[s(g)],"onUpdate:modelValue":y=>o[s(g)]=y,value:s(g),class:e.normalizeClass(c(p.colSpan)),disabled:l.disabled||g.disabled,label:i(g),key:s(g),icon:g==null?void 0:g.icon,imgUrl:g==null?void 0:g.imgUrl,option:g,view:p.view},null,8,["modelValue","onUpdate:modelValue","value","class","disabled","label","icon","imgUrl","option","view"]))),128))],2))}}),Cs=_e(Xh,[["__scopeId","data-v-8e66207e"]]),Zh=["type","placeholder","disabled"],Qh=e.defineComponent({__name:"vs-input-date1",props:{style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""},mode:{default:"date"}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r;function n(d){return d?l.mode==="datetime"?(d.includes("T")?d:null)||d+(d.includes(" ")?"":"T00:00"):d==null?void 0:d.split(" ")[0]:null}const{inputClass:a}=gt(l.style),o=t,s=e.computed({get:()=>n(l.modelValue),set:d=>o("update:modelValue",d)}),i=e.computed(()=>l.mode==="datetime"?"datetime-local":l.mode),c=e.computed(()=>!!l.disabled),u=e.computed(()=>l.placeholder??"");return(d,m)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:i.value,"onUpdate:modelValue":m[0]||(m[0]=f=>s.value=f),placeholder:u.value,disabled:c.value,ref:"date",class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[d.modelValue?"":"text-opacity-50",e.unref(a)].join(" ")]),style:{border:"1px solid #CFD9E0"}},null,10,Zh)),[[e.vModelDynamic,s.value]])}}),Vs=async(r,t,l,n)=>{var a;try{const o=new FormData;return o.append("unique","true"),o.append("file",r),(a=await fetch(`/file/upload/uploads?id=${t||""}&form=${l||""}&table=${n||""}`,{method:"POST",body:o}).then(s=>s.json()))==null?void 0:a.result}catch(o){return se({type:"error",title:"Помилка!",message:"Сталась помилка під час завантаження файлу",position:"right-bottom"}),console.error("Сталась помилка завантаження файлу",o),null}},Jh=async r=>{try{return await fetch(`file/delete${r}`),!0}catch(t){return console.error(t),!1}},Ns=async r=>{try{const t=await fetch(`file/download/files/uploads${r}`),l=await t.arrayBuffer(),n=t.headers["content-type"],a=new TextDecoder("utf-8").decode(l),o=new Blob([a],{type:n}),s=document.createElement("a");s.setAttribute("download",r),s.href=window.URL.createObjectURL(o),s.click()}catch(t){console.error(t.message)}},eg={},tg={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"};function rg(r,t){return e.openBlock(),e.createElementBlock("svg",tg,t[0]||(t[0]=[e.createElementVNode("path",{d:"M5 12h14"},null,-1),e.createElementVNode("path",{d:"M12 5v14"},null,-1)]))}const el=_e(eg,[["render",rg]]),lg={},ng={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-file-text",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function ag(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",ng,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><line x1="9" y1="9" x2="10" y2="9"></line><line x1="9" y1="13" x2="15" y2="13"></line><line x1="9" y1="17" x2="15" y2="17"></line>',6)]))}const og=_e(lg,[["render",ag]]),sg={},ig={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-table",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function cg(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",ig,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"},null,-1),e.createElementVNode("line",{x1:"4",y1:"10",x2:"20",y2:"10"},null,-1),e.createElementVNode("line",{x1:"10",y1:"4",x2:"10",y2:"20"},null,-1)]))}const dg=_e(sg,[["render",cg]]),ug={},mg={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"};function pg(r,t){return e.openBlock(),e.createElementBlock("svg",mg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M9 9l1 0"></path><path d="M9 13l6 0"></path><path d="M9 17l6 0"></path>',6)]))}const vs=_e(ug,[["render",pg]]),fg={},hg={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-file-zip",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function gg(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",hg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M6 20.735a2 2 0 0 1 -1 -1.735v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-1"></path><path d="M11 17a2 2 0 0 1 2 2v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-2a2 2 0 0 1 2 -2z"></path><line x1="11" y1="5" x2="10" y2="5"></line><line x1="13" y1="7" x2="12" y2="7"></line><line x1="11" y1="9" x2="10" y2="9"></line><line x1="13" y1="11" x2="12" y2="11"></line><line x1="11" y1="13" x2="10" y2="13"></line><line x1="13" y1="15" x2="12" y2="15"></line>',9)]))}const yg=_e(fg,[["render",gg]]),bg={},kg={xmlns:"http://www.w3.org/2000/svg",class:"icon icon-tabler icon-tabler-file-code",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"};function xg(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("svg",kg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path><path d="M10 13l-1 2l1 2"></path><path d="M14 13l1 2l-1 2"></path>',5)]))}const wg=_e(bg,[["render",xg]]),_g=r=>{if(!r)return"";const t=r==null?void 0:r.split(".");return t[t.length-1]},Eg=r=>{const t=_g(r),l={imageFormat:["tiff","jpg","jpeg","png","svg","ico","webp"],sheetsFormat:["xls","csv","xlsx"],archivesFormat:["zip","rar"],textsFormat:["json","geojson","txt","yml","yaml","shp"],documentsFormat:["pdf"]};return l.imageFormat.includes(t)?"img":l.sheetsFormat.includes(t)?dg:l.textsFormat.includes(t)?wg:l.documentsFormat.includes(t)?og:l.archivesFormat.includes(t)?yg:vs},Cg={},Vg={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-trash"};function Ng(r,t){return e.openBlock(),e.createElementBlock("svg",Vg,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 7l16 0"></path><path d="M10 11l0 6"></path><path d="M14 11l0 6"></path><path d="M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12"></path><path d="M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3"></path>',6)]))}const Pl=_e(Cg,[["render",Ng]]),vg={},Bg={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-download"};function Sg(r,t){return e.openBlock(),e.createElementBlock("svg",Bg,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 11l5 5l5 -5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const Bs=_e(vg,[["render",Sg]]),Ag=["title"],Dg={class:"absolute hidden top-0 right-0 flex items-center gap-x-2 w-full h-full justify-center"},Mg=e.defineComponent({__name:"vs-input-file-list-item",props:e.mergeModels({format:{},multiple:{type:Boolean},max_size:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{value:{},valueModifiers:{},item:{},itemModifiers:{}}),emits:["update:value","update:item"],setup(r){const t=e.useModel(r,"value"),l=e.useModel(r,"item"),n=r;return(a,o)=>(e.openBlock(),e.createElementBlock("div",{title:l.value,class:"h-[120px] w-[120px] border text-gray-300 border-dashed border-[#CFD9E0] rounded-lg overflow-hidden relative item-file"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Eg)(l.value)),{src:l.value,alt:"file",class:"w-full h-full object-cover cursor-pointer",onClick:o[0]||(o[0]=s=>e.unref(Ns)(l.value))},null,8,["src"])),e.createElementVNode("div",Dg,[e.createElementVNode("button",{type:"button",onClick:o[1]||(o[1]=s=>{var i;e.unref(Jh)(l.value),t.value=n.multiple?(i=t.value)==null?void 0:i.filter(c=>c!==l.value):""}),class:"w-6 h-6 flex items-center justify-center text-gray-500 bg-gray-200 rounded-lg hover:text-red-500"},[e.createVNode(Pl,{class:"w-4 h-4"})]),e.createElementVNode("button",{type:"button",onClick:o[2]||(o[2]=s=>e.unref(Ns)(l.value)),class:"w-6 h-6 flex items-center justify-center text-gray-500 bg-gray-200 rounded-lg hover:text-blue-500"},[e.createVNode(Bs,{class:"w-4 h-4"})])])],8,Ag))}}),Ss=_e(Mg,[["__scopeId","data-v-286cdbc0"]]),Tg={class:"flex items-center gap-x-2"},Lg=["multiple","disabled"],$g={key:1,class:"flex items-center flex-wrap gap-2"},Fg={key:1,class:"loader"},Ig={key:1,class:"loader"},Og=e.defineComponent({__name:"vs-input-file",props:e.mergeModels({format:{},multiple:{type:Boolean},max_size:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(r,{emit:t}){const l=r,n=e.useModel(r,"modelValue"),a=t,o=e.ref(null),s=e.ref(!1),i=d=>Array.isArray(n.value)&&n.value[d]||"",c=d=>{if(l.max_size&&d.size>l.max_size*1024*1024){const m=(d.size/1048576).toFixed(2);return se({type:"error",title:"Помилка!",message:`Файл "${d.name}" занадто великий. Максимальний розмір: ${l.max_size} МБ, розмір файлу: ${m} МБ`,position:"right-bottom"}),!1}return!0},u=async d=>{const{files:m}=d.target;if(!m||m.length===0)return;const f=Array.from(m);if(l.max_size&&f.filter(p=>!c(p)).length>0){o.value&&(o.value.value="");return}s.value=!0;try{if(l.multiple){const p=Array.from(m).map(async g=>l.format&&!g.name.endsWith(l.format)?null:await Vs(g,"1","form","table")),h=(await Promise.all(p)).filter(g=>g!==null).map(g=>g==null?void 0:g.file_path).filter(Boolean);n.value=[...n.value||[],...h],a("change",n.value)}else{const p=m[0];if(l.format&&!p.name.endsWith(l.format))return;const h=await Vs(p,"1","form","table");n.value=h==null?void 0:h.file_path,a("change",n.value||"")}}finally{s.value=!1,o.value&&(o.value.value="")}};return(d,m)=>(e.openBlock(),e.createElementBlock("div",Tg,[e.createElementVNode("input",{class:"hidden",ref_key:"fileInput",ref:o,type:"file",multiple:d.multiple,onChange:u,disabled:s.value||d.disabled},null,40,Lg),!d.multiple&&n.value?(e.openBlock(),e.createBlock(Ss,{key:0,item:n.value,"onUpdate:item":m[0]||(m[0]=f=>n.value=f),value:n.value,"onUpdate:value":m[1]||(m[1]=f=>n.value=f)},null,8,["item","value"])):d.multiple?(e.openBlock(),e.createElementBlock("div",$g,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(f,p)=>(e.openBlock(),e.createBlock(Ss,{multiple:d.multiple,key:p,value:n.value,"onUpdate:value":m[2]||(m[2]=h=>n.value=h),item:i(p)},null,8,["multiple","value","item"]))),128)),e.createElementVNode("div",{onClick:m[3]||(m[3]=f=>{var p;return!d.disabled&&!s.value&&((p=o.value)==null?void 0:p.click())}),class:e.normalizeClass(["relative h-[120px] w-[120px] border text-gray-300 hover:text-blue-500 border-dashed border-[#CFD9E0] rounded-lg flex items-center justify-center transition-all duration-300",d.disabled||s.value?"opacity-50 cursor-not-allowed":"cursor-pointer hover:border-blue-500 hover:bg-blue-50"])},[s.value?(e.openBlock(),e.createElementBlock("div",Fg)):(e.openBlock(),e.createBlock(el,{key:0,class:"w-6 h-6"}))],2)])):e.createCommentVNode("",!0),d.multiple?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:2,onClick:m[4]||(m[4]=f=>{var p;return(p=o.value)==null?void 0:p.click()}),class:e.normalizeClass([d.disabled||s.value?"opacity-50 cursor-not-allowed":"cursor-pointer hover:border-blue-500","relative h-[120px] w-[120px] border text-gray-300 hover:text-blue-500 border-dashed border-gray-300 rounded-lg flex items-center justify-center cursor-pointer hover:border-blue-500 transition-all duration-300 hover:bg-blue-50"])},[s.value?(e.openBlock(),e.createElementBlock("div",Ig)):(e.openBlock(),e.createBlock(el,{key:0,class:"w-6 h-6"}))],2))]))}}),Pg=_e(Og,[["__scopeId","data-v-e613a523"]]),Rg={class:"max-w-[55vw]"},Ug={class:"text-sm font-semibold text-gray-800 truncate dark:text-neutral-200"},jg={class:"flex items-center text-xs text-gray-500 truncate dark:text-neutral-500"},zg={class:"px-[5px]"},Hg={class:""},Rl=e.defineComponent({__name:"vs-widget-file-info",props:{item:{default:null}},setup(r){const t=r,l=e.computed(()=>{try{return new Date(t.item.cdate).toLocaleDateString("uk-UA",{day:"2-digit",month:"long",year:"numeric"})}catch{return""}});function n(a){if(a<1024)return`${a} B`;const o=a/1024;return o<1024?`${o.toFixed(2)} KB`:`${(o/1024).toFixed(2)} MB`}return(a,o)=>{var s,i,c,u;return e.openBlock(),e.createElementBlock(e.Fragment,null,[o[1]||(o[1]=e.createStaticVNode('<div class="flex items-center justify-center h-[30px] w-[30px]"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="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-file"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z"></path></svg></div>',1)),e.createElementVNode("div",Rg,[e.createElementVNode("p",Ug,e.toDisplayString((s=a.item)==null?void 0:s.uploaded_name),1),e.createElementVNode("p",jg,[e.createElementVNode("span",null,e.toDisplayString((i=a.item)==null?void 0:i.username),1),e.withDirectives(e.createElementVNode("span",zg,"|",512),[[e.vShow,(c=a.item)==null?void 0:c.username]]),e.createElementVNode("span",null,e.toDisplayString(l.value),1),o[0]||(o[0]=e.createElementVNode("span",{class:"px-[5px]"},"|",-1)),e.createElementVNode("span",Hg,e.toDisplayString(n((u=a.item)==null?void 0:u.size)),1)])])],64)}}}),qg={class:"p-3 relative group flex items-center gap-x-3 border border-gray-200 bg-white rounded-md w-full"},Kg={key:0,class:"flex w-full gap-x-3 items-center"},Gg={key:1,class:"flex gap-x-3 w-full items-center"},Wg={key:2,class:"flex gap-x-3 w-full items-center"},Yg=["href"],Xg={key:3,class:"flex gap-x-3 w-full items-center"},Zg={class:"lg:absolute lg:top-3 lg:end-1 opacity-100"},Qg={class:"p-0.5 sm:p-1 inline-flex items-center gap-0.5 bg-white rounded-lg dark:bg-neutral-800 dark:border-neutral-700"},Jg={class:"inline-block"},ey={class:"inline-block"},ty=e.defineComponent({__name:"vs-widget-file-item",props:{item:{default:null},index:{default:0},prefix:{default:"/api"}},emits:["update","openModal","openLightbox"],setup(r,{emit:t}){const l=r,n=t;function a(d){return["pdf","json"].includes(d.ext)}function o(d){return["ppt","pptx","doc","docx","xls","xlsx"].includes(d.ext)}function s(d){const m=document.createElement("a");m.setAttribute("download",d==null?void 0:d.uploaded_name),m.href=d==null?void 0:d.file_path,m.click()}async function i(){try{await fetch(`${l.prefix}/widget/file/${l.item.entity_id}/${l.item.file_id}`),n("update")}catch(d){console.error(d)}}function c(){n("openModal",{title:"Ви впевнені?",message:"Ви впевнені, що хочете видалити цей файл?",confirmButtonText:"Так, я впевнена/ий",cancelButtonText:"Скасувати",confirm:i,updateListOnConfirm:!0})}function u(d){(l.item.ext==="jpg"||l.item.ext==="png")&&n("openLightbox",{item:l.item,index:d})}return(d,m)=>(e.openBlock(),e.createElementBlock("div",qg,[d.item.ext==="jpg"||d.item.ext==="png"?(e.openBlock(),e.createElementBlock("div",Kg,[e.createElementVNode("div",{class:"max-w-[55vw] cursor-pointer flex gap-x-3 w-full items-center",onClick:m[0]||(m[0]=f=>u(d.index))},[e.createVNode(Rl,{item:d.item},null,8,["item"])])])):a(d.item)?(e.openBlock(),e.createElementBlock("div",Gg,[e.createVNode(Rl,{item:d.item},null,8,["item"])])):o(d.item)?(e.openBlock(),e.createElementBlock("div",Wg,[e.createElementVNode("a",{href:`/api/file-preview?id=${d.item.file_id}`,target:"_blank",class:"flex gap-x-3 w-full items-center"},[e.createVNode(Rl,{item:d.item},null,8,["item"])],8,Yg)])):(e.openBlock(),e.createElementBlock("div",Xg,[e.createVNode(Rl,{item:d.item},null,8,["item"])])),e.createElementVNode("div",Zg,[e.createElementVNode("div",Qg,[e.createElementVNode("div",Jg,[e.createElementVNode("button",{class:"inline-flex p-[6px] justify-center items-center gap-x-2 rounded-lg border border-transparent text-gray-500 hover:bg-gray-100 disabled:opacity-50 disabled:pointer-events-none dark:text-neutral-400 focus:outline-none focus:bg-gray-100 dark:hover:bg-neutral-700 dark:focus:bg-neutral-700",onClick:m[1]||(m[1]=f=>s(d.item))},[e.createVNode(Bs,{height:"14",width:"14"})])]),m[3]||(m[3]=e.createElementVNode("div",{class:"w-px h-5 mx-1 bg-gray-200 dark:bg-neutral-700"},null,-1)),e.createElementVNode("div",ey,[e.createElementVNode("button",{type:"button",class:"size-[30px] inline-flex justify-center items-center gap-x-2 rounded-lg border border-transparent text-red-600 hover:bg-red-100 disabled:opacity-50 disabled:pointer-events-none focus:outline-none focus:bg-red-100 dark:text-red-500 dark:hover:bg-red-500/20 dark:focus:bg-red-500/20",onClick:m[2]||(m[2]=f=>c())},[e.createVNode(Pl,{height:"14",width:"14"})])])])])]))}}),ry={},ly={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-download"};function ny(r,t){return e.openBlock(),e.createElementBlock("svg",ly,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 11l5 5l5 -5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const ay=_e(ry,[["render",ny]]),oy={class:"flex flex-col widget-file xl:bg-white xl:rounded-xl dark:xl:bg-neutral-800 dark:xl:border-neutral-700 w-full"},sy={class:"flex w-full mb-[12px] items-center gap-x-2"},iy={class:"font-semibold text-gray-800 dark:text-neutral-200 text-[14px]"},cy={class1:"ml-auto"},dy={class:"py-1.5 px-4 inline-flex items-center gap-x-2 text-sm font-medium rounded-lg bg-gray-100 cursor-pointer hover:bg-gray-200 text-gray-800 shadow-2xs hover:bg-gray-50 focus:outline-hidden focus:bg-gray-50 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-800 dark:border-neutral-700 dark:text-white dark:hover:bg-neutral-700 dark:focus:bg-neutral-700"},uy={key:0,class:"py-4 mb-4 space-y-4 border-gray-200 border-y dark:border-neutral-700"},my={class:"relative"},py={key:1,class:"space-y-3 max-h-[300px] overflow-y-auto [&::-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"},fy={key:0},hy=e.defineComponent({__name:"vs-input-file-list",props:{id:{default:""},prefix:{default:"/api"},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},emits:["update"],setup(r,{emit:t}){const l=r,n=e.inject("form"),a=e.computed(()=>n.value.formId),o=e.ref(!1),s=e.ref(0),i=t,c=e.ref(!1),u=e.ref({}),d=e.ref([]),m=e.ref(""),f=e.computed(()=>Array.isArray(d.value)?d.value.filter(x=>x.ext==="jpg"||x.ext==="png").map(x=>x==null?void 0:x.file_path):[]),p=e.computed(()=>m.value===""?d.value:d.value.filter(x=>{var k;return(k=x==null?void 0:x.uploaded_name)==null?void 0:k.includes(m.value)})),h=x=>{const k=f.value.findIndex(_=>_===x.item.file_path);k!==-1&&(o.value=!0,s.value=k)},g=async()=>{try{const x=await fetch(`${l.prefix}/widget/file/${a.value}`).then(k=>k.json());d.value=x==null?void 0:x.rows}catch(x){console.error(x)}},y=async x=>{await Promise.all(Array.from(x.target.files).map(async k=>{const _=new FormData;_.append("file",k);try{const N=`${l.prefix}/widget/file/${a.value}`,V=await fetch(N,{method:"POST",body:_});return V.ok?(i("update","file-list"),k):(se({type:V.status>=400&&V.status<500?"warning":"error",title:"Error",message:`Error code: ${V.status}`}),null)}catch(N){return se({type:"error",title:"Error",message:N.message||"Unknown error"}),console.error(N),null}})),await g()},b=x=>{const k={...x};return x.cancel||(k.cancel=()=>{c.value=!1}),x.updateListOnConfirm&&(k.confirm=async()=>{await x.confirm(),c.value=!1,g()}),k},w=x=>{u.value=b(x),c.value=!0};return e.watch(a,x=>{x&&g()}),e.onMounted(()=>{a.value&&g()}),(x,k)=>{var V,P,$;const _=e.resolveComponent("Lightbox"),N=e.resolveComponent("MessageBox");return e.openBlock(),e.createElementBlock("div",oy,[e.createElementVNode("div",sy,[e.createElementVNode("h2",iy," Файлів: "+e.toDisplayString((V=d.value)==null?void 0:V.length),1),e.createElementVNode("div",cy,[e.createElementVNode("label",null,[e.createElementVNode("input",{type:"file",class:"hidden",onChange:k[0]||(k[0]=M=>y(M))},null,32),e.createElementVNode("div",dy,[e.createVNode(ay,{height:"16",width:"16"})])])])]),((P=d.value)==null?void 0:P.length)>4?(e.openBlock(),e.createElementBlock("div",uy,[e.createElementVNode("div",null,[e.createElementVNode("div",my,[k[8]||(k[8]=e.createElementVNode("div",{class:"absolute inset-y-0 start-0 flex items-center pointer-events-none z-[1] ps-3.5"},[e.createElementVNode("svg",{class:"flex-shrink-0 text-gray-500 size-4 dark:text-neutral-400",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"},[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"}),e.createElementVNode("path",{d:"m21 21-4.3-4.3"})])],-1)),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":k[1]||(k[1]=M=>m.value=M),class:"py-2 px-3 ps-10 pe-16 block w-full bg-gray-200 xl:bg-gray-100 rounded-lg text-sm focus:border-blue-500 h-[40px] focus:border-2 focus:outline-none disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:border-transparent dark:text-neutral-400 dark:placeholder:text-neutral-400 dark:focus:ring-neutral-600",placeholder:"Введіть назву файлу"},null,512),[[e.vModelText,m.value,void 0,{trim:!0}]])])])])):e.createCommentVNode("",!0),($=d.value)!=null&&$.length?(e.openBlock(),e.createElementBlock("div",py,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(M,D)=>(e.openBlock(),e.createBlock(ty,{key:D,prefix:x.prefix,item:M,index:D,onUpdate:k[2]||(k[2]=q=>x.$emit("update","file-list")),onOpenModal:k[3]||(k[3]=q=>w(q)),onOpenLightbox:k[4]||(k[4]=q=>h(q))},null,8,["prefix","item","index"]))),128)),p.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",fy,k[9]||(k[9]=[e.createElementVNode("p",{class:"text-sm text-gray-600 font-sm"}," Файлів з такою назвою не існує, введіть інше пошукове слово ",-1)])))])):e.createCommentVNode("",!0),e.createVNode(_,{modelValue:o.value,"onUpdate:modelValue":k[5]||(k[5]=M=>o.value=M),startIndex:s.value,"onUpdate:index":k[6]||(k[6]=M=>s.value=M),images:f.value},null,8,["modelValue","startIndex","images"]),e.createVNode(N,e.mergeProps({modelValue:c.value,"onUpdate:modelValue":k[7]||(k[7]=M=>c.value=M),onConfirm:u.value.confirm},u.value),null,16,["modelValue","onConfirm"])])}}}),gy={class:"flex items-center justify-between"},yy={class:"text-[16px] text-gray-900 font-medium"},by={class:"grid gap-3"},ky=e.defineComponent({__name:"vs-container-switcher",props:{title:{type:String,default:""},style:{type:Object,default:()=>({})},isOpen:{type:Boolean,default:!1}},setup(r){const t=r,l=e.ref(t.isOpen);return e.watch(()=>t.isOpen,n=>{l.value=n}),(n,a)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",gy,[e.createElementVNode("p",yy,e.toDisplayString(r.title),1),e.createVNode(ws,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=o=>l.value=o),style:e.normalizeStyle(r.style)},null,8,["modelValue","style"])]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",by,[e.renderSlot(n.$slots,"default",{},void 0,!0)],512),[[e.vShow,l.value]])]),_:3})]))}}),xy=_e(ky,[["__scopeId","data-v-90320b87"]]),wy={class:"text-[16px] text-gray-900 font-medium"},_y={class:"grid gap-3"},Ey=e.defineComponent({__name:"vs-container-accordion",props:{title:{type:String,default:""},style:{type:Object,default:()=>({})},isOpen:{type:Boolean,default:!1}},setup(r){const t=r,l=e.ref(t.isOpen);return e.watch(()=>t.isOpen,n=>{l.value=n}),(n,a)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{type:"button",onClick:a[0]||(a[0]=o=>l.value=!l.value),class:"flex items-center gap-2"},[e.createVNode(e.unref(wh),{class:e.normalizeClass(["h-4 w-4 duration-300",[l.value?"-rotate-180":""]])},null,8,["class"]),e.createElementVNode("span",wy,e.toDisplayString(r.title),1)]),e.createVNode(e.Transition,{name:"slide-fade"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",_y,[e.renderSlot(n.$slots,"default",{},void 0,!0)],512),[[e.vShow,l.value]])]),_:3})]))}}),Cy=_e(Ey,[["__scopeId","data-v-590eff11"]]),Vy={class:"flex items-center justify-between"},Ny=e.defineComponent({__name:"vs-container-default",props:{title:{type:String,default:""},style:{type:Object,default:()=>({})}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",Vy,[e.createElementVNode("p",null,e.toDisplayString(r.title),1)]),e.renderSlot(t.$slots,"default")]))}}),vy={switcher:xy,accordion:Cy,default:Ny},Et={Equal:"==",Inequal:"!=",Higer:">",HigerOrEqual:">=",Lower:"<",LowerOrEqual:"<=",Between:"between",StartWith:"^",EndWith:"$",Contain:"*",In:"in",NotIn:"not_in"},By=(r,t)=>String(r)===String(t),Sy=(r,t)=>String(r)!==String(t),Ay=(r,t)=>r>t,Dy=(r,t)=>r>=t,My=(r,t)=>r<t,Ty=(r,t)=>r<=t,Ly=(r,t)=>Array.isArray(t)&&t.length===2?r>=t[0]&&r<=t[1]:!1,$y=(r,t)=>String(r).startsWith(String(t)),Fy=(r,t)=>String(r).endsWith(String(t)),Iy=(r,t)=>String(r).includes(String(t)),Oy=(r,t)=>Array.isArray(t)?t.includes(r):!1,Py=(r,t)=>Array.isArray(t)?!t.includes(r):!0,As=(r,t)=>{if(!t)return!0;switch(t==null?void 0:t[1]){case Et.Equal:return By(r,t==null?void 0:t[2]);case Et.Inequal:return Sy(r,t==null?void 0:t[2]);case Et.Higer:return Ay(r,t==null?void 0:t[2]);case Et.HigerOrEqual:return Dy(r,t==null?void 0:t[2]);case Et.Lower:return My(r,t==null?void 0:t[2]);case Et.LowerOrEqual:return Ty(r,t==null?void 0:t[2]);case Et.Between:return Ly(r,t==null?void 0:t[2]);case Et.StartWith:return $y(r,t==null?void 0:t[2]);case Et.EndWith:return Fy(r,t==null?void 0:t[2]);case Et.Contain:return Iy(r,t==null?void 0:t[2]);case Et.In:return Oy(r,t==null?void 0:t[2]);case Et.NotIn:return Py(r,t==null?void 0:t[2]);default:return!0}},Ry=e.defineComponent({__name:"vs-input-container",props:{style:{type:Object,default:()=>({})},title:{type:String,default:""},view:{type:String,default:"default"},name:{type:String,default:""},schema:{type:Array,default:()=>[]}},setup(r){const t=r,l=e.inject("values",e.ref({})),n=e.inject("form"),a=e.computed(()=>{var i;return(i=t.schema)==null?void 0:i.filter(c=>{var f,p,h,g;const u=c==null?void 0:c.conditions;if(!u)return!0;const d=Array.isArray(u)?u[0]:u,m=t.name?((p=(f=l.value)==null?void 0:f[t.name])==null?void 0:p[d])??((h=l.value)==null?void 0:h[d]):(g=l.value)==null?void 0:g[d];return As(m,u)})}),o=e.computed(()=>vy[t.view]),s=e.computed(()=>{if(l.value||(l.value={}),!t.name)return l.value;const i=l.value[t.name];if(i)return i;const c={};return l.value={...l.value,[t.name]:c},c});return(i,c)=>{var u;return(u=r.schema)!=null&&u.length?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{key:0,title:r.title,style:e.normalizeStyle(r.style)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,d=>{var m,f;return e.openBlock(),e.createBlock(Ms,e.mergeProps({key:d.name},{ref_for:!0},d,{item:d,modelValue:s.value[d.name],"onUpdate:modelValue":p=>s.value[d.name]=p,style:r.style,error:(f=(m=e.unref(n))==null?void 0:m.errors)==null?void 0:f[d.name]}),null,16,["item","modelValue","onUpdate:modelValue","style","error"])}),128))]),_:1},8,["title","style"])):e.createCommentVNode("",!0)}}}),Uy=["aria-expanded","data-focus"],jy={key:0,class:"flex flex-wrap items-center gap-1 overflow-y-auto min-w-0 flex-1"},zy={class:"flex items-center min-w-0"},Hy=["title"],qy=["innerHTML"],Ky=["onClick"],Gy={class:"flex-1 min-w-[2px]"},Wy=["placeholder"],Yy=["title"],Xy=["innerHTML"],Zy={key:2,class:"flex-1 min-w-[2px]"},Qy=["placeholder"],Jy={class:"flex items-center shrink-0"},eb=["disabled"],tb=["disabled","title"],rb=["aria-disabled","onClick"],lb=["innerHTML"],nb={key:1,class:"px-3 py-2 text-center text-gray-500"},ab=["disabled"],ta=e.defineComponent({__name:"vs-input-select",props:{multiple:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},mode:{},defaultValue:{},search:{type:Boolean,default:!0},placeholder:{default:"Оберіть значення"},prefix:{default:"api"},host:{default:""},data:{default:""},options:{default:()=>[]},api:{default:null},maxHeight:{default:400},parent:{},set:{},slot:{},add:{},teleport:{default:"body"},auto:{default:0},style:{default:()=>({})},customClass:{default:""},modelValue:{},error:{default:null},name:{}},emits:["change","update:modelValue"],setup(r,{emit:t}){const l=r,n=t,a=e.computed(()=>l.multiple),o=e.computed(()=>l.disabled);gt(l.style);const s=e.computed({get:()=>l.modelValue,set:B=>n("update:modelValue",B)});!s.value&&l.defaultValue&&(s.value=l.defaultValue);const i=e.ref(null),c=e.ref(null),u=e.ref(null),d=e.ref(null),m=e.ref(!1),f=e.ref(!1),p=e.ref(null),h=e.ref([]),g=e.ref(-1),y=e.ref([]),b=e.ref(""),w=e.ref(null),x=e.ref("bottom"),k=e.ref({}),_=e.ref([]),N=e.computed(()=>{if(!_.value.length)return[];const B=h.value,T=new Map(B.map(W=>{var te;return[(te=W.id)==null?void 0:te.toString(),W]}));return _.value.map(W=>T.get(W==null?void 0:W.toString())).filter(W=>!!W)}),V=e.computed(()=>l.placeholder||"Select..."),P=e.computed(()=>A(p.value));e.computed(()=>a.value?!_.value.length&&b.value==="":!P.value&&b.value==="");const $=e.computed(()=>o.value?!1:a.value?_.value.length>0:!!s.value),M=B=>{var T;return a.value?_.value.some(W=>(W==null?void 0:W.toString())===(B==null?void 0:B.toString())):((T=s.value)==null?void 0:T.toString())===(B==null?void 0:B.toString())},D=e.computed(()=>{let B=h.value??[];if(!l.data&&b.value.trim()!==""){const T=b.value.toLowerCase();B=B.filter(W=>{var we,Oe;const te=A(W).toLowerCase(),ye=((Oe=(we=W.text)==null?void 0:we.toLowerCase)==null?void 0:Oe.call(we))||"";return te.includes(T)||ye.includes(T)})}if(a.value&&_.value.length){const T=new Set(_.value.map(W=>W==null?void 0:W.toString()));B=B.filter(W=>{var te;return!T.has((te=W.id)==null?void 0:te.toString())})}return B}),q=e.inject("values"),Q=/\{\{\s*([^}]+?)\s*\}\}/g,R=B=>(B?String(B):"").replace(/<[^>]*>/g,"").trim(),I=e.computed(()=>l.slot??(l==null?void 0:l.optionTemplate)??""),F=B=>{if(!B)return"";const T=I.value;return T?T.replace(Q,(W,te)=>{const ye=te.trim(),we=B[ye];return we!=null?String(we):""}):B.text??""},A=B=>{if(!B)return"";if(!I.value)return B.text??"";const T=F(B);return R(T)||B.text||""},z=B=>{l.set&&(q!=null&&q.value)&&Object.entries(l.set).forEach(([T,W])=>{if(!T)return;const te=B?B[W]:null;q.value[T]=te??null})},ee=e.computed(()=>{var B,T;return l.parent?((T=(B=q==null?void 0:q.value)==null?void 0:B[l.parent])==null?void 0:T.toString())??null:null}),pe=async B=>{var T;if(!l.data){let W=l.options??[];if(B!=null&&B.trim()){const te=B.toLowerCase();W=W.filter(ye=>{var oe,ft;const we=A(ye).toLowerCase(),Oe=((ft=(oe=ye.text)==null?void 0:oe.toLowerCase)==null?void 0:ft.call(oe))||"";return we.includes(te)||Oe.includes(te)})}return W}try{const W=l.host??"",te=l.prefix??"api",ye=l.api??`/${te}/suggest/${l.data}`,we=`${W}${ye}`,Oe=new URLSearchParams;return Oe.set("json","1"),B&&Oe.set("key",B),ee.value!==void 0&&ee.value!==null&&ee.value!==""&&Oe.set("parent",ee.value),((T=await fetch(`${we}?${Oe.toString()}`).then(oe=>oe.json()))==null?void 0:T.data)??[]}catch{return[]}},Ne=async()=>{l.data?h.value=await pe(b.value):h.value=l.options?[...l.options]:[]},Xe=async B=>{var W,te,ye;if(B==null)return null;const T=(W=h.value)==null?void 0:W.find(we=>{var Oe;return((Oe=we==null?void 0:we.id)==null?void 0:Oe.toString())===String(B)});if(T)return T;if(l.data)try{const we=l.host??"",Oe=l.prefix??"api",oe=l.api??`/${Oe}/suggest/${l.data}`,ft=`${we}${oe}`,Dt=new URLSearchParams;return Dt.set("json","1"),Dt.set("val",String(B)),ee.value!==void 0&&ee.value!==null&&ee.value!==""&&Dt.set("parent",ee.value),((ye=((te=await fetch(`${ft}?${Dt.toString()}`).then(_r=>_r.json()))==null?void 0:te.data)??[])==null?void 0:ye[0])??null}catch{return null}return null},Jt=async B=>{const T=new Set(h.value.map(te=>{var ye;return(ye=te.id)==null?void 0:ye.toString()})),W=B.filter(te=>!T.has(te==null?void 0:te.toString()));W.length&&await W.reduce(async(te,ye)=>{await te;const we=await Xe(ye);we&&h.value.push(we)},Promise.resolve())},Re=async()=>{o.value||(m.value=!0,await Ne(),await e.nextTick(()=>{var B;re(),(B=w.value)==null||B.focus(),D.value.length?g.value=0:g.value=-1}))},Ze=()=>{m.value=!1,g.value=-1},At=async B=>{o.value||(m.value?Ze():await Re())},xt=async()=>{var B;m.value?(B=w.value)==null||B.focus():await Re()},Nt=()=>{a.value?(_.value=[],s.value=[],n("change",[])):(p.value=null,s.value=null,n("change",null)),z(null),b.value="",e.nextTick(()=>{var B;return(B=w.value)==null?void 0:B.focus()})},jt=B=>{a.value&&(_.value=_.value.filter(T=>(T==null?void 0:T.toString())!==(B==null?void 0:B.toString())),s.value=[..._.value],n("change",s.value),e.nextTick(()=>{var T;return(T=w.value)==null?void 0:T.focus()}))},ot=B=>{a.value?(M(B.id)||(_.value=[..._.value,B.id],s.value=[..._.value],n("change",s.value)),b.value="",e.nextTick(()=>{var T;(T=w.value)==null||T.focus(),g.value=Math.min(g.value,D.value.length-1)}),z(null)):(p.value=B,s.value=B.id,n("change",s.value),b.value="",Ze(),z(B))},ct=B=>{M(B.id)||ot(B)},U=(B,T)=>{if(!B||!T)return;const W=B.offsetTop,te=W+B.offsetHeight,ye=T.scrollTop,we=ye+T.clientHeight;let Oe=T.scrollTop;W<ye?Oe=W-80:te>we&&(Oe=te-T.clientHeight+4);const oe=T;oe.scrollTop=Oe},Y=B=>{let T=B.parentElement;for(;T;){if(T.classList.contains("ui-dialog__content"))return T;const W=window.getComputedStyle(T),te=W.overflow+W.overflowY+W.overflowX;if(te.includes("auto")||te.includes("scroll")||T===document.body||T===document.documentElement)return T;T=T.parentElement}return document.body},re=()=>{if(!c.value)return;const B=c.value.getBoundingClientRect(),T=window.innerHeight||document.documentElement.clientHeight,W=window.innerWidth||document.documentElement.clientWidth,te=8,ye=8,we=l.maxHeight||300,Oe=T-B.bottom-ye-te,oe=B.top-ye-te,ft=Oe>=oe,Dt=Math.max(W-te*2,0);let{width:_r}=B;Dt>0&&_r>Dt&&(_r=Dt);let{left:_l}=B;_l+_r+te>W&&(_l=W-_r-te),_l=Math.max(_l,te);const XA=Math.min(we,Math.max(ft?Oe:oe,50));x.value=ft?"bottom":"top",k.value={position:"fixed",left:`${_l}px`,width:`${_r}px`,minWidth:"300px",maxHeight:`${XA}px`,transform:ft?"none":"translateY(-100%)",top:ft?`${B.bottom+ye}px`:`${B.top-ye}px`}},le=async B=>{o.value||!m.value&&(B.key==="ArrowDown"||B.key==="ArrowUp")&&(B.preventDefault(),await Re())},ue=B=>{var W;if(!m.value)return;const{key:T}=B;if(T==="ArrowDown")B.preventDefault(),g.value+1<D.value.length&&(g.value+=1,U(y.value[g.value],u.value));else if(T==="ArrowUp")B.preventDefault(),g.value>0&&(g.value-=1,U(y.value[g.value],u.value));else if(T==="Enter"){B.preventDefault();const te=D.value[g.value];te&&ot(te),(W=w.value)==null||W.blur()}else T==="Escape"?(B.preventDefault(),Ze()):T==="Backspace"?a.value&&b.value===""&&_.value.length&&(_.value=_.value.slice(0,-1),s.value=[..._.value],n("change",s.value)):T==="Home"?(g.value=0,U(y.value[0],u.value)):T==="End"?(g.value=D.value.length-1,U(y.value[g.value],u.value)):T==="Tab"&&Ze()},Te=()=>{o.value||(f.value=!0)},C=()=>{f.value=!1,b.value=""},v=B=>{B.key==="Escape"&&m.value&&Ze()},H=B=>{var W,te;const T=B.target;(W=i.value)!=null&&W.contains(T)||(te=d.value)!=null&&te.contains(T)||Ze()},ne=B=>{m.value&&u.value&&!u.value.contains(B.target)&&re()},$e=()=>{m.value&&re()},Fe=()=>{m.value&&re()};e.watch(()=>l.options,B=>{B!=null&&B.length&&(h.value=[...B],be())},{immediate:!0});async function be(){if(a.value)Array.isArray(s.value)?_.value=[...s.value]:(_.value=s.value==null?[]:[s.value],s.value=[..._.value]),l.data&&_.value.length&&(await Jt(_.value),await e.nextTick());else{if(Array.isArray(s.value)){const B=s.value[0]??null;s.value=B??null}s.value!=null&&(p.value=await Xe(s.value)),z(p.value??null)}}e.watch(s,()=>{be()}),e.onMounted(async()=>{var B;addEventListener("keydown",v),addEventListener("scroll",ne,!0),addEventListener("resize",$e),document.addEventListener("click",H,!0),c.value&&Y(c.value).addEventListener("scroll",Fe,!0),(B=l.options)!=null&&B.length&&!l.data?h.value=[...l.options]:l.data&&(h.value=await pe("")),await be(),Z.value=!1}),e.onUnmounted(()=>{removeEventListener("keydown",v),removeEventListener("scroll",ne,!0),removeEventListener("resize",$e),document.removeEventListener("click",H,!0),c.value&&Y(c.value).removeEventListener("scroll",Fe,!0)});const O=e.ref(!1),K=e.ref({}),ke=e.ref([]),Se=e.ref(null);async function E(){var W,te;if(!((W=l.add)!=null&&W.token)||Se!=null&&Se.value.validate())return;const B=l.add.api??`/api/table/${l.add.token}`,{id:T}=await fetch(B,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(K.value)}).then(ye=>ye.json());if(!((te=l.options)!=null&&te.length)&&l.data){const{data:ye}=await fetch(`${l.api??`/api/suggest/${l.data}`}?val=${T}`).then(we=>we.json());p.value=ye[0],h.value.push(ye[0]),s.value=T}O.value=!1,se({title:"Success!",message:"Object created."})}async function S(){if(!l.add)return null;const B=await fetch(`/api/template/form/${l.add.form}`).then(T=>T.json());return ke.value=B.schema,O.value=!0,null}function j(B,T=200){let W;return(...te)=>{W&&clearTimeout(W),W=window.setTimeout(()=>B(...te),T)}}const G=j(async B=>{h.value=await pe(B)},200);e.watch(b,B=>{l.data&&G(B.trim())}),e.watch(()=>l.options,B=>{!l.data&&(B!=null&&B.length)&&(h.value=[...B],be())},{immediate:!0}),e.watch(()=>l.parent??l.parentValue,()=>{l.data&&Ne()});const Z=e.ref(!0);return e.watch(ee,async()=>{if(l.data&&(Z.value||(a.value?(_.value=[],s.value=[],n("change",[])):(p.value=null,s.value=null,n("change",null))),await Ne(),l.auto===1&&ee.value&&h.value.length>0)){const B=h.value[0];B&&ot(B)}}),(B,T)=>{var W,te,ye,we,Oe;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Gt),{visible:O.value,"onUpdate:visible":T[1]||(T[1]=oe=>O.value=oe),title:"Додати",buttonText:"Додати",onDone:E,teleport:B.teleport},{default:e.withCtx(()=>[e.createVNode(He,{schema:ke.value,modelValue:K.value,"onUpdate:modelValue":T[0]||(T[0]=oe=>K.value=oe),ref_key:"addForm",ref:Se},null,8,["schema","modelValue"])]),_:1},8,["visible","teleport"]),e.createElementVNode("div",{class:"flex gap-1 w-full",ref_key:"selectRoot",ref:i,onClick:T[5]||(T[5]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",{class:e.normalizeClass(["relative w-full font-sans",l.customClass])},[T[10]||(T[10]=e.createElementVNode("span",{id:"react-select-live-region",class:"sr-only"},null,-1)),T[11]||(T[11]=e.createElementVNode("span",{"aria-live":"polite","aria-atomic":"false","aria-relevant":"additions text",role:"log",class:"sr-only"},null,-1)),e.createElementVNode("div",{class:e.normalizeClass(["flex min-h-[38px] items-center justify-between rounded border transition-colors bg-white","border-gray-300 hover:border-gray-400",m.value||f.value?"border-blue-500 ring-1 ring-blue-500":"",o.value?"bg-gray-100 text-gray-400 cursor-not-allowed hover:border-gray-300":""]),role:"combobox","aria-expanded":m.value,"aria-haspopup":"listbox",onKeydown:le,onClick:xt,"data-focus":m.value||f.value?"true":"false"},[e.createElementVNode("div",{class:"flex flex-1 items-center gap-1 py-0.5 pl-2 pr-0 overflow-hidden h-full",ref_key:"triggerRef",ref:c},[a.value?(e.openBlock(),e.createElementBlock("div",jy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,oe=>(e.openBlock(),e.createElementBlock("div",{class:"flex min-w-0 bg-[#e6e6e6] rounded-sm m-0.5 box-border max-w-full",key:oe.id},[e.createElementVNode("div",zy,[oe!=null&&oe.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"w-[16px] h-[16px] rounded-md block ml-1.5 flex-shrink-0",style:e.normalizeStyle({backgroundColor:oe==null?void 0:oe.color})},null,4)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"truncate text-gray-900 overflow-hidden max-w-[200px] px-0.5 py-[2px] pl-1.5",title:A(oe)},[I.value?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:F(oe)},null,8,qy)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(oe.text),1)],64))],8,Hy)]),e.createElementVNode("div",{role:"button",class:"flex items-center rounded-sm px-1 box-border hover:bg-[#ffbdad] hover:text-[#de350b] flex-shrink-0",onClick:e.withModifiers(ft=>jt(oe.id),["stop"])},T[6]||(T[6]=[e.createElementVNode("svg",{height:"14",width:"14",viewBox:"0 0 20 20","aria-hidden":"true",focusable:"false",class:"inline-block fill-current stroke-current leading-none stroke-0"},[e.createElementVNode("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"})],-1)]),8,Ky)]))),128)),e.createElementVNode("div",Gy,[!o.value&&B.search?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:w,class:"w-full bg-transparent outline-none border-0 m-0 p-0 text-gray-900",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",type:"text",tabindex:"0","aria-autocomplete":"list",placeholder:_.value.length?" ":V.value,"onUpdate:modelValue":T[2]||(T[2]=oe=>b.value=oe),onFocus:Te,onBlur:C,onKeydown:ue},null,40,Wy)),[[e.vModelText,b.value]]):e.createCommentVNode("",!0)])])):!a.value&&!f.value&&P.value&&b.value===""?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["truncate text-gray-900"]),title:P.value},[(W=p.value)!=null&&W.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"w-[14px] h-[14px] rounded-md block mr-1 mt-1 absolute",style:e.normalizeStyle({backgroundColor:(te=p.value)==null?void 0:te.color})},null,4)):e.createCommentVNode("",!0),I.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass({"pl-5":(ye=p.value)==null?void 0:ye.color}),innerHTML:F(p.value)},null,10,Xy)):(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass({"pl-5":(we=p.value)==null?void 0:we.color})},e.toDisplayString((Oe=p.value)==null?void 0:Oe.text),3))],8,Yy)):e.createCommentVNode("",!0),a.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Zy,[!o.value&&B.search?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:w,class:"w-full bg-transparent outline-none border-0 m-0 p-0 text-gray-900",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",type:"text",tabindex:"0","aria-autocomplete":"list",placeholder:P.value?" ":V.value,"onUpdate:modelValue":T[3]||(T[3]=oe=>b.value=oe),onFocus:Te,onBlur:C,onKeydown:ue},null,40,Qy)),[[e.vModelText,b.value]]):e.createCommentVNode("",!0)]))],512),e.createElementVNode("div",Jy,[$.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50","aria-hidden":"true",disabled:o.value,onClick:e.withModifiers(Nt,["stop"])},T[7]||(T[7]=[e.createElementVNode("svg",{height:"20",width:"20",viewBox:"0 0 20 20",class:"fill-current"},[e.createElementVNode("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"})],-1)]),8,eb)):e.createCommentVNode("",!0),T[9]||(T[9]=e.createElementVNode("div",{class:"self-stretch w-px bg-[#ccc] my-[1px]"},null,-1)),e.createElementVNode("button",{type:"button",class:"px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50","aria-hidden":"true",disabled:o.value,onClick:T[4]||(T[4]=e.withModifiers(oe=>At(),["stop"])),title:m.value?"Закрити список":"Відкрити список"},T[8]||(T[8]=[e.createElementVNode("svg",{height:"20",width:"20",viewBox:"0 0 20 20",class:"fill-current"},[e.createElementVNode("path",{d:"M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"})],-1)]),8,tb)])],42,Uy),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[m.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:d,class:e.normalizeClass(["fixed z-[3000] rounded bg-white shadow-[0_0_0_1px_rgba(0,0,0,0.1),0_4px_11px_rgba(0,0,0,0.1)]"]),style:e.normalizeStyle(k.value),role:"listbox"},[e.createElementVNode("div",{class:"overflow-y-auto py-1",style:e.normalizeStyle({maxHeight:k.value.maxHeight||"300px"}),ref_key:"listRef",ref:u},[D.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(D.value,(oe,ft)=>(e.openBlock(),e.createElementBlock("div",{key:oe.id,ref_for:!0,ref:Dt=>y.value[ft]=Dt,class:e.normalizeClass(["flex px-3 py-2 cursor-default select-none text-gray-900 ",M(oe.id)?"bg-blue-500 text-white":"bg-white hover:bg-blue-100",g.value===ft&&!M(oe.id)?"bg-blue-100":""]),"aria-disabled":M(oe.id)?"true":"false",role:"option",tabindex:"-1",onClick:Dt=>ct(oe)},[oe!=null&&oe.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"w-[11px] h-[11px] rounded-full block mr-1 mt-1.5",style:e.normalizeStyle({backgroundColor:oe==null?void 0:oe.color})},null,4)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["leading-[19px]",g.value===oe.id?"text-white":"",(g.value,"")])},[I.value?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:F(oe)},null,8,lb)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(oe.text),1)],64))],2)],10,rb))),128)):(e.openBlock(),e.createElementBlock("div",nb," No options "))],4)],4)):e.createCommentVNode("",!0)]))],2),l.add?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:S,class:"bg-white hover:bg-gray-100 text-sm text-gray-900 py-[10px] px-3 border border-stone-200 rounded-md h-[38px] flex items-center gap-2",disabled:o.value,type:"button"},[e.createVNode(el,{width:"16",height:"16"}),T[12]||(T[12]=e.createElementVNode("span",null,"Додати",-1))],8,ab)):e.createCommentVNode("",!0)],512)],64)}}}),ob=["placeholder","disabled"],sb=e.defineComponent({__name:"vs-input-textarea",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");return(s,i)=>e.withDirectives((e.openBlock(),e.createElementBlock("textarea",{"onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),placeholder:o.value,disabled:a.value,row:"2",class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] h-auto bg-white",[e.unref(l)]]),style:{border:"1px solid #CFD9E0"}},null,10,ob)),[[e.vModelText,n.value]])}}),ib={},cb={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-search stroke-gray-500 transition-all"};function db(r,t){return e.openBlock(),e.createElementBlock("svg",cb,t[0]||(t[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 ub=_e(ib,[["render",db]]),mb={},pb={class:"flex-shrink-0 mt-0.5 size-3.5",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"};function fb(r,t){return e.openBlock(),e.createElementBlock("svg",pb,t[0]||(t[0]=[e.createElementVNode("path",{d:"m3 16 4 4 4-4"},null,-1),e.createElementVNode("path",{d:"M7 20V4"},null,-1),e.createElementVNode("path",{d:"m21 8-4-4-4 4"},null,-1),e.createElementVNode("path",{d:"M17 4v16"},null,-1)]))}const hb=_e(mb,[["render",fb]]),gb={},yb={xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"};function bb(r,t){return e.openBlock(),e.createElementBlock("svg",yb,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 9l5 -5l5 5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const kb=_e(gb,[["render",bb]]),xb={},wb={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"};function _b(r,t){return e.openBlock(),e.createElementBlock("svg",wb,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"},null,-1),e.createElementVNode("path",{d:"M7 11l5 5l5 -5"},null,-1),e.createElementVNode("path",{d:"M12 4l0 12"},null,-1)]))}const Eb=_e(xb,[["render",_b]]),Cb={},Vb={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"};function Nb(r,t){return e.openBlock(),e.createElementBlock("svg",Vb,t[0]||(t[0]=[e.createStaticVNode('<circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle>',6)]))}const Ds=_e(Cb,[["render",Nb]]),vb={},Bb={viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function Sb(r,t){return e.openBlock(),e.createElementBlock("svg",Bb,t[0]||(t[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 Ab=_e(vb,[["render",Sb]]),Db={},Mb={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"};function Tb(r,t){return e.openBlock(),e.createElementBlock("svg",Mb,t[0]||(t[0]=[e.createElementVNode("path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"},null,-1)]))}const Lb=_e(Db,[["render",Tb]]),$b={class:"vs-datatable border rounded-xl w-full flex-grow"},Fb={class:"flex items-center npm gap-[16px] justify-between p-[20px] pb-[16px]"},Ib={class:"relative w-full"},Ob={class:"table-wrapper flex gap-2"},Pb={class:"vs-popover inline-block text-slate-700"},Rb={class:"text-center"},Ub={class:""},jb={class:"py-1 px-0 w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg focus:outline-none focus:bg-stone-100 dark:bg-neutral-900 dark:text-neutral-200 dark:focus:bg-neutral-800 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"},zb={class:"flex flex-col p-[1px] gap-[2px] w-[140px]"},Hb={class:"text-sm items-center text-gray-800 flex gap-1"},qb={class:"w-full overflow-x-auto"},Kb={class:"w-full table-auto caption-bottom text-sm"},Gb={class:"[&_tr]:border-b"},Wb={class:"border-b data-[state=selected]:bg-muted bg-slate-50/50 dark:bg-slate-700/50 hover:bg-slate-50/80 dark:hover:bg-slate-700/80 transition-colors"},Yb={class:"h-10 px-2 align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] w-12 text-center"},Xb={key:0,colspan:"100%",class:"text-center"},Zb={class:"w-full"},Qb={class:"p-5 min-h-[200px] flex flex-col justify-center items-center text-center"},Jb=["onDragstart","onDragover","onDrop"],e1={class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] text-center"},t1={class:"flex items-center justify-center"},r1={key:0,class:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors"},l1={key:0},n1=["src"],a1={key:1,class:"rounded-md max-w-[45px] w-[45px] max-h-[45px] h-[45px] bg-gray-200 flex items-center justify-center"},o1=["innerHTML"],s1={key:2,class:"line-clamp-2 rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors"},i1={key:3,class:"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors"},c1={class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]"},d1={class:"flex items-center justify-center gap-2"},u1=["onClick"],m1=["onClick"],p1={class:"vs-form__head mr-5 mt-3 flex items-center justify-end sticky top-0 left-0 z-[60] bg-white"},f1=e.defineComponent({__name:"vs-input-datatable",props:e.mergeModels({colModel:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{default:[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.ref({}),a=e.ref(""),o=e.computed(()=>{if(!a.value)return l.value??[];const I=a.value.toLowerCase();return l.value.filter(F=>{var A;return(A=t.colModel)==null?void 0:A.some(z=>{const ee=F[z.key];return ee?Array.isArray(ee)?ee.join(", ").toLowerCase().includes(I):String(ee).toLowerCase().includes(I):!1})})}),s=e.ref(null),i=e.ref(null),c=e.ref(!1),u=e.ref(null),d=e.ref({top:0,left:0}),m=I=>{s.value=I},f=I=>{i.value=I},p=I=>{if(s.value===null||s.value===I){s.value=null,i.value=null;return}const F=[...l.value],[A]=F.splice(s.value,1);F.splice(I,0,A),l.value=F,s.value=null,i.value=null},h=I=>{const F=I.currentTarget.getBoundingClientRect();d.value={top:F.bottom+window.scrollY,left:F.left+window.scrollX},c.value=!c.value},g=()=>{u.value&&u.value.click()},y=I=>{const F=[".jpg",".jpeg",".png",".gif",".bmp",".webp",".svg",".ico",".tiff",".tif"],A=I.toLowerCase();return F.some(z=>A.endsWith(z))},b=I=>{var z;const F=(z=I.target.files)==null?void 0:z[0];if(!F)return;const A=new FileReader;A.onload=ee=>{var pe;try{const Ne=(pe=ee.target)==null?void 0:pe.result;if(typeof Ne=="string"){const Xe=JSON.parse(Ne);Array.isArray(Xe)&&l.value.push(...Xe)}}catch(Ne){console.error("Error parsing file:",Ne)}},A.readAsText(F)},w=()=>{const I=JSON.stringify(l.value,null,2),F=new Blob([I],{type:"application/json"}),A=URL.createObjectURL(F),z=document.createElement("a");z.href=A,z.download="data.json",z.click(),URL.revokeObjectURL(A)};e.onMounted(async()=>{var F;const I=(F=t.colModel)==null?void 0:F.filter(A=>A.data);I!=null&&I.length&&Promise.all(I.map(async A=>{const z=await(await fetch(`/api/suggest/${A.data}`)).json();n.value[A.key]=z.data}))});const x=e.ref(""),k=e.ref(!1);let _="edit",N=0;const V=e.ref({}),P=e.ref({});async function $(){x.value="Додати",k.value=!0,_="add",V.value={}}function M(I,F){var z;const A=F.key||F.name;return n.value[A]&&I[A]?((z=n.value[A].find(ee=>ee.id.toString()===I[A].toString()))==null?void 0:z.text)??I[A]:I[A]||"-"}async function D(I,F){x.value="Редагувати",k.value=!0,_="edit",N=F,V.value={...I}}function q(){const I=P.value.validate();if(I){se({type:"warning",title:"Помилка валідації",message:Object.entries(I).map(([F,A])=>`${F}: ${A}`).join(`
|
|
238
238
|
`)});return}_==="add"?Array.isArray(l.value)?l.value=[...l.value,V.value]:l.value=[V.value]:l.value=l.value.map((F,A)=>A===N?V.value:F),k.value=!1}function Q(I){l.value=l.value.filter((F,A)=>A!==I)}function R(){k.value=!1}return(I,F)=>(e.openBlock(),e.createElementBlock("div",$b,[e.createElementVNode("div",Fb,[e.createElementVNode("div",Ib,[e.createVNode(ub,{width:"14",height:"14",class:"absolute left-3 top-1/2 transform -translate-y-1/2 text-stone-500"}),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":F[0]||(F[0]=A=>a.value=A),placeholder:"Пошук",class:"py-2 px-3 pl-10 w-full bg-gray-100 h-[36px] rounded-[8px] text-[15px] leading-[18px] focus:border-1 text-stone-800 placeholder:text-[#6B7280] focus:outline-blue-500 focus:outline-2"},null,512),[[e.vModelText,a.value]])]),e.createElementVNode("div",Ob,[e.createElementVNode("input",{ref_key:"fileInput",ref:u,onChange:b,class:"hidden",accept:".json",type:"file"},null,544),e.createElementVNode("div",Pb,[e.createElementVNode("div",Rb,[e.createElementVNode("div",Ub,[e.createElementVNode("button",{onClick:h,class:"bg-white hover:bg-gray-100 font-semibold text-[15px] leadig-[18.5px] py-[10px] px-[12px] border border-[#E5E7EB] rounded-[8px] h-[38px] max-h-[38px] gap-[8px] flex items-center"},[e.createVNode(hb,{height:"16",width:"16"})])])])])]),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[c.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"text-slate-700 vsTailwind vs-popover__content bottom",style:e.normalizeStyle([{width:"fit-content","z-index":"10002",position:"fixed"},{position:"absolute",top:d.value.top+"px",left:d.value.left+"px"}])},[e.createElementVNode("div",jb,[e.createElementVNode("div",zb,[e.createElementVNode("button",{onClick:g,class:"text-slate-700 flex items-center gap-1 px-3 py-2 rounded-md cursor-pointer group hover:bg-gray-100"},[e.createVNode(kb,{class:"text-black",width:"14",height:"14"}),F[4]||(F[4]=e.createTextVNode(" Імпортувати ",-1))]),e.createElementVNode("button",{onClick:w,class:"text-slate-700 flex items-center px-3 py-2 rounded-md cursor-pointer group hover:bg-gray-100"},[e.createElementVNode("span",Hb,[e.createVNode(Eb,{class:"text-black",width:"14",height:"14"}),F[5]||(F[5]=e.createTextVNode(" Експортувати ",-1))])])])])],4)):e.createCommentVNode("",!0)])),e.createElementVNode("button",{onClick:$,class:"text-slate-700 bg-white hover:bg-gray-100 font-semibold text-[15px] leadig-[18.5px] py-[10px] px-[12px] border border-[#E5E7EB] rounded-[8px] h-[38px] max-h-[38px] gap-[8px] flex items-center"},[e.createVNode(el),F[6]||(F[6]=e.createTextVNode(" Додати ",-1))])]),e.createElementVNode("div",qb,[e.createElementVNode("table",Kb,[e.createElementVNode("thead",Gb,[e.createElementVNode("tr",Wb,[e.createElementVNode("th",Yb,[e.createVNode(Ds,{width:"24",height:"24",class:"w-4 h-4 mx-auto text-slate-400 dark:text-slate-500"})]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(I.colModel,A=>(e.openBlock(),e.createElementBlock("th",{key:A.key,class:"h-10 px-2 text-left align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] font-semibold text-slate-700 dark:text-slate-300 min-w-[150px]"},e.toDisplayString(A.ua||A.label),1))),128)),F[7]||(F[7]=e.createElementVNode("th",{class:"h-10 px-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] font-semibold text-slate-700 dark:text-slate-300 text-center"}," Дії ",-1))])]),e.createElementVNode("tbody",{class:e.normalizeClass({"[&_tr:last-child]:border-0":!i.value})},[o.value.length===0?(e.openBlock(),e.createElementBlock("td",Xb,[e.createElementVNode("div",Zb,[e.createElementVNode("div",Qb,[e.createVNode(Ab,{class:"w-48 mx-auto"}),F[8]||(F[8]=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),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(A,z)=>(e.openBlock(),e.createElementBlock("tr",{key:A.id,class:e.normalizeClass(["border-b data-[state=selected]:bg-muted transition-all duration-200 hover:bg-slate-50/60 dark:hover:bg-slate-700/60 cursor-move",{"opacity-50":s.value===z,"border-t-2 border-b-2 border-blue-500 bg-blue-50 dark:bg-blue-900/20":i.value===z}]),draggable:"true",onDragstart:ee=>m(z),onDragover:e.withModifiers(ee=>f(z),["prevent"]),onDrop:ee=>p(z)},[e.createElementVNode("td",e1,[e.createElementVNode("div",t1,[e.createVNode(Ds,{width:"24",height:"24",class:"w-4 h-4 mx-auto text-slate-400 dark:text-slate-500"})])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(I.colModel,ee=>(e.openBlock(),e.createElementBlock("td",{key:ee.key,class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]"},[ee.type==="file"?(e.openBlock(),e.createElementBlock("div",r1,[y(M(A,ee))?(e.openBlock(),e.createElementBlock("div",l1,[e.createElementVNode("img",{src:M(A,ee),alt:"alt",width:"45",class:"rounded-md max-w-[45px] h-[45px] object-cover"},null,8,n1)])):(e.openBlock(),e.createElementBlock("div",a1,[e.createVNode(vs,{class:"w-[25px] min-w-[25px] h-[25px]"})]))])):ee.type==="tiptap-editor"?(e.openBlock(),e.createElementBlock("div",{key:1,class:"rounded-md border px-2.5 py-0.5 text-xs font-semibold focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent bg-slate-100 dark:bg-slate-700 text-slate-700 dark:text-slate-300 hover:bg-slate-200 dark:hover:bg-slate-600 transition-colors line-clamp-3",innerHTML:M(A,ee)},null,8,o1)):ee.type==="reference"?(e.openBlock(),e.createElementBlock("div",s1,e.toDisplayString(M(A,ee)),1)):(e.openBlock(),e.createElementBlock("div",i1,e.toDisplayString(M(A,ee)),1))]))),128)),e.createElementVNode("td",c1,[e.createElementVNode("div",d1,[e.createElementVNode("button",{onClick:ee=>D(A,z),class:"text-slate-700 inline-flex items-center justify-center whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border rounded-md text-xs h-7 w-7 p-0 border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-700 hover:bg-blue-50 dark:hover:bg-slate-600 hover:border-blue-300 dark:hover:border-slate-500 hover:text-blue-600 dark:hover:text-slate-200 transition-all duration-200 shadow-sm"},[e.createVNode(Lb,{width:"24",height:"24",class:"w-3 h-3"})],8,u1),e.createElementVNode("button",{onClick:ee=>Q(z),class:"text-slate-700 inline-flex items-center justify-center whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 border rounded-md text-xs h-7 w-7 p-0 border-slate-300 dark:border-slate-600 bg-white dark:bg-slate-700 hover:bg-red-50 dark:hover:bg-slate-600 hover:border-red-300 dark:hover:border-slate-500 hover:text-red-600 dark:hover:text-slate-200 transition-all duration-200 shadow-sm"},[e.createVNode(Pl,{width:"24",height:"24",class:"w-3 h-3"})],8,m1)])])],42,Jb))),128))],2)])]),e.createVNode(e.unref(Gt),{teleport:"#modal",visible:k.value,title:x.value,size:"lg",onClose:R},{default:e.withCtx(()=>[e.createVNode(He,{schema:t.colModel,values:V.value,"onUpdate:values":F[1]||(F[1]=A=>V.value=A),form:P.value,"onUpdate:form":F[2]||(F[2]=A=>P.value=A)},null,8,["schema","values","form"]),e.createElementVNode("div",p1,[e.createElementVNode("button",{type:"button",onClick:F[3]||(F[3]=A=>k.value=!1),class:"vs-button inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border !border-gray-200 hover:text-white bg-white text-red-500 hover:border-red-500 hover:bg-red-500 focus:ring-red-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1 mr-2"}," Скасувати "),e.createElementVNode("button",{onClick:q,type:"button",class:"vs-button inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border-1 border-transparent text-white bg-blue-500 hover:bg-blue-600 focus:ring-blue-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1"}," Зберегти ")])]),_:1},8,["visible","title"])]))}}),h1={draw:{toolbar:{actions:{title:"Скасувати малювання",text:"Скасувати"},finish:{title:"Завершити малювання",text:"Завершити"},undo:{title:"Видалити останню точку",text:"Видалити останню"},buttons:{polyline:"Намалювати лінію",polygon:"Намалювати полігон",rectangle:"Намалювати прямокутник",circle:"Намалювати коло",marker:"Додати точку",circlemarker:"Додати маркер-коло"}},handlers:{circle:{tooltip:{start:"Клацніть і тягніть, щоб намалювати коло",end:"Відпустіть кнопку миші, щоб завершити"},radius:"Радіус"},circlemarker:{tooltip:{start:"Клацніть на карту, щоб додати маркер-коло"}},marker:{tooltip:{start:"Клацніть на карту, щоб додати точку"}},polygon:{tooltip:{start:"Клацніть, щоб почати малювати полігон",cont:"Клацайте, щоб продовжити малювати полігон",end:"Клацніть першу точку, щоб завершити полігон"}},polyline:{error:"<strong>Помилка:</strong> лінія не може перетинатися сама з собою",tooltip:{start:"Клацніть, щоб почати малювати лінію",cont:"Клацайте, щоб продовжити малювати лінію",end:"Клацніть останню точку, щоб завершити лінію"}},rectangle:{tooltip:{start:"Клацніть і тягніть, щоб намалювати прямокутник",end:"Відпустіть кнопку миші, щоб завершити"}},simpleshape:{tooltip:{end:"Відпустіть кнопку миші, щоб завершити"}}}},edit:{toolbar:{actions:{save:{title:"Зберегти зміни",text:"Зберегти"},cancel:{title:"Скасувати редагування",text:"Скасувати"},clearAll:{title:"Очистити всі шари",text:"Очистити все"}},buttons:{edit:"Редагувати шари",editDisabled:"Немає шарів для редагування",remove:"Видалити шари",removeDisabled:"Немає шарів для видалення"}},handlers:{edit:{tooltip:{text:"Перетягніть маркери, щоб редагувати шари",subtext:"Натисніть 'Скасувати', щоб повернутися"}},remove:{tooltip:{text:"Клацніть на шари, щоб видалити їх"}}}}};function tl(r){return r?r.type==="Polygon"?{type:"MultiPolygon",coordinates:[r.coordinates]}:r.type==="Feature"?{...r,geometry:tl(r.geometry)}:r.type==="FeatureCollection"?{...r,features:(r.features||[]).map(t=>tl(t)).filter(Boolean)}:r:null}function g1(r){return r?r.type==="FeatureCollection"||r.type==="Feature"?tl(r):r.geom?{type:"Feature",geometry:tl({type:r.geom.type,coordinates:r.geom.coordinates}),properties:{}}:r.type&&r.coordinates?{type:"Feature",geometry:tl(r),properties:{}}:null:null}const y1={},b1={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",stroke:"currentColor",fill:"none","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-map-pin"};function k1(r,t){return e.openBlock(),e.createElementBlock("svg",b1,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M9 11a3 3 0 1 0 6 0a3 3 0 0 0 -6 0"},null,-1),e.createElementVNode("path",{d:"M17.657 16.657l-4.243 4.243a2 2 0 0 1 -2.827 0l-4.244 -4.243a8 8 0 1 1 11.314 0z"},null,-1)]))}const x1=_e(y1,[["render",k1]]),w1={},_1={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none","stroke-width":"2",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round",class:"icon icon-tabler icons-tabler-outline icon-tabler-line"};function E1(r,t){return e.openBlock(),e.createElementBlock("svg",_1,t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 18m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"},null,-1),e.createElementVNode("path",{d:"M18 6m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"},null,-1),e.createElementVNode("path",{d:"M7.5 16.5l9 -9"},null,-1)]))}const C1=_e(w1,[["render",E1]]),V1={},N1={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-polygon"};function v1(r,t){return e.openBlock(),e.createElementBlock("svg",N1,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M12 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M19 8m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M5 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M15 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"></path><path d="M6.5 9.5l3.5 -3"></path><path d="M14 5.5l3 1.5"></path><path d="M18.5 10l-2.5 7"></path><path d="M13.5 17.5l-7 -5"></path>',9)]))}const B1=_e(V1,[["render",v1]]),S1={},A1={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-topology-ring-3"};function D1(r,t){return e.openBlock(),e.createElementBlock("svg",A1,t[0]||(t[0]=[e.createStaticVNode('<path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z"></path><path d="M6 8v8"></path><path d="M18 16v-8"></path><path d="M8 6h8"></path><path d="M16 18h-8"></path>',9)]))}const M1=_e(S1,[["render",D1]]),T1={},L1={version:"1.1",viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg","xmlns:sketch":"http://www.bohemiancoding.com/sketch/ns","xmlns:xlink":"http://www.w3.org/1999/xlink",class:"fullscreen-icon"};function $1(r,t){return e.openBlock(),e.createElementBlock("svg",L1,t[0]||(t[0]=[e.createElementVNode("title",null,null,-1),e.createElementVNode("desc",null,null,-1),e.createElementVNode("defs",null,null,-1),e.createElementVNode("g",{fill:"none","fill-rule":"evenodd",id:"Page-1",stroke:"none","stroke-width":"1"},[e.createElementVNode("g",{fill:"#000000",id:"Core",transform:"translate(-215.000000, -257.000000)"},[e.createElementVNode("g",{id:"fullscreen",transform:"translate(215.000000, 257.000000)"},[e.createElementVNode("path",{d:"M2,9 L0,9 L0,14 L5,14 L5,12 L2,12 L2,9 L2,9 Z M0,5 L2,5 L2,2 L5,2 L5,0 L0,0 L0,5 L0,5 Z M12,12 L9,12 L9,14 L14,14 L14,9 L12,9 L12,12 L12,12 Z M9,0 L9,2 L12,2 L12,5 L14,5 L14,0 L9,0 L9,0 Z",id:"Shape"})])])],-1)]))}const F1=_e(T1,[["render",$1]]),I1={class:"map-search-widget flex flex-col gap-2 rounded-xl widget min-w-[200px]"},O1={key:0,class:"vs-select__options absolute z-50 mt-1 w-full bg-white border border-gray-300 shadow-lg rounded-lg text-sm"},P1=["onClick"],R1={class:"relative flex-1 min-w-[140px]"},U1=["placeholder"],j1="https://data.softpro.ua/api-user/gis-url-proxy",z1="https://geo.rv.ua/api-user/dzk.api",H1=e.defineComponent({__name:"map-search",props:{config:{}},emits:["goToCoordinates"],setup(r,{emit:t}){const l=r,n=t,a=["here","xy","parcel"],o=e.computed(()=>{var _,N;const k=(N=(_=l.config)==null?void 0:_.tools)==null?void 0:N.filter(V=>a.includes(V));return k&&k.length?k:a}),s=e.computed(()=>{var k,_;return((_=(k=l.config)==null?void 0:k.placeholder)==null?void 0:_.trim())||"Пошук…"}),i=e.ref(o.value[0]??a[0]);e.watch(o,k=>{k.includes(i.value)||(i.value=k[0])});const c=e.ref(""),u=e.ref(!1),d=e.ref(null);e.watch(i,()=>{c.value="",u.value=!1});function m(k){i.value=k}function f(k){if(!u.value)return;const _=d.value;_&&!_.contains(k.target)&&(u.value=!1)}e.onMounted(()=>{window.addEventListener("click",f,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("click",f,!0)});function p(k){return k==="xy"?"Координати":k==="parcel"?"Кадастр":"Адреси"}function h(k){const _=k.replace(/[,]+/g," ").trim();if(!_)return null;const N=_.split(/\s+/).filter(Boolean);if(N.length<2)return null;const V=N.slice(0,2).map(Number);if(!V.every(R=>Number.isFinite(R)))return null;let[P,$]=V,M=P,D=$;const q=R=>Math.abs(R)<=90,Q=R=>Math.abs(R)<=180;if(!q(M)||!Q(D))if(q(D)&&Q(M))M=$,D=P;else return null;return{lat:M,lng:D}}function g(k){return((k==null?void 0:k.items)||[]).map((_,N)=>{var V,P,$;return{id:String((_==null?void 0:_.id)??N),title:(_==null?void 0:_.title)||((V=_==null?void 0:_.address)==null?void 0:V.label)||"Знайдений обʼєкт",lat:Number((P=_==null?void 0:_.position)==null?void 0:P.lat),lng:Number(($=_==null?void 0:_.position)==null?void 0:$.lng)}}).filter(_=>Number.isFinite(_.lat)&&Number.isFinite(_.lng))}function y(k){const _=(k==null?void 0:k.result)||(k==null?void 0:k.data)||k;if(!_)return[];const N=_.geom_centroid;if(!N||!Array.isArray(N.coordinates))return[];const[V,P]=N.coordinates;return!Number.isFinite(P)||!Number.isFinite(V)?[]:[{id:"parcel",title:_.cadnum||_.cad_num||"Земельна ділянка",lat:P,lng:V}]}function b(k){const _=k.replace(/\s+/g,"").split(":");if(_.length!==4)return!1;const N=[10,2,3,4];return _.every((V,P)=>V.length===N[P]&&/^\d+$/.test(V))}function w(k){n("goToCoordinates",[k.lat,k.lng])}async function x(){const k=c.value.trim();if(k){if(i.value==="xy"){const _=h(k);if(!_){se({type:"warning",title:"Пошук координат",message:"Не знайдено або невірний формат координат"});return}w(_),c.value="";return}try{const _=new URL(i.value==="here"?j1:z1);if(i.value==="here")_.searchParams.set("searchtext",k);else{if(!b(k)){se({type:"warning",title:"Пошук кадастру",message:"Кадастровий номер має формат ХХХХХХХХХХ:ХХ:ХХХ:ХХХХ"});return}_.searchParams.set("cad_num",k)}const N=await fetch(_.toString());if(!N.ok)throw new Error(`HTTP ${N.status}`);const V=await N.json(),P=i.value==="here"?g(V):y(V);if(!P.length)se({type:"warning",title:"Пошук",message:"Не знайдено результатів"});else{const $=P[0];w($),c.value=""}}catch(_){const N=(_==null?void 0:_.message)||"Помилка пошуку";se({type:"error",title:"Пошук",message:N})}}}return(k,_)=>(e.openBlock(),e.createElementBlock("div",I1,[e.createElementVNode("form",{class:"flex gap-2",onSubmit:e.withModifiers(x,["prevent"])},[o.value.length>1?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:d,class:"relative search-type w-[140px]"},[e.createElementVNode("button",{type:"button",class:"vstSelect-input transition-all text-left bg-white border border-gray-200 text-gray-900 rounded-lg focus:ring-blue-500 focus:border-blue-100 block w-full py-1.5 px-3 text-sm cursor-pointer flex items-center justify-between gap-2",onClick:_[0]||(_[0]=N=>u.value=!u.value)},[e.createElementVNode("span",null,e.toDisplayString(p(i.value)),1),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(["w-4 h-4 text-gray-500 transition-transform",{"rotate-180":u.value}]),viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},_[2]||(_[2]=[e.createElementVNode("path",{d:"M6 9l6 6 6-6",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},null,-1)]),2))]),u.value?(e.openBlock(),e.createElementBlock("div",O1,[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,N=>(e.openBlock(),e.createElementBlock("li",{key:N,class:"px-3 py-2 cursor-pointer hover:bg-gray-100",onClick:V=>m(N)},e.toDisplayString(p(N)),9,P1))),128))])])):e.createCommentVNode("",!0)],512)):e.createCommentVNode("",!0),e.createElementVNode("div",R1,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":_[1]||(_[1]=N=>c.value=N),placeholder:s.value,type:"text",class:"vs-input transition-all border block w-full border-gray-200 rounded-md focus:border-blue-100 border-solid !pr-8 py-1.5 pl-3 text-sm"},null,8,U1),[[e.vModelText,c.value,void 0,{trim:!0}]]),_[3]||(_[3]=e.createElementVNode("button",{type:"submit",class:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600","aria-label":"Пошук"},[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m21 21-4.35-4.35m0 0A7.5 7.5 0 1 0 5 5a7.5 7.5 0 0 0 11.65 11.65Z"})])],-1))])],32)]))}}),q1=_e(H1,[["__scopeId","data-v-3048520a"]]),K1={class:"bg-white/30 p-1 rounded-md shadow"},G1={class:"flex gap-2"},W1=["onClick","title"],Y1=["src"],X1=e.defineComponent({__name:"map-layers",props:{basemaps:{}},emits:["onLayerChange"],setup(r,{emit:t}){const l=e.ref(Object.keys(r.basemaps)[0]),n=t;function a(o){n("onLayerChange",o),l.value=o}return(o,s)=>(e.openBlock(),e.createElementBlock("div",K1,[e.createElementVNode("div",G1,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.basemaps,(i,c)=>(e.openBlock(),e.createElementBlock("div",{key:c,class:e.normalizeClass(["cursor-pointer border rounded-lg overflow-hidden hover:shadow-sm",{"ring-2 ring-blue-500 border-blue-300":l.value===c}]),onClick:u=>a(c),title:i.name||c,role:"button",tabindex:"0"},[e.createElementVNode("img",{src:i.preview,alt:"",class:"w-10 h-10 object-cover"},null,8,Y1)],10,W1))),128))])]))}}),Z1={key:0,class:"absolute inset-0 z-[2000] flex items-center justify-center pointer-events-none bg-black/20"},Q1={class:"bg-black/50 text-white px-6 py-2 rounded-lg text-center max-w-sm mx-4 backdrop-blur-sm"},J1={class:"text-sm font-medium"},ek={key:0,class:"absolute top-4 left-4 z-[1000] w-[calc(100%-20px)] sm:w-[350px]"},tk={key:1,class:"form-geom__panel flex gap-1 items-start mt-2"},rk={class:"flex items-center gap-1"},lk=["disabled"],nk=["disabled"],ak=["disabled"],ok={class:"absolute top-4 right-4 z-[1000]"},sk={class:"flex flex-col gap-[2px]"},ik=["disabled"],ck=["disabled"],dk=["disabled"],uk=["disabled"],mk={class:"flex flex-col gap-2"},pk={key:0,class:"bg-white/95 border border-gray-200 rounded-md shadow-sm px-3 py-2 text-xs text-gray-700 min-w-[200px]"},fk={class:"flex flex-col gap-1"},hk=["checked","disabled","onChange"],gk={class:"text-gray-700 text-xs font-medium"},yk={class:"absolute bottom-0 left-0 right-0 z-[1000] bg-white/95 border-t border-gray-200 text-xs text-gray-700 flex items-center gap-4 pt-1"},bk={key:0,class:"form-geom__feature flex items-center text-xs transition-all gap-2 w-full"},kk={class:"shrink-0"},xk={class:"font-bold"},wk={class:"flex items-center"},_k={class:"text-xs mr-2"},Ek={key:0,class:"text-xs"},Ck={key:1,class:"text-xs"},Vk=["disabled"],Nk=["disabled"],vk=e.defineComponent({__name:"vs-input-map",props:{tools:{},handleZoom:{type:Boolean,default:!0},geomType:{default:()=>[]},prefix:{default:""},layers:{default:()=>[]},api:{},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},emits:["update:modelValue"],setup(r,{emit:t}){var Se;const l=e.getCurrentInstance(),n=r,a=t,o=e.computed(()=>{const E={search:!1,import:!1,export:!1,point:!1,line:!1,polygon:!1,rectangle:!1};if(!n.tools||!n.tools.length)return E;const S=new Set(n.tools.map(j=>j.toLowerCase()));return{search:S.has("search"),import:S.has("import"),export:S.has("export"),point:S.has("point"),line:S.has("line"),polygon:S.has("polygon"),rectangle:S.has("rectangle")}}),s=e.computed(()=>!!n.disabled),i=e.ref(!1),c=e.ref(null),u=e.ref(null),d=e.ref(!1),m=e.ref(""),f=e.reactive({}),p=e.ref([]),h=e.computed(()=>p.value.map(E=>f[E]).filter(E=>!!E)),g=e.computed(()=>Array.isArray(n.layers)&&n.layers.some(E=>`${(E==null?void 0:E.service)??""}`.toLowerCase()==="vtile"));let y,b,w;function x(){return navigator.platform.toUpperCase().indexOf("MAC")>=0,/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)?"Використовуйте два пальці для зуму карти.":"Використовуйте Ctrl + прокрутка для зуму карти."}const k=e.ref(null),_=e.ref(null);let N=null;const V=e.ref(null),P=E=>{E.ctrlKey&&E.preventDefault()};function $(E,S){return E!=null&&E.id?String(E.id):E!=null&&E.url?`${E.url}-${S}`:`layer-${S}`}function M(E){if(!E)return"";if(/^https?:\/\//i.test(E))return E.replace(/\/+$/,"");const S=E.replace(/^\/+/,"").replace(/\/+$/,"");return S?`/${S}`:""}function D(E){var te;const S=(E==null?void 0:E.url)??"";if(!S||/^https?:\/\//i.test(S))return S;const j=typeof window<"u"&&((te=window.location)!=null&&te.origin)?window.location.origin:"";if(S.startsWith("/"))return j?`${j}${S}`:S;const G=M(E==null?void 0:E.prefix),Z=M(n.prefix),B=G||Z,T=S.replace(/^\/+/,""),W=B?`${B.replace(/\/$/,"")}/${T}`:`/${T}`;return j?`${j}${W}`:W}function q(E){const S=(E==null?void 0:E.style)??{};return j=>{const G=S.colorAttr,Z=S.colorSet??{},B=typeof G=="string"?(Z==null?void 0:Z[j==null?void 0:j[G]])??S.color??"#3388ff":S.color??"#3388ff",T=S.stroke??B;return{weight:S.width??1,color:T,opacity:S.opacity??1,fill:S.type?S.type!=="polyline":!0,fillColor:B,fillOpacity:S.opacity??.5}}}function Q(E){const S=(E==null?void 0:E.colorSet)||(E==null?void 0:E.colors);if(E!=null&&E.colorAttr&&S){const j=Object.entries(S).flat();return["match",["get",E.colorAttr],...j,E.color??"#94a3b8"]}return(E==null?void 0:E.color)??"#3388ff"}function R(E,S,j){if(!E)return[];const G=[],Z=Q(E);return E.icon&&G.push({id:`${S}-icon`,type:"symbol",source:S,"source-layer":j,minzoom:E.iconZoom||0,layout:{"icon-image":E.icon,"icon-size":1,"icon-allow-overlap":!0,"icon-ignore-placement":!0}}),E.pointZoom&&G.push({id:`${S}-point`,type:"circle",source:S,"source-layer":j,maxzoom:E.pointZoom,paint:{"circle-stroke-color":E.stroke||"#fff","circle-opacity":E.opacity??1,"circle-color":Z,"circle-stroke-width":E.width??1,"circle-radius":E.radius??5}}),E.type==="polygon"?G.push({id:`${S}-fill`,type:"fill",source:S,"source-layer":j,minzoom:E.pointZoom||0,paint:{"fill-color":Z,"fill-opacity":E.opacity??.5,"fill-outline-color":E.stroke||Z}}):E.type==="line"?G.push({id:`${S}-line`,type:"line",source:S,"source-layer":j,paint:{"line-color":Z,"line-opacity":E.opacity??1,"line-width":E.width??1.5}}):E.icon||G.push({id:`${S}-circle`,type:"circle",source:S,"source-layer":j,paint:{"circle-stroke-color":E.stroke||"#fff","circle-opacity":E.opacity??1,"circle-color":Z,"circle-stroke-width":E.width??1,"circle-radius":E.radius??5}}),G}function I(E,S){var B;const j=E.id||`source-${Math.random().toString(36).slice(2,8)}`,G=E.sourceLayer||E.layer||E.service_layer||E.service_key||E.map_key||((B=E.dataset)==null?void 0:B.layer)||E.id||E.table_name||j,Z=R(E.style||{},j,G||j);return Z.length?{version:8,glyphs:"https://demotiles.maplibre.org/font/{fontstack}/{range}.pbf",sources:{[j]:{type:"vector",tiles:[S],minzoom:E.minzoom??0,maxzoom:E.maxzoom??19}},layers:Z}:null}function F(E){var Z,B,T,W;const S=((E==null?void 0:E.service)??"").toLowerCase(),j=D(E),G=E.sourceLayer||E.layer||E.service_layer||E.service_key||E.map_key||((Z=E.dataset)==null?void 0:Z.layer)||E.id||E.table_name;if(console.info("[vs-input-map] create overlay layer",{id:E.id,service:S,url:j,sourceLayer:G,hasSourceLayer:!!G}),S==="vtile"){if((B=L==null?void 0:L.vectorGrid)!=null&&B.protobuf&&!(L!=null&&L.maplibreGL))return console.info("[vs-input-map] using Leaflet.vectorGrid"),L.vectorGrid.protobuf(j,{interactive:!0,vectorTileLayerStyles:{default:q(E)}});if(L!=null&&L.maplibreGL&&(window!=null&&window.maplibregl)){console.info("[vs-input-map] using maplibre-gl-leaflet");const te=I(E,j);return te?L.maplibreGL({style:te,interactive:!1,pane:"overlayPane"}):(console.warn("[vs-input-map] maplibre spec is empty",E.id),null)}return null}return S==="tile"||/^https?:\/\//i.test(j)||j.includes("{z}")?L.tileLayer(j,{opacity:((T=E==null?void 0:E.style)==null?void 0:T.opacity)??1}):L.tileLayer(j,{opacity:((W=E==null?void 0:E.style)==null?void 0:W.opacity)??1})}function A(){y&&p.value.forEach(E=>{const S=f[E];S&&(S.visible?(S.layer||(S.layer=F(S.config)),S.layer&&!y.hasLayer(S.layer)?(console.info("[vs-input-map] add overlay layer to map",S.id),S.layer.addTo(y)):S.layer||console.warn("[vs-input-map] overlay layer is null",S.id)):S.layer&&y.hasLayer(S.layer)&&(console.info("[vs-input-map] remove overlay layer from map",S.id),y.removeLayer(S.layer)))})}function z(E){if(s.value)return;const S=f[E];S&&(S.visible=!S.visible,y&&(console.info("[vs-input-map] toggle overlay",{id:E,nextVisible:S.visible,hasLayerInstance:!!S.layer}),S.visible?(S.layer||(S.layer=F(S.config)),S.layer&&!y.hasLayer(S.layer)&&(console.info("[vs-input-map] add overlay layer to map",S.id),S.layer.addTo(y))):S.layer&&y.hasLayer(S.layer)&&y.removeLayer(S.layer)))}function ee(){if(!n.handleZoom)return null;let E;const S=G=>{const Z=G.ctrlKey||G.metaKey,B=G.shiftKey;if(!Z&&!B){d.value=!0,m.value=x(),clearTimeout(E),E=window.setTimeout(()=>{d.value=!1},1e3);return}d.value=!1,y.scrollWheelZoom.enable(),setTimeout(()=>{y.scrollWheelZoom.disable()},100)},j=G=>{if(G.touches.length===1){d.value=!0,m.value=x(),clearTimeout(E),E=window.setTimeout(()=>{d.value=!1},3e3);return}d.value=!1};return _.value&&(_.value.addEventListener("wheel",S,{passive:!1}),_.value.addEventListener("touchstart",j,{passive:!0})),y&&y.on("wheel",G=>{const Z=G.originalEvent.ctrlKey||G.originalEvent.metaKey,B=G.originalEvent.shiftKey;!Z&&!B&&(G.originalEvent.preventDefault(),G.originalEvent.stopPropagation())}),()=>{_.value&&(_.value.removeEventListener("wheel",S),_.value.removeEventListener("touchstart",j)),y&&y.off("wheel"),clearTimeout(E)}}const pe=e.ref(null),Ne=e.ref(6),Xe=e.ref(0),Jt=e.ref(((Se=l==null?void 0:l.appContext.config.globalProperties.$settings)==null?void 0:Se.center)||[50,30]),Re=e.ref(null),Ze=K();let At;const xt=e.ref("topo100");function Nt(E){return E?E.type==="Polygon"?{type:"MultiPolygon",coordinates:[E.coordinates]}:(E.type,E):null}function jt(){return new Promise((E,S)=>{window.L&&window.L.Draw&&E(0);const j=B=>{if(Array.from(document.styleSheets).some(W=>{var te;return(te=W==null?void 0:W.href)==null?void 0:te.includes(B)}))return;const T=document.createElement("link");T.rel="stylesheet",T.href=B,document.head.appendChild(T)},G=B=>new Promise((T,W)=>{const te=Array.from(document.scripts).find(we=>we.src===B);if(te){te.addEventListener("load",()=>T()),te.addEventListener("error",we=>W(we));return}const ye=document.createElement("script");ye.src=B,ye.async=!0,ye.onload=()=>T(),ye.onerror=we=>W(we),document.body.appendChild(ye)});j("https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"),j("https://unpkg.com/leaflet-draw@1.0.4/dist/leaflet.draw.css"),g.value&&j("https://unpkg.com/maplibre-gl@4.5.0/dist/maplibre-gl.css");let Z=G("https://unpkg.com/leaflet@1.9.4/dist/leaflet.js").then(()=>G("https://unpkg.com/leaflet-draw@1.0.4/dist/leaflet.draw.js"));g.value?Z=Z.then(()=>G("https://unpkg.com/maplibre-gl@4.5.0/dist/maplibre-gl.js")).then(()=>(window.maplibregl&&!window.mapboxgl&&(window.mapboxgl=window.maplibregl),G("https://unpkg.com/@maplibre/maplibre-gl-leaflet@0.0.20/leaflet-maplibre-gl.js"))):Z=Z.then(()=>G("https://unpkg.com/leaflet.vectorgrid@1.3.0/dist/Leaflet.VectorGrid.bundled.js").catch(()=>Promise.resolve())),Z.then(()=>E(0)).catch(S)})}function ot(){const E=b.toGeoJSON(),S=[];let j=null;const G=B=>{if(B)switch(B.type){case"Point":j=B;break;case"Polygon":S.push(B.coordinates);break;case"MultiPolygon":S.push(...B.coordinates);break;case"GeometryCollection":(B.geometries||[]).forEach(G);break}};((E==null?void 0:E.features)||[]).forEach(B=>G(B.geometry));const Z=j||(S.length?{type:"MultiPolygon",coordinates:S}:null);a("update:modelValue",Z?Nt(Z):null),Xe.value=b.getLayers().length}function ct(E=30){const S=b.getLayers();if(!S.length)return;const j=L.featureGroup(S).getBounds();j&&j.isValid()&&y.fitBounds(j,{padding:[E,E]})}function U(){var E;s.value||((E=V.value)==null||E.click())}const Y=e.ref("");e.watch(o,E=>{Y.value&&!Object.entries(E).filter(([S,j])=>j).map(([S])=>S).includes(Y.value)&&(w!=null&&w.disable&&w.disable(),Y.value="")}),e.watch(()=>n.layers,E=>{const S=Array.isArray(E)?E:[],j=[],G=new Set;S.forEach((Z,B)=>{if(!Z)return;const T=$(Z,B);j.push(T),G.add(T),console.info("[vs-input-map] overlay register",{id:T,service:Z==null?void 0:Z.service,url:Z==null?void 0:Z.url});const W=f[T];W?f[T]={...W,config:{...Z,id:T}}:f[T]={id:T,config:{...Z,id:T},visible:(Z==null?void 0:Z.overlay)!==!1,layer:null}}),Object.keys(f).forEach(Z=>{if(G.has(Z))return;const B=f[Z];B!=null&&B.layer&&(y!=null&&y.hasLayer)&&y.hasLayer(B.layer)&&y.removeLayer(B.layer),delete f[Z]}),p.value=j,A()},{immediate:!0,deep:!0}),e.watch(s,E=>{E&&w&&(w.disable(),Y.value=""),b&&b.eachLayer(S=>{var j,G,Z,B,T;E?(G=(j=S.dragging)==null?void 0:j.disable)==null||G.call(j):(Z=S.dragging)!=null&&Z.enable&&(S.dragging.enable(),(T=(B=S.dragging).enabled)==null||T.call(B))})});function re(E){return E instanceof L.Circle?"Circle":E instanceof L.Rectangle?"Rectangle":E instanceof L.Polygon&&!(E instanceof L.Rectangle)?"Polygon":E instanceof L.Polyline&&!(E instanceof L.Polygon)?"Polyline":E instanceof L.Marker?"Point":"Feature"}function le(E){var S;if(E instanceof L.Circle){const j=E.getRadius();return Math.PI*(j*j)/1e6}if(E instanceof L.Polygon||E instanceof L.Rectangle)try{const j=E.getLatLngs(),G=Array.isArray(j[0])?j[0]:j,Z=(S=L.GeometryUtil)!=null&&S.geodesicArea?L.GeometryUtil.geodesicArea(G):0;return Z?Z/1e6:0}catch{return null}return null}function ue(E){return E instanceof L.Circle?E.getLatLng():E.getBounds?E.getBounds().getCenter():E.getLatLng?E.getLatLng():y.getCenter()}async function Te(E,S){var Z;if(k.value="",!((Z=n.api)!=null&&Z.length))return;const[j,G]=n.api;try{const B=new URL(j);B.searchParams.set("lat",String(E)),B.searchParams.set("lon",String(S));const T=await fetch(B.toString());if(!T.ok)throw new Error("Request failed");const W=await T.json();G&&W[G]!==void 0?k.value=String(W[G]):k.value=JSON.stringify(W)}catch(B){console.error("[vs-input-map] reverse geocode failed:",B),k.value=null}}function C(){const E=b.getLayers();if(!E.length){Re.value=null,Xe.value=0;return}const S=E[E.length-1],j=re(S),G=ue(S),Z=le(S);Re.value={type:j,center:G,areaKm2:Z,layer:S},Xe.value=E.length,Te(G.lat,G.lng)}function v(){var S;if(s.value)return;const E=(S=Re.value)==null?void 0:S.layer;E&&(E instanceof L.Circle&&E.getBounds?y.fitBounds(E.getBounds(),{padding:[30,30]}):E.getBounds?y.fitBounds(E.getBounds(),{padding:[30,30]}):E.getLatLng&&y.setView(E.getLatLng(),Math.max(Ne.value,14)))}function H(){var S;if(s.value)return;const E=(S=Re.value)==null?void 0:S.layer;E&&(b.removeLayer(E),ot(),C())}e.onMounted(async()=>{document.addEventListener("wheel",P,{passive:!1}),await jt(),L.drawLocal=h1;const E=n.handleZoom;y=L.map(_.value,{zoomControl:!1,scrollWheelZoom:!E}).setView(Jt.value,10),setTimeout(()=>{N=ee()},100),L.control.zoom({position:"bottomright"}).addTo(y),xt.value=Object.keys(Ze)[0],At=L.tileLayer(Ze[xt.value].url,{maxZoom:19,minZoom:6}).addTo(y),b=new L.FeatureGroup().addTo(y),y.on(L.Draw.Event.CREATED,G=>{if(s.value)return;const{layer:Z}=G;b.clearLayers(),b.addLayer(Z),ot(),ct(),Y.value=""}),y.on(L.Draw.Event.EDITED,()=>{s.value||(ot(),C(),ct())}),y.on(L.Draw.Event.DELETED,()=>{s.value||(ot(),C(),ct())});let S=!1;y.on("mousemove",G=>{S||(y.invalidateSize(),S=!0),pe.value=G.latlng}),y.on("zoomend",()=>{Ne.value=y.getZoom()});const j=g1(n.modelValue);if(j){const G=[];L.geoJSON(j).eachLayer(Z=>G.push(Z)),G.length&&b.addLayer(G[0]),ot(),C(),ct()}A()}),e.onUnmounted(()=>{document.removeEventListener("wheel",P),N&&N(),Object.values(f).forEach(E=>{var S;E!=null&&E.layer&&((S=y==null?void 0:y.hasLayer)!=null&&S.call(y,E.layer)&&y.removeLayer(E.layer),typeof E.layer.remove=="function"&&E.layer.remove())})});function ne(E){if(!s.value&&y){switch(w&&w.disable(),E){case"marker":w=new L.Draw.Marker(y);break;case"polyline":w=new L.Draw.Polyline(y);break;case"polygon":w=new L.Draw.Polygon(y);break;case"rectangle":w=new L.Draw.Rectangle(y);break;default:w=new L.Draw.Rectangle(y);break}w&&(w.enable(),Y.value=E)}}function $e(){if(s.value)return;const E=b.toGeoJSON(),S=new Blob([JSON.stringify(E,null,2)],{type:"application/json"}),j=URL.createObjectURL(S),G=document.createElement("a");G.href=j,G.download="data.geojson",G.click(),URL.revokeObjectURL(j)}function Fe(E){var Z;if(s.value)return;const S=E.target,j=(Z=S.files)==null?void 0:Z[0];if(!j)return;const G=new FileReader;G.onload=()=>{if(typeof G.result=="string")try{const B=JSON.parse(G.result);b.clearLayers(),B&&L.geoJSON({type:"Feature",geometry:B}).eachLayer(T=>{b.addLayer(T)}),ot(),C(),ct()}finally{S.value=""}},G.readAsText(j)}function be(E){y&&(At&&y.removeLayer(At),At=L.tileLayer(Ze[E].url,{maxZoom:19,minZoom:6}).addTo(y),xt.value=E)}function O(E){const S=L.latLng(E[0],E[1]);y.setView(S,13)}e.watch(()=>n.modelValue,E=>{const S=Nt(E);if(E&&S!==E){a("update:modelValue",S);return}b.clearLayers(),S&&L.geoJSON({type:"Feature",geometry:S}).eachLayer(j=>{var G,Z,B,T,W,te;if(b.addLayer(j),s.value){(Z=(G=j.dragging)==null?void 0:G.disable)==null||Z.call(G);return}(T=(B=j.dragging)==null?void 0:B.enable)==null||T.call(B),(te=(W=j.dragging)==null?void 0:W.enabled)==null||te.call(W),j.on("dragend",ye=>{const we=ye.target.getLatLng();a("update:modelValue",{type:"Point",coordinates:[we.lng,we.lat]})})}),Xe.value=b.getLayers().length,C(),ct()});function K(){var E,S;return(E=l==null?void 0:l.appContext.config.globalProperties.$settings)!=null&&E.basemaps?(S=l==null?void 0:l.appContext.config.globalProperties.$settings)==null?void 0:S.basemaps.map((j,G)=>Object.assign(j,{key:`b${G}`,preview:j.preview||j.url.replace("{z}/{x}/{y}.png","13/4790/2762.png")})).reduce((j,G)=>({...j,[G.key]:G}),{}):{topo100:{url:"https://data.gki.com.ua/api-user/rtile/voyager/ua/{z}/{x}/{y}.png",preview:"https://data.gki.com.ua/api-user/rtile/voyager/ua/13/4790/2762.png"},orto10:{url:"https://data.gki.com.ua/api-user/rtile/orto10/ua/{z}/{x}/{y}.png",preview:"https://data.gki.com.ua/api-user/rtile/orto10/ua/13/4790/2762.png"},osmb:{url:"https://tile.openstreetmap.org.ua/styles/osm-bright/{z}/{x}/{y}.png",preview:"https://tile.openstreetmap.org.ua/styles/osm-bright/13/4790/2762.png"}}}const ke=e.ref(!1);return e.watch(ke,()=>{setTimeout(()=>{y.invalidateSize()},50)}),e.watch(i,async E=>{if(!E||!u.value){c.value=null;return}await e.nextTick();const S=u.value.getBoundingClientRect();c.value={top:S.bottom+6,left:S.left}}),e.onUnmounted(()=>{i.value=!1,c.value=null}),(E,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["leaflet-map-wrapper relative w-full h-[400px]",{fullscreen:ke.value}])},[e.createElementVNode("div",{ref_key:"mapContainer",ref:_,class:"w-full h-full"},null,512),e.createVNode(e.Transition,{name:"zoom-instructions","enter-active-class":"transition-all duration-200 ease-out","leave-active-class":"transition-all duration-500 ease-in","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[d.value&&n.handleZoom?(e.openBlock(),e.createElementBlock("div",Z1,[e.createElementVNode("div",Q1,[e.createElementVNode("p",J1,e.toDisplayString(m.value),1)])])):e.createCommentVNode("",!0)]),_:1}),o.value.search||o.value.import||o.value.export?(e.openBlock(),e.createElementBlock("div",ek,[o.value.search?(e.openBlock(),e.createBlock(q1,{key:0,onGoToCoordinates:O})):e.createCommentVNode("",!0),o.value.import||o.value.export?(e.openBlock(),e.createElementBlock("div",tk,[e.createElementVNode("div",rk,[o.value.import?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"inline-flex items-center gap-2 text-sm font-medium border rounded-md px-3 py-2 bg-white text-blue-600 border-stone-200 hover:bg-blue-500 hover:text-white transition",onClick:U,disabled:s.value}," Import ",8,lk)):e.createCommentVNode("",!0),o.value.export?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"inline-flex items-center gap-2 text-sm font-medium border rounded-md px-3 py-2 bg-white text-blue-600 border-stone-200 hover:bg-blue-500 hover:text-white transition",onClick:$e,disabled:s.value||Xe.value===0}," Export ",8,nk)):e.createCommentVNode("",!0)]),e.createElementVNode("input",{ref_key:"importRef",ref:V,type:"file",onChange:Fe,accept:".json,.geojson",class:"hidden",disabled:s.value},null,40,ak)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",ok,[e.createElementVNode("div",sk,[o.value.point?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["vs-btn",{"vs-active":Y.value==="marker"}]),title:"Point",onClick:S[0]||(S[0]=j=>ne("marker")),disabled:s.value},[e.createVNode(x1)],10,ik)):e.createCommentVNode("",!0),o.value.line?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(["vs-btn",{"vs-active":Y.value==="polyline"}]),title:"Line",onClick:S[1]||(S[1]=j=>ne("polyline")),disabled:s.value},[e.createVNode(C1)],10,ck)):e.createCommentVNode("",!0),o.value.polygon?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(["vs-btn",{"vs-active":Y.value==="polygon"}]),title:"Polygon",onClick:S[2]||(S[2]=j=>ne("polygon")),disabled:s.value},[e.createVNode(B1)],10,dk)):e.createCommentVNode("",!0),o.value.rectangle?(e.openBlock(),e.createElementBlock("button",{key:3,class:e.normalizeClass(["vs-btn",{"vs-active":Y.value==="rectangle"}]),title:"Rectangle",onClick:S[3]||(S[3]=j=>ne("rectangle")),disabled:s.value},[e.createVNode(M1)],10,uk)):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"vs-btn mt-5",onClick:S[4]||(S[4]=j=>ke.value=!ke.value),title:"Full Screen"},[e.createVNode(F1,{style:{width:"12px",height:"12px"}})])])]),e.createElementVNode("div",{class:e.normalizeClass(["absolute left-4 z-[1000]",Re.value?"bottom-8":"bottom-4"])},[e.createElementVNode("div",mk,[e.createVNode(X1,{basemaps:e.unref(Ze),onOnLayerChange:be},null,8,["basemaps"]),h.value.length?(e.openBlock(),e.createElementBlock("div",pk,[S[9]||(S[9]=e.createElementVNode("p",{class:"font-semibold text-[11px] uppercase tracking-wide text-gray-500 mb-2"},"Layers",-1)),e.createElementVNode("div",fk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,j=>(e.openBlock(),e.createElementBlock("label",{key:j.id,class:"flex items-center gap-2 cursor-pointer select-none"},[e.createElementVNode("input",{type:"checkbox",class:"rounded border-gray-300 text-blue-600 focus:ring-blue-500",checked:j.visible,disabled:s.value,onChange:G=>z(j.id)},null,40,hk),e.createElementVNode("span",gk,e.toDisplayString(j.config.title||j.config.name||j.id),1)]))),128))])])):e.createCommentVNode("",!0)])],2),e.createElementVNode("div",yk,[Re.value?(e.openBlock(),e.createElementBlock("div",bk,[e.createElementVNode("div",{class:"mr-auto flex items-center gap-2 min-w-0 relative",onMouseenter:S[5]||(S[5]=j=>i.value=!0),onMouseleave:S[6]||(S[6]=j=>i.value=!1)},[e.createElementVNode("div",kk,[S[10]||(S[10]=e.createTextVNode(" Type: ",-1)),e.createElementVNode("span",xk,e.toDisplayString(Re.value.type),1)]),k.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"addressEl",ref:u,class:"text-gray-500 text-xs truncate cursor-help",style:{"max-width":"260px"}}," Address: "+e.toDisplayString(k.value),513)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[i.value&&k.value&&c.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed z-[99999] pointer-events-none bg-gray-800 text-white text-xs px-2 py-1 rounded shadow whitespace-nowrap",style:e.normalizeStyle({top:c.value.top+"px",left:c.value.left+"px"})},e.toDisplayString(k.value),5)):e.createCommentVNode("",!0)]))],32),e.createElementVNode("div",wk,[e.createElementVNode("div",_k,[S[11]||(S[11]=e.createTextVNode(" Center: ",-1)),e.createElementVNode("b",null,e.toDisplayString(Re.value.center.lat.toFixed(5))+", "+e.toDisplayString(Re.value.center.lng.toFixed(5)),1)]),Re.value.areaKm2!==null?(e.openBlock(),e.createElementBlock("div",Ek,[S[12]||(S[12]=e.createTextVNode(" Area: ",-1)),e.createElementVNode("b",null,e.toDisplayString(Re.value.areaKm2.toFixed(1))+" km²",1)])):(e.openBlock(),e.createElementBlock("div",Ck,S[13]||(S[13]=[e.createTextVNode("Area: ",-1),e.createElementVNode("b",null,"—",-1)]))),e.createElementVNode("button",{class:"tool bg-gray-100 py-1.5 px-2 rounded-lg text-md mr-1 cursor-pointer hover:bg-blue-500 hover:text-white transition-all",title:"Zoom to feature",onClick:S[7]||(S[7]=j=>v()),disabled:s.value},S[14]||(S[14]=[e.createStaticVNode('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-3 h-3" data-v-150e767b><path d="M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0" data-v-150e767b></path><path d="M7 10l6 0" data-v-150e767b></path><path d="M10 7l0 6" data-v-150e767b></path><path d="M21 21l-6 -6" data-v-150e767b></path></svg>',1)]),8,Vk),e.createElementVNode("button",{class:"tool bg-gray-100 py-1.5 px-2 rounded-lg text-md cursor-pointer hover:bg-blue-500 hover:text-white transition-all",title:"Delete feature",onClick:S[8]||(S[8]=j=>H()),disabled:s.value},[e.createVNode(Pl,{class:"w-3 h-3"})],8,Nk)])])):e.createCommentVNode("",!0)])],2))}}),Bk=_e(vk,[["__scopeId","data-v-150e767b"]]),Sk=["data-focus"],Ak={class:"flex items-center"},Dk={class:"overflow-hidden text-ellipsis whitespace-nowrap rounded-sm text-[#333] text-[85%] px-0.5 py-[3px] pl-1.5 box-border"},Mk=["onClick","aria-label"],Tk={key:0,class:"absolute text-gray-500 truncate pl-2"},Lk={class:"flex-1 min-w-[2px]"},$k=["placeholder"],Fk={class:"flex items-center shrink-0"},Ik=["disabled"],Ok=e.defineComponent({__name:"vs-input-tag",props:e.mergeModels({unique:{type:Boolean,default:!0},style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:"Введіть тег"}},{modelValue:{default:[]},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue"],["update:modelValue"]),setup(r,{emit:t}){const l=r,n=t;gt(l.style);const a=e.ref(null),o=e.ref(null),s=e.ref(null),i=e.ref(!1),c=e.ref(""),u=e.useModel(r,"modelValue"),d=e.computed(()=>l.placeholder||"Add tag…"),m=e.computed(()=>{var N;return((N=u.value)==null?void 0:N.length)===0&&c.value===""}),f=e.computed(()=>{var N;return!l.disabled&&((N=u.value)==null?void 0:N.length)>0}),p=e.computed(()=>l.disabled),h=async()=>{p.value||await e.nextTick(()=>{var N;return(N=s.value)==null?void 0:N.focus()})},g=N=>{const V=N.trim();V!==""&&(!u.value||!Array.isArray(u.value)?u.value=[V]:l.unique?u.value.includes(V)||(u.value=[...u.value,V]):u.value=[...u.value,V],c.value="")},y=()=>{const N=c.value;N.trim()!==""&&g(N),c.value=""},b=N=>{const V=u.value.slice();V.splice(N,1),n("update:modelValue",V)},w=()=>{n("update:modelValue",[])},x=()=>{p.value||(i.value=!0)},k=()=>{i.value=!1,!p.value&&y()},_=N=>{const{key:V}=N;V==="Enter"?(N.preventDefault(),y()):V==="Backspace"&&c.value===""&&u.value.length>0&&b(u.value.length-1)};return(N,V)=>(e.openBlock(),e.createElementBlock("div",{class:"flex gap-1 w-full",ref_key:"root",ref:a,onClick:V[1]||(V[1]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",{class:e.normalizeClass(["relative w-full font-sans",l.customClass]),role:"group","aria-label":"Tag input"},[e.createElementVNode("div",{class:e.normalizeClass(["flex min-h-[38px] items-center justify-between rounded border transition-colors bg-white","border-gray-300 hover:border-gray-400",i.value?"border-blue-500 ring-1 ring-blue-500":"",p.value?"bg-gray-100 text-gray-400 cursor-not-allowed hover:border-gray-300":""]),"data-focus":i.value?"true":"false",onClick:h},[e.createElementVNode("div",{class:"flex flex-1 flex-wrap items-center gap-1 py-0.5 pl-2 pr-0 overflow-hidden",ref_key:"chipsRef",ref:o},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(P,$)=>(e.openBlock(),e.createElementBlock("div",{key:$,class:"flex min-w-0 bg-[#e6e6e6] rounded-sm m-0.5 box-border"},[e.createElementVNode("div",Ak,[e.createElementVNode("div",Dk,e.toDisplayString(P),1)]),e.createElementVNode("div",{role:"button",class:"flex items-center rounded-sm px-1 box-border hover:bg-[#ffbdad] hover:text-[#de350b]",onClick:e.withModifiers(M=>b($),["stop"]),"aria-label":`Remove ${P}`},V[2]||(V[2]=[e.createElementVNode("svg",{height:"14",width:"14",viewBox:"0 0 20 20","aria-hidden":"true",focusable:"false",class:"inline-block fill-current stroke-current leading-none stroke-0"},[e.createElementVNode("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"})],-1)]),8,Mk)]))),128)),m.value?(e.openBlock(),e.createElementBlock("div",Tk,e.toDisplayString(d.value),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Lk,[p.value?e.createCommentVNode("",!0):e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,ref_key:"inputRef",ref:s,class:"pl-2 w-full bg-transparent outline-none border-0 m-0 p-0 text-gray-900",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",type:"text",tabindex:"0","aria-label":"Add tag","onUpdate:modelValue":V[0]||(V[0]=P=>c.value=P),onFocus:x,onBlur:k,onKeydown:_,placeholder:u.value&&u.value.length?"":void 0},null,40,$k)),[[e.vModelText,c.value]])])],512),e.createElementVNode("div",Fk,[f.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"px-2 text-gray-400 hover:text-gray-500 transition-colors disabled:opacity-50","aria-label":"Clear all tags",disabled:p.value,onClick:e.withModifiers(w,["stop"])},V[3]||(V[3]=[e.createElementVNode("svg",{height:"20",width:"20",viewBox:"0 0 20 20",class:"fill-current"},[e.createElementVNode("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"})],-1)]),8,Ik)):e.createCommentVNode("",!0)])],10,Sk)],2)],512))}}),Pk={class:"relative flex gap-1 bg-white w-full"},Rk=["disabled","placeholder"],Uk=e.defineComponent({__name:"vs-input-slug",props:e.mergeModels({disabled:{type:Boolean},placeholder:{},parent:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=e.inject("values"),l=r,n=e.useModel(r,"modelValue");function a(s){const i={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"zh",з:"z",и:"i",й:"y",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"kh",ц:"ts",ч:"ch",ш:"sh",щ:"shch",ы:"y",э:"e",ю:"yu",я:"ya",ь:"",ъ:"",є:"ye",і:"i",ї:"yi",ґ:"g"};return s.toLowerCase().split("").map(c=>i[c]||c).join("").replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}const o=()=>{var c,u;const s=(u=(c=t==null?void 0:t.value)==null?void 0:c[l.parent||""])==null?void 0:u.toString(),i=a(s);n.value=i.toString()};return(s,i)=>(e.openBlock(),e.createElementBlock("div",Pk,[e.withDirectives(e.createElementVNode("input",{ref:"vsText",disabled:s.disabled,placeholder:s.placeholder,"onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),class:"block w-full px-3 py-2 text-sm border border-solid rounded-lg placeholder:text-nowrap border-stone-200 text-stone-800 placeholder:text-stone-400 focus:outline focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500"},null,8,Rk),[[e.vModelText,n.value]]),e.createElementVNode("button",{class:"px-2 bg-gray-100 border rounded-lg hover:bg-gray-200",onClick:o}," Gen ")]))}}),jk=_e(Uk,[["__scopeId","data-v-b0eba370"]]),zk={class:"relative flex gap-1 bg-white w-full"},Hk=["disabled","placeholder"],qk=["disabled"],Kk={key:0},Gk={key:1},Wk=e.defineComponent({__name:"vs-input-codegen",props:e.mergeModels({table:{},code:{},init:{type:Boolean},style:{},customClass:{},disabled:{type:Boolean},modelValue:{},error:{},name:{},placeholder:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.ref(!1),a=e.computed(()=>t.init!==!1),o=e.computed(()=>!!t.table&&!!t.code),s=()=>{if(!o.value)return"";const u=encodeURIComponent(String(t.table)),d=encodeURIComponent(String(t.code));return`/api/code-gen/${u}/${d}`},i=async()=>{if(!o.value||n.value)return;const u=s();if(u){n.value=!0;try{const d=await(await fetch(u)).text();l.value=d}finally{n.value=!1}}},c=()=>{a.value&&(l.value||i())};return e.onMounted(()=>{c()}),e.watch(()=>[t.table,t.code,t.init],()=>{c()}),(u,d)=>(e.openBlock(),e.createElementBlock("div",zk,[e.withDirectives(e.createElementVNode("input",{disabled:u.disabled,placeholder:u.placeholder,"onUpdate:modelValue":d[0]||(d[0]=m=>l.value=m),class:"block w-full px-3 py-2 text-sm border border-solid rounded-lg placeholder:text-nowrap border-stone-200 text-stone-800 placeholder:text-stone-400 focus:outline focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500"},null,8,Hk),[[e.vModelText,l.value]]),e.createElementVNode("button",{class:"px-2 bg-gray-100 border rounded-lg hover:bg-gray-200 disabled:opacity-50 disabled:cursor-not-allowed",disabled:n.value||u.disabled||!o.value,onClick:i},[n.value?(e.openBlock(),e.createElementBlock("span",Gk,"...")):(e.openBlock(),e.createElementBlock("span",Kk,"Gen"))],8,qk)]))}}),Yk=_e(Wk,[["__scopeId","data-v-6ee5237d"]]),Xk={class:"w-full"},Zk={ref:"sortableContainer",class:"flex flex-col gap-1"},Qk=["onDragstart","onDrop"],Jk={class:"w-1/3"},ex={class:"w-2/3"},tx=["onClick"],rx={key:0,class:"text-[14px] text-gray-700"},lx={class:"mt-2 w-full flex items-center"},nx=["disabled"],ax=e.defineComponent({__name:"vs-input-key-value",props:{parent:{},ignore:{},addButtonText:{},modelValue:{}},emits:["update:modelValue"],setup(r,{emit:t}){const l=g=>`${g}-${Math.random().toString(36).substring(2,15)}`,n=e.inject("values"),a=r,o=t,s=a.addButtonText??"Додати",i=a.ignore??[],c=e.ref([]),u=e.ref(null);(()=>{var y;const g=a.parent&&((y=n==null?void 0:n.value)==null?void 0:y[a.parent])||a.modelValue||{};c.value=Object.entries(g).filter(([b])=>!i.includes(b)).map(([b,w])=>({id:l("key-value-"),key:b,value:w}))})();function d(g){u.value=g}function m(g){if(u.value===null||u.value===g)return;const y=c.value.splice(u.value,1)[0];c.value.splice(g,0,y),u.value=null}const f=e.computed(()=>c.value.some(g=>g.key&&!g.value||!g.key&&g.value)),p=()=>{c.value.push({id:l("key-value-"),key:"",value:""})},h=g=>{c.value=c.value.filter(y=>y.id!==g)};return e.watch(c,g=>{const y={};g.forEach(w=>{w.key&&w.value!==void 0&&(y[w.key]=w.value)});const b={};i.length&&i.forEach(w=>{var x,k;b[w]=a.parent?(k=(x=n==null?void 0:n.value)==null?void 0:x[a.parent])==null?void 0:k[w]:void 0}),n!=null&&n.value&&a.parent&&(n.value[a.parent]={...b,...y}),o("update:modelValue",y)},{deep:!0}),(g,y)=>(e.openBlock(),e.createElementBlock("div",Xk,[e.createElementVNode("div",Zk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(b,w)=>(e.openBlock(),e.createElementBlock("div",{key:b.id,class:e.normalizeClass(["flex items-center gap-2 w-full",{"opacity-50":u.value===w}]),draggable:"true",onDragstart:x=>d(w),onDragover:y[0]||(y[0]=e.withModifiers(()=>{},["prevent"])),onDrop:x=>m(w)},[y[1]||(y[1]=e.createStaticVNode('<button class="cursor-move" data-v-a0f7fbfc><svg fill="#000000" width="20" height="20" viewBox="0 0 36 36" data-v-a0f7fbfc><circle cx="15" cy="12" r="1.5" data-v-a0f7fbfc></circle><circle cx="15" cy="24" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="12" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="24" r="1.5" data-v-a0f7fbfc></circle><circle cx="21" cy="18" r="1.5" data-v-a0f7fbfc></circle><circle cx="15" cy="18" r="1.5" data-v-a0f7fbfc></circle></svg></button>',1)),e.createElementVNode("div",Jk,[e.createVNode(Ol,{modelValue:b.key,"onUpdate:modelValue":x=>b.key=x,placeholder:"Ключ"},null,8,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("div",ex,[e.createVNode(Ol,{modelValue:b.value,"onUpdate:modelValue":x=>b.value=x,placeholder:"Значення"},null,8,["modelValue","onUpdate:modelValue"])]),e.createElementVNode("button",{onClick:x=>h(b.id),class:"shrink-0 w-[30px] text-gray-600 h-[30px] rounded-full flex items-center justify-center bg-gray-100 hover:bg-gray-200"},[e.createVNode(e.unref(Vh),{height:"16",width:"16"})],8,tx)],42,Qk))),128))],512),c.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",rx," Дані для відображення відсутні ")),e.createElementVNode("div",lx,[e.createElementVNode("button",{type:"button",onClick:p,disabled:f.value,class:"py-1.5 px-2 flex items-center gap-x-1 text-xs font-medium rounded-full border border-dashed border-gray-200 bg-white text-gray-800 hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed"},[e.createVNode(el,{height:"14",width:"14"}),e.createTextVNode(" "+e.toDisplayString(e.unref(s)),1)],8,nx)])]))}}),ox=_e(ax,[["__scopeId","data-v-a0f7fbfc"]]),sx={class:"flex items-center gap-2 w-full"},ix=["disabled"],cx=["disabled"],dx=e.defineComponent({__name:"vs-input-color",props:{style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,{inputClass:n}=gt(l.style),a=t,o=e.computed({get:()=>l.modelValue||"#000000",set:i=>a("update:modelValue",i)}),s=e.computed(()=>!!l.disabled);return(i,c)=>(e.openBlock(),e.createElementBlock("div",sx,[e.withDirectives(e.createElementVNode("input",{type:"color","onUpdate:modelValue":c[0]||(c[0]=u=>o.value=u),disabled:s.value,ref:"color",class:e.normalizeClass(["py-1.5 px-1 block w-full bg-white cursor-pointer max-w-[50px]",[i.modelValue?"":"text-opacity-50",e.unref(n)].join(" ")]),style:{border:"1px solid #CFD9E0"}},null,10,ix),[[e.vModelText,o.value]]),e.withDirectives(e.createElementVNode("input",{class:"text-sm text-gray-600 border border-solid border-stone-200 rounded-md p-2","onUpdate:modelValue":c[1]||(c[1]=u=>o.value=u),disabled:s.value},null,8,cx),[[e.vModelText,o.value]])]))}}),ux={class:"flex items-center gap-2 w-full"},mx=["min","max","step","disabled"],px=["disabled"],fx=e.defineComponent({__name:"vs-input-range",props:{style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{},name:{},placeholder:{default:""},min:{default:0},max:{default:100},step:{default:1}},emits:["update:modelValue"],setup(r,{emit:t}){const l=r,{inputClass:n}=gt(l.style),a=t,o=e.computed({get:()=>Number(l.modelValue??l.min),set:i=>a("update:modelValue",Number(i))}),s=e.computed(()=>!!l.disabled);return(i,c)=>(e.openBlock(),e.createElementBlock("div",ux,[e.withDirectives(e.createElementVNode("input",{type:"range","onUpdate:modelValue":c[0]||(c[0]=u=>o.value=u),min:i.min,max:i.max,step:i.step,disabled:s.value,ref:"range",class:e.normalizeClass(["w-full cursor-pointer accent-blue-500",[i.modelValue?"":"text-opacity-50",e.unref(n)].join(" ")])},null,10,mx),[[e.vModelText,o.value]]),e.withDirectives(e.createElementVNode("input",{class:"text-sm text-gray-600 border border-solid border-stone-200 rounded-md p-2 max-w-[100px]",type:"number","onUpdate:modelValue":c[1]||(c[1]=u=>o.value=u),disabled:s.value},null,8,px),[[e.vModelText,o.value]])]))}}),hx=["type","value","onInput","placeholder","disabled"],gx=e.defineComponent({__name:"vs-input-array",props:e.mergeModels({count:{default:1},limit:{default:r=>r.count??1},inputType:{default:"text"},style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{default:""}},{modelValue:{default:[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,{inputClass:l}=gt(t.style),n=e.useModel(r,"modelValue"),a=e.computed(()=>!!t.disabled),o=e.computed(()=>t.placeholder??"");e.watchEffect(()=>{var c;const i=((c=n.value)==null?void 0:c.length)??0;i<t.count&&(n.value=[...n.value??[],...Array(t.count-i)])});function s(i,c){if(a.value)return;const u=i.target.value,d=[...n.value];d[c]=t.inputType==="text"?u:Number(u),n.value=d}return(i,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["grid gap-2",`grid-cols-${i.limit}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.count,u=>{var d;return e.openBlock(),e.createElementBlock("input",{type:i.inputType,value:((d=n.value)==null?void 0:d[u-1])??"",onInput:m=>s(m,u-1),placeholder:o.value,disabled:a.value,class:e.normalizeClass(["py-1.5 px-3 block w-full placeholder:text[#767f8f] bg-white",[e.unref(l),{"!border-red-600":i.error}]]),style:{border:"1px solid #CFD9E0"}},null,42,hx)}),256))],2))}}),yx={class:"flex items-center gap-2 w-full"},bx={class:"relative flex-1"},kx=["placeholder","disabled","onKeydown"],xx=["disabled"],wx={key:0,xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},_x={key:1,class:"animate-spin h-5 w-5 text-gray-400",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},Ex={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/50"},Cx={class:"bg-white text-gray-900 rounded-lg shadow-lg w-[480px] max-h-[80vh] overflow-y-auto"},Vx={class:"p-3 border-b font-semibold text-gray-900 flex justify-between items-center"},Nx=["onClick"],vx={key:0,class:"p-4 text-sm text-gray-500"},Bx=e.defineComponent({__name:"vs-input-address",props:e.mergeModels({style:{default:()=>({})},customClass:{default:""},disabled:{type:Boolean,default:!1},modelValue:{},error:{default:""},name:{},placeholder:{},api:{default:""},geom:{default:""},includes:{default:()=>[]}},{modelValue:{default:""},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue","update:geom"],["update:modelValue"]),setup(r,{emit:t}){const l=r,n=t,{inputClass:a}=gt(l.style),o=e.useModel(r,"modelValue"),s=e.computed({get:()=>o.value,set:b=>{o.value=b}}),i=e.ref(!1),c=e.ref([]),u=e.ref(!1),d=e.computed(()=>l.placeholder??""),m=e.computed(()=>!!l.disabled),f=e.inject("values");function p(){!m.value&&s.value.trim()&&h()}async function h(){var k;const b=(s.value||"").trim();if(!b)return;let w=b;if((k=l.includes)!=null&&k.length&&(f!=null&&f.value)){const _=l.includes.map(N=>{var V;return(V=f.value)==null?void 0:V[N]}).filter(Boolean);_.length&&(w=`${_.join(", ")}, ${b}`)}const x=l.api.replace("{{value}}",encodeURIComponent(w));i.value=!0;try{const _=await(await fetch(x)).json();c.value=Array.isArray(_)?_:[],u.value=!0}catch(_){console.error("Address search error:",_)}finally{i.value=!1}}function g(){u.value=!u.value}function y(b){if(!b)return;u.value=!1;const w=parseFloat(b.lat),x={type:"Point",coordinates:[parseFloat(b.lon),w]};l.geom&&(f!=null&&f.value)&&(f.value[l.geom]=x),n("update:geom",x)}return(b,w)=>{var x;return e.openBlock(),e.createElementBlock("div",yx,[e.createElementVNode("div",bx,[e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":w[0]||(w[0]=k=>s.value=k),placeholder:d.value,disabled:m.value,class:e.normalizeClass(["py-1.5 px-3 block w-full bg-white border rounded-md placeholder:text-gray-400 focus:ring-2 focus:ring-blue-500",[e.unref(a),{"!border-red-600":l.error}]]),style:{border:"1px solid #CFD9E0"},onKeydown:e.withKeys(e.withModifiers(p,["prevent"]),["enter"])},null,42,kx),[[e.vModelText,s.value]]),c.value.length?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-500 hover:text-blue-600",onClick:g,title:"Show search results"},w[2]||(w[2]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("circle",{cx:"12",cy:"12",r:"10"}),e.createElementVNode("path",{d:"M12 16v-4"}),e.createElementVNode("path",{d:"M12 8h.01"})],-1)]))):e.createCommentVNode("",!0)]),e.createElementVNode("button",{type:"button",onClick:h,class:"flex items-center justify-center px-2 py-2 border rounded-md bg-white hover:bg-gray-50 text-gray-600 hover:text-blue-600 disabled:opacity-50 h-[38px]",disabled:i.value||!((x=s.value)!=null&&x.trim())},[i.value?(e.openBlock(),e.createElementBlock("svg",_x,w[4]||(w[4]=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z"},null,-1)]))):(e.openBlock(),e.createElementBlock("svg",wx,w[3]||(w[3]=[e.createElementVNode("circle",{cx:"11",cy:"11",r:"8"},null,-1),e.createElementVNode("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"},null,-1)])))],8,xx),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[u.value?(e.openBlock(),e.createElementBlock("div",Ex,[e.createElementVNode("div",Cx,[e.createElementVNode("div",Vx,[w[6]||(w[6]=e.createElementVNode("span",null,"Search results",-1)),e.createElementVNode("button",{class:"text-gray-500 hover:text-blue-600",onClick:w[1]||(w[1]=k=>u.value=!1),title:"Close"},w[5]||(w[5]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[e.createElementVNode("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.createElementVNode("line",{x1:"6",y1:"6",x2:"18",y2:"18"})],-1)]))]),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(k,_)=>(e.openBlock(),e.createElementBlock("li",{key:_,onClick:N=>y(k),class:"px-3 py-2 cursor-pointer hover:bg-gray-100 border-b text-sm"},e.toDisplayString(k.display_name),9,Nx))),128))]),c.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",vx," No results found "))])])):e.createCommentVNode("",!0)]))])}}}),De={VsInputText:Ol,VsInputRadio:Es,"vs-input-text":Ol,"vs-input-password":J0,"vs-input-textarea":sb,"vs-input-mask":Fh,"vs-input-number":rh,"vs-input-radio":Es,"vs-input-select":ta,"vs-input-switcher":ws,"vs-input-static":_s,"vs-input-container":Ry,"vs-input-date":Qh,"vs-input-checkbox":Cs,"vs-input-file":Pg,"vs-input-html":_s,"vs-input-email":Ph,"vs-input-datatable":f1,"vs-input-map":Bk,"vs-input-file-list":hy,"vs-input-tags":Ok,"vs-input-slug":jk,"vs-input-codegen":Yk,"vs-input-key-value":ox,"vs-input-range":fx,"vs-input-color":dx,"vs-input-native-select":ta,"vs-input-array":gx,"vs-input-address":Bx},Sx=e.defineComponent({__name:"behavior",props:{api:{},set:{},button:{},error:{},value:{}},setup(r){const t=r,l=e.inject("values");async function n(){try{if(!t.api)return;const a=t.api.replace("{{value}}",t.value),o=await fetch(a);if(!o.ok){se({type:"warning",title:"Validation",message:"При спробі завантажити дані виникла помилка."});return}const s=await o.json();if(!t.set||!l)return;for(const[i,c]of Object.entries(t.set))l.value[i]=s.result[c]}catch(a){console.error(t.error,a)}}return(a,o)=>(e.openBlock(),e.createElementBlock("button",{onClick:n,class:"vs-button relative inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border !border-gray-200 hover:text-white bg-white text-blue-500 hover:border-blue-500 hover:bg-blue-500 focus:ring-blue-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1 ml-0 md:ml-2 mt-2 md:mt-0 py-[8px] md:w-2/4 whitespace-nowrap w-full"},e.toDisplayString(a.button),1))}}),Ax={class:"flex flex-col gap-1 w-full"},Dx={key:0,class:"text-sm text-gray-500"},Ms=e.defineComponent({__name:"vs-compact-form-layout",props:e.mergeModels({item:{default:{}},layout:{default:"default"},style:{default:{}},type:{default:""},error:{type:[String,Boolean]},columns:{default:()=>({container:12,label:3})}},{modelValue:{default:null},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.computed(()=>Z0[`${t.layout}`]),a=e.computed(()=>De==null?void 0:De[`vs-input-${t.item.type}`]),o=e.computed(()=>{var d;const i=e.unref(a);if(!i)return new Set;const c=i.props??((d=i.__vccOpts)==null?void 0:d.props);if(!c)return new Set;const u=Array.isArray(c)?c:Object.keys(c);return new Set(u)}),s=e.computed(()=>{const i=t.item??{},c=o.value;return c.size?Object.fromEntries(Object.entries(i).filter(([u])=>c.has(u))):{}});return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{ua:t.item.ua,error:t.error||"",item:i.item,columns:t.columns,label:t.item.label},{default:e.withCtx(()=>{var u,d;return[e.createElementVNode("div",{class:e.normalizeClass(["flex w-full",`${t.item.type}-component`])},[e.createElementVNode("div",Ax,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps(s.value,{modelValue:l.value,"onUpdate:modelValue":c[0]||(c[0]=m=>l.value=m)}),null,16,["modelValue"])),i.item.description&&t.layout!=="settings"?(e.openBlock(),e.createElementBlock("p",Dx,e.toDisplayString(i.item.description),1)):e.createCommentVNode("",!0)]),(u=i.item.behavior)!=null&&u.api&&((d=i.item.behavior)!=null&&d.button)?(e.openBlock(),e.createBlock(Sx,e.mergeProps({key:0},i.item.behavior,{value:l.value}),null,16,["value"])):e.createCommentVNode("",!0)],2)]}),_:1},8,["ua","error","item","columns","label"]))}}),Mx={class:"text-sm text-gray-800 mb-[4px] font-medium dark:text-neutral-300"},Tx={class:"vs-compact-form-navigation__rail mt-[6px]"},Lx=["onClick"],$x=e.defineComponent({__name:"vs-compact-form-navigation",props:{target:{},scrollContainer:{},title:{default:"Навігація"},enabled:{type:Boolean,default:!0},width:{default:400}},setup(r,{expose:t}){const l=r,n=e.ref([]),a=e.ref(""),o=e.ref(""),s=e.computed(()=>!!l.enabled),i=e.computed(()=>["vs-compact-form-navigation flex flex-col pl-[6px] pt-[8px] pr-[8px]","sticky top-0 self-start shrink-0","max-h-full min-h-0 overflow-y-auto"]),c=e.computed(()=>{const D=l.width;if(D==null)return{};const q=typeof D=="number"?`${D}px`:`${D}`;return{width:q,minWidth:q}});let u=null,d=0,m=0,f=null,p=null,h=null;const g=()=>$(),y=()=>w();e.watch(()=>l.target,async D=>{if(N(),!D){f=null,n.value=[],a.value="";return}f=D,s.value&&(await e.nextTick(),_(D),w())},{immediate:!0}),e.watch(()=>l.scrollContainer,D=>{if(!s.value){p=D??null;return}b(D??null),e.nextTick(()=>w())},{immediate:!0}),e.onMounted(()=>{l.scrollContainer||b(null),w()}),e.onBeforeUnmount(()=>{N(),b(null,!0),f=null,typeof window<"u"&&(d&&window.cancelAnimationFrame(d),m&&window.cancelAnimationFrame(m))});function b(D,q=!1){if(h&&(h(),h=null),q){p=null;return}if(p=D??null,typeof window>"u")return;const Q=D??window,R=window;Q.addEventListener("scroll",g,{passive:!0}),R.addEventListener("resize",y),h=()=>{Q.removeEventListener("scroll",g),R.removeEventListener("resize",y)}}function w(){if(!s.value||!f)return;d&&typeof window<"u"&&window.cancelAnimationFrame(d);const D=()=>{x(),d=0};typeof window>"u"?D():d=window.requestAnimationFrame(D)}function x(){if(!s.value||!f)return;const D=Array.from(f.querySelectorAll("h1, h2")),q=new Set,Q=[];D.forEach((R,I)=>{var pe;const F=((pe=R.textContent)==null?void 0:pe.trim())??"";if(!F)return;let A=(R.getAttribute("id")??"").trim();A||(A=k(F)||`heading-${I+1}`);let z=A,ee=1;for(;q.has(z);)z=`${A}-${ee+=1}`;R.id!==z&&Object.assign(R,{id:z}),q.add(z),Q.push({id:z,text:F,level:R.tagName.toLowerCase()==="h1"?1:2})}),n.value=Q,Q.length||(a.value=""),P()}function k(D){return D.toLowerCase().replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-")}function _(D){!D||!s.value||typeof MutationObserver>"u"||(N(),u=new MutationObserver(()=>w()),u.observe(D,{childList:!0,subtree:!0}))}function N(){u&&(u.disconnect(),u=null)}function V(D){const q=p;if(!q)return typeof window>"u"?D.offsetTop:D.getBoundingClientRect().top+window.scrollY;const Q=D.getBoundingClientRect(),R=q.getBoundingClientRect();return Q.top-R.top+q.scrollTop}function P(){if(!s.value||!n.value.length)return;const D=p,q=(D?D.scrollTop:null)||(typeof window<"u"?window.scrollY:0),Q=(D?D.clientHeight:null)||(typeof window<"u"?window.innerHeight:0),R=q+Q;let I=null;for(let A=0;A<n.value.length;A+=1){const z=n.value[A],ee=document.getElementById(z.id);if(ee){const pe=V(ee);pe+ee.offsetHeight>q&&pe<R&&(I=z.id)}}!I&&o.value&&(I=o.value),I&&(o.value=I);const F=D?D.scrollHeight-D.clientHeight:document.documentElement.scrollHeight-window.innerHeight;q+5>=F&&(I=n.value[n.value.length-1].id),I&&(a.value=I)}function $(){s.value&&(m&&window.cancelAnimationFrame(m),m=window.requestAnimationFrame(()=>{P(),m=0}))}function M(D){if(!s.value)return;const q=document.getElementById(D);if(!q)return;const Q=p,R=Math.max(0,V(q));Q?Q.scrollTo({top:R,behavior:"smooth"}):typeof window<"u"&&window.scrollTo({top:R,behavior:"smooth"})}return t({refresh:w}),(D,q)=>s.value&&n.value.length?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(i.value),style:e.normalizeStyle(c.value)},[e.createElementVNode("h2",Mx,e.toDisplayString(D.title),1),e.createElementVNode("div",Tx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,Q=>(e.openBlock(),e.createElementBlock("div",{key:Q.id,class:e.normalizeClass(["vs-compact-form-navigation__item relative",Q.level===2?"vs-compact-form-navigation__item--nested":"",Q.id===a.value?"vs-compact-form-navigation__item--active":""])},[e.createElementVNode("button",{type:"button",onClick:R=>M(Q.id),class:e.normalizeClass(["vs-compact-form-navigation__button flex gap-x-3 py-[6px] pr-3 text-sm duration-200 hover:text-gray-800",Q.level===2?"pl-[15px]":"pl-[18px]",Q.id===a.value?"text-gray-800":"text-gray-500"])},[e.createElementVNode("span",null,e.toDisplayString(Q.text),1)],10,Lx)],2))),128))])],6)):e.createCommentVNode("",!0)}}),Fx=_e($x,[["__scopeId","data-v-1584a562"]]),Ts={required:"Це поле є обов’язковим",email:"Неправильний email"},Ix=r=>r?!1:Ts.required,Ox=r=>r?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)?!1:Ts.email:!1,Px=(r,t)=>{const l=t.pattern??t.regexp;return!(typeof l=="string"?new RegExp(l):l).test(r)&&r?t.message:!1},Rx=(r,t)=>!1,Ux=(r,t)=>{switch(typeof t=="string"?t:t.type){case"required":return Ix(r);case"email":return Ox(r);case"regexp":return Px(r,t);case"custom":return Rx();default:return!1}},jx={autocomplete:"select",combobox:"select",datepicker:"date",markedtext:"mask",html:"static",geom:"map",filelist:"file-list",datalist:"datatable",file:"file",dropzone:"file"};function Ls(r){const t=r.toLowerCase();return jx[t]||t}function ra(r,t=!1){if(Array.isArray(r)){const n=[];return r.forEach(a=>{const o={...a};o.name=(a.name||a.id||a.key||"").toString(),o.type=Ls(a.type),o.label=a.label||a.ua,o.rules=a.rules||a.validators,o.type==="email"&&!o.rules&&(o.rules=["email"]),a.data&&(o.api=`/api/suggest/${a.data}`),o.disabled=t||o.disabled,Array.isArray(o.schema)&&(o.schema=ra(o.schema,o.disabled)),n.push(o)}),n}const l=[];return Object.entries(r).forEach(n=>{const a={name:n[0],...n[1],type:Ls(n[1].type),label:n[1].label||n[1].ua,rules:n[1].rules||n[1].validators,disabled:t};a.type==="email"&&!a.rules&&(a.rules=["email"]),n[1].type.includes("list")&&(a.multiple=!0),!a.api&&n[1].data&&(a.api=`/api/suggest/${n[1].data}`),Array.isArray(a.schema)&&(a.schema=ra(a.schema,a.disabled)),l.push(a)}),l}function zx(r,t,l=!1){const n=e.computed(()=>ra(t,typeof l=="boolean"?l:l.value)),a=e.ref({});function o(c){var f;const u=c==null?void 0:c.conditions;if(!u)return!0;const d=Array.isArray(u)?u[0]:u,m=(f=r==null?void 0:r.value)==null?void 0:f[d];return As(m,u)}const s=(c=n.value,u=!0)=>(c.forEach(d=>{if(d.rules){if(!o(d)){delete a.value[d.name];return}let m=!1,f=null;d.rules.forEach(p=>{const h=Ux(r.value[d.name],p);h&&(m=!0,!f&&typeof h=="string"&&(f=h))}),m&&f?a.value[d.name]=f:delete a.value[d.name]}d.schema&&s(d.schema,!1)}),u&&Object.values(a.value).some(Boolean)?a.value:null),i=e.computed(()=>{var c;return(c=n.value)==null?void 0:c.filter(u=>u.hidden!==!0&&o(u))});return{errors:a,validate:s,reset:()=>{r.value={},a.value={}},visibleSchema:i}}const Hx={class:"flex w-full h-full min-h-0 gap-6"},qx={key:0,"data-orientation":"horizontal",role:"none",class:"mt-1 shrink-0 h-[1px] w-full bg-slate-100 dark:bg-slate-600"},He=e.defineComponent({__name:"vs-compact-form",props:e.mergeModels({schema:{default:()=>[]},style:{default:()=>({})},modelValue:{},layout:{default:()=>"default"},formId:{default:()=>""},disabled:{type:Boolean,default:!1},navigation:{type:Boolean,default:!1},navWidth:{default:400},columns:{}},{form:{default:()=>({})},formModifiers:{},values:{default:()=>({})},valuesModifiers:{}}),emits:e.mergeModels(["handle-submit","update:modelValue"],["update:form","update:values"]),setup(r,{expose:t,emit:l}){const n=l,a=r,o=e.useModel(r,"form"),s=e.useModel(r,"values"),{errors:i,validate:c,reset:u,visibleSchema:d}=zx(s,a.schema,e.toRef(a,"disabled")),m=e.ref(null),f=e.ref(null),p=e.computed(()=>a.navigation),h=e.computed(()=>a.navWidth),g=e.computed(()=>{var P;return(P=a.style)==null?void 0:P.columns}),y=Object.freeze({container:12,label:3}),b=e.computed(()=>a.columns??g.value??y),w=e.computed(()=>a.columns!=null||g.value!=null),x=e.computed(()=>w.value?"horizontal":a.layout),k=P=>P!=null&&P.columns?"horizontal":x.value,_=P=>(P==null?void 0:P.columns)??b.value,N=()=>{n("update:modelValue",s.value),c(),n("handle-submit",s.value)};t({validate:c,reset:u,errors:i}),e.onMounted(()=>{a.modelValue&&(s.value=a.modelValue),o.value={value:s.value,errors:i.value,reset:u,validate:c,formId:a.formId}});function V(P,$){if(P===$)return!0;if(typeof P!="object"||typeof $!="object"||!P||!$)return!1;const M=Object.keys(P),D=Object.keys($);return M.length!==D.length?!1:M.every(q=>P[q]===$[q])}return e.provide("form",o),e.provide("values",s),(P,$)=>(e.openBlock(),e.createElementBlock("div",Hx,[e.createElementVNode("div",{class:"flex-1 min-h-0 overflow-y-auto overflow-x-visible",ref_key:"formScrollContainer",ref:f},[e.createElementVNode("form",{ref_key:"formRef",ref:m,onSubmit:e.withModifiers(N,["prevent"]),class:e.normalizeClass(["grid grid-cols-12 p-1",x.value==="default"?"gap-6":"gap-4"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(M,D)=>(e.openBlock(),e.createElementBlock("div",{key:M.name,class:e.normalizeClass(k(M)==="horizontal"?"col-span-12":`col-span-${M.col||12}`)},[e.createVNode(Ms,{style:e.normalizeStyle(P.style),item:M,layout:k(M),columns:_(M),"model-value":s.value[M.name],"onUpdate:modelValue":q=>{const Q=s.value[M.name];V(Q,q)||(s.value[M.name]=q)},error:e.unref(i)[M.name]},null,8,["style","item","layout","columns","model-value","onUpdate:modelValue","error"]),k(M)==="settings"&&D+1!==e.unref(d).length?(e.openBlock(),e.createElementBlock("div",qx)):e.createCommentVNode("",!0)],2))),128))],34)],512),e.createVNode(Fx,{target:m.value,"scroll-container":f.value,enabled:p.value,width:h.value},null,8,["target","scroll-container","enabled","width"])]))}}),Kx={class:"relative"},Gx={class:"w-full h-full fixed top-0 start-0 z-[1000] bg-black bg-opacity-50"},Wx={class:"m-[10px] fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 min-h-0 h-fit max-h-[80vh] overflow-hidden opacity-1 flex flex-col bg-white dark:bg-[#1A1A1A] border dark:border-[#454545] pointer-events-auto shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-xl lg:w-7/12 w-11/12"},Yx={class:"py-2.5 px-4 flex justify-between items-center border-0 border-b border-solid border-gray-200 dark:border-b-[#454545]"},Xx={class:"font-medium text-gray-800 dark:text-[#ffffff]"},Zx={class:"p-4 mim-h-0 h-full overflow-auto"},Qx=e.defineComponent({__name:"modal-edit",props:{schema:{},defaultValue:{},mode:{},token:{},form:{}},emits:["close","save","edit"],setup(r,{emit:t}){const l=r,n=t,a=e.ref(l.schema),o=e.ref(l.defaultValue?JSON.parse(JSON.stringify(l.defaultValue)):{}),s=e.ref({}),i=e.ref(),c=e.ref(l.mode);async function u(){const m=s.value.validate();if(m){se({type:"warning",title:"Помилка валідації",message:Object.entries(m).map(([f,p])=>`${f}: ${p}`).join(`
|
|
239
239
|
`)});return}if(i.value)try{const f=await fetch(`/api/table/${i.value}`,{method:c.value==="add"?"POST":"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(o.value)});if(f.ok)await f.json(),se({type:"success",title:"Успішно",message:`Дані успішно ${c.value==="add"?"збережено":"оновлено"}`}),n("save",o.value);else if(f.status===400){const p=await f.json().catch(()=>({}));se({type:"warning",title:"Помилка валідації",message:p.message||"Некоректні дані (400)"})}else f.status===500?se({type:"error",title:"Серверна помилка",message:"Виникла помилка на сервері (500)"}):se({type:"error",title:"Помилка",message:`Статус: ${f.status}`})}catch(f){se({type:"error",title:"Помилка з’єднання",message:f.message||"Не вдалося виконати запит"})}}function d(){n("close")}return e.onMounted(async()=>{try{if(l.form){const m=await fetch(`/api/template/form/${l.form}`);if(!m.ok){se({type:m.status>=400&&m.status<500?"warning":"error",title:"Error",message:`Error code: ${m.status}`});return}const f=await m.json();a.value=f.schema,i.value=f.token}else if(l.token){i.value=l.token;const m=await fetch(`/api/form/${i.value}`);if(!m.ok){se({type:m.status>=400&&m.status<500?"warning":"error",title:"Error",message:`Error code: ${m.status}`});return}const f=await m.json();a.value=f.schema,f.data?o.value=f.data:c.value="add"}}catch(m){se({type:"error",title:"Error",message:m.message||"Unexpected error"}),console.error(m)}}),(m,f)=>(e.openBlock(),e.createElementBlock("div",Kx,[e.createElementVNode("div",Gx,[e.createElementVNode("div",Wx,[e.createElementVNode("div",Yx,[e.createElementVNode("h3",Xx,e.toDisplayString(c.value==="add"?"Додати":"Змінити"),1),e.createElementVNode("button",{onClick:d,type:"button",class:"size-8 inline-flex justify-center items-center gap-x-2 rounded-full border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 focus:outline-none focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:bg-neutral-700 dark:hover:bg-neutral-600 dark:text-neutral-400 dark:focus:bg-neutral-600"},f[2]||(f[2]=[e.createElementVNode("span",{class:"sr-only"},"Close",-1),e.createElementVNode("svg",{class:"flex-shrink-0 w-4 h-4",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"},[e.createElementVNode("path",{d:"M18 6 6 18"}),e.createElementVNode("path",{d:"m6 6 12 12"})],-1)]))]),e.createElementVNode("div",Zx,[a.value?(e.openBlock(),e.createBlock(He,{key:0,schema:a.value,values:o.value,"onUpdate:values":f[0]||(f[0]=p=>o.value=p),form:s.value,"onUpdate:form":f[1]||(f[1]=p=>s.value=p)},null,8,["schema","values","form"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"vs-form__head mr-5 mb-5 mt-3 flex items-center justify-end sticky top-0 left-0 z-[60] bg-white"},[e.createElementVNode("button",{type:"button",onClick:d,class:"vs-button inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border !border-gray-200 hover:text-white bg-white text-red-500 hover:border-red-500 hover:bg-red-500 focus:ring-red-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1 mr-2"}," Скасувати "),e.createElementVNode("button",{onClick:u,type:"button",class:"vs-button inline-flex border-solid justify-center items-center gap-2 rounded-md font-semibold focus:outline-none text-sm transition-all border-1 border-transparent text-white bg-blue-500 hover:bg-blue-600 focus:ring-blue-500 py-1.5 px-5 focus:ring-1 focus:ring-offset-1"}," Зберегти ")])])])]))}}),$s=(r={mode:"edit",schema:null})=>new Promise(t=>{const{close:l}=A0({title:r.mode==="add"?"Додати":"Редагувати",template:"",visible:!0,size:"medium",closeClickBack:!0,content:Qx,contentProps:{...r,onClose:()=>{t(null),l()},onSave:n=>{t(n),l()}}})});He.install=function(r){r.component("VForm",He),Object.assign(r.config.globalProperties,{$form:$s}),r.provide("form",$s),window.v3plugin||(window.v3plugin={})};const $t=(r,t)=>{const l=r.__vccOpts||r;for(const[n,a]of t)l[n]=a;return l},Jx={},ew={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 tw(r,t){return e.openBlock(),e.createElementBlock("svg",ew,[...t[0]||(t[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 rw=$t(Jx,[["render",tw]]),lw={class:"flex items-center justify-between w-full text-sm"},nw={class:"flex items-center cursor-pointer w-full"},aw={key:0,width:"16",height:"auto",src:"data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="},ow=["value"],sw={class:"w-[calc(100%-18px)] flex flex-row items-center justify-between pl-[10px]"},iw={class:"flex flex-row items-center font-normal text-gray-800 gap-x-1"},cw={key:0,class:"text-xs text-gray-500 dark:text-neutral-500 pr-1"},la=e.defineComponent({__name:"list-item",props:{layout:{},count:{},type:{},label:{},value:{},isSelected:{type:Boolean},color:{},highlighted:{type:Boolean}},emits:["itemClick"],setup(r,{expose:t,emit:l}){const n=r,a=l;function o(){a("itemClick",n.value)}const s=e.ref(null);return t({el:s}),(i,c)=>(e.openBlock(),e.createElementBlock("div",{class:"flex items-center w-full rounded-lg group hover:bg-gray-100",ref_key:"el",ref:s},[e.createElementVNode("div",lw,[e.createElementVNode("div",nw,[e.createElementVNode("label",{for:"radio-9740",class:e.normalizeClass([["inline","popover"].includes(r.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":r.highlighted}]),onClick:e.withModifiers(o,["stop","prevent"])},[e.createElementVNode("div",{class:e.normalizeClass(["w-[18px] h-[18px] border flex items-center justify-center",[r.type=="checkbox"?"rounded-[4px]":"rounded-full",r.color?`bg-[${r.color}] border-[#ffffff]`:r.isSelected?"bg-[#2563eb] border-[#ffffff]":"bg-[#ffffff] border-[#d9d9d9]"]])},[r.isSelected?(e.openBlock(),e.createElementBlock("img",aw)):e.createCommentVNode("",!0)],2),e.createElementVNode("input",{type:"checkbox",class:"hidden",id:"radio-9740",value:r.value},null,8,ow),e.createElementVNode("div",sw,[e.createElementVNode("span",iw,e.toDisplayString(r.label??"Відсутні данні"),1),r.count?(e.openBlock(),e.createElementBlock("div",cw," ("+e.toDisplayString(r.count)+") ",1)):e.createCommentVNode("",!0)])],2)])])],512))}});function Fs(r,t){const{options:l=[],limit:n=20}=r;function a(x){return Array.isArray(x)?x[0]:x}const o=e.ref(a(r.modelValue)),s=e.ref(""),i=e.ref(!1),c=e.ref([]),u=e.ref("id"),d=e.ref("text"),m=e.ref(!1),f=e.ref(r.layout!=="popover"&&l.length>n);function p(x){const k=x.find(Boolean)??{},_=["id","value","code","key"].find(V=>V in k)??"id",N=["text","label","name","title"].find(V=>V in k)??"text";return{autoValueKey:_,autoLabelKey:N}}if(l.length>0){const x=p(l);u.value=x.autoValueKey,d.value=x.autoLabelKey}const h=e.computed(()=>{const x=c.value;return r.layout==="popover"||m.value?x:x.slice(0,n)});e.watch(()=>r.modelValue,x=>{o.value=a(x)},{immediate:!0}),c.value=[...l].sort((x,k)=>r.sort==="count"?k.count&&x.count?k.count-x.count:0:r.sort==="name"?String(x[d.value]??"").localeCompare(String(k[d.value]??"")):0);function g(x){return o.value===x[u.value]}function y(x){o.value=x[u.value],t("update:modelValue",o.value),t("change",{name:r.name,value:o.value})}function b(){o.value=void 0,t("update:modelValue",o.value),t("clear",r.name)}function w(){m.value=!m.value}return{innerValue:o,searchTerm:s,filteredOptions:h,isSelected:g,selectItem:y,clear:b,toggleShowAll:w,isReqProc:i,showAll:m,isEnableShowAll:f,labelKey:d,valueKey:u,allOptions:c}}const dw={},uw={class:"w-48 mx-auto",viewBox:"0 0 178 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"};function mw(r,t){return e.openBlock(),e.createElementBlock("svg",uw,[...t[0]||(t[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 na=$t(dw,[["render",mw]]),pw={},fw={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 hw(r,t){return e.openBlock(),e.createElementBlock("svg",fw,[...t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const Ul=$t(pw,[["render",hw]]),gw={},yw={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 bw(r,t){return e.openBlock(),e.createElementBlock("svg",yw,[...t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const aa=$t(gw,[["render",bw]]),kw={key:0,class:"w-full"},xw={class:"flex flex-col items-center justify-center p-5 text-center"},ww={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},_w={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Ew=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=e.ref(null),o=l,{innerValue:s,filteredOptions:i,isSelected:c,selectItem:u,clear:d,toggleShowAll:m,isReqProc:f,showAll:p,isEnableShowAll:h,labelKey:g,valueKey:y,allOptions:b}=Fs({...n,modelValue:n.modelValue??n.default??""},o);return t({clear:d,inputTextRef:a}),e.watch(()=>n.modelValue,w=>{w===void 0&&(s.value=void 0)}),(w,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([r.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox"])},[e.createElementVNode("div",{class:e.normalizeClass([r.layout==="popover"?"flex-1 overflow-y-auto max-h-64 p-2":"",r.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),k=>(e.openBlock(),e.createBlock(la,{layout:r.layout,key:k[e.unref(y)],count:k.count,label:k[e.unref(g)],color:k.color,type:"radio",value:k[e.unref(y)],"is-selected":e.unref(c)(k),onItemClick:_=>e.unref(u)(k)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),128))],2),r.type==="select"&&e.unref(i).length===0&&!e.unref(f)?(e.openBlock(),e.createElementBlock("div",kw,[e.createElementVNode("div",xw,[e.createVNode(na),x[4]||(x[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),r.layout!=="popover"&&r.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(p)&&e.unref(h)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:x[0]||(x[0]=(...k)=>e.unref(m)&&e.unref(m)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[x[5]||(x[5]=e.createTextVNode(" Показати більше ",-1)),e.createVNode(Ul)])):e.createCommentVNode("",!0),e.unref(p)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:x[1]||(x[1]=(...k)=>e.unref(m)&&e.unref(m)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[x[6]||(x[6]=e.createTextVNode(" Показати менше ",-1)),e.createVNode(aa)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),r.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[r.layout==="inline"?(e.openBlock(),e.createElementBlock("div",ww,[e.createTextVNode(e.toDisplayString(e.unref(s)||e.unref(s)===null?1:0)+" з "+e.toDisplayString(e.unref(b).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[2]||(x[2]=(...k)=>e.unref(d)&&e.unref(d)(...k))}," Очистити ",512),[[e.vShow,e.unref(s)!==""&&e.unref(s)!==void 0]])])):e.createCommentVNode("",!0),r.layout==="popover"?(e.openBlock(),e.createElementBlock("div",_w,[e.createElementVNode("span",null,e.toDisplayString(e.unref(s)||e.unref(s)===null?1:0)+" з "+e.toDisplayString(e.unref(b).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[3]||(x[3]=(...k)=>e.unref(d)&&e.unref(d)(...k))}," Очистити ",512),[[e.vShow,e.unref(s)!==""&&e.unref(s)!==void 0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}});function Is(r,t){const{options:l=[],limit:n=20}=r;function a(x){return Array.isArray(x)?x:x?[x]:[]}const o=e.ref(a(r.modelValue)),s=e.ref(""),i=e.ref(!1),c=e.ref([]),u=e.ref("id"),d=e.ref("text"),m=e.ref(!1),f=e.ref(r.layout!=="popover"&&l.length>n);function p(x){const k=x.find(Boolean)??{},_=["id","value","code","key"].find(V=>V in k)??"id",N=["text","label","name","title"].find(V=>V in k)??"text";return{autoValueKey:_,autoLabelKey:N}}if(l.length>0){const x=p(l);u.value=x.autoValueKey,d.value=x.autoLabelKey}const h=e.computed(()=>{const x=c.value;return r.layout==="popover"||m.value?x:x.slice(0,n)});e.watch(()=>r.modelValue,x=>{o.value=a(x)},{immediate:!0}),c.value=[...l].sort((x,k)=>r.sort==="count"?k.count&&x.count?k.count-x.count:0:r.sort==="name"?String(x[d.value]).localeCompare(String(k[d.value])):0);function g(x){return o.value&&o.value.includes(x[u.value])}function y(x){const k=o.value.includes(x[u.value]);o.value=k?o.value.filter(_=>_!==x[u.value]):[...o.value,x[u.value]],t("update:modelValue",o.value),t("change",{name:r.name,value:o.value})}function b(){o.value=[],t("update:modelValue",o.value),t("clear",r.name)}function w(){m.value=!m.value}return{innerValue:o,searchTerm:s,filteredOptions:h,isSelected:g,selectItem:y,clear:b,toggleShowAll:w,isReqProc:i,showAll:m,isEnableShowAll:f,labelKey:d,valueKey:u,allOptions:c}}const Os={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"},uk:{search:"Пошук",more:"Показати більше",less:"Показати меньше",selected:"обрано",clear:"Очистити",notfound:"Нічого не знайдено",period:"Період",today:"Сьогодні",week:"Тиждень",month:"Місяць",quarter:"Квартал",year:"Рік",alltime:"Весь час",prev:"Попередній період",next:"Настпуний період"}};function Cw(r){const t=r.split(".")[1];return(Os[localStorage.locale||navigator.language]||Os.uk)[t]}function Mr(){const r=e.getCurrentInstance();return r.appContext.config.globalProperties.$i18n?r.appContext.config.globalProperties.$t:Cw}const Vw={key:0,class:"w-full"},Nw={class:"flex flex-col items-center justify-center p-5 text-center"},vw={class:"max-w-sm mx-auto mt-6"},Bw={class:"font-medium text-gray-800 dark:text-neutral-200"},Sw={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},Aw={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},Ps=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=Mr(),a=r,o=l,{innerValue:s,filteredOptions:i,isSelected:c,selectItem:u,clear:d,toggleShowAll:m,isReqProc:f,showAll:p,isEnableShowAll:h,labelKey:g,valueKey:y,allOptions:b}=Is({...a,modelValue:a.modelValue},o);return e.watch(()=>a.modelValue,w=>{w===void 0&&(s.value=[])}),t({clear:d}),(w,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([r.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",{class:e.normalizeClass([r.layout==="popover"?"flex-1 overflow-y-auto max-h-64 p-2":"",r.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),k=>(e.openBlock(),e.createBlock(la,{layout:r.layout,count:k.count,label:k[e.unref(g)],color:k.color,type:"checkbox",value:k[e.unref(y)],"is-selected":e.unref(c)(k),onItemClick:_=>e.unref(u)(k)},null,8,["layout","count","label","color","value","is-selected","onItemClick"]))),256))],2),r.type==="select"&&e.unref(i).length===0&&!e.unref(f)?(e.openBlock(),e.createElementBlock("div",Vw,[e.createElementVNode("div",Nw,[e.createVNode(na),e.createElementVNode("div",vw,[e.createElementVNode("p",Bw,e.toDisplayString(e.unref(n)("filter.notfound")),1),x[4]||(x[4]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),r.layout!=="popover"&&r.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(p)&&e.unref(h)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:x[0]||(x[0]=(...k)=>e.unref(m)&&e.unref(m)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.more"))+" ",1),e.createVNode(Ul)])):e.createCommentVNode("",!0),e.unref(p)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:x[1]||(x[1]=(...k)=>e.unref(m)&&e.unref(m)(...k)),class:"inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.less"))+" ",1),e.createVNode(aa)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),r.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[r.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Sw,[e.createTextVNode(e.toDisplayString(e.unref(s).length)+" / "+e.toDisplayString(e.unref(b).length)+" "+e.toDisplayString(e.unref(n)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[2]||(x[2]=(...k)=>e.unref(d)&&e.unref(d)(...k))},e.toDisplayString(e.unref(n)("filter.clear")),513),[[e.vShow,e.unref(s).length!==0]])])):e.createCommentVNode("",!0),r.layout==="popover"?(e.openBlock(),e.createElementBlock("div",Aw,[e.createElementVNode("span",null,e.toDisplayString(e.unref(s).length)+" / "+e.toDisplayString(e.unref(b).length)+" "+e.toDisplayString(e.unref(n)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:x[3]||(x[3]=(...k)=>e.unref(d)&&e.unref(d)(...k))},e.toDisplayString(e.unref(n)("filter.clear")),513),[[e.vShow,e.unref(s).length!==0]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2))}}),Dw={},Mw={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 Tw(r,t){return e.openBlock(),e.createElementBlock("svg",Mw,[...t[0]||(t[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 Rs=$t(Dw,[["render",Tw]]),Lw={},$w={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 Fw(r,t){return e.openBlock(),e.createElementBlock("svg",$w,[...t[0]||(t[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 Us=$t(Lw,[["render",Fw]]);class oa{static getWidthClass(t){return typeof t=="number"?`max-w-[${t}px]`:typeof t=="string"?t.endsWith("%")||t.endsWith("px")?`max-w-[${t}]`:`max-w-${t}`:"w-full"}}const Iw={class:"absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"},Ow=["placeholder"],Pw=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:{}},emits:["update:modelValue","change","clear"],setup(r,{emit:t}){var u;const l=r,n=e.ref((l.placeholder||l.label||l.title||l.name||"search").toString()),a=t,o=e.ref(((u=l.modelValue)==null?void 0:u.toString())??"");e.watch(()=>l.modelValue,d=>{d!==o.value&&(o.value=(d==null?void 0:d.toString())??"")});let s=null;function i(){if(o.value=o.value.trimStart(),o.value.length===0){c();return}s&&clearTimeout(s),s=setTimeout(()=>{a("update:modelValue",o.value),a("change",{name:l.name,value:o.value})},300)}function c(){o.value="",a("update:modelValue",""),a("clear",l.name)}return(d,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vs-form-text relative bg-white rounded-lg [&>input]:py-[7px] [&>input]:max-h-[38px] [&>input]:ps-10 [&>input]:pe-8 [&>input]:block [&>input]:w-full [&>input]:bg-gray-100 [&>input]:border-transparent [&>input]:rounded-lg [&>input]:text-sm [&>input]:focus:bg-white [&>input]:focus:border-blue-500 [&>input]:focus:ring-blue-500 [&>input]:disabled:opacity-50 [&>input]:disabled:pointer-events-none [&>input]:dark:bg-neutral-700 [&>input]:dark:border-transparent [&>input]:dark:text-neutral-400 [&>input]:dark:placeholder:text-neutral-400 dark:focus:bg-neutral-800 dark:focus:ring-neutral-600",r.layout==="inline"?e.unref(oa).getWidthClass(r.width):"mb-2"+(r.layout==="popover"?" m-2":"")])},[e.createElementVNode("div",Iw,[e.createVNode(Rs)]),o.value!==""?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:c,class:"absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"},[e.createVNode(Us)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"text","onUpdate:modelValue":m[0]||(m[0]=f=>o.value=f),onInput:i,placeholder:n.value,class:"!pr-7 !pl-8 bg-white h-[38px] min-w-[100px] text-sm py-2 px-3 block w-full border border-solid placeholder:text-nowrap border-stone-200 rounded-lg text-sm text-stone-800 placeholder:text-stone-400 focus:border-2 focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500"},null,40,Ow),[[e.vModelText,o.value]])],2))}});function js(r={color:"blue"}){return e.computed(()=>{const t=`w-full px-3 py-2 border-solid border border-gray-300 text-sm rounded focus:outline-none focus:ring-2 focus:ring-${r.color}-500 focus:border-transparent`;return(r==null?void 0:r.size)==="sm"?`${t}h-[32px]`:`${t}h-[38px]`})}function Rw(){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 Uw(){return"font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 border h-7 rounded-md text-xs px-2 py-1 hover:bg-gray-100"}function zs(r){return r==="ghost"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent text-gray-600 hover:bg-blue-100 hover:text-gray-800 focus:outline-hidden focus:bg-gray-100 focus:text-gray-800 disabled:opacity-50 disabled:pointer-events-none dark:text-gray-500 dark:hover:bg-blue-800/30 dark:hover:text-blue-400 dark:focus:bg-blue-800/30 dark:focus:text-blue-400":r==="soft"?"inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-lg border border-transparent bg-gray-100 text-gray-800 hover:bg-gray-200 hover:bg-gray-200 focus:outline-hidden focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:text-blue-400 dark:hover:bg-blue-900 dark:focus:bg-blue-900":"relative border-solid border-gray-200 focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 border-input hover:bg-gray-100 border px-4 py-2 gap-2 bg-transparent h-[38px]"}const jw={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},zw=["placeholder","disabled"],Hw={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},qw={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},Kw=["placeholder","disabled"],Gw=["disabled"],Ww=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=js(),a=Rw(),o=Mr(),s=r,i=e.ref(s.modelValue??s.default??[]),c=l,u=e.computed({get:()=>s.modelValue??i.value,set:f=>{s.modelValue!==void 0?c("update:modelValue",f):i.value=f}});function d(){c("change",{name:s.name,value:u.value||i.value})}function m(){i.value=[],u.value=i.value,c("clear",s.name)}return e.watch(()=>s.modelValue,f=>{f!==void 0&&s.layout!=="popover"?(i.value=f,c("update:modelValue",f)):i.value=[]}),t({clear:m,currentValue:u}),(f,p)=>{var h,g;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(r.layout==="vertical"?"inline-flex items-center gap-2":"space-y-3 p-2")},[e.createElementVNode("div",null,[r.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",jw,e.toDisplayString(e.unref(o)("filter.from")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(n)),placeholder:((h=r.placeholder)==null?void 0:h[0])??"min",step:"1",style:{outline:"none"},"onUpdate:modelValue":p[0]||(p[0]=y=>u.value[0]=y),disabled:r.disabled},null,10,zw),[[e.vModelText,u.value[0]]])]),r.layout==="vertical"?(e.openBlock(),e.createElementBlock("label",Hw," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",null,[r.layout!=="vertical"?(e.openBlock(),e.createElementBlock("label",qw,e.toDisplayString(e.unref(o)("filter.to")),1)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"number",class:e.normalizeClass(e.unref(n)),placeholder:((g=r.placeholder)==null?void 0:g[1])??"max",min:"0",max:"1000000000000000",step:"1",style:{outline:"none"},"onUpdate:modelValue":p[1]||(p[1]=y=>u.value[1]=y),disabled:r.disabled},null,10,Kw),[[e.vModelText,u.value[1]]])]),["popover","inline","vertical"].includes(r.layout)?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:d,class:e.normalizeClass(e.unref(a)+(r.layout==="vertical"?" w-[50px]":" bg-blue-100 hover:bg-blue-200"))},e.toDisplayString(r.layout==="vertical"?"Ok":e.unref(o)("filter.apply")),3)):e.createCommentVNode("",!0),["popover","inline"].includes(r.layout)?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:!(u.value[0]||u.value[1]),onClick:m,class:e.normalizeClass(e.unref(a)+" hover:bg-gray-100")},e.toDisplayString(e.unref(o)("filter.clear")),11,Gw)):e.createCommentVNode("",!0)],2)]),(r.cleanable&&i.value.length,e.createCommentVNode("",!0))],64)}}});function Yw(r){return String(r).charAt(0).toUpperCase()+String(r).slice(1)}let Qe=class{static format(t){const l=t.getFullYear(),n=(t.getMonth()+1).toString().padStart(2,"0"),a=t.getDate().toString().padStart(2,"0");return`${l}-${n}-${a}`}static getShiftedDay(t,l=0){const n=t?new Date(t):new Date;return n.setDate(n.getDate()+l),this.format(n)}static getLastWeekRange(t,l,n=0){if(t&&l){const u=new Date(t),d=new Date(l);return u.setDate(u.getDate()+n*7),d.setDate(d.getDate()+n*7),[this.format(u),this.format(d)]}const a=new Date,o=a.getDay(),s=o===0?13:o-1+7,i=new Date(a);i.setDate(a.getDate()-s+n*7);const c=new Date(i);return c.setDate(i.getDate()+6),[this.format(i),this.format(c)]}static getMonthRange(t,l,n=0){let a;t?a=new Date(t):a=new Date,a=new Date(a.getFullYear(),a.getMonth()+n,1);const o=a,s=new Date(a.getFullYear(),a.getMonth()+1,0);return[this.format(o),this.format(s)]}static getQuarterRange(t,l,n=0){const a=t||l,o=a?new Date(a):new Date;let s=Math.floor(o.getMonth()/3);s+=n;const i=(s%4+4)%4*3,c=o.getFullYear()+Math.floor(s/4),u=new Date(c,i,1),d=new Date(c,i+3,0);return[this.format(u),this.format(d)]}static getYear(t,l=0){let n;return t&&/^\d{4}$/.test(t)?n=parseInt(t,10):t?n=new Date(t).getFullYear():n=new Date().getFullYear(),String(n+l)}static getYearRange(t,l=0){let n;return t&&/^\d{4}$/.test(t)?n=parseInt(t,10):t?n=new Date(t).getFullYear():n=new Date().getFullYear(),[this.format(new Date(n+l,0,1)),this.format(new Date(n+l+1,0,0))]}static getRangeFromDaysBefore(t){const l=new Date,n=new Date(l.getTime());return n.setDate(l.getDate()-t),[this.format(n),this.format(l)]}};function Hs(r,t){const{popoverRef:l}=r,n=Mr(),a=e.ref(""),o=e.ref(r.modelValue??r.default??[]),s=e.ref(0);function i(){const b=Qe.getRangeFromDaysBefore(s.value);return o.value=[...b],t("change",{name:r.name,value:o.value}),t("update:modelValue",o.value),b}function c(b){var x;a.value=b,(x=l.value)==null||x.close();const w=[];switch(a.value){case"today":w.push(Qe.getShiftedDay()),w.push(Qe.getShiftedDay());break;case"week":w.push(...Qe.getLastWeekRange());break;case"month":w.push(...Qe.getMonthRange());break;case"quarter":w.push(...Qe.getQuarterRange());break;case"year":w.push(...Qe.getYearRange());break;case"last_7_days":s.value=7,i();break;case"range":s.value=7,w.push(...i());break}o.value=[...w],t("change",{name:r.name,value:o.value}),t("update:modelValue",o.value)}function u(){const b=[];switch(a.value){case"today":b.push(Qe.getShiftedDay(o.value[0],1));break;case"week":b.push(...Qe.getLastWeekRange(o.value[0],o.value[1],1));break;case"month":b.push(...Qe.getMonthRange(o.value[0],o.value[1],1));break;case"quarter":b.push(...Qe.getQuarterRange(o.value[0],o.value[1],1));break;case"year":b.push(...Qe.getYearRange(o.value[0],1));break}o.value=[...b],t("change",{name:r.name,value:o.value}),t("update:modelValue",o.value)}function d(){const b=[];switch(a.value){case"today":b.push(Qe.getShiftedDay(o.value[0],-1));break;case"week":b.push(...Qe.getLastWeekRange(o.value[0],o.value[1],-1));break;case"month":b.push(...Qe.getMonthRange(o.value[0],o.value[1],-1));break;case"quarter":b.push(...Qe.getQuarterRange(o.value[0],o.value[1],-1));break;case"year":b.push(...Qe.getYearRange(o.value[0],-1));break}o.value=[...b],t("change",{name:r.name,value:o.value}),t("update:modelValue",o.value)}const m=["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"];function f(b){const[w,x,k]=b.split("-");return`${k}.${x}.${w}`}function p(b,w="long"){const x=new Date(Date.UTC(2e3,b-1,1));return new Intl.DateTimeFormat(localStorage.locale,{month:w,timeZone:"UTC"}).format(x)}function h(b){const{value:w}=o;switch(b){case"today":return f(w[0]);case"range":return"Період";case"week":return w[0]&&w[1]?`${f(w[0])} – ${f(w[1])}`:"";case"quarter":if(w[0]){const x=new Date(w[0]),k=x.getFullYear(),_=x.getMonth();return`${Math.floor(_/3)+1} ${n("filter.quarter")} ${k}`}return"";case"month":if(w[0]){const[x,k]=w[0].split("-");return`${p(parseInt(k,10))} ${x}`}return"";case"year":return w[0]||"";case"last_7_days":return"За останні дні";default:return r.label??""}}const g=e.computed(()=>a.value?h(a.value):r.label??"");function y(){a.value="",o.value=[],t("update:modelValue",[]),t("clear",r.name)}return{activeMode:a,innerValue:o,daysBefore:s,onDaysBeforeChange:i,onSelectChange:c,nextClick:u,prevClick:d,ukMonths:m,formatDisplayDate:f,getModeLabel:h,currentLabel:g,clear:y}}const Xw={key:0,class:"relative flex w-full h-auto gap-2 filter-date m-2 flex-wrap"},Zw={key:0,class:"flex gap-1 !w-[75%] rounded-lg"},Qw=["max","disabled"],Jw=["min","disabled"],e2={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},t2=["max","disabled"],r2={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},l2={key:0,class:"block text-xs font-medium text-gray-600 mb-1"},n2=["min","disabled"],a2={class:"flex gap-1 pt-2"},o2=["onClick"],s2=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=js(),o=Uw(),s=l,i=e.ref(null),{activeMode:c,innerValue:u,onSelectChange:d,nextClick:m,prevClick:f,clear:p}=Hs({...n,popoverRef:i},s);return e.watch(()=>n.modelValue,h=>{h!==void 0?(u.value=h,s("update:modelValue",h)):(c.value="",u.value=[])}),t({clear:p,popoverRef:i}),(h,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r.layout==="inline"?(e.openBlock(),e.createElementBlock("div",Xw,[e.unref(c)!==""&&e.unref(c)==="range"?(e.openBlock(),e.createElementBlock("div",Zw,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(u)[1],locale:"uk-UA","onUpdate:modelValue":g[0]||(g[0]=y=>e.unref(u)[0]=y),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600",disabled:r.disabled},null,8,Qw),[[e.vModelText,e.unref(u)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(u)[0],locale:"uk-UA","onUpdate:modelValue":g[1]||(g[1]=y=>e.unref(u)[1]=y),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600 appearance-auto",disabled:r.disabled},null,8,Jw),[[e.vModelText,e.unref(u)[1]]])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(r.layout==="popover"?"space-y-3 p-2":"flex items-center gap-2")},[e.createElementVNode("div",{class:e.normalizeClass(r.layout!=="popover"?"w-[48%]":"")},[r.layout==="popover"?(e.openBlock(),e.createElementBlock("label",e2,"Від")):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(u)[1],locale:"uk-UA","onUpdate:modelValue":g[2]||(g[2]=y=>e.unref(u)[0]=y),class:e.normalizeClass(e.unref(a)),disabled:r.disabled},null,10,t2),[[e.vModelText,e.unref(u)[0]]])],2),r.layout!=="popover"?(e.openBlock(),e.createElementBlock("label",r2," - ")):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(r.layout!=="popover"?"w-[48%]":"")},[r.layout==="popover"?(e.openBlock(),e.createElementBlock("label",l2,"До")):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(u)[0],locale:"uk-UA","onUpdate:modelValue":g[3]||(g[3]=y=>e.unref(u)[1]=y),class:e.normalizeClass(e.unref(a)),disabled:r.disabled},null,10,n2),[[e.vModelText,e.unref(u)[1]]])],2)],2),e.createElementVNode("div",a2,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(["today","week","month","quarter","year"],y=>e.createElementVNode("button",{key:y,class:e.normalizeClass(e.unref(o)+(e.unref(c)===y?" bg-blue-100":"")),onClick:b=>e.unref(d)(y)},e.toDisplayString(e.unref(Yw)(y)),11,o2)),64)),e.createElementVNode("button",{class:e.normalizeClass(e.unref(o)),onClick:g[4]||(g[4]=(...y)=>e.unref(f)&&e.unref(f)(...y))}," <",2),e.createElementVNode("button",{class:e.normalizeClass(e.unref(o)),onClick:g[5]||(g[5]=(...y)=>e.unref(m)&&e.unref(m)(...y))}," >",2)]),(r.cleanable,e.createCommentVNode("",!0))],64))}});function i2(r,t){const{api:l,options:n=[],limit:a=20,dataKey:o="data"}=r,s=r.multi;function i(R){return s?Array.isArray(R)?R:R?[R]:[]:Array.isArray(R)?R[0]:R}const c=e.ref(i(r.modelValue)),u=e.ref(""),d=e.ref(!1),m=e.ref(n),f=e.ref("id"),p=e.ref("text"),h=e.ref(!1),g=e.ref(r.layout!=="popover"&&n.length>a),y=e.ref([]),b=e.ref(0);function w(R){const I=R.find(Boolean)??{},F=["id","value","code","key"].find(z=>z in I)??"id",A=["text","label","name","title"].find(z=>z in I)??"text";return{autoValueKey:F,autoLabelKey:A}}if(n.length>0){const R=w(n);f.value=R.autoValueKey,p.value=R.autoLabelKey}const x=e.computed(()=>{if(l)return m.value;const R=m.value;if(r.layout==="popover")return R;if(!u.value)return h.value?R:R.slice(0,a);const I=u.value.toLowerCase();return R.filter(F=>F[p.value].toLowerCase().includes(I))});let k=null;async function _(R){if(l){d.value=!0;try{const I=new URL(l,window.location.origin);I.searchParams.set("json","1"),I.searchParams.set("key",R),I.searchParams.set("limit",a.toString());const F=await fetch(I.toString());if(!F.ok){se({type:"error",title:"Error",message:"Failed to fetch remote options"}),m.value=[];return}const A=await F.json();if(!A[o]){se({type:"error",title:"Error",message:A}),m.value=[];return}if(m.value=A[o],m.value.length>0){const z=w(m.value);f.value=z.autoValueKey,p.value=z.autoLabelKey}b.value=A.total}catch(I){console.error("Failed to fetch remote options:",I)}finally{d.value=!1}}}e.watch(u,R=>{l&&(k&&clearTimeout(k),k=setTimeout(()=>{_(R)},200))}),e.watch(()=>r.modelValue,R=>{c.value=i(R)},{immediate:!0});function N(R){return s&&Array.isArray(c.value)?c.value.includes(R[f.value]):c.value&&c.value===R[f.value]}function V(R){if(s&&!Array.isArray(c.value)&&(c.value=[]),s&&Array.isArray(c.value)){const I=c.value.includes(R[f.value]);c.value=I?c.value.filter(F=>F!==R[f.value]):[...c.value,R[f.value]],y.value=I?y.value.filter(F=>F!==R[p.value]):[...y.value,R[p.value]]}else c.value=R[f.value],y.value=R[p.value];t("update:modelValue",c.value),t("change",{name:r.name,value:c.value})}function P(){s?(c.value=[],y.value=[]):(c.value=void 0,y.value=[]),t("update:modelValue",c.value),t("clear",r.name)}function $(){k&&clearTimeout(k),u.value="",h.value=!1}function M(){h.value=!h.value}e.onBeforeUnmount(()=>{k&&clearTimeout(k)});const D=e.ref(-1);e.watch(x,()=>{D.value=x.value.length>0?0:-1});function q(R){const I=x.value.length;if(R.key==="ArrowDown")R.preventDefault(),D.value=(D.value+1)%I;else if(R.key==="ArrowUp")R.preventDefault(),D.value=(D.value-1+I)%I;else if(R.key==="Enter"&&(R.preventDefault(),D.value>=0&&D.value<x.value.length)){const F=x.value[D.value];V(F)}}function Q(){l&&m.value.length===0&&u.value.length===0&&_(u.value)}return{innerValue:c,searchTerm:u,filteredOptions:x,isSelected:N,selectItem:V,clear:P,resetSearch:$,toggleShowAll:M,isReqProc:d,showAll:h,isEnableShowAll:g,labelKey:p,valueKey:f,allOptions:m,highlightedIndex:D,onKeyDown:q,selectedLabels:y,totalCount:b,loadData:Q}}const c2={class:"h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center"},d2=["placeholder"],u2={key:0,class:"w-full"},m2={class:"flex flex-col items-center justify-center p-5 text-center"},p2={class:"max-w-sm mx-auto mt-6"},f2={class:"font-medium text-gray-800 dark:text-neutral-200"},h2={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},g2={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},y2=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=Mr(),a=r,o=l,s=e.ref(null),{innerValue:i,filteredOptions:c,isSelected:u,selectItem:d,clear:m,resetSearch:f,toggleShowAll:p,isReqProc:h,showAll:g,isEnableShowAll:y,searchTerm:b,labelKey:w,valueKey:x,highlightedIndex:k,onKeyDown:_,selectedLabels:N,totalCount:V,loadData:P}=i2({...a,modelValue:a.modelValue},o);e.onMounted(()=>{f(),a.layout!=="inline"&&(P(),s.value&&a.layout==="popover"&&s.value.focus())}),e.watch(()=>a.modelValue,M=>{M===void 0&&(a.multi?i.value=[]:i.value=void 0)});const $=e.ref([]);return e.watch(k,M=>{var D;M>=0&&$.value[M]&&((D=$.value[M])==null||D.scrollIntoView({block:"nearest",behavior:"smooth"}))}),e.watch(c,()=>{$.value=[]}),t({clear:m,inputTextRef:s,selectedLabels:N,loadData:P}),(M,D)=>{var q,Q;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([r.layout==="popover"?"flex flex-col h-full":"flex flex-col vs-filter-checkbox space-y-0.5"])},[e.createElementVNode("div",c2,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":D[0]||(D[0]=R=>e.isRef(b)?b.value=R:null),onKeydown:D[1]||(D[1]=(...R)=>e.unref(_)&&e.unref(_)(...R)),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(n)("filter.search"),type:"text",ref_key:"inputTextRef",ref:s},null,40,d2),[[e.vModelText,e.unref(b)]]),e.createVNode(Rs,{class:"absolute text-gray-400 -translate-y-1/2 left-4 top-1/2"}),e.unref(b)!=""?(e.openBlock(),e.createBlock(Us,{key:0,onClick:D[2]||(D[2]=R=>b.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([r.layout==="popover"?"flex-1 overflow-y-auto max-h-64 p-2":"",r.layout==="inline"?"flex-1 overflow-y-auto max-h-80":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),(R,I)=>(e.openBlock(),e.createBlock(la,{layout:r.layout,count:R.count,label:R[e.unref(w)],color:R.color,type:r.multi?"checkbox":"radio",value:R[e.unref(x)],"is-selected":e.unref(u)(R),highlighted:I===e.unref(k),onItemClick:F=>e.unref(d)(R),ref_for:!0,ref:F=>$.value[I]=F==null?void 0:F.el},null,8,["layout","count","label","color","type","value","is-selected","highlighted","onItemClick"]))),256))],2),r.type==="select"&&e.unref(c).length===0&&!e.unref(h)?(e.openBlock(),e.createElementBlock("div",u2,[e.createElementVNode("div",m2,[e.createVNode(na),e.createElementVNode("div",p2,[e.createElementVNode("p",f2,e.toDisplayString(e.unref(n)("filter.notfound")),1),D[7]||(D[7]=e.createElementVNode("p",{class:"mt-2 text-sm text-gray-500 dark:text-neutral-500"},null,-1))])])])):e.createCommentVNode("",!0),r.layout!=="popover"&&r.type!=="select"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[!e.unref(g)&&e.unref(y)?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:D[3]||(D[3]=(...R)=>e.unref(p)&&e.unref(p)(...R)),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(n)("filter.more"))+" ",1),e.createVNode(Ul)])):e.createCommentVNode("",!0),e.unref(g)?(e.openBlock(),e.createElementBlock("div",{key:1,onClick:D[4]||(D[4]=(...R)=>e.unref(p)&&e.unref(p)(...R)),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(n)("filter.less"))+" ",1),e.createVNode(aa)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),r.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[r.layout==="inline"?(e.openBlock(),e.createElementBlock("div",h2,[e.createTextVNode(e.toDisplayString(r.multi&&Array.isArray(e.unref(i))?(q=e.unref(i))==null?void 0:q.length:e.unref(i)!==void 0&&(e.unref(i)||e.unref(i)===null)?1:0)+" / "+e.toDisplayString(e.unref(V))+" "+e.toDisplayString(e.unref(n)("filter.selected"))+" ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:D[5]||(D[5]=(...R)=>e.unref(m)&&e.unref(m)(...R))},e.toDisplayString(e.unref(n)("filter.clear")),513),[[e.vShow,e.unref(i)!==""&&e.unref(i)!==void 0||e.unref(i)]])])):e.createCommentVNode("",!0),r.layout==="popover"?(e.openBlock(),e.createElementBlock("div",g2,[e.createElementVNode("span",null,e.toDisplayString(r.multi&&Array.isArray(e.unref(i))?(Q=e.unref(i))==null?void 0:Q.length:e.unref(i)!==void 0&&(e.unref(i)||e.unref(i)===null)?1:0)+" / "+e.toDisplayString(e.unref(V))+" "+e.toDisplayString(e.unref(n)("filter.selected")),1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:D[6]||(D[6]=(...R)=>e.unref(m)&&e.unref(m)(...R))},e.toDisplayString(e.unref(n)("filter.clear")),513),[[e.vShow,e.unref(i)!==""&&e.unref(i)!==void 0||e.unref(i)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2)}}}),b2=["for","onClick"],k2=["id","name","value"],x2={class:"block"},w2={key:0,class:"flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"},_2={key:1,class:"flex justify-between items-center text-xs text-gray-500 p-1 border-t"},E2=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=l,{innerValue:o,isSelected:s,selectItem:i,clear:c,labelKey:u,valueKey:d,allOptions:m}=n.multi?Is({...n,modelValue:n.modelValue??n.default??[]},a):Fs({...n,modelValue:n.modelValue!==void 0?n.modelValue:n.default??""},a);return t({clear:c}),e.watch(()=>n.modelValue,f=>{f===void 0&&(n.multi?o.value=[]:o.value=void 0)}),(f,p)=>{var h,g;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["grid grid-cols-3 gap-2 mx-[1px]",r.layout==="popover"?"m-1":"mb-1"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(m),y=>(e.openBlock(),e.createElementBlock("label",{key:`item-${y[e.unref(d)]}`,for:`item-${y[e.unref(d)]}`,onClick:e.withModifiers(b=>e.unref(i)(y),["stop","prevent"]),class:e.normalizeClass([e.unref(s)(y)?"ring-2 ring-indigo-600":"","p-2.5 group relative flex justify-center items-center gap-x-12 text-center text-xs bg-white text-gray-800 border border-gray-200 cursor-pointer rounded-lg dark:bg-neutral-900 dark:border-neutral-700 dark:text-neutral-200 peer-checked:text-indigo-600 dark:has-checked:text-indigo-500 peer-checked:border-indigo-600 dark:has-checked:border-indigo-500 peer-checked:ring peer-checked:shadow focus:ring dark:has-checked:ring-indigo-500 has-disabled:pointer-events-none has-disabled:text-gray-200 dark:has-disabled:text-neutral-700 has-disabled:after:absolute has-disabled:after:inset-0 has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-gray-200)_calc(50%-1px),var(--color-gray-200)_50%,transparent_50%)] dark:has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-neutral-700)_calc(50%-1px),var(--color-neutral-700)_50%,transparent_50%)]"])},[e.createElementVNode("input",{type:"checkbox",id:`item-${y[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-${y[e.unref(d)]}`,value:y[e.unref(d)]},null,8,k2),e.createElementVNode("span",x2,e.toDisplayString(y[e.unref(u)]),1)],10,b2))),128))],2),r.cleanable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[r.layout==="inline"?(e.openBlock(),e.createElementBlock("div",w2,[e.createTextVNode(e.toDisplayString(r.multi&&Array.isArray(e.unref(o))?(h=e.unref(o))==null?void 0:h.length:e.unref(o)!==void 0&&(e.unref(o)||e.unref(o)===null)?1:0)+" з "+e.toDisplayString(e.unref(m).length)+" обрано ",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:p[0]||(p[0]=(...y)=>e.unref(c)&&e.unref(c)(...y))}," Очистити ",512),[[e.vShow,e.unref(o)!==""&&e.unref(o)!==void 0||e.unref(o)]])])):e.createCommentVNode("",!0),r.layout==="popover"?(e.openBlock(),e.createElementBlock("div",_2,[e.createElementVNode("span",null,e.toDisplayString(r.multi&&Array.isArray(e.unref(o))?(g=e.unref(o))==null?void 0:g.length:e.unref(o)!==void 0&&(e.unref(o)||e.unref(o)===null)?1:0)+" з "+e.toDisplayString(e.unref(m).length)+" обрано",1),e.withDirectives(e.createElementVNode("button",{class:"text-gray-600 hover:text-gray-800",onClick:p[1]||(p[1]=(...y)=>e.unref(c)&&e.unref(c)(...y))}," Очистити ",512),[[e.vShow,e.unref(o)!==void 0&&e.unref(o)!==""||e.unref(o)]])])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)}}}),C2=["disabled","title"],V2={key:0,class:"absolute top-0 end-0 inline-flex min-h-[10px] min-w-[10px] z-10 items-center py-0.5 rounded-full text-xs font-medium transform -translate-y-1/2 translate-x-1/2 bg-blue-600 text-white px-1"},N2={class:"w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-lg focus:outline-none focus:bg-stone-100 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full"},v2={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"},sa=e.defineComponent({__name:"popover-field",props:{disabled:{type:Boolean,default:!1},label:{},en:{},ua:{},uk:{},fr:{},de:{},es:{},currentValue:{},fieldRef:{},width:{},mode:{},layout:{}},setup(r,{expose:t}){const l=r,n=e.computed(()=>zs(l.mode)),a=e.ref(!1),o=e.ref({top:0,left:0}),s=e.ref(null),i=e.ref(null),c=e.ref(null);function u(){const w=i.value,x=c.value;if(!w||!x)return;const k=w.getBoundingClientRect(),_=x.offsetWidth,N=window.innerWidth,V=k.bottom+8;let{left:P}=k;P+_>N&&(P=Math.max(N-_-10,10)),o.value={top:V,left:P}}function d(){console.log("~~~~~~~~~~"),console.log(a.value),a.value=!a.value,console.log(a.value),a.value&&e.nextTick(()=>{var w,x,k,_,N,V,P;u(),(w=l.fieldRef)!=null&&w.inputTextRef&&((_=(k=(x=l.fieldRef)==null?void 0:x.inputTextRef)==null?void 0:k.focus)==null||_.call(k)),(N=l.fieldRef)!=null&&N.loadData&&((P=(V=l.fieldRef)==null?void 0:V.loadData)==null||P.call(V))})}function m(w){var x,k,_;!((x=s.value)!=null&&x.contains(w.target))&&!((k=c.value)!=null&&k.contains(w.target))&&!((_=i.value)!=null&&_.contains(w.target))&&(a.value=!1)}function f(w){w.key==="Escape"&&(a.value=!1)}const p=e.ref(!1),h=e.ref("ua"),g=w=>{w.detail.key==="locale"&&(h.value=w.detail.newValue)};e.onMounted(()=>{p.value=!0,h.value=localStorage.locale,window.addEventListener("storage",g),document.addEventListener("click",m,!0),document.addEventListener("keydown",f),window.addEventListener("scroll",u,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",g),document.removeEventListener("click",m,!0),document.removeEventListener("keydown",f),window.removeEventListener("scroll",u,!0)});function y(){a.value=!1}t({close:y});const b=e.computed(()=>{var x;const w=(x=l.fieldRef)==null?void 0:x.selectedLabels;return!w||["inline"].includes(l.layout||"")?l[h.value]||(l.label??""):Array.isArray(w)?w.length>0?w.join(", "):l.label??"":String(w)});return(w,x)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{onClick:d,disabled:r.disabled,ref_key:"triggerRef",ref:i,title:r.label,class:e.normalizeClass(n.value+" "+(r.width?e.unref(oa).getWidthClass(r.width):"w-full"))},[e.createElementVNode("span",{class:e.normalizeClass(["truncate text-ellipsis block",r.width?e.unref(oa).getWidthClass(r.width-50):"w-full"])},e.toDisplayString(b.value),3),e.createVNode(Ul,{class:"h-4 w-4"}),(Array.isArray(r.currentValue)?r.currentValue===null||r.currentValue.length>0:r.currentValue===null||r.currentValue)&&r.layout==="inline"?(e.openBlock(),e.createElementBlock("span",V2)):e.createCommentVNode("",!0)],10,C2),p.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popperRef",ref:c,class:"vsTailwind vs-popover__content bottom-right w-fit fixed z-[1000]",style:e.normalizeStyle({top:`${o.value.top}px`,left:`${o.value.left}px`}),"data-inside-popover":""},[e.createElementVNode("div",N2,[e.createElementVNode("div",v2,[e.renderSlot(w.$slots,"default")])])],4),[[e.vShow,a.value]])])):e.createCommentVNode("",!0)]))}}),B2={},S2={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 A2(r,t){return e.openBlock(),e.createElementBlock("svg",S2,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)])])}const hr=$t(B2,[["render",A2]]),D2={},M2={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 T2(r,t){return e.openBlock(),e.createElementBlock("svg",M2,[...t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const L2=$t(D2,[["render",T2]]),$2={},F2={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 I2(r,t){return e.openBlock(),e.createElementBlock("svg",F2,[...t[0]||(t[0]=[e.createElementVNode("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"},null,-1),e.createElementVNode("path",{d:"M6 9l6 6l6 -6"},null,-1)])])}const O2=$t($2,[["render",I2]]),P2={class:"flex"},R2={class:"mb-1"},U2={class:"mb-1"},j2={class:"inline-flex rounded-lg shrink-0 pl-1"},z2=["title"],H2={class:"inline-flex rounded-lg shrink-0 pl-1"},q2=["title"],K2={key:1,class:"flex gap-1 !w-[75%] rounded-lg"},G2=["max","disabled"],W2=["min","disabled"],Y2=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=Mr(),a=r,o=l,s=e.ref(null),{activeMode:i,innerValue:c,onSelectChange:u,nextClick:d,prevClick:m,currentLabel:f,clear:p}=Hs({...a,popoverRef:s},o);return e.watch(()=>a.modelValue,h=>{h!==void 0?(c.value=h,o("update:modelValue",h)):(i.value="",c.value=[])}),t({clear:p,popoverRef:s}),(h,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",P2,[e.createVNode(sa,{ref_key:"popoverRef",ref:s,label:e.unref(f),"current-value":e.unref(c),mode:r.mode,onClear:e.unref(p),layout:r.layout},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:g[0]||(g[0]=y=>e.unref(u)("range")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.period"))+" ",1),e.unref(i)==="range"?(e.openBlock(),e.createBlock(hr,{key:0})):e.createCommentVNode("",!0)])]),g[12]||(g[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:g[1]||(g[1]=y=>e.unref(u)("today")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.today"))+" ",1),e.unref(i)==="today"?(e.openBlock(),e.createBlock(hr,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:g[2]||(g[2]=y=>e.unref(u)("week")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.week"))+" ",1),e.unref(i)==="week"?(e.openBlock(),e.createBlock(hr,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:g[3]||(g[3]=y=>e.unref(u)("month")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.month"))+" ",1),e.unref(i)==="month"?(e.openBlock(),e.createBlock(hr,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",null,[e.createElementVNode("button",{type:"button",onClick:g[4]||(g[4]=y=>e.unref(u)("quarter")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.quarter"))+" ",1),e.unref(i)==="quarter"?(e.openBlock(),e.createBlock(hr,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",R2,[e.createElementVNode("button",{type:"button",onClick:g[5]||(g[5]=y=>e.unref(u)("year")),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.year"))+" ",1),e.unref(i)==="year"?(e.openBlock(),e.createBlock(hr,{key:0})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",U2,[e.createElementVNode("button",{type:"button",onClick:g[6]||(g[6]=y=>e.unref(p)()),class:"flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-lg cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"},[e.createTextVNode(e.toDisplayString(e.unref(n)("filter.alltime"))+" ",1),e.unref(c)[0]?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(hr,{key:0}))])])]),_:1},8,["label","current-value","mode","onClear","layout"]),e.unref(i)!==""&&e.unref(i)!=="range"&&e.unref(i)!=="last_7_days"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",j2,[e.createElementVNode("button",{type:"button",title:e.unref(n)("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:g[7]||(g[7]=(...y)=>e.unref(m)&&e.unref(m)(...y))},[e.createVNode(L2)],8,z2)]),e.createElementVNode("div",H2,[e.createElementVNode("button",{type:"button",title:e.unref(n)("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:g[8]||(g[8]=(...y)=>e.unref(d)&&e.unref(d)(...y))},[e.createVNode(O2)],8,q2)])],64)):e.createCommentVNode("",!0),e.unref(i)!==""&&e.unref(i)==="range"?(e.openBlock(),e.createElementBlock("div",K2,[e.withDirectives(e.createElementVNode("input",{type:"date",max:e.unref(c)[1],locale:"uk-UA","onUpdate:modelValue":g[9]||(g[9]=y=>e.unref(c)[0]=y),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600",disabled:r.disabled},null,8,G2),[[e.vModelText,e.unref(c)[0]]]),e.withDirectives(e.createElementVNode("input",{type:"date",min:e.unref(c)[0],locale:"uk-UA","onUpdate:modelValue":g[10]||(g[10]=y=>e.unref(c)[1]=y),class:"px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-lg focus:outline-blue-600 appearance-auto",disabled:r.disabled},null,8,W2),[[e.vModelText,e.unref(c)[1]]])])):e.createCommentVNode("",!0)]),(r.cleanable,e.createCommentVNode("",!0))],64))}}),qs={radio:Ew,checkbox:Ps,check:Ps,text:Pw,range:Ww,date:s2,select:y2,tag:E2,"date:inline":Y2};function ia(r,t){let l;switch(r.toLowerCase()){case"autocomplete":l="select";break;case"check":l="checkbox";break;default:l=r==null?void 0:r.toString().toLowerCase()}return l==="date"&&t&&t==="inline"&&(l="date:inline"),{component:qs[l]||qs.text,type:l}}const X2={style:{display:"inline-flex",margin:"0px",width:"100%"}},Z2={class:"relative w-full mb-2 p-4 bg-white rounded-lg shadow-sm"},Q2={class:"block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200"},J2={class:"flex items-center"},e_={class:"text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1"},t_={class:"filter-layout__body"},r_=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=l,o=e.ref(),s=ia(n.type,n.layout),i=e.computed({get:()=>n.modelValue,set:m=>a("update:modelValue",m)});function c(m){a("clear",m)}function u(m,f){a("change",{name:m,value:f}),n.modelValue!==void 0&&a("update:modelValue",f)}function d(){o.value&&o.value.clear(),a("clear",n.name)}return e.watch(()=>n.default,m=>{i.value=m}),e.watch(()=>n.modelValue,m=>{i.value=m}),t({filterRef:o}),(m,f)=>{var p,h,g;return e.openBlock(),e.createElementBlock("div",X2,[e.createElementVNode("div",Z2,[e.createElementVNode("div",Q2,[e.createElementVNode("div",J2,[e.createElementVNode("span",e_,e.toDisplayString(r.label),1)]),typeof i.value=="string"&&i.value.trim()!==""||Array.isArray(i.value)&&i.value.length>0&&i.value.some(y=>y!==void 0)||i.value===null?(e.openBlock(),e.createBlock(rw,{key:0,onClick:d})):e.createCommentVNode("",!0)]),e.createElementVNode("div",t_,[((p=e.unref(s))==null?void 0:p.type)!=="select"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((h=e.unref(s))==null?void 0:h.component),e.mergeProps({key:0},n,{type:(g=e.unref(s))==null?void 0:g.type,onChange:f[0]||(f[0]=y=>u(y.name,y.value)),onClear:f[1]||(f[1]=y=>c(y)),ref_key:"filterRef",ref:o}),null,16,["type"])):(e.openBlock(),e.createBlock(sa,{key:1,"current-value":i.value,label:r.label,mode:r.mode,onClear:d,fieldRef:o.value,width:void 0,disabled:r.disabled,layout:"vertical"},{default:e.withCtx(()=>{var y,b;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((y=e.unref(s))==null?void 0:y.component),e.mergeProps({ref_key:"filterRef",ref:o},n,{type:(b=e.unref(s))==null?void 0:b.type,onChange:f[2]||(f[2]=w=>u(w.name,w.value)),onClear:f[3]||(f[3]=w=>c(w))}),null,16,["type"]))]}),_:1},8,["current-value","label","mode","fieldRef","disabled"]))])])])}}}),Ks=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=l,o=e.ref(),s=ia(n.type,n.layout),i=e.computed({get:()=>n.modelValue,set:d=>a("update:modelValue",d)});function c(d=n.name){a("clear",d)}function u(d,m){a("change",{name:d,value:m}),n.modelValue!==void 0&&a("update:modelValue",m)}return e.watch(()=>n.default,d=>{i.value=d}),e.watch(()=>n.modelValue,d=>{i.value=d}),t({filterRef:o}),(d,m)=>{var f,p;return["text","date"].includes(r.type.toLocaleLowerCase())?(e.openBlock(),e.createBlock(e.resolveDynamicComponent((f=e.unref(s))==null?void 0:f.component),e.mergeProps({key:0},n,{type:(p=e.unref(s))==null?void 0:p.type,onChange:m[0]||(m[0]=h=>u(h.name,h.value)),onClear:m[1]||(m[1]=h=>c(h)),disabled:r.disabled,modelValue:i.value,"onUpdate:modelValue":m[2]||(m[2]=h=>i.value=h)}),null,16,["type","disabled","modelValue"])):(e.openBlock(),e.createBlock(sa,{key:1,"current-value":i.value,label:r.label,mode:r.mode,onClear:c,fieldRef:o.value,width:n.width,disabled:r.disabled,layout:"inline"},{default:e.withCtx(()=>{var h,g;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((h=e.unref(s))==null?void 0:h.component),e.mergeProps({ref_key:"filterRef",ref:o},n,{modelValue:i.value,"onUpdate:modelValue":m[3]||(m[3]=y=>i.value=y),type:(g=e.unref(s))==null?void 0:g.type,onChange:m[4]||(m[4]=y=>u(y.name,y.value)),onClear:m[5]||(m[5]=y=>c(y))}),null,16,["modelValue","type"]))]}),_:1},8,["current-value","label","mode","fieldRef","width","disabled"]))}}}),l_=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=l,o=e.ref(),s=e.ref(ia(n.type,n.layout)),i=e.computed({get:()=>n.modelValue,set:d=>a("update:modelValue",d)});function c(d){a("clear",d)}function u(d,m){a("change",{name:d,value:m}),n.modelValue!==void 0&&a("update:modelValue",m)}return e.watch(()=>n.default,d=>{i.value=d}),e.watch(()=>n.modelValue,d=>{i.value=d}),e.watch(()=>n,d=>{i.value=d}),t({filterRef:o}),(d,m)=>{var f,p;return e.openBlock(),e.createBlock(e.resolveDynamicComponent((f=s.value)==null?void 0:f.component),e.mergeProps(n,{type:(p=s.value)==null?void 0:p.type,modelValue:i.value,"onUpdate:modelValue":m[0]||(m[0]=h=>i.value=h),onChange:m[1]||(m[1]=h=>u(h.name,h.value)),onClear:m[2]||(m[2]=h=>c(h)),ref_key:"filterRef",ref:o}),null,16,["type","modelValue"])}}}),gr=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:{}},emits:["update:modelValue","change","clear"],setup(r,{expose:t,emit:l}){const n=r,a=l,o=e.ref(),s=e.computed({get:()=>n.modelValue,set:d=>a("update:modelValue",d)});function i(d){a("clear",d)}function c(d,m){a("change",{name:d,value:m}),n.modelValue!==void 0&&a("update:modelValue",m)}e.watch(()=>n.default,d=>{s.value=d}),e.watch(()=>n.modelValue,d=>{s.value=d}),t({filterRef:o});function u(){switch(n.layout){case"inline":return Ks;case"vertical":return r_;case"popover":return l_;default:return Ks}}return(d,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u()),e.mergeProps(n,{onChange:m[0]||(m[0]=f=>c(f.name,f.value)),onClear:m[1]||(m[1]=f=>i(f)),modelValue:s.value,"onUpdate:modelValue":m[2]||(m[2]=f=>s.value=f)}),null,16,["modelValue"]))}});function ca(r,t){const{slots:l}=r,n=e.ref(r.value??{}),a=e.computed(()=>{var y;return(e.toRaw((y=l==null?void 0:l.default)==null?void 0:y.call(l))??[]).flatMap(b=>Array.isArray(b.children)?b.children:[b])});function o(y){delete n.value[y],t("clear",{data:e.toRaw(n.value),name:y})}function s(y,b){b===void 0?o(y):n.value={...n.value,[y]:b},t("change",{data:e.toRaw(n.value),name:y,value:b})}const i=e.computed(()=>a.value.map(y=>{var w;const b=(w=y.props)==null?void 0:w.name;return e.cloneVNode(y,{...y.props,layout:r.view,showClean:!0,modelValue:n.value[b],"onUpdate:modelValue":x=>{s(b,x)},onClear:()=>o(b)})})),c=e.computed(()=>new Map(i.value.map(y=>{var w;const b=(w=y.props)==null?void 0:w.name;return b?[b,y]:null}).filter(y=>y!==null)));function u(y=!1){n.value={},y||t("clearAll",{data:e.toRaw(n.value),name:"ALL"})}const d=e.ref(""),m=e.computed(()=>{var y;return(y=r.schema)!=null&&y.value?Object.entries(n.value).filter(([b,w])=>r.schema&&!(b in r.schema.value)?!1:Array.isArray(w)?w.some(x=>x!==""&&x!==void 0):w!==""&&w!==void 0).length:0}),f=e.ref();e.watch(d,async()=>{var y,b;await e.nextTick(),(b=(y=f==null?void 0:f.value)==null?void 0:y.filterRef)!=null&&b.inputTextRef&&f.value.filterRef.inputTextRef.focus()});const p=e.computed(()=>{var y,b;return(y=r.schema)!=null&&y.value?Object.fromEntries(Object.entries((b=r.schema)==null?void 0:b.value).slice(0,r.limit)):{}}),h=e.computed(()=>{var b;if(i.value.length===0)return[];let y=0;if((b=r.schema)!=null&&b.value){const w=Object.entries(r.schema.value).length;r.limit&&w<r.limit?y=r.limit-w:y=0}return i.value.slice(0,y)}),g=e.computed(()=>i.value.length===0?[]:r.view!=="inline"?i.value:i.value.slice(h.value.length));return{activeFilter:n,activeFilterCount:m,onFilterChange:s,clearFilter:o,clearAllFilters:u,limitedSchema:p,filtersSlot:i,limitedFiltersSlot:h,popoverFiltersSlot:g,vnodeMap:c,selectedFilter:d,filterRef:f}}const n_=e.defineComponent({__name:"popover",emits:["open","close"],setup(r,{emit:t}){const l=e.ref(!1),n=e.ref(null),a=e.ref(null),o=e.ref(null),s=e.ref({top:"0px",left:"0px",position:"absolute"});function i(){l.value=!l.value}function c(){const p=o.value,h=n.value;if(!p||!h)return;const g=p.getBoundingClientRect(),y=h.offsetWidth,b=window.innerWidth-g.left;let w=g.left+window.scrollX;y>b&&(w=window.innerWidth-y-8,w<8&&(w=8)),s.value={position:"absolute",top:`${g.bottom+window.scrollY+8}px`,left:`${w}px`}}const u=e.computed(()=>Object.entries(s.value).map(p=>p.join(":")).join(";"));function d(p){var g,y;const h=p.target;!((g=o.value)!=null&&g.contains(p.target))&&!((y=n.value)!=null&&y.contains(p.target))&&!h.closest("[data-inside-popover]")&&(l.value=!1)}const m=e.ref(!1);e.onMounted(()=>{m.value=!0}),e.onMounted(()=>{var p,h;o.value=((p=a.value)==null?void 0:p.querySelector("[data-popover-trigger]"))||null,(h=o.value)==null||h.addEventListener("click",i),document.addEventListener("click",d),window.addEventListener("resize",c),window.addEventListener("scroll",c,!0)}),e.onBeforeUnmount(()=>{var p;(p=o.value)==null||p.removeEventListener("click",i),document.removeEventListener("click",d),window.removeEventListener("resize",c),window.removeEventListener("scroll",c,!0)});const f=t;return e.watch(l,async p=>{p?(f("open"),await e.nextTick(),c()):f("close")}),(p,h)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"wrapperRef",ref:a},[e.renderSlot(p.$slots,"trigger"),m.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.withDirectives(e.createElementVNode("div",{ref_key:"popoverRef",ref:n,class:"absolute z-[50] w-[600px] rounded-md border bg-white shadow-md",style:e.normalizeStyle(u.value)},[e.renderSlot(p.$slots,"default")],4),[[e.vShow,l.value]])])):e.createCommentVNode("",!0)],512))}}),a_={},o_={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 s_(r,t){return e.openBlock(),e.createElementBlock("svg",o_,[...t[0]||(t[0]=[e.createElementVNode("polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"},null,-1)])])}const i_=$t(a_,[["render",s_]]),c_={key:0,class:"inline-flex rounded-sm items-center border font-semibold border-transparent hover:bg-secondary/80 bg-blue-500 text-white text-xs px-1.5"},d_={class:"flex"},u_={class:"w-64 border-r border-gray-200"},m_={class:"p-2"},p_=["onClick"],f_={class:"flex items-center gap-2"},h_={class:"text-sm font-medium"},g_={key:0,class:"inline-flex items-center rounded-full border font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-blue-100 text-blue-700 text-xs p-2"},y_=["onClick"],b_={class:"flex items-center gap-2"},k_={class:"text-sm font-medium"},x_={key:0,class:"inline-flex items-center rounded-full border font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 border-transparent hover:bg-secondary/80 bg-blue-100 text-blue-700 text-xs p-2"},w_={key:0,class:"p-2 border-t"},__={class:"flex-1 min-h-[300px] overflow-y-auto"},E_={key:0,class:"flex items-center justify-center h-full text-gray-500"},Gs=e.defineComponent({__name:"popover-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(r,{expose:t,emit:l}){const n=r,a=zs(n.mode),o=e.useSlots(),s=l,i=e.ref({}),c=e.computed(()=>i!=null&&i.value?n.view!=="inline"?i==null?void 0:i.value:Object.fromEntries(Object.entries(i==null?void 0:i.value).slice(n.limit)):{}),{activeFilter:u,activeFilterCount:d,onFilterChange:m,clearFilter:f,clearAllFilters:p,popoverFiltersSlot:h,selectedFilter:g,filterRef:y}=ca({...n,schema:i.value,slots:o},s);function b(){if(c.value){const[w]=Object.keys(c.value);g.value=w}else h.value.length>0?g.value=h.value[0].props.name:g.value=""}return e.watch(()=>n.schema,w=>{i.value=w},{deep:!0,immediate:!0}),t({clearFilter:f,clearAllFilters:p}),(w,x)=>(e.openBlock(),e.createBlock(n_,{onOpen:b,onClose:x[5]||(x[5]=k=>g.value="")},{trigger:e.withCtx(()=>[e.createElementVNode("button",{"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:e.normalizeClass(e.unref(a)+(e.unref(d)>0?"bg-blue-50 border-blue-200 text-blue-700 hover:bg-blue-100":"text-gray-800 hover:bg-gray-200 focus:bg-gray-200")),type:"button"},[e.createVNode(i_),x[6]||(x[6]=e.createTextVNode(" Фільтр ",-1)),e.unref(d)>0?(e.openBlock(),e.createElementBlock("div",c_,e.toDisplayString(e.unref(d)),1)):e.createCommentVNode("",!0)],2)]),default:e.withCtx(()=>[e.createElementVNode("div",d_,[e.createElementVNode("div",u_,[x[7]||(x[7]=e.createElementVNode("div",{class:"p-4 border-b"},[e.createElementVNode("p",{class:"text-sm text-gray-600"},"Select a field to start creating a filter.")],-1)),e.createElementVNode("div",m_,[r.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(c.value),([k,_])=>{var N;return e.openBlock(),e.createElementBlock("button",{key:k,onClick:()=>{g.value=k},class:e.normalizeClass(["w-full flex items-center justify-between px-3 py-2 text-left hover:bg-gray-50 transition-colors",e.unref(g)===k?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":"text-gray-700"])},[e.createElementVNode("div",f_,[e.createElementVNode("span",h_,e.toDisplayString(_.label),1)]),(Array.isArray(e.unref(u)[k])?((N=e.unref(u)[k])==null?void 0:N.length)>0:e.unref(u)[k]||e.unref(u)[k]===null)?(e.openBlock(),e.createElementBlock("div",g_)):e.createCommentVNode("",!0)],10,p_)}),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),(k,_)=>{var N;return e.openBlock(),e.createElementBlock("button",{key:"slot-"+_,onClick:V=>g.value=k.props.name,class:e.normalizeClass(["w-full flex items-center justify-between px-3 py-2 text-left hover:bg-gray-50 transition-colors",e.unref(g)===k.props.name?"bg-blue-50 text-blue-700 border-l-2 border-blue-500":""])},[e.createElementVNode("div",b_,[e.createElementVNode("span",k_,e.toDisplayString(k.props.label),1)]),((N=e.unref(u)[k.props.name])==null?void 0:N.length)>0?(e.openBlock(),e.createElementBlock("div",x_)):e.createCommentVNode("",!0)],10,y_)}),128))]),e.unref(d)>0?(e.openBlock(),e.createElementBlock("div",w_,[e.createElementVNode("button",{class:"w-full px-3 py-2 text-left text-sm text-gray-600 hover:bg-gray-50 transition-colors",onClick:x[0]||(x[0]=k=>e.unref(p)()),"data-inside-popover":""}," Очистити всі ")])):e.createCommentVNode("",!0)]),e.createElementVNode("div",__,[e.unref(g)===""?(e.openBlock(),e.createElementBlock("div",E_,[...x[8]||(x[8]=[e.createElementVNode("p",{class:"text-sm"},"Select a field to start creating a filter.",-1)])])):e.createCommentVNode("",!0),e.unref(g)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[c.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(c.value),([k,_])=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(g)===k?(e.openBlock(),e.createBlock(gr,e.mergeProps({key:k,layout:"popover",ref_for:!0,ref_key:"filterRef",ref:y},{ref_for:!0},_,{onChange:x[1]||(x[1]=N=>e.unref(m)(N.name,N.value)),onClear:x[2]||(x[2]=N=>{e.unref(f)(N),e.unref(m)(N,void 0)}),modelValue:e.unref(u)[k],"onUpdate:modelValue":N=>e.unref(u)[k]=N,cleanable:!0}),null,16,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(h),(k,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:"slot-"+_},[e.unref(g)===k.props.name?(e.openBlock(),e.createBlock(gr,e.mergeProps({key:0,layout:"popover"},{ref_for:!0},k.props,{ref_for:!0,ref_key:"filterRef",ref:y,onChange:x[3]||(x[3]=N=>e.unref(m)(N.name,N.value)),onClear:x[4]||(x[4]=N=>{e.unref(f)(N),e.unref(m)(N,void 0)}),modelValue:e.unref(u)[k.props.name],"onUpdate:modelValue":N=>e.unref(u)[k.props.name]=N,cleanable:!0}),null,16,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0)],64))),128))],64)):e.createCommentVNode("",!0)])])]),_:1}))}}),C_={class:"flex gap-1 items-center flex-wrap"},Ws=e.defineComponent({__name:"inline-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(r,{expose:t,emit:l}){const n=Mr(),a=r,o=l,s=e.useSlots(),i=e.ref({}),c=e.computed(()=>Object.keys(a.schema).length>a.limit),{activeFilter:u,activeFilterCount:d,onFilterChange:m,clearFilter:f,clearAllFilters:p,limitedSchema:h,filtersSlot:g,limitedFiltersSlot:y}=ca({...a,schema:i,slots:s},o),b=e.ref();function w(){b.value&&b.value.clearAllFilters(!0),p()}return e.watch(()=>a.schema,x=>{i.value=x},{deep:!0,immediate:!0}),t({clearFilter:f,clearAllFilters:p}),(x,k)=>(e.openBlock(),e.createElementBlock("div",C_,[r.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.entries(e.unref(h)),([_,N])=>(e.openBlock(),e.createBlock(gr,e.mergeProps({key:_,mode:r.mode},{ref_for:!0},N,{onChange:k[0]||(k[0]=V=>e.unref(m)(V.name,V.value)),onClear:e.unref(f),layout:"inline",cleanable:!0,modelValue:e.unref(u)[_],"onUpdate:modelValue":V=>e.unref(u)[_]=V}),null,16,["mode","onClear","modelValue","onUpdate:modelValue"]))),128)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),(_,N)=>(e.openBlock(),e.createBlock(gr,e.mergeProps({key:"slot-"+N,layout:"inline"},{ref_for:!0},_.props,{onChange:k[1]||(k[1]=V=>e.unref(m)(V.name,V.value)),onClear:k[2]||(k[2]=V=>{e.unref(f)(V),e.unref(m)(V,void 0)}),cleanable:!0,modelValue:e.unref(u)[_.props.name],"onUpdate:modelValue":V=>e.unref(u)[_.props.name]=V}),null,16,["modelValue","onUpdate:modelValue"]))),128)),c.value?(e.openBlock(),e.createBlock(Gs,e.mergeProps({key:1},a,{schema:r.schema,limit:r.limit,onChange:k[3]||(k[3]=_=>e.unref(m)(_.name,_.value)),onClearAll:k[4]||(k[4]=_=>e.unref(p)()),onClear:k[5]||(k[5]=_=>e.unref(f)(_.name)),mode:r.mode,ref_key:"popoverRef",ref:b,cleanable:!0}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(g),(_,N)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(_),e.mergeProps({key:"slot-"+N,layout:"popover"},{ref_for:!0},_.props,{cleanable:!0}),null,16))),128))]),_:1},16,["schema","limit","mode"])):e.createCommentVNode("",!0),e.unref(d)>0?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:w,class:"relative py-2 px-3 inline-flex justify-center items-center gap-x-2 text-sm font-medium rounded-lg bg-gray-100 border border-transparent text-gray-800 hover:bg-gray-200 focus:bg-gray-200"},e.toDisplayString(e.unref(n)("filter.clear")),1)):e.createCommentVNode("",!0)]))}}),V_={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"},N_={class:"flex items-center vst-filters vsTailwind flex-col w-full"},v_=e.defineComponent({__name:"vertical-filter-layout",props:{schema:{},view:{},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(r,{expose:t,emit:l}){const n=r,a=l,o=e.useSlots(),{activeFilter:s,activeFilterCount:i,onFilterChange:c,clearFilter:u,clearAllFilters:d,filtersSlot:m}=ca({...n,slots:o},a);return t({clearFilter:u,clearAllFilters:d}),(f,p)=>r.view==="vertical"?(e.openBlock(),e.createElementBlock("div",V_,[e.createElementVNode("div",N_,[e.unref(i)>0?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:p[0]||(p[0]=h=>e.unref(d)()),"data-popover-trigger":"","aria-haspopup":"dialog","aria-expanded":"false",class:"w-full ring-offset-background focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:text-accent-foreground border h-10 px-4 py-2 gap-2 m-2 bg-white text-gray-800 hover:bg-gray-200 focus:bg-gray-200",type:"button"}," Очистити ")):e.createCommentVNode("",!0),r.schema?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(Object.entries(r.schema),([h,g])=>(e.openBlock(),e.createBlock(gr,e.mergeProps({layout:"vertical"},{ref_for:!0},g,{onChange:p[1]||(p[1]=y=>e.unref(c)(y.name,y.value)),onClear:p[2]||(p[2]=y=>{e.unref(u)(y),e.unref(c)(y,void 0)}),modelValue:e.unref(s)[h],"onUpdate:modelValue":y=>e.unref(s)[h]=y,showClean:!0}),null,16,["modelValue","onUpdate:modelValue"]))),256)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(m),(h,g)=>(e.openBlock(),e.createBlock(gr,e.mergeProps({key:"slot-"+g,layout:"vertical"},{ref_for:!0},h.props,{onChange:p[3]||(p[3]=y=>e.unref(c)(y.name,y.value)),onClear:p[4]||(p[4]=y=>{e.unref(u)(y),e.unref(c)(y,void 0)}),modelValue:e.unref(s)[h.props.name],"onUpdate:modelValue":y=>e.unref(s)[h.props.name]=y,showClean:!0}),null,16,["modelValue","onUpdate:modelValue"]))),128))])])):e.createCommentVNode("",!0)}}),jl=e.defineComponent({__name:"filter",props:{schema:{},view:{default:"inline"},value:{},history:{type:Boolean},mode:{},limit:{default:3}},emits:["change","clear","clearAll"],setup(r,{expose:t,emit:l}){const n=r,a=e.ref(n.value??{}),o=l,s=e.ref();function i(g){if(Array.isArray(g))return g.map(y=>i(y));if(g!==null&&typeof g=="object"){const y=e.toRaw(g),b={};for(const w in y)b[w]=i(y[w]);return b}return g}function c(g,y){y!==void 0?a.value={...a.value,[g]:y}:delete a.value[g],o("change",{data:i(a.value),name:g,value:i(y)})}function u(g){delete a.value[g],o("clear",{data:i(a.value),name:g}),o("change",{data:i(a.value),name:g,value:null})}function d(){a.value={},o("clear",{data:i(a.value),name:"ALL"}),o("change",{data:i(a.value),name:"ALL",value:null})}const m=e.ref({});function f(){switch(n.view){case"inline":return Ws;case"vertical":return v_;case"popover":return Gs;default:return Ws}}e.watch(()=>n.schema,g=>{if(!g){m.value={};return}if(Array.isArray(g)&&!g.length){m.value={};return}Array.isArray(g)?m.value=g.filter(y=>y.type).reduce((y,b)=>(Object.assign(b,{name:b.id||b.name,type:{datepicker:"date"}[b.type.toLowerCase()]||b.type.toLowerCase(),label:b.label||b.ua}),y[b.name]=b,b.data&&!b.api&&!b.options&&Object.assign(b,{api:`/api/suggest/${b.data}`}),y),{}):(Object.entries(g).forEach(([y,b])=>{Object.assign(b,{name:y||b.name||b.id,type:b.type.toLowerCase()})}),m.value={...g})},{immediate:!0,deep:!0});function p(g){s.value.clearFilter(g),u(g)}function h(){s.value.clearAllFilters(),d()}return e.watch(()=>a.value,g=>{if(n.history){const y=new URL(window.location.href),b=new URLSearchParams(window.location.search);Object.keys(g).length>0?b.set("filter",Object.entries(g).filter(([,w])=>w).map(([w,x])=>`${w}=${x}`).join("|")):b.delete("filter"),y.search=decodeURI(b.toString()),window.history.pushState({},"",y)}}),t({clearAllFilters:h,clearFilter:p}),(g,y)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f()),e.mergeProps(n,{schema:m.value,onChange:y[0]||(y[0]=b=>c(b.name,b.value)),onClear:y[1]||(y[1]=b=>u(b.name)),onClearAll:d,ref_key:"filterRef",ref:s}),{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default")]),_:3},16,["schema"]))}});jl.install=function(r){r.component("Filter",jl),r.component("FilterField",gr)};const B_={class:"flex items-center space-x-1 mb-4"},S_=["onClick"],A_={key:1,class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium text-slate-700 dark:text-slate-300"},Ys=e.defineComponent({__name:"CollectionsBreadcrumb",props:{items:{}},emits:["navigate"],setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",B_,[e.createElementVNode("button",{class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium transition-all duration-200 text-blue-600 dark:text-blue-400 bg-blue-50 dark:bg-blue-900/20 hover:bg-blue-100 dark:hover:bg-blue-900/30",onClick:l[0]||(l[0]=n=>t.$emit("navigate","collections"))},[e.createVNode(e.unref(Vr),{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(t.$t("cms.navigation.collections")),1)]),t.items.length>0?(e.openBlock(),e.createBlock(e.unref(Er),{key:0,class:"w-3 h-3 text-slate-400 dark:text-slate-500"})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(n,a)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:a},[a<t.items.length-1?(e.openBlock(),e.createElementBlock("button",{key:0,class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium transition-all duration-200 text-blue-700 dark:text-blue-300 bg-blue-50 dark:bg-blue-900/20 hover:bg-blue-100 dark:hover:bg-blue-900/30",onClick:o=>t.$emit("navigate",n.route)},e.toDisplayString(n.label),9,S_)):(e.openBlock(),e.createElementBlock("span",A_,e.toDisplayString(n.label),1)),a<t.items.length-1?(e.openBlock(),e.createBlock(e.unref(Er),{key:2,class:"w-3 h-3 text-slate-400 dark:text-slate-500"})):e.createCommentVNode("",!0)],64))),128))]))}}),D_={class:"space-y-6 max-w-7xl mx-auto"},M_={class:"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between"},T_={class:"flex items-center gap-2"},L_={class:"text-3xl font-bold text-slate-800 dark:text-white mb-2"},$_=["href","title"],F_={key:0,class:"text-card-foreground shadow-lg border-0 bg-white/80 dark:bg-slate-800/80 backdrop-blur-sm"},I_={key:0,class:"p-2 border-b border-gray-200 sm:px-4 sm:py-2 dark:border-gray-700"},O_={class:"flex flex-col gap-4 sm:flex-row"},P_={class:"relative flex items-center gap-2 ml-auto"},R_={key:1,class:"absolute top-full right-1/2 translate-x-1/2 min-w-full p-4 z-10 bg-white border border-gray-300 rounded-md mt-2 dark:bg-slate-800 dark:border-slate-700"},U_={class:"max-h-60 overflow-y-auto overflow-x-hidden"},j_={key:1},Xs=e.defineComponent({__name:"ArticlesPage",setup(r){const t=qe.useRoute(),l=qe.useRouter(),n=e.ref(null),a=e.ref(""),{t:o,locale:s}=Be(),i=e.ref([]),c=e.inject("cms.menu")||[],u=e.ref(""),d=e.ref(1),m=e.ref(!1),f=e.ref(["title","slug","author","publish_at","published_at","status"]),p=e.ref([]),h=e.ref([]),g=e.ref([]),y=e.ref({}),b=e.ref(0),w=e.ref(!1),x=()=>{var F;let I=(F=n.value)==null?void 0:F.columns.filter(A=>{var z;return(z=f==null?void 0:f.value)==null?void 0:z.includes(A.name)});p.value=I.map(A=>{switch(A.name){case"title":return{...A,title:A.name?A.name.charAt(0).toUpperCase()+A.name.slice(1):"--",icon:Hr};case"slug":return{...A,title:A.name?A.name.charAt(0).toUpperCase()+A.name.slice(1):"-",icon:Rc};case"author":return{...A,title:A.name?A.name.charAt(0).toUpperCase()+A.name.slice(1):"-",icon:Hc};case"publish_at":return{...A,title:A.name?A.name.charAt(0).toUpperCase()+A.name.slice(1):"-",icon:Cl};case"published_at":return{...A,title:A.name?A.name.charAt(0).toUpperCase()+A.name.slice(1):"-",icon:Cl};default:return{...A,title:A.name?A.name.charAt(0).toUpperCase()+A.name.slice(1):"-"}}}),m.value=!1},k=e.computed(()=>{var I,F;return(F=(I=c.value)==null?void 0:I.find(A=>A.id===t.params.id))==null?void 0:F.title}),_=e.computed(()=>[{label:k.value||t.params.id,route:`collections/${t.params.id}`}]),N=I=>{I==="collections"?l.push("/collections"):l.push(`/${I}`)},V=()=>{l.push(`/collections/${t.params.id}/create`)},P=async I=>{console.log("handleRemoveArticle"),Jr({title:o("cms.builder.deleteTitle"),message:o("cms.builder.deleteObject"),type:"error",onConfirm:async()=>{await fetch(`/api/cms/${t.params.id}/${I.id}`,{method:"DELETE"}),M()}})},$=I=>{l.push(`/collections/${t.params.id}/${I.id}`)},M=async()=>{if(!w.value){w.value=!0;try{const F=await(await fetch(`/api/cms/${t.params.id}?page=${d.value}&filter=${u.value}`)).json();i.value=F.rows||[],n.value=F;const A=(F.filters||[]).map(z=>{const{extra:ee,title:pe,...Ne}=z;return Ne});g.value=A,t.params.id==="pages"&&f.value.push("type"),D(),x()}finally{w.value=!1}}},D=()=>{var F;if(!((F=n.value)!=null&&F.columns))return;const I=n.value.columns.map((A,z)=>({text:A.label,id:A.name}));h.value=[...f.value.map(A=>I.find(z=>z.id===A)).filter(Boolean),...I.filter(A=>!f.value.includes(A.id))]},q=(I,F)=>{if(!F)return!0;const A=F.toLowerCase();return p.value.some(z=>{const ee=I[z.name];return ee&&ee.toString().toLowerCase().includes(A)})},Q=I=>{const F=Object.entries(I==null?void 0:I.data).filter(([,z])=>z!=null).map(([z,ee])=>`${z}=${ee}`).join("|");u.value=F;const A={...t.query};F?A.filter=F:delete A.filter,l.replace({query:A})},R=()=>{if(t.query.filter){u.value=t.query.filter;const I=t.query.filter.split("cms.|"),F={};I.forEach(A=>{const[z,ee]=A.split("cms.=");z&&ee&&(F[z]=ee)}),y.value=F}else u.value="",y.value={},b.value++};return e.onMounted(()=>{R(),M()}),e.watch(()=>t.params.id,()=>{y.value={},u.value="",g.value=[];const I={...t.query};delete I.filter,l.replace({query:I}),b.value++,R(),M()}),e.watch(()=>t.query,async()=>{R(),await e.nextTick(),M()},{deep:!0}),e.watch(d,async()=>{t.query.filter||(u.value="",y.value={},b.value++),await e.nextTick(),M()}),(I,F)=>{var A,z,ee;return e.openBlock(),e.createElementBlock("div",D_,[e.createVNode(Ys,{items:_.value,onNavigate:N},null,8,["items"]),e.createElementVNode("div",M_,[e.createElementVNode("div",T_,[e.createElementVNode("h1",L_,e.toDisplayString(k.value),1),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(s)}/guides/content/`,target:"_blank",title:I.$t("cms.guide.content")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,$_)]),i.value.length?(e.openBlock(),e.createElementBlock("button",{key:0,onClick:V,class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(I.$t("cms.articles.createArticle")),1)])):e.createCommentVNode("",!0)]),i.value.length||u.value.length?(e.openBlock(),e.createElementBlock("div",F_,[(e.openBlock(),e.createElementBlock("div",I_,[e.createElementVNode("div",O_,[(e.openBlock(),e.createBlock(e.unref(jl),{key:b.value,schema:g.value,history:!0,value:y.value,view:"inline",onChange:Q},null,8,["schema","value"])),e.createElementVNode("div",P_,[h.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:"flex items-center gap-2 cursor-pointer text-sm border border-gray-300 rounded-md p-2 dark:text-white",onClick:F[0]||(F[0]=pe=>m.value=!m.value)},[e.createElementVNode("p",null,e.toDisplayString(I.$t("cms.articles.showColumns")),1),e.createVNode(e.unref(Xa),{class:"w-4 h-4"})])):e.createCommentVNode("",!0),h.value.length>0&&m.value?(e.openBlock(),e.createElementBlock("div",R_,[e.createElementVNode("div",U_,[h.value.length>0&&m.value?(e.openBlock(),e.createBlock(e.unref(Cs),{key:0,options:h.value,modelValue:f.value,"onUpdate:modelValue":F[1]||(F[1]=pe=>f.value=pe)},null,8,["options","modelValue"])):e.createCommentVNode("",!0)]),e.createElementVNode("button",{class:"text-sm bg-blue-600 text-white rounded-md p-2 mt-4 w-full",onClick:x},e.toDisplayString(I.$t("cms.articles.update")),1)])):e.createCommentVNode("",!0)])])])),p.value.length>0?(e.openBlock(),e.createBlock(Jn,{key:1,class:"max-h-[calc(100vh-270px)] overflow-y-auto",rows:i.value,columns:p.value,query:a.value,filterFn:q,onDelete:P,onEdit:$},null,8,["rows","columns","query"])):e.createCommentVNode("",!0),((A=n.value)==null?void 0:A.total)>20?(e.openBlock(),e.createBlock(ks,{key:2,total:(z=n.value)==null?void 0:z.filtered,count:(ee=n.value)==null?void 0:ee.count,page:d.value,"onUpdate:page":F[2]||(F[2]=pe=>d.value=pe),limit:20},null,8,["total","count","page"])):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",j_,[e.createVNode(bs,{onAction:V})]))])}}}),z_={class:"flex justify-end p-[20px] gap-[10px] border-t w-full"},H_={__name:"CreateForm",setup(r){const t=e.inject("cms.fetchContentTypes"),{t:l}=Be(),n=qe.useRouter(),a=e.ref({}),o=e.ref(!1),s=e.ref({type:"collection"}),i={name:{type:"text",label:l("cms.builder.scheme.name.label"),required:!0,placeholder:l("cms.builder.scheme.name.placeholder"),validators:["required"]},title:{type:"text",label:l("cms.builder.scheme.title.label"),required:!0,placeholder:l("cms.builder.scheme.title.placeholder"),validators:["required"]},type:{type:"combobox",mode:"combo",label:l("cms.builder.scheme.type.label"),required:!0,placeholder:l("cms.builder.scheme.type.placeholder"),validators:["required"],options:[{text:l("cms.builder.scheme.type.options.collection"),id:"collection"},{text:l("cms.builder.scheme.type.options.single"),id:"single"}]},customTable:{type:"switcher",label:l("cms.builder.scheme.customTable.label")}},c=async()=>{if(await a.value.validate()){se({type:"warning",title:l("cms.common.actions.warning"),message:l("cms.collections.collectionCreationFailed")});return}try{const m=await(await fetch("/api/cms-type",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s.value)})).json();n.push(`/settings/collections/edit/${m.id}`),t(),se({type:"success",title:l("cms.common.actions.success"),message:l("cms.collections.collectionCreated")})}catch(d){se({type:"error",title:l("cms.common.actions.error"),message:l("cms.collections.collectionCreationFailed")}),console.error(d)}};return(u,d)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{onClick:d[0]||(d[0]=m=>o.value=!0),class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 h-9 px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white shadow-md hover:shadow-lg transition-all duration-200 transform hover:scale-105"},[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(u.$t("cms.collections.createCollection")),1)]),e.createVNode(e.unref(Gt),{teleport:"#modal",visible:o.value,title:u.$t("cms.collections.createCollection"),onClose:d[4]||(d[4]=m=>o.value=!1)},{footer:e.withCtx(()=>[e.createElementVNode("div",z_,[e.createElementVNode("button",{class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100",onClick:d[3]||(d[3]=m=>o.value=!1)},e.toDisplayString(u.$t("cms.common.actions.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.common.actions.save")),1)])]),default:e.withCtx(()=>[e.createVNode(e.unref(He),{form:a.value,"onUpdate:form":d[1]||(d[1]=m=>a.value=m),modelValue:s.value,"onUpdate:modelValue":d[2]||(d[2]=m=>s.value=m),schema:i},null,8,["form","modelValue"])]),_:1},8,["visible","title"])]))}};let q_;function K_(){return q_}e.version[0];function G_(r){return typeof r=="function"?r():e.unref(r)}function da(r){if(r instanceof Promise||r instanceof Date||r instanceof RegExp)return r;const t=G_(r);if(!r||!t)return t;if(Array.isArray(t))return t.map(l=>da(l));if(typeof t=="object"){const l={};for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)){if(n==="titleTemplate"||n[0]==="o"&&n[1]==="n"){l[n]=e.unref(t[n]);continue}l[n]=da(t[n])}return l}return t}const W_="usehead",Zs=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Qs="__unhead_injection_handler__";function Y_(){if(Qs in Zs)return Zs[Qs]();const r=e.inject(W_);return!r&&process.env.NODE_ENV!=="production"&&console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),r||K_()}function X_(r,t={}){const l=t.head||Y_();if(l)return l.ssr?l.push(r,t):Z_(l,r,t)}function Z_(r,t,l={}){const n=e.ref(!1),a=e.ref({});e.watchEffect(()=>{a.value=n.value?{}:da(t)});const o=r.push(a.value,l);return e.watch(a,i=>{o.patch(i)}),e.getCurrentInstance()&&(e.onBeforeUnmount(()=>{o.dispose()}),e.onDeactivated(()=>{n.value=!0}),e.onActivated(()=>{n.value=!1})),o}function Q_(r,t=300){const l=e.ref(r.value);let n;return e.watch(r,a=>{clearTimeout(n),n=setTimeout(()=>{l.value=a},t)},{immediate:!0}),l}const Wt=(r,t)=>{const l=r.__vccOpts||r;for(const[n,a]of t)l[n]=a;return l},J_={},eE={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"};function tE(r,t){return e.openBlock(),e.createElementBlock("svg",eE,[...t[0]||(t[0]=[e.createStaticVNode('<line x1="8" x2="21" y1="6" y2="6"></line><line x1="8" x2="21" y1="12" y2="12"></line><line x1="8" x2="21" y1="18" y2="18"></line><line x1="3" x2="3.01" y1="6" y2="6"></line><line x1="3" x2="3.01" y1="12" y2="12"></line><line x1="3" x2="3.01" y1="18" y2="18"></line>',6)])])}const rE=Wt(J_,[["render",tE]]),lE={},nE={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"};function aE(r,t){return e.openBlock(),e.createElementBlock("svg",nE,[...t[0]||(t[0]=[e.createStaticVNode('<rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M3 9h18"></path><path d="M3 15h18"></path><path d="M9 3v18"></path><path d="M15 3v18"></path>',5)])])}const oE=Wt(lE,[["render",aE]]),sE={class:"grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-6 pb-6"},iE={class:"flex items-center gap-2 space-y-1.5 p-6 border-b border-slate-200 dark:border-slate-700 bg-gradient-to-r from-slate-50 dark:from-slate-800 to-white dark:to-slate-800"},cE={class:"line-clamp-1 tracking-tight text-lg font-semibold text-slate-800 dark:text-slate-100 vertical-center"},dE={class:"w-full flex flex-col gap-2 p-6"},uE=["title"],mE={class:"flex items-center justify-between gap-2"},pE={class:"text-sm text-slate-600 dark:text-slate-400"},fE={class:"font-semibold text-slate-800 dark:text-slate-100"},hE={class:"flex items-center justify-between gap-2"},gE={class:"text-sm text-slate-500 dark:text-slate-400"},yE={class:"font-semibold text-slate-800 dark:text-slate-100"},bE={class:"flex items-center justify-between gap-2"},kE={class:"text-sm text-slate-500 dark:text-slate-400"},xE={class:"text-sm text-slate-600 dark:text-slate-300"},wE={class:"flex items-center justify-between gap-2 mt-6"},_E=["onClick"],EE={class:"text-slate-800 dark:text-slate-200 group-hover:text-green-600 dark:group-hover:text-blue-50"},CE=["onClick"],VE=["onClick"],NE=e.defineComponent({__name:"CollectionsGrid",props:{collections:{},onEdit:{type:Function},onView:{type:Function},onDelete:{type:Function}},emits:["edit","view","delete"],setup(r,{emit:t}){e.ref(!1),e.ref(null);const l=r,n=t,a=(i,c)=>{switch(i){case"edit":n("edit",c),l.onEdit&&l.onEdit(c);break;case"view":n("view",c),l.onView&&l.onView(c);break;case"delete":n("delete",c),l.onDelete&&l.onDelete(c);break}},o=i=>{const c=new Date,u=new Date(i),d=c.getTime()-u.getTime(),m=Math.floor(d/1e3),f=Math.floor(m/60),p=Math.floor(f/60),h=Math.floor(p/24),g=Math.floor(h/7);return g>=2?`${g} weeks ago`:g===1?"1 week ago":h>=2?`${h} days ago`:h===1?"1 day ago":p>=2?`${p} hours ago`:p===1?"1 hour ago":f>=2?`${f} minutes ago`:f===1?"1 minute ago":"just now"},s=i=>{switch(i){case"published":return{icon:Wa,text:"Published",classes:"bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-200 border-green-200 dark:border-green-700"};case"draft":return{icon:Nr,text:"Draft",classes:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-200 border-yellow-200 dark:border-yellow-700"};case"archived":return{icon:ro,text:"Archived",classes:"bg-gray-100 text-gray-800 dark:bg-gray-900/30 dark:text-gray-300 border-gray-200 dark:border-gray-700"};default:return{icon:er,text:"--",classes:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-200 border-yellow-200 dark:border-yellow-700"}}};return(i,c)=>(e.openBlock(),e.createElementBlock("div",sE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.collections,u=>{var d,m,f;return e.openBlock(),e.createElementBlock("div",{key:u.id,class:"rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-200 transform hover:bg-slate-50"},[e.createElementVNode("div",iE,[u.type==="single"?(e.openBlock(),e.createBlock(e.unref(Cr),{key:0,class:"shrink-0 lucide lucide-page w-5 h-5 text-blue-600"})):(e.openBlock(),e.createBlock(e.unref(Vr),{key:1,class:"shrink-0 lucide lucide-layers w-5 h-5 text-blue-600"})),e.createElementVNode("p",cE,e.toDisplayString(u.title),1),s(u.status)?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["whitespace-nowrap rounded-md border ml-auto px-2.5 py-0.5 text-xs font-semibold transition-colors hover:bg-secondary/80 flex items-center w-fit bg-green-100 text-green-800 border-green-200 dark:bg-green-900/30 dark:text-green-300 dark:border-green-700",(d=s(u.status))==null?void 0:d.classes])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((m=s(u.status))==null?void 0:m.icon),{class:"w-3 h-3 mr-1"})),e.createTextVNode(" "+e.toDisplayString((f=s(u.status))==null?void 0:f.text),1)],2)):e.createCommentVNode("",!0)]),e.createElementVNode("div",dE,[e.createElementVNode("p",{class:"text-slate-600 dark:text-slate-300 mb-4 line-clamp-2",title:u.description},e.toDisplayString(u.description!==null?u.description:"No description"),9,uE),e.createElementVNode("div",mE,[e.createElementVNode("p",pE,e.toDisplayString(i.$t("cms.collections.entries"))+":",1),e.createElementVNode("p",fE,e.toDisplayString(u.entries),1)]),e.createElementVNode("div",hE,[e.createElementVNode("p",gE,e.toDisplayString(i.$t("cms.collections.fields"))+":",1),e.createElementVNode("p",yE,e.toDisplayString(u.fields),1)]),e.createElementVNode("div",bE,[e.createElementVNode("p",kE,e.toDisplayString(i.$t("cms.collections.lastModified"))+":",1),e.createElementVNode("p",xE,e.toDisplayString(o(u.last_edit)),1)]),e.createElementVNode("div",wE,[e.renderSlot(i.$slots,"actions",{collection:u,handleAction:a},()=>[e.createElementVNode("button",{class:"inline-flex gap-1 items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-4/5 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm group dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:border-slate-500 dark:hover:text-slate-200 hover:bg-green-50 hover:border-green-300",onClick:e.withModifiers(p=>a("edit",u),["stop"])},[e.createVNode(e.unref(Nr),{class:"text-slate-800 dark:text-slate-200 w-4 h-4 group-hover:text-green-600 dark:group-hover:text-blue-50"}),e.createElementVNode("span",EE,e.toDisplayString(i.$t("cms.common.actions.edit")),1)],8,_E),e.createElementVNode("button",{class:e.normalizeClass([u.id==="pages"?"disabled":"","inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm group dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:border-slate-500 dark:hover:text-slate-200 hover:bg-red-50 hover:border-red-300"]),onClick:e.withModifiers(p=>u.id==="pages"?null:a("delete",u),["stop"])},[e.createVNode(e.unref(Ht),{class:"text-slate-800 dark:text-slate-200 w-4 h-4 group-hover:text-red-600 dark:group-hover:text-blue-50"})],10,CE),e.createElementVNode("button",{class:e.normalizeClass([u.type==="single"?"disabled cursor-not-allowed":"","inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm group dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:border-slate-500 dark:hover:text-slate-200 hover:bg-blue-50 hover:border-blue-300"]),onClick:e.withModifiers(p=>u.type==="single"?null:a("view",u),["stop"])},[e.createVNode(e.unref(Nl),{class:"text-slate-800 dark:text-slate-200 w-4 h-4 group-hover:text-blue-600 dark:group-hover:text-blue-50"})],10,VE)])])])])}),128))]))}}),ua=localStorage.getItem("collectionView"),zl=e.ref(ua==="list"||ua==="grid"?ua:"list");e.watch(zl,r=>{localStorage.setItem("collectionView",r)});function vE(){zl.value=zl.value==="grid"?"list":"grid"}function BE(){return{collectionView:zl,toggleCollectionView:vE}}const SE={class:"space-y-6 max-w-7xl mx-auto"},AE={class:"flex items-center justify-between mb-8"},DE={class:"flex gap-4"},ME={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-2"},TE={class:"text-slate-600 dark:text-slate-300"},LE=["href","title"],$E={class:"flex items-center gap-3"},FE={class:"relative"},IE={class:"absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"},OE=["placeholder"],PE={class:"flex items-center bg-white dark:bg-slate-700 border border-slate-200 dark:border-slate-600 rounded-lg p-1 max-w-[fit-content]"},RE=["onClick"],UE=e.defineComponent({__name:"BuilderPage",setup(r){const{t,locale:l}=Be(),n=qe.useRouter(),a=[{name:"name",title:t("cms.builder.collectionName"),type:"text",icon:Vr},{name:"title",title:t("cms.builder.title"),type:"text",icon:Vr},{name:"description",title:t("cms.common.description"),type:"text"},{name:"entries",title:t("cms.builder.entries"),type:"number"},{name:"fields",title:t("cms.builder.fields"),type:"number"},{name:"status",title:t("cms.builder.status"),type:"text"},{name:"last_edit",title:t("cms.builder.lastModified"),type:"date"}],o=e.ref(""),s=Q_(o,300);X_({title:()=>t("cms.collections.title")+" | CMS"});const i=e.ref([]),c=e.inject("fetchContentTypes"),u=e.ref(1),d=e.ref(16),m=e.ref(null),{collectionView:f,toggleCollectionView:p}=BE();async function h(){try{const x=s.value?`&search=${encodeURIComponent(String(s.value))}`:"",k=`/api/cms-type?page=${u.value}&limit=${d.value}${x}`;console.log("Fetching collections with URL:",k);const _=await fetch(k);if(!_.ok)throw new Error("Failed to fetch collections");const N=await _.json();console.log("Collections fetched:",N),i.value=N.rows,m.value=N}catch(x){console.error("Error fetching collections:",x)}}e.onMounted(()=>{h()});const g=e.computed(()=>[...i.value].sort((k,_)=>k.id==="pages"?-1:_.id==="pages"?1:0)),y=async x=>{try{await fetch(`/api/cms-type/${x.id}`,{method:"DELETE"}),h(),c()}catch(k){console.error("Error deleting collection:",k)}},b=x=>{n.push(`/settings/collections/edit/${x.id||x.name}`)},w=x=>{x.type==="single"?n.push(`/collections/single/${x.name}`):n.push(`/collections/${x.name}`)};return e.watch(u,()=>{h()}),e.watch(s,x=>{console.log("Search query changed:",x),u.value=1,h()}),(x,k)=>{var _,N,V,P;return e.openBlock(),e.createElementBlock("div",SE,[e.createElementVNode("div",AE,[e.createElementVNode("div",DE,[e.createElementVNode("div",null,[e.createElementVNode("h1",ME,e.toDisplayString(x.$t("cms.builder.collections")),1),e.createElementVNode("p",TE,e.toDisplayString(x.$t("cms.builder.manageContentCollections")),1)]),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/collections/`,target:"_blank",title:x.$t("cms.guide.collections"),class:"mt-2"},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,LE)]),e.createElementVNode("div",$E,[e.createElementVNode("div",FE,[e.createElementVNode("div",IE,[e.createVNode(e.unref(wn),{class:"w-5 h-5 text-gray-400"})]),e.withDirectives(e.createElementVNode("input",{type:"text",class:"block w-full py-2 pl-10 pr-3 leading-5 text-gray-900 placeholder-gray-500 transition-colors bg-white border border-gray-300 rounded-md dark:border-gray-600 dark:bg-gray-700 dark:placeholder-gray-400 focus:outline-none focus:ring-sky-500 focus:border-sky-500 dark:text-white sm:text-sm",placeholder:x.$t("cms.builder.searchCollections"),"onUpdate:modelValue":k[0]||(k[0]=$=>o.value=$)},null,8,OE),[[e.vModelText,o.value]])]),e.createElementVNode("div",PE,[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors rounded-md text-xs h-8 w-8 p-0 hover:bg-blue-700 hover:text-white cursor-pointer",{"bg-blue-600 text-white":e.unref(f)==="list"}]),onClick:k[1]||(k[1]=$=>f.value="list")},[e.createVNode(rE,{class:"dark:text-blue-50 w-4 h-4"})],2),e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors rounded-md text-xs h-8 w-8 p-0 hover:bg-blue-700 hover:text-white cursor-pointer",{"bg-blue-600 text-white":e.unref(f)==="grid"}]),onClick:k[2]||(k[2]=$=>f.value="grid")},[e.createVNode(oE,{class:"dark:text-blue-50 w-4 h-4"})],2)]),e.createVNode(H_)])]),e.createElementVNode("div",null,[e.unref(f)==="list"?(e.openBlock(),e.createBlock(Jn,{key:0,class:"max-h-[calc(100vh-270px)] overflow-y-auto overflow-x-hidden",columns:a,rows:g.value,onDelete:y,onEdit:b,onView:w},{actions:e.withCtx(({row:$})=>[e.createElementVNode("button",{class:"inline-flex items-center justify-center whitespace-nowrap font-medium border rounded-md text-xs h-8 w-8 p-0 border-slate-300 bg-white transition-all duration-200 shadow-sm group dark:border-slate-600 dark:bg-slate-700 dark:hover:bg-slate-600 dark:hover:border-slate-500 dark:hover:text-slate-200 hover:bg-blue-50 hover:border-blue-300 hover:text-blue-600",onClick:M=>w($)},[e.createVNode(e.unref(Nl),{class:"text-slate-800 dark:text-slate-200 w-4 h-4 group-hover:text-blue-600 dark:group-hover:text-blue-50"})],8,RE)]),_:1},8,["rows"])):e.createCommentVNode("",!0),e.unref(f)==="grid"?(e.openBlock(),e.createBlock(NE,{key:1,collections:g.value,onEdit:b,onView:w,onDelete:y,class:"max-h-[calc(100vh-270px)] overflow-y-auto overflow-x-hidden"},null,8,["collections"])):e.createCommentVNode("",!0),((_=m.value)==null?void 0:_.total)>16?(e.openBlock(),e.createBlock(ks,{key:2,total:(N=m.value)==null?void 0:N.filtered,count:((V=m.value)==null?void 0:V.count)||((P=m.value)==null?void 0:P.total),page:u.value,"onUpdate:page":k[3]||(k[3]=$=>u.value=$),limit:d.value},null,8,["total","count","page","limit"])):e.createCommentVNode("",!0)])])}}});async function jE(){if(window.monaco)return window.monaco;const r="https://cdn.jsdelivr.net/npm/monaco-editor@0.45.0/min";return window.require||(window.require={paths:{vs:`${r}/vs`}},await new Promise((t,l)=>{const n=document.createElement("script");n.src=`${r}/vs/loader.min.js`,n.onload=()=>t(),n.onerror=l,document.head.appendChild(n)})),new Promise(t=>{window.require(["vs/editor/editor.main"],()=>t(window.monaco))})}const Hl=e.defineComponent({__name:"MonacoEditor",props:e.mergeModels({language:{default:"javascript"},theme:{default:"vs-dark"},width:{default:"100%"},height:{default:"100%"},options:{default:()=>({minimap:{enabled:!1}})}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=r,l=e.useModel(r,"modelValue"),n=e.ref(null);let a=null,o=null;return e.onMounted(async()=>{var s;if(n.value)try{o=await jE();const i=((s=l.value)==null?void 0:s.replace(/\\n/g,`
|
|
240
240
|
`))||"";a=o.editor.create(n.value,{value:i,language:t.language,theme:t.theme,automaticLayout:!0,...t.options}),a.onDidChangeModelContent(()=>{const c=(a==null?void 0:a.getValue())||"";l.value=c})}catch(i){console.error("Failed to load Monaco Editor:",i)}}),e.watch(()=>l.value,s=>{if(a){const i=(s==null?void 0:s.replace(/\\n/g,`
|
|
@@ -247,7 +247,7 @@ About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guid
|
|
|
247
247
|
<svg class="w-4 h-4 text-gray-400" fill="currentColor" viewBox="0 0 20 20">
|
|
248
248
|
<path fill-rule="evenodd" d="M4 3a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V5a2 2 0 00-2-2H4zm12 12H4l4-8 3 6 2-4 3 6z" clip-rule="evenodd" />
|
|
249
249
|
</svg>
|
|
250
|
-
`,h.parentNode.appendChild(g)};return e.onMounted(()=>{var p,h;(h=(p=t.value)==null?void 0:p.filter(g=>typeof g=="object"))==null||h.forEach(g=>g.id?g.id:g.id=Math.random().toString(36).substring(2,15))}),(p,h)=>(e.openBlock(),e.createElementBlock("div",wV,[e.createElementVNode("div",_V,[e.createElementVNode("div",EV,[e.createElementVNode("table",CV,[e.createElementVNode("thead",VV,[e.createElementVNode("tr",NV,[h[4]||(h[4]=e.createElementVNode("th",{class:"h-10 px-2 align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] w-12 text-center"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.colModel,g=>(e.openBlock(),e.createElementBlock("th",{key:g.name,class:"h-10 px-2 text-left align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] font-semibold text-slate-700 dark:text-slate-300 min-w-[150px]"},e.toDisplayString(g.label||g.title||g.name),1))),128)),e.createElementVNode("th",vV,e.toDisplayString(p.$t("cms.table.actions")),1)])]),e.createElementVNode("tbody",BV,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(g,y)=>(e.openBlock(),e.createElementBlock("tr",{key:g==null?void 0:g.id,class:e.normalizeClass(["border-b data-[state=selected]:bg-muted transition-all duration-200 hover:bg-slate-50/60 dark:hover:bg-slate-700/60 cursor-move",{"opacity-50":l.value===g}]),draggable:"true",onDragstart:b=>o(b,g,y),onDragover:b=>s(b),onDrop:b=>u(b,y),onDragenter:b=>i(b,y),onDragleave:h[2]||(h[2]=b=>c(b))},[e.createElementVNode("td",AV,[e.createElementVNode("div",DV,[e.createVNode(e.unref(Qa))])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.colModel,b=>(e.openBlock(),e.createElementBlock("td",{key:b.name,class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] text-slate-600 dark:text-slate-400 text-sm"},[b.type==="Texteditor"?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:g[b.key]||"-"},null,8,MV)):b.type==="File"?(e.openBlock(),e.createElementBlock("div",TV,[Array.isArray(g[b.key])&&g[b.key].length>0?(e.openBlock(),e.createElementBlock("div",LV,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d(g[b.key]),(w,x)=>(e.openBlock(),e.createElementBlock("div",{key:x,class:"relative w-8 h-8 rounded overflow-hidden bg-gray-100 dark:bg-gray-700 flex-shrink-0"},[e.createElementVNode("img",{src:w,alt:`Image ${x+1}`,class:"w-full h-full object-cover",onError:h[0]||(h[0]=k=>f(k))},null,40,$V)]))),128)),m(g[b.key])>0?(e.openBlock(),e.createElementBlock("span",FV," +"+e.toDisplayString(m(g[b.key])),1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",IV,[...h[5]||(h[5]=[e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400",fill:"currentColor",viewBox:"0 0 20 20"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M4 3a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V5a2 2 0 00-2-2H4zm12 12H4l4-8 3 6 2-4 3 6z","clip-rule":"evenodd"})],-1)])]))])):(e.openBlock(),e.createElementBlock("span",OV,e.toDisplayString(g[b.key]||"-"),1))]))),128)),e.createElementVNode("td",PV,[e.createVNode(yV,{item:g,colModel:r.colModel,modelValue:t.value,"onUpdate:modelValue":h[1]||(h[1]=b=>t.value=b)},null,8,["item","colModel","modelValue"])])],42,SV))),128)),a.value?(e.openBlock(),e.createElementBlock("tr",RV)):e.createCommentVNode("",!0)])])])]),e.createVNode(xV,{colModel:r.colModel,modelValue:t.value,"onUpdate:modelValue":h[3]||(h[3]=g=>t.value=g)},null,8,["colModel","modelValue"])]))}},Ti="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASIAAACbCAIAAABJbgHoAAAGfklEQVR4Ae3d7W6baBSF0d7/7Q6IDxkzmrHEQU2DHZudWH1XflRHcXNqVnka4tL01+qNAIGwwK/wfusJEFjPyexyuUzTNAxD3/dd1/3z/1vXdX3fD8MwTdPlcoFNoFmBlzJblmWapr7vb10d/9j3/TRNy7I0a+3AmxV4MrPr9TqO43FXnz06juP1em1W3IE3KPBMZvM8b1eGn7V0/P6u6+Z5bpDbIbcp8OXMnv4k9jG8cRzbRHfUrQl8LbNhGD7W8sp7hmFoTdzxNijwhcxOb+zWp9IaPO1aO+RHMzvxWvHjZz9Xj62ddq0d70OZzfP8sY1z3+MVkdbOvKaO935m1+v1xdcVHwmy6zqv8jd15jV1sPczi14u7gt06djUmdfUwd7JbFmWfQnp2T0iTZ187RzsncymaUqntd8/TVM79I60HYE7mT14v+I+lVfmvu+P6W93UQ7eCLyxwMd7d48yu1wurzTz3Mce3Mu/LMs4jt3/b88t91EE0gK383Mcx/1XQEeZffMV4+34D64bb42lmewn8LpA13X7l/SOMgvd9nF8DAc3hXzzFezx8/QogWOB/VdAR5n9yGm9f3K/fZ32DX99dwznUQKPC3Rdt53AR5n9yGm9f3Lbs7wNjx+hn0ngHQS2E/gos596otuT+234qefj1yXwnMB2AsvsOUAfReC+wEOZuWi8D+lnEPhc4KHM3u0lkM8PxyME3lHgocze7QX9d4T0nAh8LvBQZu/219M/8tn1c0OPEDgS2P/V1NFLIO92s9U0TT/y5eKRpccI/Emg67r9/UxHma3r+s2fQPZ/AGyfcLfhlW8O+ScK7yOQEvjtm5Heyeybrxv3fwBsde2HZVnmeZ68EXhjgXme9/cNr+u976Hvn3XuIzcTeE7gzmezdV19k4LnZH0UgU3gfma+5c6GZSDwnMD9zNZ19Q3knsP1UQRuAg9llr503P8DOL8xBP4+gUczW9c1dFPIwb/j/Pu4HVGbAl/ILFGaxto87Vo76q9ldu7Vo2vF1s62Zo/3y5ndXhF58aYn/41gsydcmwf+TGbrur5y39Nv96G06e6omxJ4MrObkf/ivalzxcE+LfBSZtuverlcpmkahqHv++16suu6vu+HYZim6eCbnG5LDAT+VoFzMvtbdRwXgVMEZHYKoyUEjgRkdqTjMQKnCMjsFEZLCBwJyOxIx2METhGQ2SmMlhA4EpDZkY7HCJwiILNTGC0hcCTwX2a3/1/QjwQInCuwlSezc2FtI1ACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhAS2DL7F8r/OP7dtZNpAAAAAElFTkSuQmCC",Li={faq:{schema:{title:{type:"text",label:"Назва",placeholder:"Назва"},show_dots:{type:"switcher",label:"Показувати точки"},show_index:{type:"switcher",conditions:["show_dots","==","true"],label:"Показувати нумерацію"},index_type:{type:"combobox",conditions:["show_index","==","true"],label:"Тип нумерації",options:[{id:"decimal",text:"Десятковий"},{id:"upper-alpha",text:"Латинські великі букви"},{id:"lower-alpha",text:"Латинські маленькі букви"},{id:"upper-roman",text:"Римські великі цифри"},{id:"lower-roman",text:"Римські маленькі цифри"},{id:"upper-cyrillic",text:"Кириличні великі букви"},{id:"lower-cyrillic",text:"Кириличні маленькі букви"}]},openfirst:{type:"switcher",label:"Відкрити перший елемент?"},collapse_mode:{type:"switcher",label:"Не згортати попередній елемент?"},data:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text",required:!0,validators:["required"]},{key:"is_section",type:"Radio",label:"Заповнити секціями",options:[{id:"yes",text:"Так"},{id:"no",text:"Ні"}],required:!0,validators:["required"]},{key:"section",type:"reference",label:"Вкладений контент",placeholder:"Ваш контент",conditions:["is_section","==","yes"],required:!0,validators:["required"]},{key:"body",type:"tiptap-editor",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","no"],required:!0,validators:["required"]}]}}},banner:{schema:{title:{type:"text",label:"Назва",placeholder:"Назва"},image:{type:"file",label:"Зображення",placeholder:"Зображення"}}},photoGrid:{schema:{columns:{type:"number",label:"Кількість колонок",placeholder:"Кількість колонок",default:3},data:{type:"DataTable",colModel:[{key:"image",ua:"Зображення",type:"file"},{key:"caption",ua:"Заголовок",type:"text"}]}}},slider:{schema:{autoplay:{type:"switcher",label:"Автоматичне гортання?",default:!0},autoplaySpeed:{type:"number",label:"Швидкість автоматичного гортання(мс)",placeholder:"Швидкість автоматичного гортання(мс)",default:3e3},show_navigation:{type:"switcher",label:"Показувати кнопки навігації?"},data:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text"},{key:"link",ua:"Посилання",type:"text"},{key:"image",ua:"Зображення",type:"file"},{key:"image_width",ua:"Ширина зображення(px)",type:"number",placeholder:"Ширина зображення"},{key:"image_height",ua:"Висота зображення(px)",type:"number",placeholder:"Висота зображення"},{ua:"Розтягувати по ширині",key:"stretch",type:"switcher"},{key:"target_blank",ua:"Відкривати в новій вкладці?",type:"switcher"}]}}},video:{schema:{file:{type:"file",max_size:50,description:"Максимальний розмір файлу 50MB",label:"Завантажити відео",placeholder:"Завантажити відео"},hidden_gif:{type:"switcher",label:"Сховати GIF"},preview:{type:"file",label:"Прев'ю для відео"},link:{type:"text",label:"Посилання",placeholder:"Посилання"}}},about:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},text:{type:"tiptap-editor",label:"Текст",placeholder:"Текст"},url:{type:"file",label:"Зображення / відео",placeholder:"Посилання"}}},cards:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text"},{key:"img",ua:"Зображення",type:"file"},{key:"link",ua:"Посилання",type:"text"},{key:"description",ua:"Опис",type:"text"}]}}},usefulLinks:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"text",ua:"Назва",type:"text"},{key:"url",ua:"Посилання",type:"text"},{key:"target_blank",ua:"Відкривати в новій вкладці?",type:"switcher"}]}}},team:{schema:{data:{type:"DataTable",colModel:[{key:"avatar",ua:"Аватар",type:"file"},{key:"title",ua:"Ім'я/ПІБ",type:"text"},{key:"description",ua:"Опис",type:"textarea",optional:!0},{key:"position",ua:"Посада",type:"text",tooltip:!0},{key:"email",ua:"Email",type:"text",optional:!0},{key:"tel",ua:"Телефон",type:"text",optional:!0},{key:"schedule",ua:"Графік прийому",type:"text",optional:!0},{key:"isinfo",type:"switcher",label:"Відображати кнопку 'Детальніше'"},{key:"slug",ua:"Slug",type:"text",label:"Унікальний ідентифікатор"}]}}},body:{schema:{background_color:{type:"switcher",label:"Додати білий фон?"},content:{type:"tiptap-editor",label:"Текст",placeholder:"Текст"}}},news:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},buttonText:{type:"text",label:"Текст кнопки",placeholder:"Текст кнопки"},buttonLink:{type:"text",label:"Посилання кнопки",placeholder:"Посилання кнопки"},tag:{type:"select",label:"Тег",placeholder:"Тег",data:"tag_id"},news_list:{type:"select",label:"Список новин",multiple:!0,placeholder:"Список новин",parent:"tag",data:"news_tag_id"}}},form:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},formUrl:{type:"text",label:"Посилання для відправки форми",placeholder:"Посилання"},schema:{label:"Схема форми",type:"DataTable",colModel:[{key:"name",ua:"Name",type:"text",placeholder:"Name"},{key:"label",ua:"Title",type:"text",placeholder:"Title"},{key:"type",ua:"Type",type:"combobox",options:[{text:"Text",id:"text"},{text:"Textarea",id:"textarea"},{text:"switcher",id:"switcher"},{text:"Email",id:"email"},{text:"Mask",id:"mask"},{text:"Number",id:"number"},{text:"Date",id:"date"},{text:"Datetime",id:"datetime"}]},{key:"mask",ua:"Маска",type:"text",conditions:["type","==","mask"],placeholder:"Маска"},{key:"placeholder",ua:"Плейсхолдер",type:"text",placeholder:"Placeholder"},{key:"required",ua:"Required",type:"switcher"}]}}},tabs:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},description:{type:"textarea",label:"Опис",placeholder:"Опис"},history_mode:{type:"switcher",label:"Використовувати історію сторінки?"},data:{type:"DataTable",colModel:[{key:"slug",type:"slug",label:"Slug",parent:"title",placeholder:"Slug"},{key:"title",ua:"Назва",type:"text",required:!0,validators:["required"]},{key:"is_section",type:"Radio",label:"Заповнити секціями",options:[{id:"yes",text:"Так"},{id:"no",text:"Ні"}],required:!0,validators:["required"]},{key:"section",type:"reference",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","yes"],required:!0,validators:["required"]},{key:"body",type:"tiptap-editor",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","no"],required:!0,validators:["required"]}]}}},vertical_tabs:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},history_mode:{type:"switcher",label:"Використовувати історію сторінки?"},data:{type:"DataTable",colModel:[{key:"slug",type:"slug",label:"Slug",parent:"title",placeholder:"Slug"},{key:"title",ua:"Назва",type:"text",required:!0,validators:["required"]},{key:"is_section",type:"Radio",label:"Заповнити секціями",options:[{id:"yes",text:"Так"},{id:"no",text:"Ні"},{id:"slug",text:"Привязати сторінку"}],required:!0,validators:["required"]},{key:"slug",type:"text",label:"Slug",placeholder:"Slug",conditions:["is_section","==","slug"]},{key:"section",type:"reference",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","yes"],required:!0,validators:["required"]},{key:"body",type:"tiptap-editor",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","no"],required:!0,validators:["required"]}]}}},documents:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},icon:{type:"file",label:"Завантажити іконку",placeholder:"Завантажити іконку"},show_icon:{type:"switcher",label:"Показувати іконку?"},documents:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text"},{key:"file",info:"Прев'ю доступно тільки для документів у форматі pdf, html, txt. Інші формати одразу завантажуються.",ua:"Файл",type:"file"}]}}},infoLine:{schema:{divider:{type:"file",label:"Завантажити розподілювач"},speed:{type:"number",label:"Швидкість автоматичного гортання(с)",placeholder:"Швидкість автоматичного гортання(с)",default:20},data:{type:"DataTable",colModel:[{key:"title",ua:"Текст",type:"text"}]}}},interested:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"title",ua:"Заголовок",type:"text"},{key:"link",ua:"Посилання",type:"text"},{key:"target_blank",ua:"Відкривати в новій вкладці?",type:"switcher"},{key:"color",ua:"Колір фону",type:"color"}]}}},contact:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"type",ua:"Тип",type:"combobox",options:[{id:"email",text:"Email"},{id:"tel",text:"Телефон"},{id:"address",text:"Адреса"}]},{key:"title",ua:"Пошта",type:"text",conditions:["type","==","email"]},{key:"title",ua:"Телефон",type:"text",conditions:["type","==","tel"]},{key:"title",ua:"Адреса",type:"text",conditions:["type","==","address"]},{key:"description",ua:"Опис",type:"text"}]}}},iframe:{schema:{link:{type:"text",label:"Посилання",placeholder:"Посилання"},file:{type:"file",label:"Завантажити файл",placeholder:"Завантажити файл"},height:{type:"text",label:"Висота iframe(px)",placeholder:"Висота iframe(px)"}}}},on=[{text:"reference.faq",id:"faq"},{text:"reference.banner",id:"banner"},{text:"reference.slider",id:"slider"},{text:"reference.photoGrid",id:"photoGrid"},{text:"reference.video",id:"video"},{text:"reference.about",id:"about"},{text:"reference.cards",id:"cards"},{text:"reference.usefulLinks",id:"usefulLinks"},{text:"reference.team",id:"team"},{text:"reference.body",id:"body"},{text:"reference.news",id:"news"},{text:"reference.form",id:"form"},{text:"reference.tabs",id:"tabs"},{text:"reference.vertical_tabs",id:"vertical_tabs"},{text:"reference.documents",id:"documents"},{text:"reference.infoLine",id:"infoLine"},{text:"reference.interested",id:"interested"},{text:"reference.contact",id:"contact"},{text:"reference.iframe",id:"iframe"}],UV={class:"h-full w-full flex flex-col"},jV={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},zV={class:"text-xs font-medium text-gray-600"},HV={key:0,class:"text-xs text-gray-500"},$i={__name:"cards-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",UV,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 grid grid-cols-3 gap-1.5"><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div></div>',1)),e.createElementVNode("div",jV,[e.createElementVNode("div",zV,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",HV,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},qV={class:"h-full w-full flex flex-col"},KV={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},GV={class:"text-xs font-medium text-gray-600"},WV={key:0,class:"text-xs text-gray-500"},YV={__name:"faq-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",qV,[l[0]||(l[0]=e.createStaticVNode('<div class="h-3 bg-gray-500 rounded mb-2"></div><div class="space-y-1.5 flex-1"><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div></div><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div><div class="mt-1 pt-1 border-t border-gray-200"><div class="space-y-0.5"><div class="h-1 bg-gray-200 rounded"></div><div class="h-1 bg-gray-200 rounded w-5/6"></div><div class="h-1 bg-gray-200 rounded w-4/5"></div></div></div></div><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div></div><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div></div></div>',2)),e.createElementVNode("div",KV,[e.createElementVNode("div",GV,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",WV,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},XV={class:"h-full w-full flex flex-col"},ZV={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},QV={class:"text-xs font-medium text-gray-600"},JV={key:0,class:"text-xs text-gray-500"},Fi={__name:"banner-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",XV,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded relative"><div class="absolute inset-0 flex items-center justify-center"><div class="w-16 h-10 bg-gray-300 rounded"></div></div><div class="absolute bottom-2 left-2"><div class="h-3 bg-gray-400 rounded w-16"></div></div></div>',1)),e.createElementVNode("div",ZV,[e.createElementVNode("div",QV,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",JV,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},eN={class:"h-full w-full flex flex-col"},tN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},rN={class:"text-xs font-medium text-gray-600"},lN={key:0,class:"text-xs text-gray-500"},nN={__name:"form-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",eN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-3 bg-gray-500 rounded mb-2"></div><div class="space-y-1.5 flex-1"><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/4"></div><div class="h-5 bg-gray-200 rounded border border-gray-300"></div></div><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/3"></div><div class="h-5 bg-gray-200 rounded border border-gray-300"></div></div><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/4"></div><div class="h-5 bg-gray-200 rounded border border-gray-300"></div></div><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/3"></div><div class="h-8 bg-gray-200 rounded border border-gray-300"></div></div></div><div class="h-6 bg-gray-600 rounded mt-2"></div>',3)),e.createElementVNode("div",tN,[e.createElementVNode("div",rN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",lN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},aN={class:"h-full w-full flex flex-col"},oN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},sN={class:"text-xs font-medium text-gray-600"},iN={key:0,class:"text-xs text-gray-500"},Ii={__name:"news-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",aN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-4 bg-gray-400 rounded mb-2"></div><div class="flex gap-2 flex-1"><div class="flex-1 space-y-2"><div class="bg-gray-200 rounded p-1.5"><div class="h-8 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-3/4"></div></div><div class="bg-gray-200 rounded p-1.5"><div class="h-8 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-3/4"></div></div></div><div class="w-20 space-y-1"><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div></div></div>',2)),e.createElementVNode("div",oN,[e.createElementVNode("div",sN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",iN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},cN={class:"h-full w-full flex flex-col"},dN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},uN={class:"text-xs font-medium text-gray-600"},mN={key:0,class:"text-xs text-gray-500"},pN={__name:"team-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",cN,[l[0]||(l[0]=e.createStaticVNode('<div class="space-y-2 flex-1"><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div></div>',1)),e.createElementVNode("div",dN,[e.createElementVNode("div",uN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",mN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},fN={class:"h-full w-full flex flex-col"},hN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},gN={class:"text-xs font-medium text-gray-600"},yN={key:0,class:"text-xs text-gray-500"},Oi={__name:"usefulLinks-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",fN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-4 bg-gray-400 rounded mb-3"></div><div class="grid grid-cols-2 gap-2 flex-1"><div class="space-y-2"><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div></div><div class="space-y-2"><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div></div></div>',2)),e.createElementVNode("div",hN,[e.createElementVNode("div",gN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",yN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},bN={class:"h-full w-full flex flex-col"},kN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},xN={class:"text-xs font-medium text-gray-600"},wN={key:0,class:"text-xs text-gray-500"},_N={__name:"video-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",bN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded relative"><div class="absolute inset-0 flex items-center justify-center"><div class="w-10 h-10 bg-gray-400 rounded-full flex items-center justify-center"><svg 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-play w-5 h-5 text-white ml-0.5"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></div></div><div class="absolute bottom-1.5 left-1.5 right-1.5"><div class="h-2 bg-gray-400 rounded mb-1"></div><div class="h-2 bg-gray-400 rounded w-3/4"></div></div></div><div class="mt-2 flex items-center gap-2"><div class="w-5 h-5 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded flex-1"></div></div>',2)),e.createElementVNode("div",kN,[e.createElementVNode("div",xN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",wN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},EN={class:"h-full w-full flex flex-col"},CN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},VN={class:"text-xs font-medium text-gray-600"},NN={key:0,class:"text-xs text-gray-500"},vN={__name:"about-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",EN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex flex-1"><div class="flex-1 pr-2"><div class="h-4 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-2 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded w-4/5"></div><div class="h-2 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded w-3/4"></div><div class="h-2 bg-gray-300 rounded"></div></div></div><div class="w-16 h-20 bg-gray-200 rounded flex items-center justify-center"><div class="w-6 h-6 bg-gray-300 rounded-full"></div></div></div>',1)),e.createElementVNode("div",CN,[e.createElementVNode("div",VN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",NN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},BN={class:"h-full w-full flex flex-col"},SN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},AN={class:"text-xs font-medium text-gray-600"},DN={key:0,class:"text-xs text-gray-500"},MN={__name:"slider-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",BN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded mb-2 relative"><div class="absolute inset-0 flex items-center justify-center"><div class="w-12 h-8 bg-gray-300 rounded"></div></div><div class="absolute left-1 top-1/2 transform -translate-y-1/2"><svg 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-chevron-left w-4 h-4 text-gray-400"><path d="m15 18-6-6 6-6"></path></svg></div><div class="absolute right-1 top-1/2 transform -translate-y-1/2"><svg 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-chevron-right w-4 h-4 text-gray-400"><path d="m9 18 6-6-6-6"></path></svg></div></div><div class="h-3 bg-gray-300 rounded mb-2"></div><div class="h-6 w-20 bg-gray-400 rounded"></div><div class="flex justify-center gap-1 mt-2"><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div></div>',4)),e.createElementVNode("div",SN,[e.createElementVNode("div",AN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",DN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},TN={class:"h-full flex flex-col"},LN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},$N={class:"text-xs font-medium text-gray-600"},FN={key:0,class:"text-xs text-gray-500"},IN={__name:"infoLine-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",TN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded relative overflow-hidden"><div class="absolute inset-0 flex items-center"><div class="flex gap-8 whitespace-nowrap animate-pulse"><div class="h-3 bg-gray-400 rounded w-32"></div><div class="h-3 bg-gray-300 rounded w-24"></div><div class="h-3 bg-gray-400 rounded w-40"></div><div class="h-3 bg-gray-300 rounded w-28"></div><div class="h-3 bg-gray-400 rounded w-36"></div><div class="h-3 bg-gray-300 rounded w-20"></div></div></div><div class="absolute top-2 left-2 right-2 flex justify-between items-center"><div class="w-2 h-2 bg-gray-500 rounded-full"></div><div class="w-2 h-2 bg-gray-500 rounded-full"></div></div></div>',1)),e.createElementVNode("div",LN,[e.createElementVNode("div",$N,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",FN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},ON={class:"h-full flex flex-col"},PN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},RN={class:"text-xs font-medium text-gray-600"},UN={key:0,class:"text-xs text-gray-500"},jN={__name:"tabs-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",ON,[l[0]||(l[0]=e.createStaticVNode('<div class="h-2 bg-gray-300 rounded mb-2"></div><div class="flex gap-1 mb-3"><div class="h-4 w-16 bg-gray-400 rounded"></div><div class="h-4 w-16 bg-gray-200 rounded"></div></div><div class="space-y-2 flex-1"><div class="h-2 bg-gray-300 rounded w-5/6"></div><div class="h-2 bg-gray-300 rounded"></div><div class="space-y-1 mt-3"><div class="flex items-center gap-2"><div class="w-2 h-2 bg-gray-400 rounded-full"></div><div class="h-1.5 bg-gray-300 rounded w-20"></div></div><div class="flex items-center gap-2"><div class="w-2 h-2 bg-gray-400 rounded-full"></div><div class="h-1.5 bg-gray-300 rounded w-16"></div></div></div></div>',3)),e.createElementVNode("div",PN,[e.createElementVNode("div",RN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",UN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},zN={class:"h-full flex flex-col"},HN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},qN={class:"text-xs font-medium text-gray-600"},KN={key:0,class:"text-xs text-gray-500"},Pi={__name:"documents-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",zN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-4 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5 flex-1"><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div></div>',2)),e.createElementVNode("div",HN,[e.createElementVNode("div",qN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",KN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},GN={class:"h-full flex flex-col"},WN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},YN={class:"text-xs font-medium text-gray-600"},XN={key:0,class:"text-xs text-gray-500"},sn={faq:YV,banner:Fi,slider:MN,video:_N,about:vN,cards:$i,usefulLinks:Oi,team:pN,news:Ii,form:nN,tabs:jN,vertical_tabs:Ii,documents:Pi,infoLine:IN,body:{__name:"body-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",GN,[l[0]||(l[0]=e.createStaticVNode('<div class="grid grid-cols-3 gap-2 flex-1"><div class="flex flex-col"><div class="h-3 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div></div></div><div class="flex flex-col"><div class="h-3 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div></div></div><div class="flex flex-col"><div class="h-3 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div></div></div></div>',1)),e.createElementVNode("div",WN,[e.createElementVNode("div",YN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",XN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},photoGrid:$i,interested:Oi,contact:Pi,iframe:Fi},ZN={class:"grid grid-cols-1 md:grid-cols-1 lg:grid-cols-2 2xl:grid-cols-3 gap-4"},QN=["onClick"],JN={class:"wireframe-block h-[240px] !p-4 border-2 border-dashed bg-white relative overflow-hidden transition-all rounded-lg shadow-sm border-gray-300 hover:border-gray-400 cursor-pointer"},ev=["src"],tv={__name:"vs-form-reference-choce",props:{modelValue:{type:String,required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(r){const t=e.useModel(r,"modelValue");return(l,n)=>(e.openBlock(),e.createElementBlock("div",ZN,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(on),a=>(e.openBlock(),e.createElementBlock("div",{key:a.id,onClick:o=>t.value=a.id,class:"relative"},[e.createElementVNode("div",JN,[e.unref(sn)[a.id]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(sn)[a.id]),{key:0,text:a==null?void 0:a.text,count:(a==null?void 0:a.data)||0},null,8,["text","count"])):(e.openBlock(),e.createElementBlock("img",{key:1,src:e.unref(Ti),alt:"Team collaboration",class:"w-full h-full object-cover"},null,8,ev))])],8,QN))),128))]))}},rv={};function lv(r,t,l,n,a,o){const s=e.resolveComponent("vs-richtext");return e.openBlock(),e.createBlock(s,{class:"w-full"})}const Ta=Wt(rv,[["render",lv]]),nv={class:"flex gap-4"},av={class:"text-sm text-gray-500 dark:text-gray-400 border flex items-center h-10 px-4 rounded-lg w-full"},ov={class:"flex items-center justify-between w-full p-4 border-t border-gray-200 dark:border-gray-700"},sv={__name:"vs-form-reference-add",props:e.mergeModels({title:{type:String,required:!0}},{modelValue:{type:Array,default:()=>[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const{t}=Be();De["vs-input-reference"]=La,De["vs-input-tiptap-editor"]=Ta;const l=e.useModel(r,"modelValue"),n=e.ref(!1),a=e.ref({}),o=e.ref(null),s=e.ref({}),i=e.computed(()=>{var u;return((u=Li[o.value])==null?void 0:u.schema)||null}),c=async()=>{if(await a.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.builder.editFieldFailed")});return}try{Object.keys(s.value).length!==0&&(l.value=[...l.value||[],{...s.value,id:Math.random().toString(36).substring(2,15),reference_type:o.value}]),n.value=!1,o.value=null,s.value={}}catch(d){console.log(d)}};return e.watch(n,()=>{n.value||(o.value=null,s.value={})}),(u,d)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{type:"button",class:"inline-flex items-center px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-md shadow-sm text-sm font-medium text-gray-700 dark:text-gray-200 bg-white dark:bg-gray-700 hover:bg-gray-50 dark:hover:bg-gray-600 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-sky-500",onClick:d[0]||(d[0]=m=>n.value=!n.value)},e.toDisplayString(u.$t("cms.builder.create")),1),e.createVNode(e.unref(xs),{visible:n.value,"onUpdate:visible":d[6]||(d[6]=m=>n.value=m),position:"right",closeClickBackdrop:!1,onClose:d[7]||(d[7]=m=>n.value=!1),title:o.value?u.$t("cms.builder."+o.value):u.$t("cms.builder.selectType"),size:"50vw"},{footer:e.withCtx(()=>[e.createElementVNode("div",ov,[e.createElementVNode("button",{onClick:d[5]||(d[5]=m=>n.value=!1),class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100"},e.toDisplayString(u.$t("cms.builder.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.builder.create")),1)])]),default:e.withCtx(()=>{var m;return[o.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",nv,[e.createElementVNode("div",av,[e.createElementVNode("span",null,e.toDisplayString((m=e.unref(on).find(f=>f.id===o.value))==null?void 0:m.text),1)]),e.createElementVNode("button",{class:"py-2.5 px-3 mb-4 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300",onClick:d[2]||(d[2]=f=>o.value=null)},e.toDisplayString(u.$t("cms.builder.changeType")),1)]),i.value?(e.openBlock(),e.createBlock(e.unref(He),{key:o.value,schema:i.value,modelValue:s.value,"onUpdate:modelValue":d[3]||(d[3]=f=>s.value=f),form:a.value,"onUpdate:form":d[4]||(d[4]=f=>a.value=f)},null,8,["schema","modelValue","form"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createBlock(tv,{key:0,modelValue:o.value,"onUpdate:modelValue":d[1]||(d[1]=f=>o.value=f),options:e.unref(on)},null,8,["modelValue","options"]))]}),_:1},8,["visible","title"])]))}},iv={class:"absolute top-2 right-2 opacity-0 group-hover:opacity-100 transition-opacity flex space-x-1 z-10"},cv={class:"flex items-center justify-between w-full p-4 border-t border-gray-200 dark:border-gray-700"},dv={__name:"vs-form-reference-controls",props:e.mergeModels({title:{type:String,required:!0}},{modelValue:{type:Object,default:()=>({})},modelModifiers:{},parent:{type:Array,default:()=>[]},parentModifiers:{}}),emits:["update:modelValue","update:parent"],setup(r){const{t}=Be(),l=e.useModel(r,"modelValue"),n=e.useModel(r,"parent"),a=e.ref(!1),o=e.ref({}),s=e.ref({}),i=e.computed(()=>{var u;return((u=Li[l.value.reference_type])==null?void 0:u.schema)||null});e.watch(a,u=>{u&&(o.value={...l.value})});const c=async()=>{try{if(await s.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.builder.editFieldFailed")});return}l.value={...o.value},a.value=!1}catch(u){console.log(u)}};return(u,d)=>(e.openBlock(),e.createElementBlock("div",iv,[e.createElementVNode("button",{onClick:d[0]||(d[0]=m=>a.value=!a.value),class:"p-1.5 bg-white dark:bg-gray-800 rounded shadow-sm hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors border border-gray-200 dark:border-gray-700"},[e.createVNode(e.unref(Nr),{class:"h-4 w-4 text-gray-400"})]),e.createElementVNode("button",{onClick:d[1]||(d[1]=m=>n.value=n.value.filter(f=>f.id!==l.value.id)),class:"p-1.5 bg-white dark:bg-gray-800 rounded shadow-sm hover:bg-red-50 dark:hover:bg-red-900/20 transition-colors border border-gray-200 dark:border-gray-700"},[e.createVNode(e.unref(Ht),{class:"h-4 w-4 text-red-500"})]),e.createVNode(e.unref(xs),{visible:a.value,"onUpdate:visible":d[5]||(d[5]=m=>a.value=m),onClose:d[6]||(d[6]=m=>a.value=!1),title:r.title,width:"50vw"},{footer:e.withCtx(()=>[e.createElementVNode("div",cv,[e.createElementVNode("button",{class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100",onClick:d[4]||(d[4]=m=>a.value=!1)},e.toDisplayString(u.$t("cms.common.actions.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.common.actions.save")),1)])]),default:e.withCtx(()=>[i.value?(e.openBlock(),e.createBlock(e.unref(He),{key:0,form:s.value,"onUpdate:form":d[2]||(d[2]=m=>s.value=m),schema:i.value,modelValue:o.value,"onUpdate:modelValue":d[3]||(d[3]=m=>o.value=m),class:"-mr-[10px] ml-[10px] mt-[10px]"},null,8,["form","schema","modelValue"])):e.createCommentVNode("",!0)]),_:1},8,["visible","title"])]))}},uv={class:"w-full"},mv={key:0,class:"relative"},pv={class:"group wireframe-block h-[280px] !p-4 border-2 border-dashed bg-white relative overflow-hidden transition-all rounded-lg shadow-sm border-gray-00 hover:border-gray-400 cursor-grab"},fv=["src"],La={__name:"vs-form-reference-list",props:e.mergeModels({reference_type:{type:String,required:!0},title:{type:String,required:!0}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=a=>{var o;return(o=on.find(s=>s.id===a))==null?void 0:o.text},l=e.useModel(r,"modelValue"),n=e.computed({get(){const a=l.value;return a==null?[]:Array.isArray(a)?a:[]},set(a){l.value=Array.isArray(a)?a:[]}});return e.watch(l,a=>{a!=null&&!Array.isArray(a)&&(l.value=[])},{immediate:!0}),(a,o)=>{var s;return e.openBlock(),e.createElementBlock("div",uv,[((s=n.value)==null?void 0:s.length)>0?(e.openBlock(),e.createBlock(e.unref(Da),{key:0,modelValue:n.value,"onUpdate:modelValue":o[1]||(o[1]=i=>n.value=i),"item-key":"id",handle:".drag-handle",class:"grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-4"},{item:e.withCtx(({element:i,index:c})=>[i!=null&&i.reference_type?(e.openBlock(),e.createElementBlock("div",mv,[e.createElementVNode("div",pv,[(e.openBlock(),e.createElementBlock("div",{key:i.id,class:"absolute top-2 left-2 opacity-0 group-hover:opacity-100 border border-gray-200 dark:border-gray-700 transition-opacity cursor-move z-10 bg-white dark:bg-gray-800 rounded p-1 shadow-sm drag-handle"},[e.createVNode(e.unref(Qa),{class:"h-4 w-4 text-gray-400"})])),e.createVNode(dv,{title:a.$t("cms.builder."+(i==null?void 0:i.reference_type)),modelValue:n.value[c],"onUpdate:modelValue":u=>n.value[c]=u,parent:n.value,"onUpdate:parent":o[0]||(o[0]=u=>n.value=u)},null,8,["title","modelValue","onUpdate:modelValue","parent"]),e.unref(sn)[i==null?void 0:i.reference_type]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(sn)[i==null?void 0:i.reference_type]),{key:0,index:c,text:t(i==null?void 0:i.reference_type),count:Array.isArray(i==null?void 0:i.data)?i.data.length:0},null,8,["index","text","count"])):(e.openBlock(),e.createElementBlock("img",{key:1,src:e.unref(Ti),alt:"Team collaboration",class:"w-full h-full object-cover"},null,8,fv))])])):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),e.createVNode(sv,{class:"mt-4",title:r.title,modelValue:n.value,"onUpdate:modelValue":o[2]||(o[2]=i=>n.value=i)},null,8,["title","modelValue"])])}}};function Ri(r){if(r===0)return"0 Bytes";const t=1024,l=["Bytes","KB","MB","GB","TB"],n=Math.floor(Math.log(r)/Math.log(t));return Number.parseFloat((r/Math.pow(t,n)).toFixed(2))+" "+l[n]}function hv(r){const t=new Date(r);return isNaN(t.getTime())?"":t.toISOString().slice(0,10)}const gv={__name:"TypeTag",props:{type:{type:String,required:!0}},setup(r){const t=new Map([["document","bg-blue-100 text-blue-800 border-blue-200 dark:bg-blue-900/30 dark:text-blue-300 dark:border-blue-700"],["image","bg-green-100 text-green-800 border-green-200 dark:bg-green-900/30 dark:text-green-300 dark:border-green-700"],["video","bg-purple-100 text-purple-800 border-purple-200 dark:bg-purple-900/30 dark:text-purple-300 dark:border-purple-700"]]);return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors shadow-lg backdrop-blur-sm",e.unref(t).get(r.type)])},e.toDisplayString(r.type),3))}},yv={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6 max-h-[calc(100%-130px)] overflow-y-auto px-2 pt-2 pb-5"},bv={key:0,class:"flex flex-col items-center justify-center h-64 text-muted-foreground col-span-full"},kv=["onClick"],xv=["onClick"],wv={class:"truncate font-medium text-slate-800 dark:text-slate-100 mb-2"},_v={class:"text-sm text-slate-500 dark:text-slate-400"},Ev=["onClick"],Cv={class:"p-0"},Vv={class:"aspect-video bg-slate-100 dark:bg-slate-700 rounded-t-lg overflow-hidden relative"},Nv={class:"w-full h-full flex items-center justify-center bg-gradient-to-br from-slate-100 to-slate-200 dark:from-slate-700 dark:to-slate-800"},vv={key:0,class:"relative w-full"},Bv=["src","alt"],Sv={class:"p-4"},Av={class:"flex items-center justify-between mb-2"},Dv={class:"font-medium text-slate-800 dark:text-slate-100 truncate flex-1 mr-2"},Mv={class:"space-y-1 text-sm text-slate-500 dark:text-slate-400"},Tv={class:"flex justify-between"},Lv={class:"flex justify-between"},$v={__name:"MediaGrid",props:{files:{type:Array,required:!0},selectedFile:{type:Object,default:null},selectedFiles:{type:Array,default:()=>[]},isDeleteButton:{type:Boolean,default:!1}},emits:["delete-file","file-click","delete-folder"],setup(r,{emit:t}){Be();const l=r,n=e.ref([]),a=e.ref(null),o=i=>{if(!i)return"";const c=new Date(i);return isNaN(c.getTime())?"":c.toISOString().slice(0,10)},s=()=>{n.value=l.files.sort((i,c)=>i.type==="dir"&&c.type!=="dir"?-1:i.type!=="dir"&&c.type==="dir"?1:0)};return e.onMounted(()=>s()),e.onUpdated(()=>s()),(i,c)=>{var u;return e.openBlock(),e.createElementBlock("div",yv,[((u=r.files)==null?void 0:u.length)===0?(e.openBlock(),e.createElementBlock("div",bv,[e.createVNode(e.unref(Cr),{class:"w-12 h-12 mb-2"}),e.createElementVNode("p",null,e.toDisplayString(i.$t("cms.noFilesInFolder")),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,d=>{var m;return e.openBlock(),e.createElementBlock(e.Fragment,{key:d==null?void 0:d.url},[(d==null?void 0:d.type)==="dir"?(e.openBlock(),e.createElementBlock("div",{key:0,class:"p-6 text-center rounded-xl h-[fit-content] relative text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-200 transform hover:scale-105 cursor-pointer",onClick:f=>i.$emit("file-click",d)},[r.isDeleteButton?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:e.withModifiers(f=>{a.value=d},["stop"]),class:"absolute top-4 right-4 p-1 border border-gray-300 dark:border-slate-700 rounded-lg cursor-pointer hover:bg-gray-200 dark:hover:bg-slate-700 group"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4 text-gray-500 group-hover:text-red-500"})],8,xv)):e.createCommentVNode("",!0),e.createVNode(e.unref(Za),{class:"w-16 h-16 mx-auto mb-4 text-blue-600"}),e.createElementVNode("h3",wv,e.toDisplayString(d==null?void 0:d.name),1),e.createElementVNode("p",_v,e.toDisplayString(d==null?void 0:d.count)+" "+e.toDisplayString(i.$t("cms.media.files")),1)],8,kv)):(d==null?void 0:d.type)==="file"?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["h-[fit-content] rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-200 transform hover:scale-105 group cursor-pointer",{"bg-accent text-accent-foreground ring-2 ring-primary":((m=r.selectedFile)==null?void 0:m.url)===(d==null?void 0:d.url)||r.selectedFiles&&r.selectedFiles.some(f=>f.id===d.id)}]),onClick:f=>i.$emit("file-click",d)},[e.createElementVNode("div",Cv,[e.createElementVNode("div",Vv,[e.createElementVNode("div",Nv,[(d==null?void 0:d.filetype)==="image"&&(d!=null&&d.filepath||d!=null&&d.url)?(e.openBlock(),e.createElementBlock("div",vv,[e.createElementVNode("img",{src:d==null?void 0:d.preview,alt:(d==null?void 0:d.alt)||(d==null?void 0:d.filename),class:"object-cover w-full h-full rounded text-xs"},null,8,Bv)])):(e.openBlock(),e.createBlock(e.unref(Hr),{key:1,class:"w-12 h-12 text-gray-500"}))])]),e.createElementVNode("div",Sv,[e.createElementVNode("div",Av,[e.createElementVNode("h3",Dv,e.toDisplayString(d.filename),1),e.createVNode(gv,{type:d==null?void 0:d.filetype},null,8,["type"])]),e.createElementVNode("div",Mv,[e.createElementVNode("div",Tv,[e.createElementVNode("span",null,e.toDisplayString(i.$t("cms.media.size"))+":",1),e.createElementVNode("span",null,e.toDisplayString(e.unref(Ri)(d.filesize)),1)]),e.createElementVNode("div",Lv,[e.createElementVNode("span",null,e.toDisplayString(i.$t("cms.media.uploaded"))+":",1),e.createElementVNode("span",null,e.toDisplayString(o(d.created_at)),1)])])])])],10,Ev)):e.createCommentVNode("",!0)],64)}),128))])}}},Fv={},Iv={"aria-hidden":"true",focusable:"false",role:"img",viewBox:"0 0 16 16",width:"16",height:"16",fill:"currentColor"};function Ov(r,t){return e.openBlock(),e.createElementBlock("svg",Iv,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"M.513 1.513A1.75 1.75 0 0 1 1.75 1h3.5c.55 0 1.07.26 1.4.7l.9 1.2a.25.25 0 0 0 .2.1H 13a1 1 0 0 1 1 1v.5H2.75a.75.75 0 0 0 0 1.5h11.978a1 1 0 0 1 .994 1.117L15 13.25A1.75 1.75 0 0 1 13.25 15H1.75A1.75 1.75 0 0 1 0 13.25V2.75c0-.464.184-.91.513-1.237Z"},null,-1),e.createElementVNode("path",{d:"M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1H1.75Z"},null,-1)])])}const Pv=Wt(Fv,[["render",Ov]]),Rv={},Uv={"aria-hidden":"true",focusable:"false",role:"img",viewBox:"0 0 16 16",width:"16",height:"16",fill:"currentColor"};function jv(r,t){return e.openBlock(),e.createElementBlock("svg",Uv,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"M.513 1.513A1.75 1.75 0 0 1 1.75 1h3.5c.55 0 1.07.26 1.4.7l.9 1.2a.25.25 0 0 0 .2.1H 13a1 1 0 0 1 1 1v.5H2.75a.75.75 0 0 0 0 1.5h11.978a1 1 0 0 1 .994 1.117L15 13.25A1.75 1.75 0 0 1 13.25 15H1.75A1.75 1.75 0 0 1 0 13.25V2.75c0-.464.184-.91.513-1.237Z"},null,-1),e.createElementVNode("path",{d:"M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1H1.75Z"},null,-1)])])}const zv=Wt(Rv,[["render",jv]]),Hv={key:0,class:"flex flex-col items-center justify-center h-64 text-muted-foreground"},qv={key:1,class:"w-full text-sm caption-bottom"},Kv={class:"[&_tr]:border-b"},Gv={class:"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted"},Wv={class:"h-12 px-4 text-left align-middle font-medium text-muted-foreground w-[300px]"},Yv={class:"h-12 px-4 font-medium text-left align-middle text-muted-foreground"},Xv={class:"h-12 px-4 font-medium text-left align-middle text-muted-foreground"},Zv={class:"hidden h-12 px-4 font-medium text-left align-middle text-muted-foreground md:table-cell"},Qv={class:"[&_tr:last-child]:border-0"},Jv=["onClick"],eB={class:"p-4 font-medium align-middle"},tB={class:"flex items-center gap-2"},rB={key:1,class:"relative w-8 h-8"},lB=["src","alt"],nB={class:"truncate max-w-[200px]"},aB={class:"p-4 align-middle"},oB={class:"p-4 align-middle"},sB={class:"hidden p-4 align-middle md:table-cell"},iB={key:0},cB={__name:"MediaList",props:{files:{type:Array,required:!0},selectedFile:{type:Object,default:null},selectedFiles:{type:Array,default:()=>[]}},emits:["file-click","delete-folder"],setup(r,{emit:t}){const{t:l}=Be(),n=e.ref(null),a=t,o=()=>{Jr({title:l("cms.builder.deleteTitle"),message:l("cms.builder.deleteObject"),type:"error",onConfirm:()=>{s()}})},s=()=>{a("delete-folder",n.value)};return(i,c)=>{const u=e.resolveComponent("File");return e.openBlock(),e.createElementBlock("div",null,[r.files.length===0?(e.openBlock(),e.createElementBlock("div",Hv,[e.createVNode(u,{class:"w-12 h-12 mb-2"}),e.createElementVNode("p",null,e.toDisplayString(i.$t("cms.media.noFilesInFolder")),1)])):(e.openBlock(),e.createElementBlock("table",qv,[e.createElementVNode("thead",Kv,[e.createElementVNode("tr",Gv,[e.createElementVNode("th",Wv,e.toDisplayString(i.$t("cms.media.name")),1),e.createElementVNode("th",Yv,e.toDisplayString(i.$t("cms.media.type")),1),e.createElementVNode("th",Xv,e.toDisplayString(i.$t("cms.media.size")),1),e.createElementVNode("th",Zv,e.toDisplayString(i.$t("cms.media.updatedAt")),1),c[0]||(c[0]=e.createElementVNode("th",null,null,-1))])]),e.createElementVNode("tbody",Qv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.files,d=>{var m,f,p,h,g;return e.openBlock(),e.createElementBlock("tr",{key:d.id,class:e.normalizeClass(["border-b transition-colors hover:bg-blue-200/50 data-[state=selected]:bg-muted cursor-pointer",{"bg-blue-200":((m=n.value)==null?void 0:m.id)===d.id&&((f=n.value)==null?void 0:f.type)===d.type||r.selectedFiles&&r.selectedFiles.some(y=>y.id===d.id&&y.type===d.type)}]),onClick:y=>i.$emit("cms.file-click",d)},[e.createElementVNode("td",eB,[e.createElementVNode("div",tB,[d.type==="dir"?(e.openBlock(),e.createBlock(Pv,{key:0,class:"w-5 h-5 text-blue-500"})):(d==null?void 0:d.filetype)==="image"&&(d!=null&&d.filepath)?(e.openBlock(),e.createElementBlock("div",rB,[e.createElementVNode("img",{src:d==null?void 0:d.preview,alt:(d==null?void 0:d.alt)||(d==null?void 0:d.filename),class:"object-cover w-full h-full rounded"},null,8,lB)])):(d==null?void 0:d.filetype)==="image"?(e.openBlock(),e.createBlock(zv,{key:2,class:"w-5 h-5 text-green-500"})):(e.openBlock(),e.createBlock(u,{key:3,class:"w-5 h-5 text-gray-500"})),e.createElementVNode("span",nB,e.toDisplayString((d==null?void 0:d.filename)||(d==null?void 0:d.name)),1)])]),e.createElementVNode("td",aB,e.toDisplayString((d==null?void 0:d.type)==="dir"?i.$t("cms.media.folder"):((h=(p=d==null?void 0:d.filetype)==null?void 0:p.charAt(0))==null?void 0:h.toUpperCase())+((g=d==null?void 0:d.filetype)==null?void 0:g.slice(1))),1),e.createElementVNode("td",oB,e.toDisplayString((d==null?void 0:d.type)==="dir"?"--":e.unref(Ri)(d==null?void 0:d.filesize)),1),e.createElementVNode("td",sB,e.toDisplayString(d!=null&&d.updated_at?e.unref(hv)(d==null?void 0:d.updated_at):"--"),1),d.type==="dir"?(e.openBlock(),e.createElementBlock("td",iB,[e.createVNode(e.unref(Ht),{class:"w-4 h-4 text-red-500 cursor-pointer",onClick:e.withModifiers(o,["stop"])},null,8,["onClick"])])):e.createCommentVNode("",!0)],10,Jv)}),128))])]))])}}},dB={},uB={xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"};function mB(r,t){return e.openBlock(),e.createElementBlock("svg",uB,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"},null,-1),e.createElementVNode("polyline",{points:"9 22 9 12 15 12 15 22"},null,-1)])])}const pB=Wt(dB,[["render",mB]]),fB={class:"flex items-center space-x-1"},hB=["onClick"],gB={__name:"MediaBreadcrumb",props:{currentPath:{type:Array,required:!0}},emits:["navigate"],setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",fB,[e.createElementVNode("button",{class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium transition-all duration-200 text-blue-600 dark:text-blue-400 bg-blue-50 dark:bg-blue-900/20",onClick:l[0]||(l[0]=n=>t.$emit("navigate",[]))},[e.createVNode(pB,{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(t.$t("cms.media.mediaLibrary")),1)]),r.currentPath.length>0?(e.openBlock(),e.createBlock(e.unref(Er),{key:0,class:"w-3 h-3 text-slate-400 dark:text-slate-500"})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.currentPath,(n,a)=>(e.openBlock(),e.createElementBlock("button",{key:a,class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium transition-all duration-200 text-blue-700 dark:text-blue-300 bg-blue-50 dark:bg-blue-900/20",onClick:o=>t.$emit("navigate",r.currentPath.slice(0,a+1))},[e.createVNode(e.unref(Za),{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(n)+" ",1),a<r.currentPath.length-1?(e.openBlock(),e.createBlock(e.unref(Er),{key:0,class:"w-3 h-3 text-slate-400 dark:text-slate-500"})):e.createCommentVNode("",!0)],8,hB))),128))]))}},yB=["src"],bB={class:"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity rounded-lg gap-2"},kB=["onClick"],xB=["onClick"],wB=["title"],_B={key:1,class:"relative group"},EB=["src"],CB={class:"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity rounded-lg gap-2"},VB=["title"],NB={key:2,class:"absolute inset-0 bg-white bg-opacity-75 flex items-center justify-center rounded-lg z-10"},vB={class:"flex flex-col items-center gap-2"},BB={class:"text-xs text-gray-600"},SB=["multiple","disabled"],AB={class:"whitespace-nowrap text-sm"},DB={class:"whitespace-nowrap text-sm"},MB={class:"flex items-center justify-between p-4 border-b"},TB={class:"text-lg font-semibold"},LB={class:"flex items-center justify-between gap-4 p-4 border-b"},$B={class:"relative z-[1] rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm mb-6 p-4 mx-4"},FB={class:"flex items-center justify-between gap-4"},IB={class:"flex items-center gap-4 flex-1"},OB={class:"relative flex-1 max-w-md"},PB=["placeholder"],RB={class:"flex items-center gap-2 relative"},UB={class:"text-xs font-bold"},jB={class:"text-xs font-bold"},zB={key:0,class:"w-full absolute top-full left-1/2 transform -translate-x-1/2 mt-2 z-50 bg-white dark:bg-slate-700 flex flex-col items-start border border-slate-200 dark:border-slate-600 rounded-md shadow-lg"},HB={class:"flex items-center gap-2"},qB={class:"flex flex-col gap-4 overflow-y-auto p-4 flex-1"},KB={class:"p-4 border-t flex items-center justify-between"},GB={key:0,class:"text-sm text-gray-600 dark:text-gray-400"},WB={key:1},YB=["disabled"],Pr={__name:"vs-form-media-select",props:e.mergeModels({multiple:{type:Boolean,default:!1},multi:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(r,{emit:t}){const{t:l}=Be(),n=qe.useRoute(),a=qe.useRouter(),o=e.useModel(r,"modelValue"),s=t,i=r,c=e.computed(()=>i.multiple||i.multi),u=e.ref(null),d=e.computed(()=>o.value||u.value),m=e.computed(()=>{if(!c.value)return[];const U=d.value;return U?Array.isArray(U)?U:[U]:[]}),f=e.computed(()=>d.value?typeof d.value=="object"?d.value.filename||d.value.file_name||d.value.native_file_name||"File":typeof d.value=="string"?d.value.split("cms./").pop()||d.value:"File":""),p=e.ref(!1),h=e.ref(!1),g=e.ref("grid"),y=e.ref([]),b=e.ref([]),w=e.ref([]),x=e.ref(),k=e.ref([]),_=e.ref(null),N=e.ref(!1),V=e.ref(null),P=e.ref(null),$=e.ref({}),M=e.ref(""),D=e.ref(!1),q=e.ref("name"),Q=new Map([["name",l("cms.media.sortBy.name")],["filesize",l("cms.media.sortBy.filesize")]]),R=U=>typeof U=="string"?U:(U==null?void 0:U.filepath)||(U==null?void 0:U.file_path)||U,I=U=>U?typeof U=="string"?U.split("cms./").pop()||U:U.filename||U.file_name||U.native_file_name||"File":"",F=U=>typeof U=="string"?U:(U==null?void 0:U.preview)||`/file/resize?filepath=${R(U)}&h=137&quality=75`,A=()=>{_.value&&_.value.click()},z=()=>{p.value=!p.value,p.value&&ee()},ee=()=>{if(V.value){const U=V.value.getBoundingClientRect();$.value={top:`${U.bottom+10}px`,left:`${U.left+U.width/2}px`,transform:"translateX(-50%)",width:"200px"}}},pe=U=>{var Y;if(U.type==="dir")Ze([...y.value,U.name]);else if(c.value){const re=k.value.findIndex(le=>le.id===U.id);re>=0?k.value.splice(re,1):k.value.push(U)}else x.value=U.id===((Y=x.value)==null?void 0:Y.id)?null:U},Ne=U=>{q.value=U,D.value=!1,b.value=b.value.sort((Y,re)=>{var le;if((Y==null?void 0:Y.type)==="dir")return-1;if(U==="name")return(le=Y==null?void 0:Y.name)==null?void 0:le.localeCompare(re==null?void 0:re.name);if(U==="filesize")return(re==null?void 0:re.filesize)-(Y==null?void 0:Y.filesize)})},Xe=async()=>{try{const U=y.value.join("/"),re=await(await fetch(`/api/cms-media?subdir=${U}${M.value?"&search="+M.value:""}`,{method:"GET"})).json();re.data?(b.value=re.data.map(le=>({...le,id:le.type==="dir"?`dir-${le.name}`:le.id,preview:`/file/resize?filepath=${le.filepath}&h=137&quality=75`})),Ne(q.value)):b.value=[]}catch(U){console.error("Search error:",U),b.value=[]}},Jt=()=>{if(c.value){if(k.value.length>0){const U=Array.isArray(o.value)?[...o.value]:o.value?[o.value]:[],Y=Array.isArray(u.value)?[...u.value]:u.value?[u.value]:[];k.value.forEach(re=>{const le=re.filepath||re.file_path;U.some(ue=>(typeof ue=="string"?ue:(ue==null?void 0:ue.filepath)||(ue==null?void 0:ue.file_path))===le)||(U.push(le),Y.push(re))}),o&&(o.value=U),u.value=Y,s("cms.change",U),k.value=[]}}else if(x.value){const U=x.value.filepath||x.value.file_path;o&&(o.value=U),u.value=x.value,s("cms.change",U),x.value=null}Re()},Re=()=>{h.value=!1},Ze=U=>{y.value=U,w.value=[...w.value,U],x.value=null,c.value&&(k.value=[]),xt()},At=()=>{w.value.length>1&&(w.value.pop(),y.value=w.value[w.value.length-1],x.value=null,c.value&&(k.value=[]),xt())},xt=async()=>{try{const U=y.value.join("/"),re=await(await fetch(`/api/cms-media?subdir=${U}${M.value?"&search="+M.value:""}`,{method:"GET"})).json();re.data?(b.value=re.data.map(le=>({...le,id:le.type==="dir"?`dir-${le.name}`:le.id,preview:`/file/resize?filepath=${le.filepath}&h=137&quality=75`})),Ne(q.value)):b.value=[]}catch(U){console.error("Fetch error:",U),b.value=[]}},Nt=async(U,Y)=>{try{const re=typeof U=="string"?U:R(U);if(await fetch(`/file/delete${re}`),c.value){const le=Array.isArray(o.value)?[...o.value]:[],ue=Array.isArray(u.value)?[...u.value]:[];if(Y!==void 0&&Y>=0)le.splice(Y,1),ue.splice(Y,1);else{const Te=le.findIndex(C=>(typeof C=="string"?C:(C==null?void 0:C.filepath)||(C==null?void 0:C.file_path))===re);Te>=0&&(le.splice(Te,1),ue.splice(Te,1))}o&&(o.value=le.length>0?le:null),u.value=ue.length>0?ue:null,s("cms.change",le.length>0?le:null)}else o&&(o.value=null),u.value=null,s("cms.change",null);return!0}catch(re){return console.error(re),!1}},jt=async U=>{try{const Y=await fetch(`/file/download/files/uploads${U}`),re=await Y.arrayBuffer(),le=Y.headers["content-type"],ue=new TextDecoder("utf-8").decode(re),Te=new Blob([ue],{type:le}),C=document.createElement("cms.a");C.setAttribute("download",U),C.href=window.URL.createObjectURL(Te),C.click()}catch(Y){console.error(Y.message)}},ot=async U=>{if(!U.target.files||U.target.files.length===0)return;const Y=Array.from(U.target.files);console.log("Uploading files:",Y),N.value=!0;try{const re=[];for(const le of Y){const ue=new FormData;ue.append("file",le);const Te=await fetch("/file/upload/uploads?id=1&form=form&table=table",{method:"POST",body:ue});if(!Te.ok)throw new Error(`Upload failed: ${Te.status}`);const C=await Te.json();console.log("Upload result:",C);const v=C.result,H={file_id:v.file_id,file_name:v.file_name,file_path:v.file_path,filepath:v.file_path,format:v.format,size:v.size,entity_id:v.entity_id,dir:v.dir,native_file_name:v.native_file_name,preview:`/file/resize?filepath=${v.file_path}&h=137&quality=75`};re.push(H)}if(c.value){const le=Array.isArray(o.value)?[...o.value]:o.value?[o.value]:[],ue=Array.isArray(u.value)?[...u.value]:u.value?[u.value]:[];re.forEach(Te=>{le.push(Te.file_path),ue.push(Te)}),o&&(o.value=le),u.value=ue,s("cms.change",le)}else{const le=re[0];o&&(o.value=le.file_path),u.value=le,s("cms.change",le.file_path)}p.value=!1}catch(re){console.error("Upload error:",re),alert("cms.Помилка завантаження файлу: "+re.message)}finally{N.value=!1}U.target.value=""};e.watch(h,U=>{U&&xt()}),e.watch(y,U=>{U.length>0?a.push({query:{path:U.join("/")}}):a.push({query:{path:void 0}})});let ct;return e.watch(M,U=>{clearTimeout(ct),ct=setTimeout(()=>{Xe()},500)}),e.watch(o,U=>{var Y,re,le,ue;if(U&&typeof U=="object"){const Te=((Y=x.value)==null?void 0:Y.filepath)||((re=x.value)==null?void 0:re.file_path);U.filepath!==Te&&U.file_path!==Te&&(x.value=null)}else if(U&&typeof U=="string"){const Te=((le=x.value)==null?void 0:le.filepath)||((ue=x.value)==null?void 0:ue.file_path);U!==Te&&(x.value=null)}}),e.onMounted(()=>{var Y,re;y.value=((re=(Y=n.query)==null?void 0:Y.path)==null?void 0:re.split("cms./"))||[],w.value=[[]],o.value||(x.value=null);const U=le=>{var ue;p.value&&!((ue=V.value)!=null&&ue.contains(le.target))&&(p.value=!1),D.value&&P.value&&!P.value.contains(le.target)&&(D.value=!1)};document.addEventListener("click",U)}),(U,Y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",e.mergeProps(U.$attrs,{class:"flex gap-4 flex-wrap"}),[c.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(m.value,(re,le)=>(e.openBlock(),e.createElementBlock("div",{key:le,class:"relative group"},[e.createElementVNode("img",{src:F(re),alt:"Selected File",class:"w-32 h-32 object-cover rounded-lg"},null,8,yB),e.createElementVNode("div",bB,[e.createElementVNode("button",{type:"button",onClick:ue=>Nt(re,le),class:"p-2 rounded-full bg-red-500 text-white hover:bg-red-600 transition-colors"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4"})],8,kB),e.createElementVNode("button",{type:"button",onClick:ue=>jt(R(re)),class:"p-2 rounded-full bg-blue-500 text-white hover:bg-blue-600 transition-colors"},[e.createVNode(e.unref(gn),{class:"w-4 h-4"})],8,xB)]),e.createElementVNode("div",{class:"absolute bottom-full left-0 mb-2 px-3 py-1.5 bg-gray-900 text-white text-xs rounded-lg opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap z-10 max-w-[200px] truncate",title:I(re)},[e.createTextVNode(e.toDisplayString(I(re))+" ",1),Y[12]||(Y[12]=e.createElementVNode("div",{class:"absolute top-full left-4 border-4 border-transparent border-t-gray-900"},null,-1))],8,wB)]))),128)):d.value?(e.openBlock(),e.createElementBlock("div",_B,[e.createElementVNode("img",{src:d.value.preview||d.value,alt:"Selected File",class:"w-32 h-32 object-cover rounded-lg"},null,8,EB),e.createElementVNode("div",CB,[e.createElementVNode("button",{type:"button",onClick:Y[0]||(Y[0]=re=>{var le,ue;return Nt(((le=d.value)==null?void 0:le.filepath)||((ue=d.value)==null?void 0:ue.file_path)||d.value)}),class:"p-2 rounded-full bg-red-500 text-white hover:bg-red-600 transition-colors"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4"})]),e.createElementVNode("button",{type:"button",onClick:Y[1]||(Y[1]=re=>{var le,ue;return jt(((le=d.value)==null?void 0:le.filepath)||((ue=d.value)==null?void 0:ue.file_path)||d.value)}),class:"p-2 rounded-full bg-blue-500 text-white hover:bg-blue-600 transition-colors"},[e.createVNode(e.unref(gn),{class:"w-4 h-4"})])]),e.createElementVNode("div",{class:"absolute bottom-full left-0 mb-2 px-3 py-1.5 bg-gray-900 text-white text-xs rounded-lg opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap z-10 max-w-[200px] truncate",title:f.value},[e.createTextVNode(e.toDisplayString(f.value)+" ",1),Y[13]||(Y[13]=e.createElementVNode("div",{class:"absolute top-full left-4 border-4 border-transparent border-t-gray-900"},null,-1))],8,VB)])):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"triggerButton",ref:V,class:e.normalizeClass(["relative w-32 h-32 flex items-center justify-center border border-dotted border-gray-300 rounded-lg hover:border-blue-500 hover:bg-blue-500/10 hover:cursor-pointer transition-all",{"border-blue-500 bg-blue-500/10":p.value,"opacity-50 cursor-not-allowed":N.value}]),onClick:z},[N.value?(e.openBlock(),e.createBlock(e.unref(bn),{key:0,class:"w-4 h-4 animate-spin text-blue-500"})):(e.openBlock(),e.createBlock(e.unref(zt),{key:1,class:"w-4 h-4"})),N.value?(e.openBlock(),e.createElementBlock("div",NB,[e.createElementVNode("div",vB,[e.createVNode(e.unref(bn),{class:"w-6 h-6 animate-spin text-blue-500"}),e.createElementVNode("span",BB,e.toDisplayString(U.$t("cms.media.uploading")),1)])])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[p.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed bg-white z-50 border border-gray-200 rounded-lg shadow-lg flex flex-col items-center justify-center",style:e.normalizeStyle($.value)},[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden flex justify-start items-center w-full gap-2 p-4 hover:bg-blue-50 text-blue-700 border hover:border-blue-200 dark:bg-slate-700 dark:text-slate-100 hover:cursor-pointer",{"opacity-50 cursor-not-allowed":N.value}]),onClick:Y[3]||(Y[3]=re=>!N.value&&A())},[e.createElementVNode("input",{type:"file",ref_key:"fileInput",ref:_,class:"absolute justify-center bottom-0 left-0 w-full opacity-0",onChange:ot,onClick:Y[2]||(Y[2]=e.withModifiers(()=>{},["stop"])),multiple:c.value,disabled:N.value},null,40,SB),N.value?(e.openBlock(),e.createBlock(e.unref(bn),{key:0,class:"w-4 h-4 animate-spin"})):(e.openBlock(),e.createBlock(e.unref(gn),{key:1})),e.createElementVNode("span",AB,e.toDisplayString(N.value?U.$t("cms.media.uploading"):U.$t("cms.media.upload")),1)],2),e.createElementVNode("div",{onClick:Y[4]||(Y[4]=re=>h.value=!0),class:"flex justify-start items-center w-full gap-2 p-4 hover:bg-blue-50 text-blue-700 border hover:border-blue-200 dark:bg-slate-700 dark:text-slate-100 hover:cursor-pointer"},[e.createVNode(e.unref(Vl)),e.createElementVNode("span",DB,e.toDisplayString(U.$t("cms.media.selectFromMedia")),1)])],4)):e.createCommentVNode("",!0)]))],2)],16),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[h.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50",onClick:Re},[e.createElementVNode("div",{class:"bg-white rounded-lg shadow-xl max-w-4xl w-full mx-4 max-h-[90vh] flex flex-col",onClick:Y[11]||(Y[11]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",MB,[e.createElementVNode("h3",TB,e.toDisplayString(U.$t("cms.media.selectFiles")),1),e.createElementVNode("button",{onClick:Re,class:"text-gray-400 hover:text-gray-600"},[...Y[14]||(Y[14]=[e.createElementVNode("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])]),e.createElementVNode("div",LB,[e.createVNode(gB,{"current-path":y.value,onNavigate:Ze,onNavigateBack:At},null,8,["current-path"])]),e.createElementVNode("div",$B,[e.createElementVNode("div",FB,[e.createElementVNode("div",IB,[e.createElementVNode("div",OB,[e.createVNode(e.unref(wn),{class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-slate-400 dark:text-slate-500"}),e.withDirectives(e.createElementVNode("input",{type:"text",placeholder:U.$t("cms.media.search"),class:"w-full pl-10 pr-4 py-2 text-sm border border-slate-200 dark:border-slate-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent bg-white dark:bg-slate-700 text-slate-700 dark:text-slate-200 placeholder-slate-400 dark:placeholder-slate-500","onUpdate:modelValue":Y[5]||(Y[5]=re=>M.value=re)},null,8,PB),[[e.vModelText,M.value]])]),e.createElementVNode("div",RB,[e.createElementVNode("span",UB,e.toDisplayString(U.$t("cms.media.sortBy.title")+": "),1),e.createElementVNode("button",{ref_key:"sortByButton",ref:P,class:"relative z-[1000] inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors border shadow-sm h-8 rounded-md px-3 text-xs bg-white border-slate-300 text-slate-700 disabled:pointer-events-none disabled:opacity-50 hover:text-accent-foreground hover:bg-slate-50 dark:bg-slate-700 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-slate-600",onClick:Y[8]||(Y[8]=re=>D.value=!D.value)},[e.createVNode(e.unref(Xa),{class:"w-4 h-4"}),e.createElementVNode("span",jB,e.toDisplayString(e.unref(Q).get(q.value)),1),D.value?(e.openBlock(),e.createElementBlock("div",zB,[e.createElementVNode("span",{class:"text-left text-xs font-bold w-full p-2 hover:bg-slate-100 dark:hover:bg-slate-600 border-b border-slate-200 dark:border-slate-600 cursor-pointer",onClick:Y[6]||(Y[6]=e.withModifiers(re=>Ne("name"),["stop"]))},e.toDisplayString(U.$t("cms.media.sortBy.name")),1),e.createElementVNode("span",{class:"text-left text-xs font-bold w-full p-2 hover:bg-slate-100 dark:hover:bg-slate-600 cursor-pointer",onClick:Y[7]||(Y[7]=e.withModifiers(re=>Ne("filesize"),["stop"]))},e.toDisplayString(U.$t("cms.media.sortBy.filesize")),1)])):e.createCommentVNode("",!0)],512)])]),e.createElementVNode("div",HB,[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 h-8 px-3 text-xs rounded-md",{"shadow bg-blue-600 hover:bg-blue-700 text-white":g.value==="grid","border shadow-sm hover:text-accent-foreground bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-slate-600":g.value==="list"}]),onClick:Y[9]||(Y[9]=re=>g.value="grid")},[e.createVNode(e.unref(Uc),{class:"w-4 h-4"})],2),e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 h-8 px-3 text-xs rounded-md",{"shadow bg-blue-600 hover:bg-blue-700 text-white":g.value==="list","border shadow-sm hover:text-accent-foreground bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-slate-600":g.value==="grid"}]),onClick:Y[10]||(Y[10]=re=>g.value="list")},[e.createVNode(e.unref(Nl),{class:"w-4 h-4"})],2)])])]),e.createElementVNode("div",qB,[g.value==="grid"?(e.openBlock(),e.createBlock($v,{key:0,files:b.value,"selected-file":c.value?null:x.value,"selected-files":c.value?k.value:[],onFileClick:pe},null,8,["files","selected-file","selected-files"])):(e.openBlock(),e.createBlock(cB,{key:1,files:b.value,"selected-file":c.value?null:x.value,"selected-files":c.value?k.value:[],onFileClick:pe},null,8,["files","selected-file","selected-files"]))]),e.createElementVNode("div",KB,[c.value&&k.value.length>0?(e.openBlock(),e.createElementBlock("div",GB,e.toDisplayString(U.$t("cms.media.selectedFiles",{count:k.value.length})),1)):(e.openBlock(),e.createElementBlock("div",WB)),e.createElementVNode("button",{onClick:Jt,disabled:c.value?k.value.length===0:!x.value,class:"flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium disabled:pointer-events-none disabled:opacity-50 h-9 px-4 py-2 ml-auto bg-blue-600 hover:bg-blue-700 text-white shadow-md hover:shadow-lg transition-all duration-200 transform hover:scale-105"},[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(U.$t("cms.common.actions.add")),1)],8,YB)])])])):e.createCommentVNode("",!0)]))],64))}},XB={};function ZB(r,t){const l=e.resolveComponent("vs-richtext-md",!0);return e.openBlock(),e.createBlock(l,{class:"w-full h-[300px]"})}const Ui=Wt(XB,[["render",ZB]]),QB={props:{min:{type:Number},step:{type:Number,default:()=>1},max:{type:Number,default:()=>1/0},modelValue:{type:Number,default:()=>null},label:{type:String,default:()=>""},placeholder:{type:String,default:()=>"0"},disabled:{type:Boolean,default:()=>!1}},data(){return{id:`input-number-${Math.floor(Math.random()*1e3)}`,inputValue:this.modelValue}},watch:{modelValue(r){this.inputValue=r},inputValue(r){this.$emit("update:modelValue",r)}},methods:{validateInput(r){(r.key==="+"||r.key===","||r.key==="."||r.key==="-"&&this.inputValue&&this.inputValue.toString().length>0)&&r.preventDefault()},handleBlur(){let r=parseFloat(this.inputValue);this.$emit("blur"),isNaN(r)?r=this.min:r>this.max?r=this.max:r<this.min&&(r=this.min),this.inputValue=r,this.$emit("update:modelValue",this.inputValue)}}},JB={class:"p-0"},e4=["step","min","max","id","placeholder","disabled"];function t4(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("div",JB,[e.renderSlot(r.$slots,"label",e.normalizeProps(e.guardReactiveProps({id:a.id}))),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":t[0]||(t[0]=s=>a.inputValue=s),type:"number",onKeydown:t[1]||(t[1]=(...s)=>o.validateInput&&o.validateInput(...s)),onBlur:t[2]||(t[2]=(...s)=>o.handleBlur&&o.handleBlur(...s)),step:l.step,min:l.min,max:l.max,id:a.id,"aria-describedby":"helper-text-explanation",class:e.normalizeClass(["vs-number__input py-2 px-3 block w-full h-[38px] border border-solid border-stone-200 rounded-lg text-sm text-stone-800 placeholder:text-stone-500 focus:z-10 focus:border-1 focus:outline-none focus:border-blue-600 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-200 dark:placeholder:text-neutral-500 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-neutral-600",{"cursor-not-allowed":l.disabled}]),placeholder:l.placeholder,disabled:l.disabled},null,42,e4),[[e.vModelText,a.inputValue]])])}const ji=Wt(QB,[["render",t4]]),zi={__name:"vs-form-reletion-link",props:e.mergeModels({relation:{type:String,required:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=e.useModel(r,"modelValue"),l=r,n=e.ref([]),a=async()=>{const s=await(await fetch(`/api/cms-suggest/${l.relation}`)).json();n.value=s==null?void 0:s.data};return e.onMounted(a),(o,s)=>{var i;return(i=n.value)!=null&&i.length?(e.openBlock(),e.createBlock(e.unref(ta),{key:0,mode:"combo",modelValue:t.value,"onUpdate:modelValue":s[0]||(s[0]=c=>t.value=c),options:n.value},null,8,["modelValue","options"])):e.createCommentVNode("",!0)}}},r4={monaco:zE,edit:fV,preview:{__name:"vs-builder-preview",props:{data:{},dataModifiers:{},form:{},formModifiers:{}},emits:["update:data","update:form"],setup(r){De["vs-input-custom-datatable"]=Mi,De["vs-input-reference"]=La,De["vs-input-texteditor"]=Ta,De["vs-input-mediaselect"]=Pr,De["vs-input-file"]=Pr,De["vs-input-image"]=Pr,De["vs-input-richtext-md"]=Ui,De["vs-input-integer"]=ji,De["vs-input-relation-link"]=zi;const t=e.ref({}),l=e.useModel(r,"data"),n=e.useModel(r,"form"),a=e.computed(()=>{var o,s;return((s=(o=l.value)==null?void 0:o.columns)==null?void 0:s.map(Ma))||[]});return(o,s)=>{var i;return e.openBlock(),e.createElementBlock("div",{ref_key:"form",ref:n},[((i=a.value)==null?void 0:i.length)>0?(e.openBlock(),e.createBlock(e.unref(He),{key:0,modelValue:t.value,"onUpdate:modelValue":s[0]||(s[0]=c=>t.value=c),schema:a.value},null,8,["modelValue","schema"])):e.createCommentVNode("",!0)],512)}}}},l4={class:"max-w-6xl mx-auto"},n4={class:"flex items-center justify-between mb-6"},a4={class:"mb-2 text-2xl font-semibold text-gray-900"},o4={class:"lowercase"},s4={class:"text-gray-600"},i4={class:"flex items-center gap-2"},c4={class:"w-full"},d4={class:"flex items-center w-full h-10 max-w-md grid-cols-3 p-1 mb-6 bg-white border border-gray-200 rounded-md text-muted-foreground"},u4=["onClick"],m4={key:0,class:"container mx-auto bg-white rounded-md py-4 px-2 bg-opacity-50"},p4={__name:"EditCollectionPage",setup(r){const{t}=Be(),l=e.inject("cms.fetchContentTypes"),n=e.ref("edit"),a=e.ref({yaml:"",data:{columns:[],type:"collection"}}),o=e.ref({}),s=e.ref(""),i=qe.useRoute(),c=qe.useRouter(),u=e.ref(!1),d=e.computed(()=>[{name:t("cms.builder.edit"),id:"edit"},{name:t("cms.builder.preview"),id:"preview"}]),m=async()=>{var p;try{const g=await(await fetch(`/api/cms-type/${i.params.id}`)).json(),y={...g,columns:Array.isArray(g.columns)?g.columns:(p=Object.entries((g==null?void 0:g.columns)||{}))==null?void 0:p.map(([b,w])=>({...w,name:b}))};a.value={...a.value,data:y},s.value=y.title||y.name}catch(h){console.error(h)}finally{u.value=!0}},f=async()=>{var p,h;try{if(await o.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.builder.editFieldFailed")});return}const y=await fetch(`/api/cms-type/${i.params.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(n.value==="monaco"?(p=a.value)==null?void 0:p.yaml:(h=a.value)==null?void 0:h.data)});c.push("/settings/collections"),l(),se({type:"success",title:t("cms.common.actions.success"),message:t("cms.collections.collectionCreated")})}catch(g){console.error(g),se({type:"error",title:t("cms.common.actions.error"),message:t("cms.collections.collectionCreationFailed")})}};return e.onMounted(()=>{m()}),(p,h)=>{const g=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",l4,[e.createElementVNode("div",n4,[e.createElementVNode("div",null,[e.createElementVNode("h1",a4,[e.createTextVNode(e.toDisplayString(p.$t("cms.builder.editCollection"))+" ",1),e.createElementVNode("span",o4,e.toDisplayString(s.value),1)]),e.createElementVNode("p",s4,e.toDisplayString(p.$t("cms.builder.editContentForYourSite")),1)]),e.createElementVNode("div",i4,[e.createVNode(g,{to:"/settings/collections",class:"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border bg-background hover:text-accent-foreground h-10 px-4 py-2 border-gray-300 text-gray-700 hover:bg-gray-50"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.$t("cms.common.actions.back")),1)]),_:1}),e.createElementVNode("button",{onClick:f,class:"inline-flex items-center justify-center gap-2 whitespace-nowrap text-white rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-primary-foreground h-10 px-4 py-2 bg-blue-600 hover:bg-blue-700"},e.toDisplayString(p.$t("cms.common.actions.save")),1)])]),e.createElementVNode("div",c4,[e.createElementVNode("div",d4,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,y=>(e.openBlock(),e.createElementBlock("button",{key:y.id,onClick:b=>n.value=y.id,class:e.normalizeClass(["inline-flex flex-1 items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm data-[state=active]:bg-blue-50 data-[state=active]:text-blue-700 data-[state=active]:border-blue-200",y.id===n.value?"bg-blue-50 text-blue-700 border-blue-200":""])},e.toDisplayString(y.name),11,u4))),128))])]),u.value?(e.openBlock(),e.createElementBlock("div",m4,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(r4)[n.value]),{yaml:a.value.yaml,"onUpdate:yaml":h[0]||(h[0]=y=>a.value.yaml=y),data:a.value.data,"onUpdate:data":h[1]||(h[1]=y=>a.value.data=y),form:o.value,"onUpdate:form":h[2]||(h[2]=y=>o.value=y)},null,40,["yaml","data","form"]))])):e.createCommentVNode("",!0)])}}},f4="menu",h4=(r,t)=>{const l=r==null?void 0:r.trim();return l?l===f4?t?t==="create"?{type:"createMenu",collection:l}:{type:"editMenu",collection:l,id:t}:{type:"menu",collection:l}:t?t==="create"?{type:"createArticle",collection:l}:{type:"editArticle",collection:l,id:t}:{type:"articles",collection:l}:{type:"collections"}},g4=[{key:"title",label:"common.title",localization:!0,type:"text"},{key:"description",label:"common.description",localization:!0,type:"text"},{key:"keywords",label:"common.keywords",localization:!0,type:"text"},{key:"meta",label:"common.meta",type:"key-value",ignore:["title","description","keywords"]}],y4={__name:"VsFormTags",props:{modelValue:{default:()=>[]},modelModifiers:{}},emits:["update:modelValue"],setup(r,{expose:t}){const{t:l}=Be(),n=e.useModel(r,"modelValue"),a=e.ref({}),o=e.ref(!1);e.provide("metaParentValue",n);const s=m=>Array.isArray(m)?m.map(f=>typeof f=="object"&&f!==null&&f.id?f.id:f):[],i=async m=>{if(!Array.isArray(m)||m.length===0)return[];try{const p=await(await fetch("/api/tags")).json(),h=(p==null?void 0:p.rows)||[];return m.map(g=>{const y=h.find(b=>b.tag_id===g);return y?{id:y.tag_id,text:y.value,color:y.color}:{id:g,text:"",color:"#ababab"}})}catch(f){return console.error("Error fetching tags:",f),m.map(p=>({id:p,text:"",color:"#ababab"}))}};e.onMounted(async()=>{await e.nextTick(),await e.nextTick(),setTimeout(()=>{var m;if(Array.isArray((m=n.value)==null?void 0:m.tag_list)){const f=s(n.value.tag_list);JSON.stringify(f)!==JSON.stringify(n.value.tag_list)&&(n.value.tag_list=f)}},100)}),e.watch(()=>n.value.tag_list,m=>{if(Array.isArray(m)&&!o.value){const f=s(m);JSON.stringify(f)!==JSON.stringify(m)&&(n.value.tag_list=f)}},{deep:!0}),e.watch(()=>n.value,m=>{if(m&&Array.isArray(m.tag_list)&&!o.value){const f=s(m.tag_list);JSON.stringify(f)!==JSON.stringify(m.tag_list)&&(m.tag_list=f)}},{deep:!0,immediate:!0}),e.watch(()=>{var m;return(m=n.value)==null?void 0:m.tag_list},m=>{Array.isArray(m)&&a.value&&e.nextTick(()=>{a.value&&a.value.setValue&&a.value.setValue("tag_list",m)})},{deep:!0});const c=async m=>{if(m.tag_list&&(m.tag_list=s(m.tag_list),n.value.tag_list=m.tag_list),await a.value.validate()){se({type:"warning",title:l("cms.common.actions.warning"),message:l("cms.builder.editFieldFailed")});return}};t({restoreTagsBeforeSubmit:async()=>{var m;if(o.value=!0,Array.isArray((m=n.value)==null?void 0:m.tag_list)){console.log("Before restore:",n.value.tag_list);const f=await i(n.value.tag_list);console.log("After restore:",f),n.value.tag_list=f}setTimeout(()=>{o.value=!1},2e3)}});const d=e.computed(()=>{var m;return[{key:"tag_list",type:"select",multiple:!0,searchable:!1,placeholder:l("cms.builder.tags"),data:"tag_id",value:((m=n.value)==null?void 0:m.tag_list)||[]}]});return(m,f)=>n.value?(e.openBlock(),e.createBlock(e.unref(He),{key:0,schema:d.value,modelValue:n.value,"onUpdate:modelValue":[f[0]||(f[0]=p=>n.value=p),c]},null,8,["schema","modelValue"])):e.createCommentVNode("",!0)}},b4={class:"flex justify-end mb-4"},k4=["href"],x4=["src"],w4=["src"],_4={key:2,class:"w-full h-[80vh] flex items-center justify-center text-gray-500"},E4={__name:"VsPreview",props:{preview_path:{type:String,default:""},slug:{type:String,default:""}},setup(r){const t=e.ref(""),l=e.ref(""),n=async()=>{var o,s;try{const c=await(await fetch("/api/settings")).json();t.value=((s=(o=c==null?void 0:c.settings)==null?void 0:o.site_info)==null?void 0:s.previewUrl)||"http://ip.local.softpro.ua"}catch(i){console.error("Failed to fetch settings:",i),t.value="http://ip.local.softpro.ua"}},a=async()=>{var o;try{const i=await(await fetch("/user")).json();l.value=(o=i==null?void 0:i.user)==null?void 0:o.draftKey}catch(s){console.error("Failed to fetch user:",s)}};return e.onMounted(()=>{n(),a()}),(o,s)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",b4,[e.createElementVNode("a",{href:`${t.value}/uk/${r.preview_path}${r.slug}${l.value?`?draftKey=${l.value}`:""}`,target:"_blank",class:"inline-flex items-center gap-2 px-3 py-1.5 text-black-600 bg-white border border-blue-200 rounded hover:border-blue-300 hover:bg-blue-50 transition-colors duration-200 font-normal cursor-pointer"},[s[0]||(s[0]=e.createTextVNode(" Переглянути на сайті ",-1)),e.createVNode(e.unref(Pc),{class:"w-4 h-4"})],8,k4)]),t.value&&r.preview_path?(e.openBlock(),e.createElementBlock("iframe",{key:0,src:`${t.value}/uk/${r.preview_path}${r.slug}?hideHeader=true&hideFooter=true`,class:"w-full h-[80vh]"},null,8,x4)):t.value?(e.openBlock(),e.createElementBlock("iframe",{key:1,src:`${t.value}/uk/${r.slug}?hideHeader=true&hideFooter=true`,class:"w-full h-[80vh]"},null,8,w4)):(e.openBlock(),e.createElementBlock("div",_4," Loading preview... "))]))}},C4={class:"space-y-6 max-w-6xl mx-auto relative bg-white"},V4={class:"p-4 sticky top-[-24px] z-10 bg-white dark:bg-slate-800"},N4={class:"flex items-center justify-between"},v4={class:"flex items-center gap-4"},B4={class:"text-2xl font-semibold text-gray-900 dark:text-white"},S4=["href","title"],A4={class:"flex items-center space-x-3"},D4={class:"w-full mt-6 flex items-center justify-between"},M4={class:"flex items-center w-full h-10 max-w-md grid-cols-3 p-1 bg-white border border-gray-200 rounded-md text-muted-foreground"},T4=["onClick"],L4={class:"flex items-center gap-2"},$4={for:"is_pin",class:"text-sm font-medium text-gray-700 dark:text-gray-300 cursor-pointer"},F4={class:"relative"},I4={key:0,class:"w-3 h-3 text-white",fill:"currentColor",viewBox:"0 0 20 20"},O4={class:"container mx-auto bg-white rounded-md pb-4 px-5"},P4={class:"container mx-auto bg-white rounded-md pb-4 px-2"},R4={key:0,class:"container mx-auto bg-white rounded-md pb-4 px-2"},U4={class:"container mx-auto bg-white rounded-md pb-4 px-2"},Hi=e.defineComponent({__name:"contentForm",setup(r){De["vs-input-custom-datatable"]=Mi,De["vs-input-reference"]=La,De["vs-input-texteditor"]=Ta,De["vs-input-mediaselect"]=Pr,De["vs-input-file"]=Pr,De["vs-input-image"]=Pr,De["vs-input-richtext-md"]=Ui,De["vs-input-integer"]=ji,De["vs-input-relation-link"]=zi;const{t,locale:l}=Be(),n=qe.useRouter(),a=qe.useRoute(),o=e.inject("menu",e.ref([])),s=e.ref([]),i=e.ref({}),c=e.ref({}),u=e.ref({}),d=e.ref(""),m=$=>{const M=[];return $.forEach(D=>{if(M.push(D),D.localization){const q={...D,name:D.name+":en",label:D.label+" (en)"};M.push(q)}}),M},f=e.computed(()=>{var $;return($=s.value)==null?void 0:$.map(Ma)}),p=e.computed(()=>(l.value,g4.flatMap($=>{const M={...$,label:t($.label)};if($.localization){const D={...$,key:`${$.key}:en`,label:t($.label)+" (en)"};return[M,D]}return[M]}))),h=e.ref({}),g=e.ref({title:"",status:"draft"}),y=e.computed(()=>{const $=[{id:"content",name:t("cms.builder.content")},{id:"seo",name:t("cms.builder.seo")},{id:"tags",name:t("cms.builder.tags")}];return d.value&&$.push({id:"preview",name:t("cms.builder.preview")}),$}),b=e.ref("content"),w=e.computed(()=>{var M,D,q,Q;const $=((M=a.params)==null?void 0:M.collection)||((D=a.params)==null?void 0:D.id);return((Q=(q=o.value)==null?void 0:q.find(R=>R.id===$))==null?void 0:Q.title)||$}),x=e.computed(()=>{var $,M;return(($=g.value)==null?void 0:$.title)||((M=a.params)!=null&&M.id?t("cms.builder.editCollection"):t("cms.articles.createArticle"))}),k=e.computed(()=>{var q,Q,R;const $=((q=a.params)==null?void 0:q.collection)||((Q=a.params)==null?void 0:Q.id),M=(R=a.params)==null?void 0:R.id,D=[{label:w.value,route:`collections/${$}`}];return M?D.push({label:x.value,route:`collections/${$}/${M}`}):D.push({label:t("cms.articles.createArticle"),route:`collections/${$}/create`}),D}),_=$=>{$==="collections"?n.push("/collections"):n.push(`/${$}`)};e.onMounted(async()=>{var Q,R,I;const $=(Q=a.params)==null?void 0:Q.collection,M=(R=a.params)==null?void 0:R.id,D=$||M,q=$&&M?M:void 0;if(!q){if(!D)return;const A=await(await fetch(`/api/cms/${D}/`)).json();s.value=m(A.columns)}try{if(!q||!D)return;const F=await fetch(`/api/cms/${D}/${q}`);if(!F.ok)throw new Error("Failed to fetch article");const A=await F.json();if(s.value=m(A==null?void 0:A.columns),A!=null&&A.preview_path&&(d.value=A==null?void 0:A.preview_path),A.rows){let z=A.rows;Array.isArray(z)||(z=[z]),g.value=z[0],await e.nextTick(),(I=z[0])!=null&&I.meta?h.value={...z[0].meta}:h.value={title:"",description:"",keywords:"",meta:{}},console.log("Initialized seoData from rows[0]:",h.value)}else g.value=A,await e.nextTick(),A!=null&&A.meta?(h.value={title:A.meta.title||"",description:A.meta.description||"",keywords:A.meta.keywords||"",meta:{...A.meta}},delete h.value.meta.title,delete h.value.meta.description,delete h.value.meta.keywords):h.value={title:"",description:"",keywords:"",meta:{}},console.log("Initialized seoData from data:",h.value)}catch(F){console.error("Error fetching article:",F)}});const N=e.computed({get:()=>{var $;return(($=g.value)==null?void 0:$.is_pin)||!1},set:$=>{g.value&&(g.value.is_pin=$)}}),V=()=>{g.value&&(g.value.is_pin=!g.value.is_pin)};e.watch(h,$=>{console.log("seoData changed:",$)},{deep:!0});const P=async $=>{var I,F,A,z;const M=(I=a.params)==null?void 0:I.collection,D=(F=a.params)==null?void 0:F.id,q=await i.value.validate();if(q){se({title:t("cms.validation"),message:JSON.stringify(q),type:"warning"});return}(A=u.value)!=null&&A.restoreTagsBeforeSubmit&&await u.value.restoreTagsBeforeSubmit();const Q=h.value||{},R={...g.value,meta:{...Q,...Q.meta||{}}};console.log("Payload before submit:",R);try{const ee=await fetch(`/api/cms/${M}/${D||""}`,{method:D?"PUT":"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(R)});if(!ee.ok){let pe;try{const Ne=await ee.json();pe=JSON.stringify(Ne,null,2)}catch{pe=await ee.text()}throw new Error(`HTTP ${ee.status}: ${pe}`)}if(!D)try{const pe=await ee.json(),Ne=pe.id||((z=pe.data)==null?void 0:z.id);Ne&&a.name==="createArticle"&&await n.push(`/collections/${M}/${Ne}`)}catch(pe){console.warn("Could not parse response to get ID:",pe)}se({title:t("cms.common.success"),message:t("cms.common.successMessage"),type:"success"})}catch(ee){console.error("Submit error:",ee),se({title:t("cms.common.error"),message:"Помилка збереження",type:"error"})}};return($,M)=>{var D,q,Q,R,I,F,A;return e.openBlock(),e.createElementBlock("div",C4,[e.createElementVNode("div",V4,[e.createVNode(Ys,{items:k.value,onNavigate:_},null,8,["items"]),e.createElementVNode("div",N4,[e.createElementVNode("div",v4,[e.createElementVNode("button",{onClick:M[0]||(M[0]=z=>e.unref(n).back()),class:"p-2 text-gray-500 rounded-full hover:text-gray-900 dark:text-gray-400 dark:hover:text-white hover:bg-gray-100 dark:hover:bg-gray-700"},[e.createVNode(e.unref(hn),{class:"w-5 h-5"})]),e.createElementVNode("h1",B4,[e.createTextVNode(e.toDisplayString($.$t("cms.builder.editCollection"))+" ",1),e.createElementVNode("span",null,'"'+e.toDisplayString(((D=g.value)==null?void 0:D.type)==="single"?g.value.title:(Q=(q=e.unref(o).value)==null?void 0:q.find(z=>z.id===(e.unref(a).params.collection||e.unref(a).params.id)))==null?void 0:Q.title)+'"',1)]),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/content/`,target:"_blank",title:$.$t("cms.guide.content")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,S4)]),e.createElementVNode("div",A4,[e.createElementVNode("button",{onClick:P,type:"submit",class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(xn),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString($.$t("cms.builder.save")),1)])])]),e.createElementVNode("div",D4,[e.createElementVNode("div",M4,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,z=>(e.openBlock(),e.createElementBlock("button",{key:z.id,onClick:ee=>b.value=z.id,class:e.normalizeClass(["inline-flex flex-1 items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm data-[state=active]:bg-blue-50 data-[state=active]:text-blue-700 data-[state=active]:border-blue-200",z.id===b.value?"bg-blue-50 text-blue-700 border-blue-200":""])},e.toDisplayString(z.name),11,T4))),128))]),e.createElementVNode("div",L4,[e.createElementVNode("label",$4,e.toDisplayString($.$t("cms.collections.pinPublication")),1),e.createElementVNode("div",F4,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",id:"is_pin","onUpdate:modelValue":M[1]||(M[1]=z=>N.value=z),class:"sr-only"},null,512),[[e.vModelCheckbox,N.value]]),e.createElementVNode("div",{class:e.normalizeClass(["w-5 h-5 border-2 rounded transition-all duration-200 cursor-pointer flex items-center justify-center",(R=g.value)!=null&&R.is_pin?"bg-sky-600 border-sky-600":"bg-white border-gray-300 hover:border-sky-400 dark:bg-gray-700 dark:border-gray-600 dark:hover:border-sky-400"]),onClick:V},[(I=g.value)!=null&&I.is_pin?(e.openBlock(),e.createElementBlock("svg",I4,[...M[7]||(M[7]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"},null,-1)])])):e.createCommentVNode("",!0)],2)])])])]),e.withDirectives(e.createElementVNode("div",O4,[(F=s.value)!=null&&F.length?(e.openBlock(),e.createBlock(e.unref(He),{key:0,modelValue:g.value,"onUpdate:modelValue":M[2]||(M[2]=z=>g.value=z),schema:f.value,form:i.value,"onUpdate:form":M[3]||(M[3]=z=>i.value=z)},null,8,["modelValue","schema","form"])):e.createCommentVNode("",!0)],512),[[e.vShow,b.value==="content"]]),e.withDirectives(e.createElementVNode("div",P4,[e.createVNode(e.unref(He),{schema:p.value,values:h.value,"onUpdate:values":M[4]||(M[4]=z=>h.value=z),form:c.value,"onUpdate:form":M[5]||(M[5]=z=>c.value=z)},null,8,["schema","values","form"])],512),[[e.vShow,b.value==="seo"]]),b.value==="tags"?(e.openBlock(),e.createElementBlock("div",R4,[e.createVNode(y4,{ref_key:"tagsForm",ref:u,modelValue:g.value,"onUpdate:modelValue":M[6]||(M[6]=z=>g.value=z)},null,8,["modelValue"])])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",U4,[e.createVNode(E4,{slug:(A=g.value)==null?void 0:A.slug,preview_path:d.value},null,8,["slug","preview_path"])],512),[[e.vShow,b.value==="preview"]])])}}}),j4=e.defineAsyncComponent(()=>Promise.resolve().then(()=>nS)),z4=e.defineAsyncComponent(()=>Promise.resolve().then(()=>FA)),H4=e.defineAsyncComponent(()=>Promise.resolve().then(()=>uS)),q4={collections:Qn,articles:Xs,createArticle:Hi,editArticle:Hi,menu:j4,editMenu:z4,createMenu:H4},K4=Qn,G4=r=>q4[r]??K4,W4={key:1,class:"p-4 text-sm text-slate-600 dark:text-slate-300"},Y4=e.defineComponent({__name:"CmsContentWrapper",setup(r){const t=qe.useRoute(),l=e.getCurrentInstance();if(!l)throw new Error("CmsContentWrapper must be used within a component instance");const n=e.computed(()=>{const p=l.appContext.config.globalProperties.$route;if(!p)throw new Error("Vue Router is not registered on the app instance");return p}),a=e.computed(()=>t??n.value),o=e.computed(()=>{var p;return((p=a.value)==null?void 0:p.params)??{}}),s=e.computed(()=>{var p,h;return((p=o.value)==null?void 0:p.collection)??((h=o.value)==null?void 0:h.type)}),i=e.computed(()=>{var p;return(p=o.value)==null?void 0:p.id}),c=e.computed(()=>h4(s.value,i.value)),u=e.computed(()=>G4(c.value.type)),d=e.computed(()=>`${c.value.type}-${c.value.collection??""}-${c.value.id??""}`),m=e.computed(()=>{const{type:p,collection:h,id:g}=c.value,y={...o.value};return s.value?y.collection=s.value:delete y.collection,p==="articles"?y.id=h:p==="createArticle"?delete y.id:p==="editArticle"&&g?y.id=g:delete y.id,y}),f=new Proxy({},{get(p,h,g){const y=a.value;if(!y)return;if(h==="params")return m.value;const b=Reflect.get(y,h,g);return typeof b=="function"?b.bind(y):b},has(p,h){if(h==="params")return!0;const g=a.value;return g?Reflect.has(g,h):!1},ownKeys(){const p=a.value;return p?Reflect.ownKeys(p):["params"]},getOwnPropertyDescriptor(p,h){if(h==="params")return{configurable:!0,enumerable:!0,value:m.value};const g=a.value;if(!g)return;const y=Reflect.getOwnPropertyDescriptor(g,h);if(y)return{...y,configurable:!0}}});return e.provide(qe.routeLocationKey,f),(p,h)=>u.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.value),{key:d.value})):(e.openBlock(),e.createElementBlock("div",W4,e.toDisplayString(p.$t("cms.navigation.collections")),1))}}),X4={class:"space-y-6 max-w-7xl mx-auto"},Z4={class:"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between"},Q4={class:"flex items-center gap-2"},J4={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-2"},eS=["href","title"],tS={class:"text-slate-600 dark:text-slate-300"},rS={class:"overflow-hidden bg-white border border-gray-200 rounded-lg shadow-sm dark:bg-gray-800 dark:border-gray-700"},lS={key:0,class:"p-4 border-b border-gray-200 sm:p-6 dark:border-gray-700"},qi=e.defineComponent({__name:"MenuPage",setup(r){const{t,locale:l}=Be({useScope:"global"}),n=qe.useRouter(),a=e.ref(""),o=e.ref([]),s=e.ref([]),i=e.ref(""),c=e.ref([{name:"name",title:t("cms.menu.form.name"),type:"text"},{name:"description",title:t("cms.menu.form.description"),type:"text"},{name:"locale",title:t("cms.menu.form.language"),type:"select",data:[{text:"uk",id:"uk"},{text:"en",id:"en"}]}]),u=async()=>{const g=await(await fetch("/api/cms-menu")).json(),y=g.rows;o.value=y;const b=(g.filters||[]).map(w=>{const{extra:x,title:k,..._}=w;return _});s.value=b},d=h=>{n.push(`/menu/${h==null?void 0:h.menu_id}`)},m=async h=>{try{await fetch(`/api/cms-menu/${h==null?void 0:h.menu_id}`,{method:"DELETE"}),await se({title:t("cms.menu.menuDeleted"),type:"success",message:t("cms.menu.menuDeleted")}),await u()}catch{se({title:t("cms.menu.menuDeleteError"),type:"error",message:t("cms.menu.menuDeleteError")})}},f=(h,g)=>{if(!g)return!0;const y=g.toLowerCase();return c.value.some(b=>{const w=h[b.name];return w&&w.toString().toLowerCase().includes(y)})},p=h=>{const g=Object.entries(h==null?void 0:h.data).filter(([,y])=>y!=null).map(([y,b])=>`${y}=${b}`).join("|");i.value=g};return e.onMounted(u),(h,g)=>{var b;const y=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",X4,[e.createElementVNode("div",Z4,[e.createElementVNode("div",null,[e.createElementVNode("div",Q4,[e.createElementVNode("h1",J4,e.toDisplayString(h.$t("cms.menu.title")),1),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/menu/`,target:"_blank",title:h.$t("cms.guide.menu")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,eS)]),e.createElementVNode("p",tS,e.toDisplayString(h.$t("cms.menu.description")),1)]),e.createVNode(y,{to:"/menu/create",class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105"},{default:e.withCtx(()=>[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(h.$t("cms.menu.menuAdd")),1)]),_:1})]),e.createElementVNode("div",rS,[((b=s.value)==null?void 0:b.length)>0?(e.openBlock(),e.createElementBlock("div",lS,[e.createVNode(e.unref(jl),{schema:s.value,view:"inline",onChange:p},null,8,["schema"])])):e.createCommentVNode("",!0),e.createVNode(Jn,{rows:o.value,columns:c.value,query:a.value,filterFn:f,onEdit:d,onDelete:m},null,8,["rows","columns","query"])])])}}}),nS=Object.freeze(Object.defineProperty({__proto__:null,default:qi},Symbol.toStringTag,{value:"Module"})),aS={class:"space-y-6 max-w-7xl mx-auto"},oS={class:"flex items-center justify-between"},sS={class:"flex items-center gap-4"},iS={class:"text-2xl font-semibold text-gray-900 dark:text-white"},cS={class:"flex items-center space-x-3"},dS={class:"max-w-[1000px]"},Ki=e.defineComponent({__name:"MenuAddPage",setup(r){De["vs-input-monaco-editor"]=Hl;const{t}=Be({useScope:"global"}),l=qe.useRouter(),n=qe.useRoute(),a=e.ref([{key:"name",title:t("cms.menu.form.name"),type:"text",placeholder:t("cms.menu.form.name"),required:!0,validators:["required"]},{key:"description",title:t("cms.menu.form.description"),type:"text",placeholder:t("cms.menu.form.description"),required:!0,validators:["required"]},{key:"locale",title:t("cms.menu.form.language"),type:"select",placeholder:t("cms.menu.form.language"),options:[{text:"Ukrainian",id:"uk"},{text:"English",id:"en"}],required:!0,validators:["required"]},{key:"content",title:t("cms.menu.form.content"),type:"monaco-editor",height:"500px",language:"yaml",theme:"vs-light"}]),o=e.ref({}),s=e.ref({}),i=async()=>{try{if(await s.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.menu.createMenuFailed")});return}await fetch("/api/cms-menu",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o.value)}),se({title:t("cms.common.success"),type:"success",message:t("cms.common.successMessage")}),o.value={},l.push("/menu")}catch(c){console.log(c),se({title:t("cms.common.error"),type:"error",message:t("cms.common.errorMessage")})}};return(c,u)=>{var d,m;return e.openBlock(),e.createElementBlock("div",aS,[e.createElementVNode("div",oS,[e.createElementVNode("div",sS,[e.createElementVNode("button",{onClick:u[0]||(u[0]=f=>e.unref(l).back()),class:"p-2 text-gray-500 rounded-full hover:text-gray-900 dark:text-gray-400 dark:hover:text-white hover:bg-gray-100 dark:hover:bg-gray-700"},[e.createVNode(e.unref(hn),{class:"w-5 h-5"})]),e.createElementVNode("h1",iS,e.toDisplayString(c.$t((m=(d=e.unref(n))==null?void 0:d.meta)==null?void 0:m.title)),1)]),e.createElementVNode("div",cS,[e.createElementVNode("button",{onClick:i,class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(xn),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(c.$t("cms.common.actions.save")),1)])])]),e.createElementVNode("div",dS,[e.createVNode(e.unref(He),{schema:a.value,modelValue:o.value,"onUpdate:modelValue":u[1]||(u[1]=f=>o.value=f),form:s.value,"onUpdate:form":u[2]||(u[2]=f=>s.value=f)},null,8,["schema","modelValue","form"])])])}}}),uS=Object.freeze(Object.defineProperty({__proto__:null,default:Ki},Symbol.toStringTag,{value:"Module"})),mS={},pS={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"};function fS(r,t){return e.openBlock(),e.createElementBlock("svg",pS,[...t[0]||(t[0]=[e.createStaticVNode('<circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle>',6)])])}const hS=Wt(mS,[["render",fS]]),gS={key:0,class:"p-3 flex items-center gap-x-3 cursor-grab bg-gray-100 border border-gray-300 rounded-lg font-medium text-sm text-gray-800 dark:bg-neutral-900 dark:border-neutral-700 dark:text-neutral-200"},yS={key:0,class:"text-xs text-gray-500 dark:text-neutral-400 ml-2"},bS={key:1,class:"p-3 flex items-center gap-x-2 bg-gray-100 border border-gray-300 rounded-lg dark:bg-neutral-900 dark:border-neutral-700"},kS={class:"text-sm font-medium text-gray-800 dark:text-neutral-200 shrink-0"},xS=e.defineComponent({__name:"MenuItem",props:{title:{},value:{}},emits:["delete","update:value"],setup(r,{emit:t}){const l=r,n=t,a=e.ref(!1),o=e.ref(""),s=()=>{typeof l.value=="string"&&(o.value=l.value,a.value=!0)},i=()=>{typeof l.value=="string"&&(n("update:value",o.value),a.value=!1)},c=()=>{a.value=!1,o.value=""};return(u,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([{"space-y-1":typeof u.value!="string"},"dark:bg-transparent"])},[a.value?(e.openBlock(),e.createElementBlock("div",bS,[e.createElementVNode("span",kS,e.toDisplayString(u.title)+":",1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[1]||(d[1]=m=>o.value=m),onKeyup:[e.withKeys(i,["enter"]),e.withKeys(c,["esc"])],onBlur:i,class:"flex-1 px-2 py-1 text-sm border border-gray-300 rounded dark:bg-neutral-800 dark:border-neutral-600 dark:text-neutral-200 focus:outline-none focus:ring-2 focus:ring-blue-500",type:"text",placeholder:"/link"},null,544),[[e.vModelText,o.value]]),e.createElementVNode("button",{onClick:e.withModifiers(i,["stop"]),class:"shrink-0 p-1 text-green-600 dark:text-green-400 hover:bg-green-50 dark:hover:bg-green-900/20 rounded",title:"Save"},[e.createVNode(e.unref(Fc),{class:"size-4"})]),e.createElementVNode("button",{onClick:e.withModifiers(c,["stop"]),class:"shrink-0 p-1 text-red-600 dark:text-red-400 hover:bg-red-50 dark:hover:bg-red-900/20 rounded",title:"Cancel"},[e.createVNode(e.unref(qc),{class:"size-4"})])])):(e.openBlock(),e.createElementBlock("div",gS,[e.createTextVNode(e.toDisplayString(u.title)+" ",1),typeof u.value=="string"?(e.openBlock(),e.createElementBlock("span",yS,e.toDisplayString(u.value),1)):e.createCommentVNode("",!0),typeof u.value=="string"?(e.openBlock(),e.createBlock(e.unref(kn),{key:1,class:"shrink-0 size-4 ml-auto text-gray-500 dark:text-neutral-500 cursor-pointer hover:text-blue-600 dark:hover:text-blue-400",onClick:e.withModifiers(s,["stop"])})):e.createCommentVNode("",!0),e.createVNode(e.unref(Ht),{class:"shrink-0 size-4 text-gray-500 dark:text-neutral-500 cursor-pointer hover:text-red-600 dark:hover:text-red-400",onClick:d[0]||(d[0]=e.withModifiers(m=>n("delete"),["stop"]))}),e.createVNode(hS,{class:"shrink-0 size-4 cursor-pointer text-gray-500 dark:text-neutral-500"})]))],2))}}),wS={class:"space-y-1"},_S=e.defineComponent({__name:"MenuList",props:{list:{type:Array,default:()=>[]},inside:{type:Boolean,default:!1}},emits:["update:list","delete:item"],setup(r,{emit:t}){const{t:l}=Be({useScope:"global"}),n=r,a=t,o=e.ref([]);e.watch(()=>n.list,d=>{o.value=d?[...d]:[]},{immediate:!0,deep:!0});const s=()=>{a("update:list",o.value)},i=d=>{Jr({title:l("cms.builder.deleteTitle"),message:l("cms.builder.deleteObject"),type:"error",onConfirm:()=>{a("update:list",o.value),a("delete:item",d)}})},c=(d,m)=>{d.value=m,e.nextTick(()=>{o.value=[...o.value],a("update:list",o.value)})},u=(d,m)=>{d.children=m,e.nextTick(()=>{o.value=[...o.value],a("update:list",o.value)})};return(d,m)=>{const f=e.resolveComponent("MenuList",!0);return e.openBlock(),e.createBlock(e.unref(Da),{tag:"ul",list:o.value,group:{name:"nested",pull:!0,put:!0},"item-key":"id",class:e.normalizeClass(["nested-sortable space-y-1",{"ps-5 dark:bg-transparent":r.inside}]),onChange:s,onEnd:s},{item:e.withCtx(({element:p})=>[e.createElementVNode("div",wS,[e.createVNode(xS,{title:p.title,value:p.value,onDelete:h=>i(p),"onUpdate:value":h=>c(p,h)},null,8,["title","value","onDelete","onUpdate:value"]),Array.isArray(p.children)?(e.openBlock(),e.createBlock(f,{key:0,list:p.children,inside:!0,"onUpdate:list":h=>u(p,h),"onDelete:item":i},null,8,["list","onUpdate:list"])):e.createCommentVNode("",!0)])]),_:1},8,["list","class"])}}}),ES={class:"flex justify-end p-[20px] gap-[10px] border-t w-full"},CS=e.defineComponent({__name:"AddNewItemInTree",props:{isOpen:{type:Boolean,required:!0},isOpenModifiers:{}},emits:e.mergeModels(["addNewItem"],["update:isOpen"]),setup(r,{emit:t}){const{t:l}=Be({useScope:"global"}),n=e.useModel(r,"isOpen"),a=e.ref({}),o=t,s=e.ref({}),i={title:{type:"text",label:l("cms.menu.form.name"),required:!0,placeholder:l("cms.menu.form.name"),validators:["required"]},value:{type:"text",label:l("cms.menu.form.value"),required:!0,placeholder:l("cms.menu.form.value"),validators:["required"]}},c=async()=>{if(await a.value.validate()){se({type:"warning",title:l("cms.common.actions.warning"),message:l("cms.menu.createMenuFailed")});return}o("addNewItem",s.value),s.value={}};return(u,d)=>(e.openBlock(),e.createBlock(e.unref(Gt),{teleport:"#modal",visible:n.value,title:u.$t("cms.menu.createMenu"),template:"default",closeClickBack:!1,onClose:d[3]||(d[3]=m=>n.value=!1)},{footer:e.withCtx(()=>[e.createElementVNode("div",ES,[e.createElementVNode("button",{class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100",onClick:d[2]||(d[2]=m=>{n.value=!1,s.value={}})},e.toDisplayString(u.$t("cms.common.actions.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.common.actions.save")),1)])]),default:e.withCtx(()=>[e.createVNode(e.unref(He),{form:a.value,"onUpdate:form":d[0]||(d[0]=m=>a.value=m),modelValue:s.value,"onUpdate:modelValue":d[1]||(d[1]=m=>s.value=m),schema:i},null,8,["form","modelValue"])]),_:1},8,["visible","title"]))}}),VS=e.defineComponent({__name:"MenuBody",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(r){De["vs-input-monaco-editor"]=Hl;const{t}=Be({useScope:"global"}),l=e.ref(!1),n=e.ref(null),a=e.useModel(r,"modelValue"),o=e.ref({}),s=async f=>{try{if(await o.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.menu.createMenuFailed")});return}l.value=!1,f.id=Math.random().toString(36).substr(2,9),f.children=[],a.value.items.unshift(f)}catch(p){console.log(p)}},i=e.ref([{key:"name",title:t("cms.common.title"),type:"text",placeholder:t("cms.common.title"),required:!0,validators:["required"]},{key:"description",title:t("cms.common.description"),type:"text",placeholder:t("cms.common.description"),required:!0,validators:["required"]},{key:"locale",title:t("cms.menu.form.language"),type:"select",placeholder:t("cms.menu.form.language"),required:!0,options:[{text:"Ukrainian",id:"uk"},{text:"English",id:"en"}],validators:["required"]}]),c=f=>{let p=[];for(const h in f)typeof f[h]=="object"?p.push({title:h,value:"",id:Math.random().toString(36).substr(2,9),children:c(f[h])}):p.push({title:h,value:f[h],id:Math.random().toString(36).substr(2,9),children:[]});return p},u=f=>{a.value.items=f},d=f=>{m(a.value.items,f.id)};function m(f,p){for(let h=f.length-1;h>=0;h--){if(f[h].id===p)return f.splice(h,1),!0;if(f[h].children&&f[h].children.length&&m(f[h].children,p))return!0}return!1}return e.onBeforeMount(()=>{Array.isArray(a.value.items)||(a.value.items=c(a.value.items))}),(f,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(He),{schema:i.value,modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=h=>a.value=h),form:o.value,"onUpdate:form":p[1]||(p[1]=h=>o.value=h)},null,8,["schema","modelValue","form"]),e.createElementVNode("button",{onClick:p[2]||(p[2]=h=>l.value=!0),class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium w-min ml-auto my-6 h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(f.$t("cms.menu.createMenu")),1)]),e.createVNode(CS,{isOpen:l.value,"onUpdate:isOpen":p[3]||(p[3]=h=>l.value=h),form:n.value,"onUpdate:form":p[4]||(p[4]=h=>n.value=h),onAddNewItem:s},null,8,["isOpen","form"]),e.createVNode(_S,{class:"px-2",list:a.value.items,"onUpdate:list":u,"onDelete:item":d},null,8,["list"])],64))}});/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Gi(r){return typeof r>"u"||r===null}function NS(r){return typeof r=="object"&&r!==null}function vS(r){return Array.isArray(r)?r:Gi(r)?[]:[r]}function BS(r,t){var l,n,a,o;if(t)for(o=Object.keys(t),l=0,n=o.length;l<n;l+=1)a=o[l],r[a]=t[a];return r}function SS(r,t){var l="",n;for(n=0;n<t;n+=1)l+=r;return l}function AS(r){return r===0&&Number.NEGATIVE_INFINITY===1/r}var DS=Gi,MS=NS,TS=vS,LS=SS,$S=AS,FS=BS,wr={isNothing:DS,isObject:MS,toArray:TS,repeat:LS,isNegativeZero:$S,extend:FS};function Wi(r,t){var l="",n=r.reason||"(unknown reason)";return r.mark?(r.mark.name&&(l+='in "'+r.mark.name+'" '),l+="("+(r.mark.line+1)+":"+(r.mark.column+1)+")",!t&&r.mark.snippet&&(l+=`
|
|
250
|
+
`,h.parentNode.appendChild(g)};return e.onMounted(()=>{var p,h;(h=(p=t.value)==null?void 0:p.filter(g=>typeof g=="object"))==null||h.forEach(g=>g.id?g.id:g.id=Math.random().toString(36).substring(2,15))}),(p,h)=>(e.openBlock(),e.createElementBlock("div",wV,[e.createElementVNode("div",_V,[e.createElementVNode("div",EV,[e.createElementVNode("table",CV,[e.createElementVNode("thead",VV,[e.createElementVNode("tr",NV,[h[4]||(h[4]=e.createElementVNode("th",{class:"h-10 px-2 align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] w-12 text-center"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.colModel,g=>(e.openBlock(),e.createElementBlock("th",{key:g.name,class:"h-10 px-2 text-left align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] font-semibold text-slate-700 dark:text-slate-300 min-w-[150px]"},e.toDisplayString(g.label||g.title||g.name),1))),128)),e.createElementVNode("th",vV,e.toDisplayString(p.$t("cms.table.actions")),1)])]),e.createElementVNode("tbody",BV,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(g,y)=>(e.openBlock(),e.createElementBlock("tr",{key:g==null?void 0:g.id,class:e.normalizeClass(["border-b data-[state=selected]:bg-muted transition-all duration-200 hover:bg-slate-50/60 dark:hover:bg-slate-700/60 cursor-move",{"opacity-50":l.value===g}]),draggable:"true",onDragstart:b=>o(b,g,y),onDragover:b=>s(b),onDrop:b=>u(b,y),onDragenter:b=>i(b,y),onDragleave:h[2]||(h[2]=b=>c(b))},[e.createElementVNode("td",AV,[e.createElementVNode("div",DV,[e.createVNode(e.unref(Qa))])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.colModel,b=>(e.openBlock(),e.createElementBlock("td",{key:b.name,class:"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] text-slate-600 dark:text-slate-400 text-sm"},[b.type==="Texteditor"?(e.openBlock(),e.createElementBlock("span",{key:0,innerHTML:g[b.key]||"-"},null,8,MV)):b.type==="File"?(e.openBlock(),e.createElementBlock("div",TV,[Array.isArray(g[b.key])&&g[b.key].length>0?(e.openBlock(),e.createElementBlock("div",LV,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d(g[b.key]),(w,x)=>(e.openBlock(),e.createElementBlock("div",{key:x,class:"relative w-8 h-8 rounded overflow-hidden bg-gray-100 dark:bg-gray-700 flex-shrink-0"},[e.createElementVNode("img",{src:w,alt:`Image ${x+1}`,class:"w-full h-full object-cover",onError:h[0]||(h[0]=k=>f(k))},null,40,$V)]))),128)),m(g[b.key])>0?(e.openBlock(),e.createElementBlock("span",FV," +"+e.toDisplayString(m(g[b.key])),1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",IV,[...h[5]||(h[5]=[e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400",fill:"currentColor",viewBox:"0 0 20 20"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M4 3a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V5a2 2 0 00-2-2H4zm12 12H4l4-8 3 6 2-4 3 6z","clip-rule":"evenodd"})],-1)])]))])):(e.openBlock(),e.createElementBlock("span",OV,e.toDisplayString(g[b.key]||"-"),1))]))),128)),e.createElementVNode("td",PV,[e.createVNode(yV,{item:g,colModel:r.colModel,modelValue:t.value,"onUpdate:modelValue":h[1]||(h[1]=b=>t.value=b)},null,8,["item","colModel","modelValue"])])],42,SV))),128)),a.value?(e.openBlock(),e.createElementBlock("tr",RV)):e.createCommentVNode("",!0)])])])]),e.createVNode(xV,{colModel:r.colModel,modelValue:t.value,"onUpdate:modelValue":h[3]||(h[3]=g=>t.value=g)},null,8,["colModel","modelValue"])]))}},Ti="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASIAAACbCAIAAABJbgHoAAAGfklEQVR4Ae3d7W6baBSF0d7/7Q6IDxkzmrHEQU2DHZudWH1XflRHcXNqVnka4tL01+qNAIGwwK/wfusJEFjPyexyuUzTNAxD3/dd1/3z/1vXdX3fD8MwTdPlcoFNoFmBlzJblmWapr7vb10d/9j3/TRNy7I0a+3AmxV4MrPr9TqO43FXnz06juP1em1W3IE3KPBMZvM8b1eGn7V0/P6u6+Z5bpDbIbcp8OXMnv4k9jG8cRzbRHfUrQl8LbNhGD7W8sp7hmFoTdzxNijwhcxOb+zWp9IaPO1aO+RHMzvxWvHjZz9Xj62ddq0d70OZzfP8sY1z3+MVkdbOvKaO935m1+v1xdcVHwmy6zqv8jd15jV1sPczi14u7gt06djUmdfUwd7JbFmWfQnp2T0iTZ187RzsncymaUqntd8/TVM79I60HYE7mT14v+I+lVfmvu+P6W93UQ7eCLyxwMd7d48yu1wurzTz3Mce3Mu/LMs4jt3/b88t91EE0gK383Mcx/1XQEeZffMV4+34D64bb42lmewn8LpA13X7l/SOMgvd9nF8DAc3hXzzFezx8/QogWOB/VdAR5n9yGm9f3K/fZ32DX99dwznUQKPC3Rdt53AR5n9yGm9f3Lbs7wNjx+hn0ngHQS2E/gos596otuT+234qefj1yXwnMB2AsvsOUAfReC+wEOZuWi8D+lnEPhc4KHM3u0lkM8PxyME3lHgocze7QX9d4T0nAh8LvBQZu/219M/8tn1c0OPEDgS2P/V1NFLIO92s9U0TT/y5eKRpccI/Emg67r9/UxHma3r+s2fQPZ/AGyfcLfhlW8O+ScK7yOQEvjtm5Heyeybrxv3fwBsde2HZVnmeZ68EXhjgXme9/cNr+u976Hvn3XuIzcTeE7gzmezdV19k4LnZH0UgU3gfma+5c6GZSDwnMD9zNZ19Q3knsP1UQRuAg9llr503P8DOL8xBP4+gUczW9c1dFPIwb/j/Pu4HVGbAl/ILFGaxto87Vo76q9ldu7Vo2vF1s62Zo/3y5ndXhF58aYn/41gsydcmwf+TGbrur5y39Nv96G06e6omxJ4MrObkf/ivalzxcE+LfBSZtuverlcpmkahqHv++16suu6vu+HYZim6eCbnG5LDAT+VoFzMvtbdRwXgVMEZHYKoyUEjgRkdqTjMQKnCMjsFEZLCBwJyOxIx2METhGQ2SmMlhA4EpDZkY7HCJwiILNTGC0hcCTwX2a3/1/QjwQInCuwlSezc2FtI1ACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhASkFkI1loCJSCzsjARCAnILARrLYESkFlZmAiEBGQWgrWWQAnIrCxMBEICMgvBWkugBGRWFiYCIQGZhWCtJVACMisLE4GQgMxCsNYSKAGZlYWJQEhAZiFYawmUgMzKwkQgJCCzEKy1BEpAZmVhIhAS2DL7F8r/OP7dtZNpAAAAAElFTkSuQmCC",Li={faq:{schema:{title:{type:"text",label:"Назва",placeholder:"Назва"},show_dots:{type:"switcher",label:"Показувати точки"},show_index:{type:"switcher",conditions:["show_dots","==","true"],label:"Показувати нумерацію"},index_type:{type:"combobox",conditions:["show_index","==","true"],label:"Тип нумерації",options:[{id:"decimal",text:"Десятковий"},{id:"upper-alpha",text:"Латинські великі букви"},{id:"lower-alpha",text:"Латинські маленькі букви"},{id:"upper-roman",text:"Римські великі цифри"},{id:"lower-roman",text:"Римські маленькі цифри"},{id:"upper-cyrillic",text:"Кириличні великі букви"},{id:"lower-cyrillic",text:"Кириличні маленькі букви"}]},openfirst:{type:"switcher",label:"Відкрити перший елемент?"},collapse_mode:{type:"switcher",label:"Не згортати попередній елемент?"},data:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text",required:!0,validators:["required"]},{key:"is_section",type:"Radio",label:"Заповнити секціями",options:[{id:"yes",text:"Так"},{id:"no",text:"Ні"}],required:!0,validators:["required"]},{key:"section",type:"reference",label:"Вкладений контент",placeholder:"Ваш контент",conditions:["is_section","==","yes"],required:!0,validators:["required"]},{key:"body",type:"tiptap-editor",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","no"],required:!0,validators:["required"]}]}}},banner:{schema:{title:{type:"text",label:"Назва",placeholder:"Назва"},image:{type:"file",label:"Зображення",placeholder:"Зображення"}}},photoGrid:{schema:{columns:{type:"number",label:"Кількість колонок",placeholder:"Кількість колонок",default:3},data:{type:"DataTable",colModel:[{key:"image",ua:"Зображення",type:"file"},{key:"caption",ua:"Заголовок",type:"text"}]}}},slider:{schema:{autoplay:{type:"switcher",label:"Автоматичне гортання?",default:!0},autoplaySpeed:{type:"number",label:"Швидкість автоматичного гортання(мс)",placeholder:"Швидкість автоматичного гортання(мс)",default:3e3},show_navigation:{type:"switcher",label:"Показувати кнопки навігації?"},data:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text"},{key:"link",ua:"Посилання",type:"text"},{key:"image",ua:"Зображення",type:"file"},{key:"image_width",ua:"Ширина зображення(px)",type:"number",placeholder:"Ширина зображення"},{key:"image_height",ua:"Висота зображення(px)",type:"number",placeholder:"Висота зображення"},{ua:"Розтягувати по ширині",key:"stretch",type:"switcher"},{key:"target_blank",ua:"Відкривати в новій вкладці?",type:"switcher"}]}}},video:{schema:{file:{type:"file",max_size:50,description:"Максимальний розмір файлу 50MB",label:"Завантажити відео",placeholder:"Завантажити відео"},hidden_gif:{type:"switcher",label:"Сховати GIF"},preview:{type:"file",label:"Прев'ю для відео"},link:{type:"text",label:"Посилання",placeholder:"Посилання"}}},about:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},text:{type:"tiptap-editor",label:"Текст",placeholder:"Текст"},url:{type:"file",label:"Зображення / відео",placeholder:"Посилання"}}},cards:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text"},{key:"img",ua:"Зображення",type:"file"},{key:"link",ua:"Посилання",type:"text"},{key:"description",ua:"Опис",type:"text"}]}}},usefulLinks:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"text",ua:"Назва",type:"text"},{key:"url",ua:"Посилання",type:"text"},{key:"target_blank",ua:"Відкривати в новій вкладці?",type:"switcher"}]}}},team:{schema:{data:{type:"DataTable",colModel:[{key:"avatar",ua:"Аватар",type:"file"},{key:"title",ua:"Ім'я/ПІБ",type:"text"},{key:"description",ua:"Опис",type:"textarea",optional:!0},{key:"position",ua:"Посада",type:"text",tooltip:!0},{key:"email",ua:"Email",type:"text",optional:!0},{key:"tel",ua:"Телефон",type:"text",optional:!0},{key:"schedule",ua:"Графік прийому",type:"text",optional:!0},{key:"isinfo",type:"switcher",label:"Відображати кнопку 'Детальніше'"},{key:"slug",ua:"Slug",type:"text",label:"Унікальний ідентифікатор"}]}}},body:{schema:{background_color:{type:"switcher",label:"Додати білий фон?"},content:{type:"tiptap-editor",label:"Текст",placeholder:"Текст"}}},news:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},buttonText:{type:"text",label:"Текст кнопки",placeholder:"Текст кнопки"},buttonLink:{type:"text",label:"Посилання кнопки",placeholder:"Посилання кнопки"},tag:{type:"select",label:"Тег",placeholder:"Тег",data:"tag_id"},news_list:{type:"select",label:"Список новин",multiple:!0,placeholder:"Список новин",parent:"tag",data:"news_tag_id"}}},form:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},formUrl:{type:"text",label:"Посилання для відправки форми",placeholder:"Посилання"},schema:{label:"Схема форми",type:"DataTable",colModel:[{key:"name",ua:"Name",type:"text",placeholder:"Name"},{key:"label",ua:"Title",type:"text",placeholder:"Title"},{key:"type",ua:"Type",type:"combobox",options:[{text:"Text",id:"text"},{text:"Textarea",id:"textarea"},{text:"switcher",id:"switcher"},{text:"Email",id:"email"},{text:"Mask",id:"mask"},{text:"Number",id:"number"},{text:"Date",id:"date"},{text:"Datetime",id:"datetime"}]},{key:"mask",ua:"Маска",type:"text",conditions:["type","==","mask"],placeholder:"Маска"},{key:"placeholder",ua:"Плейсхолдер",type:"text",placeholder:"Placeholder"},{key:"required",ua:"Required",type:"switcher"}]}}},tabs:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},description:{type:"textarea",label:"Опис",placeholder:"Опис"},history_mode:{type:"switcher",label:"Використовувати історію сторінки?"},data:{type:"DataTable",colModel:[{key:"slug",type:"slug",label:"Slug",parent:"title",placeholder:"Slug"},{key:"title",ua:"Назва",type:"text",required:!0,validators:["required"]},{key:"is_section",type:"Radio",label:"Заповнити секціями",options:[{id:"yes",text:"Так"},{id:"no",text:"Ні"}],required:!0,validators:["required"]},{key:"section",type:"reference",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","yes"],required:!0,validators:["required"]},{key:"body",type:"tiptap-editor",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","no"],required:!0,validators:["required"]}]}}},vertical_tabs:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},history_mode:{type:"switcher",label:"Використовувати історію сторінки?"},data:{type:"DataTable",colModel:[{key:"slug",type:"slug",label:"Slug",parent:"title",placeholder:"Slug"},{key:"title",ua:"Назва",type:"text",required:!0,validators:["required"]},{key:"is_section",type:"Radio",label:"Заповнити секціями",options:[{id:"yes",text:"Так"},{id:"no",text:"Ні"},{id:"slug",text:"Привязати сторінку"}],required:!0,validators:["required"]},{key:"slug",type:"text",label:"Slug",placeholder:"Slug",conditions:["is_section","==","slug"]},{key:"section",type:"reference",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","yes"],required:!0,validators:["required"]},{key:"body",type:"tiptap-editor",label:"Тіло вкладки",placeholder:"Ваш контент",conditions:["is_section","==","no"],required:!0,validators:["required"]}]}}},documents:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},icon:{type:"file",label:"Завантажити іконку",placeholder:"Завантажити іконку"},show_icon:{type:"switcher",label:"Показувати іконку?"},documents:{type:"DataTable",colModel:[{key:"title",ua:"Назва",type:"text"},{key:"file",info:"Прев'ю доступно тільки для документів у форматі pdf, html, txt. Інші формати одразу завантажуються.",ua:"Файл",type:"file"}]}}},infoLine:{schema:{divider:{type:"file",label:"Завантажити розподілювач"},speed:{type:"number",label:"Швидкість автоматичного гортання(с)",placeholder:"Швидкість автоматичного гортання(с)",default:20},data:{type:"DataTable",colModel:[{key:"title",ua:"Текст",type:"text"}]}}},interested:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"title",ua:"Заголовок",type:"text"},{key:"link",ua:"Посилання",type:"text"},{key:"target_blank",ua:"Відкривати в новій вкладці?",type:"switcher"},{key:"color",ua:"Колір фону",type:"color"}]}}},contact:{schema:{title:{type:"text",label:"Заголовок",placeholder:"Заголовок"},data:{type:"DataTable",colModel:[{key:"type",ua:"Тип",type:"combobox",options:[{id:"email",text:"Email"},{id:"tel",text:"Телефон"},{id:"address",text:"Адреса"}]},{key:"title",ua:"Пошта",type:"text",conditions:["type","==","email"]},{key:"title",ua:"Телефон",type:"text",conditions:["type","==","tel"]},{key:"title",ua:"Адреса",type:"text",conditions:["type","==","address"]},{key:"description",ua:"Опис",type:"text"}]}}},iframe:{schema:{link:{type:"text",label:"Посилання",placeholder:"Посилання"},file:{type:"file",label:"Завантажити файл",placeholder:"Завантажити файл"},height:{type:"text",label:"Висота iframe(px)",placeholder:"Висота iframe(px)"}}}},on=[{text:"reference.faq",id:"faq"},{text:"reference.banner",id:"banner"},{text:"reference.slider",id:"slider"},{text:"reference.photoGrid",id:"photoGrid"},{text:"reference.video",id:"video"},{text:"reference.about",id:"about"},{text:"reference.cards",id:"cards"},{text:"reference.usefulLinks",id:"usefulLinks"},{text:"reference.team",id:"team"},{text:"reference.body",id:"body"},{text:"reference.news",id:"news"},{text:"reference.form",id:"form"},{text:"reference.tabs",id:"tabs"},{text:"reference.vertical_tabs",id:"vertical_tabs"},{text:"reference.documents",id:"documents"},{text:"reference.infoLine",id:"infoLine"},{text:"reference.interested",id:"interested"},{text:"reference.contact",id:"contact"},{text:"reference.iframe",id:"iframe"}],UV={class:"h-full w-full flex flex-col"},jV={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},zV={class:"text-xs font-medium text-gray-600"},HV={key:0,class:"text-xs text-gray-500"},$i={__name:"cards-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",UV,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 grid grid-cols-3 gap-1.5"><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div><div class="bg-gray-200 rounded p-1.5 flex flex-col"><div class="flex-1 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded"></div></div></div>',1)),e.createElementVNode("div",jV,[e.createElementVNode("div",zV,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",HV,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},qV={class:"h-full w-full flex flex-col"},KV={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},GV={class:"text-xs font-medium text-gray-600"},WV={key:0,class:"text-xs text-gray-500"},YV={__name:"faq-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",qV,[l[0]||(l[0]=e.createStaticVNode('<div class="h-3 bg-gray-500 rounded mb-2"></div><div class="space-y-1.5 flex-1"><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div></div><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div><div class="mt-1 pt-1 border-t border-gray-200"><div class="space-y-0.5"><div class="h-1 bg-gray-200 rounded"></div><div class="h-1 bg-gray-200 rounded w-5/6"></div><div class="h-1 bg-gray-200 rounded w-4/5"></div></div></div></div><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div></div><div class="border border-gray-300 rounded p-1"><div class="flex items-center justify-between"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><svg 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-chevron-down w-2.5 h-2.5 text-gray-400"><path d="m6 9 6 6 6-6"></path></svg></div></div></div>',2)),e.createElementVNode("div",KV,[e.createElementVNode("div",GV,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",WV,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},XV={class:"h-full w-full flex flex-col"},ZV={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},QV={class:"text-xs font-medium text-gray-600"},JV={key:0,class:"text-xs text-gray-500"},Fi={__name:"banner-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",XV,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded relative"><div class="absolute inset-0 flex items-center justify-center"><div class="w-16 h-10 bg-gray-300 rounded"></div></div><div class="absolute bottom-2 left-2"><div class="h-3 bg-gray-400 rounded w-16"></div></div></div>',1)),e.createElementVNode("div",ZV,[e.createElementVNode("div",QV,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",JV,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},eN={class:"h-full w-full flex flex-col"},tN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},rN={class:"text-xs font-medium text-gray-600"},lN={key:0,class:"text-xs text-gray-500"},nN={__name:"form-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",eN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-3 bg-gray-500 rounded mb-2"></div><div class="space-y-1.5 flex-1"><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/4"></div><div class="h-5 bg-gray-200 rounded border border-gray-300"></div></div><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/3"></div><div class="h-5 bg-gray-200 rounded border border-gray-300"></div></div><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/4"></div><div class="h-5 bg-gray-200 rounded border border-gray-300"></div></div><div><div class="h-1.5 bg-gray-300 rounded mb-1 w-1/3"></div><div class="h-8 bg-gray-200 rounded border border-gray-300"></div></div></div><div class="h-6 bg-gray-600 rounded mt-2"></div>',3)),e.createElementVNode("div",tN,[e.createElementVNode("div",rN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",lN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},aN={class:"h-full w-full flex flex-col"},oN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},sN={class:"text-xs font-medium text-gray-600"},iN={key:0,class:"text-xs text-gray-500"},Ii={__name:"news-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",aN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-4 bg-gray-400 rounded mb-2"></div><div class="flex gap-2 flex-1"><div class="flex-1 space-y-2"><div class="bg-gray-200 rounded p-1.5"><div class="h-8 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-3/4"></div></div><div class="bg-gray-200 rounded p-1.5"><div class="h-8 bg-gray-300 rounded mb-1"></div><div class="h-1.5 bg-gray-400 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-3/4"></div></div></div><div class="w-20 space-y-1"><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div><div class="border-b border-gray-300 pb-1"><div class="h-1 bg-gray-300 rounded mb-1"></div><div class="h-1 bg-gray-300 rounded w-4/5"></div></div></div></div>',2)),e.createElementVNode("div",oN,[e.createElementVNode("div",sN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",iN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},cN={class:"h-full w-full flex flex-col"},dN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},uN={class:"text-xs font-medium text-gray-600"},mN={key:0,class:"text-xs text-gray-500"},pN={__name:"team-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",cN,[l[0]||(l[0]=e.createStaticVNode('<div class="space-y-2 flex-1"><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div><div class="flex items-start gap-2"><div class="w-8 h-8 bg-gray-300 rounded flex-shrink-0"></div><div class="flex-1 min-w-0"><div class="h-2 bg-gray-400 rounded mb-1 w-2/3"></div><div class="h-1.5 bg-gray-300 rounded mb-1"></div><div class="flex gap-1"><svg 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-phone w-2.5 h-2.5 text-gray-400"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><svg 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-mail w-2.5 h-2.5 text-gray-400"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><svg 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-clock w-2.5 h-2.5 text-gray-400"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg></div></div></div></div>',1)),e.createElementVNode("div",dN,[e.createElementVNode("div",uN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",mN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},fN={class:"h-full w-full flex flex-col"},hN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},gN={class:"text-xs font-medium text-gray-600"},yN={key:0,class:"text-xs text-gray-500"},Oi={__name:"usefulLinks-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",fN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-4 bg-gray-400 rounded mb-3"></div><div class="grid grid-cols-2 gap-2 flex-1"><div class="space-y-2"><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div></div><div class="space-y-2"><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div><div class="flex items-center justify-between p-1.5 border border-gray-300 rounded"><div class="h-1.5 bg-gray-300 rounded flex-1 mr-2"></div><div class="w-2 h-2 bg-gray-400 rounded-full"></div></div></div></div>',2)),e.createElementVNode("div",hN,[e.createElementVNode("div",gN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",yN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},bN={class:"h-full w-full flex flex-col"},kN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},xN={class:"text-xs font-medium text-gray-600"},wN={key:0,class:"text-xs text-gray-500"},_N={__name:"video-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",bN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded relative"><div class="absolute inset-0 flex items-center justify-center"><div class="w-10 h-10 bg-gray-400 rounded-full flex items-center justify-center"><svg 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-play w-5 h-5 text-white ml-0.5"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></div></div><div class="absolute bottom-1.5 left-1.5 right-1.5"><div class="h-2 bg-gray-400 rounded mb-1"></div><div class="h-2 bg-gray-400 rounded w-3/4"></div></div></div><div class="mt-2 flex items-center gap-2"><div class="w-5 h-5 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded flex-1"></div></div>',2)),e.createElementVNode("div",kN,[e.createElementVNode("div",xN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",wN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},EN={class:"h-full w-full flex flex-col"},CN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},VN={class:"text-xs font-medium text-gray-600"},NN={key:0,class:"text-xs text-gray-500"},vN={__name:"about-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",EN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex flex-1"><div class="flex-1 pr-2"><div class="h-4 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-2 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded w-4/5"></div><div class="h-2 bg-gray-300 rounded"></div><div class="h-2 bg-gray-300 rounded w-3/4"></div><div class="h-2 bg-gray-300 rounded"></div></div></div><div class="w-16 h-20 bg-gray-200 rounded flex items-center justify-center"><div class="w-6 h-6 bg-gray-300 rounded-full"></div></div></div>',1)),e.createElementVNode("div",CN,[e.createElementVNode("div",VN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",NN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},BN={class:"h-full w-full flex flex-col"},SN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},AN={class:"text-xs font-medium text-gray-600"},DN={key:0,class:"text-xs text-gray-500"},MN={__name:"slider-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",BN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded mb-2 relative"><div class="absolute inset-0 flex items-center justify-center"><div class="w-12 h-8 bg-gray-300 rounded"></div></div><div class="absolute left-1 top-1/2 transform -translate-y-1/2"><svg 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-chevron-left w-4 h-4 text-gray-400"><path d="m15 18-6-6 6-6"></path></svg></div><div class="absolute right-1 top-1/2 transform -translate-y-1/2"><svg 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-chevron-right w-4 h-4 text-gray-400"><path d="m9 18 6-6-6-6"></path></svg></div></div><div class="h-3 bg-gray-300 rounded mb-2"></div><div class="h-6 w-20 bg-gray-400 rounded"></div><div class="flex justify-center gap-1 mt-2"><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div><div class="w-1.5 h-1.5 bg-gray-300 rounded-full"></div></div>',4)),e.createElementVNode("div",SN,[e.createElementVNode("div",AN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",DN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},TN={class:"h-full flex flex-col"},LN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},$N={class:"text-xs font-medium text-gray-600"},FN={key:0,class:"text-xs text-gray-500"},IN={__name:"infoLine-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",TN,[l[0]||(l[0]=e.createStaticVNode('<div class="flex-1 bg-gray-200 rounded relative overflow-hidden"><div class="absolute inset-0 flex items-center"><div class="flex gap-8 whitespace-nowrap animate-pulse"><div class="h-3 bg-gray-400 rounded w-32"></div><div class="h-3 bg-gray-300 rounded w-24"></div><div class="h-3 bg-gray-400 rounded w-40"></div><div class="h-3 bg-gray-300 rounded w-28"></div><div class="h-3 bg-gray-400 rounded w-36"></div><div class="h-3 bg-gray-300 rounded w-20"></div></div></div><div class="absolute top-2 left-2 right-2 flex justify-between items-center"><div class="w-2 h-2 bg-gray-500 rounded-full"></div><div class="w-2 h-2 bg-gray-500 rounded-full"></div></div></div>',1)),e.createElementVNode("div",LN,[e.createElementVNode("div",$N,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",FN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},ON={class:"h-full flex flex-col"},PN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},RN={class:"text-xs font-medium text-gray-600"},UN={key:0,class:"text-xs text-gray-500"},jN={__name:"tabs-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",ON,[l[0]||(l[0]=e.createStaticVNode('<div class="h-2 bg-gray-300 rounded mb-2"></div><div class="flex gap-1 mb-3"><div class="h-4 w-16 bg-gray-400 rounded"></div><div class="h-4 w-16 bg-gray-200 rounded"></div></div><div class="space-y-2 flex-1"><div class="h-2 bg-gray-300 rounded w-5/6"></div><div class="h-2 bg-gray-300 rounded"></div><div class="space-y-1 mt-3"><div class="flex items-center gap-2"><div class="w-2 h-2 bg-gray-400 rounded-full"></div><div class="h-1.5 bg-gray-300 rounded w-20"></div></div><div class="flex items-center gap-2"><div class="w-2 h-2 bg-gray-400 rounded-full"></div><div class="h-1.5 bg-gray-300 rounded w-16"></div></div></div></div>',3)),e.createElementVNode("div",PN,[e.createElementVNode("div",RN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",UN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},zN={class:"h-full flex flex-col"},HN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},qN={class:"text-xs font-medium text-gray-600"},KN={key:0,class:"text-xs text-gray-500"},Pi={__name:"documents-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",zN,[l[0]||(l[0]=e.createStaticVNode('<div class="h-4 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5 flex-1"><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div><div class="flex items-center justify-between p-1.5 border-b border-gray-200"><div class="flex items-center gap-2"><div class="w-3 h-3 bg-gray-400 rounded-full"></div><div class="h-2 bg-gray-300 rounded flex-1 w-28"></div></div><div class="flex gap-1.5"><div class="w-3 h-3 bg-gray-200 rounded"></div><div class="w-3 h-3 bg-gray-200 rounded"></div></div></div></div>',2)),e.createElementVNode("div",HN,[e.createElementVNode("div",qN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",KN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},GN={class:"h-full flex flex-col"},WN={class:"flex justify-between items-center mt-2 pt-2 border-t border-gray-300"},YN={class:"text-xs font-medium text-gray-600"},XN={key:0,class:"text-xs text-gray-500"},sn={faq:YV,banner:Fi,slider:MN,video:_N,about:vN,cards:$i,usefulLinks:Oi,team:pN,news:Ii,form:nN,tabs:jN,vertical_tabs:Ii,documents:Pi,infoLine:IN,body:{__name:"body-skeleton",props:{text:{type:String,required:!0},count:{type:Number,required:!0}},setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",GN,[l[0]||(l[0]=e.createStaticVNode('<div class="grid grid-cols-3 gap-2 flex-1"><div class="flex flex-col"><div class="h-3 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div></div></div><div class="flex flex-col"><div class="h-3 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div></div></div><div class="flex flex-col"><div class="h-3 bg-gray-400 rounded mb-2"></div><div class="space-y-1.5"><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div><div class="h-4 bg-gray-200 rounded border border-gray-300 p-1.5"><div class="h-1.5 bg-gray-300 rounded w-3/4"></div></div></div></div></div>',1)),e.createElementVNode("div",WN,[e.createElementVNode("div",YN,e.toDisplayString(t.$t(r.text)),1),r.count&&r.count>0?(e.openBlock(),e.createElementBlock("div",XN,e.toDisplayString(r.count),1)):e.createCommentVNode("",!0)])]))}},photoGrid:$i,interested:Oi,contact:Pi,iframe:Fi},ZN={class:"grid grid-cols-1 md:grid-cols-1 lg:grid-cols-2 2xl:grid-cols-3 gap-4"},QN=["onClick"],JN={class:"wireframe-block h-[240px] !p-4 border-2 border-dashed bg-white relative overflow-hidden transition-all rounded-lg shadow-sm border-gray-300 hover:border-gray-400 cursor-pointer"},ev=["src"],tv={__name:"vs-form-reference-choce",props:{modelValue:{type:String,required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(r){const t=e.useModel(r,"modelValue");return(l,n)=>(e.openBlock(),e.createElementBlock("div",ZN,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(on),a=>(e.openBlock(),e.createElementBlock("div",{key:a.id,onClick:o=>t.value=a.id,class:"relative"},[e.createElementVNode("div",JN,[e.unref(sn)[a.id]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(sn)[a.id]),{key:0,text:a==null?void 0:a.text,count:(a==null?void 0:a.data)||0},null,8,["text","count"])):(e.openBlock(),e.createElementBlock("img",{key:1,src:e.unref(Ti),alt:"Team collaboration",class:"w-full h-full object-cover"},null,8,ev))])],8,QN))),128))]))}},rv={};function lv(r,t,l,n,a,o){const s=e.resolveComponent("vs-richtext");return e.openBlock(),e.createBlock(s,{class:"w-full"})}const Ta=Wt(rv,[["render",lv]]),nv={class:"flex gap-4"},av={class:"text-sm text-gray-500 dark:text-gray-400 border flex items-center h-10 px-4 rounded-lg w-full"},ov={class:"flex items-center justify-between w-full p-4 border-t border-gray-200 dark:border-gray-700"},sv={__name:"vs-form-reference-add",props:e.mergeModels({title:{type:String,required:!0}},{modelValue:{type:Array,default:()=>[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const{t}=Be();De["vs-input-reference"]=La,De["vs-input-tiptap-editor"]=Ta;const l=e.useModel(r,"modelValue"),n=e.ref(!1),a=e.ref({}),o=e.ref(null),s=e.ref({}),i=e.computed(()=>{var u;return((u=Li[o.value])==null?void 0:u.schema)||null}),c=async()=>{if(await a.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.builder.editFieldFailed")});return}try{Object.keys(s.value).length!==0&&(l.value=[...l.value||[],{...s.value,id:Math.random().toString(36).substring(2,15),reference_type:o.value}]),n.value=!1,o.value=null,s.value={}}catch(d){console.log(d)}};return e.watch(n,()=>{n.value||(o.value=null,s.value={})}),(u,d)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("button",{type:"button",class:"inline-flex items-center px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-md shadow-sm text-sm font-medium text-gray-700 dark:text-gray-200 bg-white dark:bg-gray-700 hover:bg-gray-50 dark:hover:bg-gray-600 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-sky-500",onClick:d[0]||(d[0]=m=>n.value=!n.value)},e.toDisplayString(u.$t("cms.builder.create")),1),e.createVNode(e.unref(xs),{visible:n.value,"onUpdate:visible":d[6]||(d[6]=m=>n.value=m),position:"right",closeClickBackdrop:!1,onClose:d[7]||(d[7]=m=>n.value=!1),title:o.value?u.$t("cms.builder."+o.value):u.$t("cms.builder.selectType"),size:"50vw"},{footer:e.withCtx(()=>[e.createElementVNode("div",ov,[e.createElementVNode("button",{onClick:d[5]||(d[5]=m=>n.value=!1),class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100"},e.toDisplayString(u.$t("cms.builder.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.builder.create")),1)])]),default:e.withCtx(()=>{var m;return[o.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",nv,[e.createElementVNode("div",av,[e.createElementVNode("span",null,e.toDisplayString((m=e.unref(on).find(f=>f.id===o.value))==null?void 0:m.text),1)]),e.createElementVNode("button",{class:"py-2.5 px-3 mb-4 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300",onClick:d[2]||(d[2]=f=>o.value=null)},e.toDisplayString(u.$t("cms.builder.changeType")),1)]),i.value?(e.openBlock(),e.createBlock(e.unref(He),{key:o.value,schema:i.value,modelValue:s.value,"onUpdate:modelValue":d[3]||(d[3]=f=>s.value=f),form:a.value,"onUpdate:form":d[4]||(d[4]=f=>a.value=f)},null,8,["schema","modelValue","form"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createBlock(tv,{key:0,modelValue:o.value,"onUpdate:modelValue":d[1]||(d[1]=f=>o.value=f),options:e.unref(on)},null,8,["modelValue","options"]))]}),_:1},8,["visible","title"])]))}},iv={class:"absolute top-2 right-2 opacity-0 group-hover:opacity-100 transition-opacity flex space-x-1 z-10"},cv={class:"flex items-center justify-between w-full p-4 border-t border-gray-200 dark:border-gray-700"},dv={__name:"vs-form-reference-controls",props:e.mergeModels({title:{type:String,required:!0}},{modelValue:{type:Object,default:()=>({})},modelModifiers:{},parent:{type:Array,default:()=>[]},parentModifiers:{}}),emits:["update:modelValue","update:parent"],setup(r){const{t}=Be(),l=e.useModel(r,"modelValue"),n=e.useModel(r,"parent"),a=e.ref(!1),o=e.ref({}),s=e.ref({}),i=e.computed(()=>{var u;return((u=Li[l.value.reference_type])==null?void 0:u.schema)||null});e.watch(a,u=>{u&&(o.value={...l.value})});const c=async()=>{try{if(await s.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.builder.editFieldFailed")});return}l.value={...o.value},a.value=!1}catch(u){console.log(u)}};return(u,d)=>(e.openBlock(),e.createElementBlock("div",iv,[e.createElementVNode("button",{onClick:d[0]||(d[0]=m=>a.value=!a.value),class:"p-1.5 bg-white dark:bg-gray-800 rounded shadow-sm hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors border border-gray-200 dark:border-gray-700"},[e.createVNode(e.unref(Nr),{class:"h-4 w-4 text-gray-400"})]),e.createElementVNode("button",{onClick:d[1]||(d[1]=m=>n.value=n.value.filter(f=>f.id!==l.value.id)),class:"p-1.5 bg-white dark:bg-gray-800 rounded shadow-sm hover:bg-red-50 dark:hover:bg-red-900/20 transition-colors border border-gray-200 dark:border-gray-700"},[e.createVNode(e.unref(Ht),{class:"h-4 w-4 text-red-500"})]),e.createVNode(e.unref(xs),{visible:a.value,"onUpdate:visible":d[5]||(d[5]=m=>a.value=m),onClose:d[6]||(d[6]=m=>a.value=!1),title:r.title,width:"50vw"},{footer:e.withCtx(()=>[e.createElementVNode("div",cv,[e.createElementVNode("button",{class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100",onClick:d[4]||(d[4]=m=>a.value=!1)},e.toDisplayString(u.$t("cms.common.actions.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.common.actions.save")),1)])]),default:e.withCtx(()=>[i.value?(e.openBlock(),e.createBlock(e.unref(He),{key:0,form:s.value,"onUpdate:form":d[2]||(d[2]=m=>s.value=m),schema:i.value,modelValue:o.value,"onUpdate:modelValue":d[3]||(d[3]=m=>o.value=m),class:"-mr-[10px] ml-[10px] mt-[10px]"},null,8,["form","schema","modelValue"])):e.createCommentVNode("",!0)]),_:1},8,["visible","title"])]))}},uv={class:"w-full"},mv={key:0,class:"relative"},pv={class:"group wireframe-block h-[280px] !p-4 border-2 border-dashed bg-white relative overflow-hidden transition-all rounded-lg shadow-sm border-gray-00 hover:border-gray-400 cursor-grab"},fv=["src"],La={__name:"vs-form-reference-list",props:e.mergeModels({reference_type:{type:String,required:!0},title:{type:String,required:!0}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=a=>{var o;return(o=on.find(s=>s.id===a))==null?void 0:o.text},l=e.useModel(r,"modelValue"),n=e.computed({get(){const a=l.value;return a==null?[]:Array.isArray(a)?a:[]},set(a){l.value=Array.isArray(a)?a:[]}});return e.watch(l,a=>{a!=null&&!Array.isArray(a)&&(l.value=[])},{immediate:!0}),(a,o)=>{var s;return e.openBlock(),e.createElementBlock("div",uv,[((s=n.value)==null?void 0:s.length)>0?(e.openBlock(),e.createBlock(e.unref(Da),{key:0,modelValue:n.value,"onUpdate:modelValue":o[1]||(o[1]=i=>n.value=i),"item-key":"id",handle:".drag-handle",class:"grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-4"},{item:e.withCtx(({element:i,index:c})=>[i!=null&&i.reference_type?(e.openBlock(),e.createElementBlock("div",mv,[e.createElementVNode("div",pv,[(e.openBlock(),e.createElementBlock("div",{key:i.id,class:"absolute top-2 left-2 opacity-0 group-hover:opacity-100 border border-gray-200 dark:border-gray-700 transition-opacity cursor-move z-10 bg-white dark:bg-gray-800 rounded p-1 shadow-sm drag-handle"},[e.createVNode(e.unref(Qa),{class:"h-4 w-4 text-gray-400"})])),e.createVNode(dv,{title:a.$t("cms.builder."+(i==null?void 0:i.reference_type)),modelValue:n.value[c],"onUpdate:modelValue":u=>n.value[c]=u,parent:n.value,"onUpdate:parent":o[0]||(o[0]=u=>n.value=u)},null,8,["title","modelValue","onUpdate:modelValue","parent"]),e.unref(sn)[i==null?void 0:i.reference_type]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(sn)[i==null?void 0:i.reference_type]),{key:0,index:c,text:t(i==null?void 0:i.reference_type),count:Array.isArray(i==null?void 0:i.data)?i.data.length:0},null,8,["index","text","count"])):(e.openBlock(),e.createElementBlock("img",{key:1,src:e.unref(Ti),alt:"Team collaboration",class:"w-full h-full object-cover"},null,8,fv))])])):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),e.createVNode(sv,{class:"mt-4",title:r.title,modelValue:n.value,"onUpdate:modelValue":o[2]||(o[2]=i=>n.value=i)},null,8,["title","modelValue"])])}}};function Ri(r){if(r===0)return"0 Bytes";const t=1024,l=["Bytes","KB","MB","GB","TB"],n=Math.floor(Math.log(r)/Math.log(t));return Number.parseFloat((r/Math.pow(t,n)).toFixed(2))+" "+l[n]}function hv(r){const t=new Date(r);return isNaN(t.getTime())?"":t.toISOString().slice(0,10)}const gv={__name:"TypeTag",props:{type:{type:String,required:!0}},setup(r){const t=new Map([["document","bg-blue-100 text-blue-800 border-blue-200 dark:bg-blue-900/30 dark:text-blue-300 dark:border-blue-700"],["image","bg-green-100 text-green-800 border-green-200 dark:bg-green-900/30 dark:text-green-300 dark:border-green-700"],["video","bg-purple-100 text-purple-800 border-purple-200 dark:bg-purple-900/30 dark:text-purple-300 dark:border-purple-700"]]);return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors shadow-lg backdrop-blur-sm",e.unref(t).get(r.type)])},e.toDisplayString(r.type),3))}},yv={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6 max-h-[calc(100%-130px)] overflow-y-auto px-2 pt-2 pb-5"},bv={key:0,class:"flex flex-col items-center justify-center h-64 text-muted-foreground col-span-full"},kv=["onClick"],xv=["onClick"],wv={class:"truncate font-medium text-slate-800 dark:text-slate-100 mb-2"},_v={class:"text-sm text-slate-500 dark:text-slate-400"},Ev=["onClick"],Cv={class:"p-0"},Vv={class:"aspect-video bg-slate-100 dark:bg-slate-700 rounded-t-lg overflow-hidden relative"},Nv={class:"w-full h-full flex items-center justify-center bg-gradient-to-br from-slate-100 to-slate-200 dark:from-slate-700 dark:to-slate-800"},vv={key:0,class:"relative w-full"},Bv=["src","alt"],Sv={class:"p-4"},Av={class:"flex items-center justify-between mb-2"},Dv={class:"font-medium text-slate-800 dark:text-slate-100 truncate flex-1 mr-2"},Mv={class:"space-y-1 text-sm text-slate-500 dark:text-slate-400"},Tv={class:"flex justify-between"},Lv={class:"flex justify-between"},$v={__name:"MediaGrid",props:{files:{type:Array,required:!0},selectedFile:{type:Object,default:null},selectedFiles:{type:Array,default:()=>[]},isDeleteButton:{type:Boolean,default:!1}},emits:["delete-file","file-click","delete-folder"],setup(r,{emit:t}){Be();const l=r,n=e.ref([]),a=e.ref(null),o=i=>{if(!i)return"";const c=new Date(i);return isNaN(c.getTime())?"":c.toISOString().slice(0,10)},s=()=>{n.value=l.files.sort((i,c)=>i.type==="dir"&&c.type!=="dir"?-1:i.type!=="dir"&&c.type==="dir"?1:0)};return e.onMounted(()=>s()),e.onUpdated(()=>s()),(i,c)=>{var u;return e.openBlock(),e.createElementBlock("div",yv,[((u=r.files)==null?void 0:u.length)===0?(e.openBlock(),e.createElementBlock("div",bv,[e.createVNode(e.unref(Cr),{class:"w-12 h-12 mb-2"}),e.createElementVNode("p",null,e.toDisplayString(i.$t("cms.noFilesInFolder")),1)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,d=>{var m;return e.openBlock(),e.createElementBlock(e.Fragment,{key:d==null?void 0:d.url},[(d==null?void 0:d.type)==="dir"?(e.openBlock(),e.createElementBlock("div",{key:0,class:"p-6 text-center rounded-xl h-[fit-content] relative text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-200 transform hover:scale-105 cursor-pointer",onClick:f=>i.$emit("file-click",d)},[r.isDeleteButton?(e.openBlock(),e.createElementBlock("div",{key:0,onClick:e.withModifiers(f=>{a.value=d},["stop"]),class:"absolute top-4 right-4 p-1 border border-gray-300 dark:border-slate-700 rounded-lg cursor-pointer hover:bg-gray-200 dark:hover:bg-slate-700 group"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4 text-gray-500 group-hover:text-red-500"})],8,xv)):e.createCommentVNode("",!0),e.createVNode(e.unref(Za),{class:"w-16 h-16 mx-auto mb-4 text-blue-600"}),e.createElementVNode("h3",wv,e.toDisplayString(d==null?void 0:d.name),1),e.createElementVNode("p",_v,e.toDisplayString(d==null?void 0:d.count)+" "+e.toDisplayString(i.$t("cms.media.files")),1)],8,kv)):(d==null?void 0:d.type)==="file"?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["h-[fit-content] rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm hover:shadow-xl transition-all duration-200 transform hover:scale-105 group cursor-pointer",{"bg-accent text-accent-foreground ring-2 ring-primary":((m=r.selectedFile)==null?void 0:m.url)===(d==null?void 0:d.url)||r.selectedFiles&&r.selectedFiles.some(f=>f.id===d.id)}]),onClick:f=>i.$emit("file-click",d)},[e.createElementVNode("div",Cv,[e.createElementVNode("div",Vv,[e.createElementVNode("div",Nv,[(d==null?void 0:d.filetype)==="image"&&(d!=null&&d.filepath||d!=null&&d.url)?(e.openBlock(),e.createElementBlock("div",vv,[e.createElementVNode("img",{src:d==null?void 0:d.preview,alt:(d==null?void 0:d.alt)||(d==null?void 0:d.filename),class:"object-cover w-full h-full rounded text-xs"},null,8,Bv)])):(e.openBlock(),e.createBlock(e.unref(Hr),{key:1,class:"w-12 h-12 text-gray-500"}))])]),e.createElementVNode("div",Sv,[e.createElementVNode("div",Av,[e.createElementVNode("h3",Dv,e.toDisplayString(d.filename),1),e.createVNode(gv,{type:d==null?void 0:d.filetype},null,8,["type"])]),e.createElementVNode("div",Mv,[e.createElementVNode("div",Tv,[e.createElementVNode("span",null,e.toDisplayString(i.$t("cms.media.size"))+":",1),e.createElementVNode("span",null,e.toDisplayString(e.unref(Ri)(d.filesize)),1)]),e.createElementVNode("div",Lv,[e.createElementVNode("span",null,e.toDisplayString(i.$t("cms.media.uploaded"))+":",1),e.createElementVNode("span",null,e.toDisplayString(o(d.created_at)),1)])])])])],10,Ev)):e.createCommentVNode("",!0)],64)}),128))])}}},Fv={},Iv={"aria-hidden":"true",focusable:"false",role:"img",viewBox:"0 0 16 16",width:"16",height:"16",fill:"currentColor"};function Ov(r,t){return e.openBlock(),e.createElementBlock("svg",Iv,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"M.513 1.513A1.75 1.75 0 0 1 1.75 1h3.5c.55 0 1.07.26 1.4.7l.9 1.2a.25.25 0 0 0 .2.1H 13a1 1 0 0 1 1 1v.5H2.75a.75.75 0 0 0 0 1.5h11.978a1 1 0 0 1 .994 1.117L15 13.25A1.75 1.75 0 0 1 13.25 15H1.75A1.75 1.75 0 0 1 0 13.25V2.75c0-.464.184-.91.513-1.237Z"},null,-1),e.createElementVNode("path",{d:"M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1H1.75Z"},null,-1)])])}const Pv=Wt(Fv,[["render",Ov]]),Rv={},Uv={"aria-hidden":"true",focusable:"false",role:"img",viewBox:"0 0 16 16",width:"16",height:"16",fill:"currentColor"};function jv(r,t){return e.openBlock(),e.createElementBlock("svg",Uv,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"M.513 1.513A1.75 1.75 0 0 1 1.75 1h3.5c.55 0 1.07.26 1.4.7l.9 1.2a.25.25 0 0 0 .2.1H 13a1 1 0 0 1 1 1v.5H2.75a.75.75 0 0 0 0 1.5h11.978a1 1 0 0 1 .994 1.117L15 13.25A1.75 1.75 0 0 1 13.25 15H1.75A1.75 1.75 0 0 1 0 13.25V2.75c0-.464.184-.91.513-1.237Z"},null,-1),e.createElementVNode("path",{d:"M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1H1.75Z"},null,-1)])])}const zv=Wt(Rv,[["render",jv]]),Hv={key:0,class:"flex flex-col items-center justify-center h-64 text-muted-foreground"},qv={key:1,class:"w-full text-sm caption-bottom"},Kv={class:"[&_tr]:border-b"},Gv={class:"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted"},Wv={class:"h-12 px-4 text-left align-middle font-medium text-muted-foreground w-[300px]"},Yv={class:"h-12 px-4 font-medium text-left align-middle text-muted-foreground"},Xv={class:"h-12 px-4 font-medium text-left align-middle text-muted-foreground"},Zv={class:"hidden h-12 px-4 font-medium text-left align-middle text-muted-foreground md:table-cell"},Qv={class:"[&_tr:last-child]:border-0"},Jv=["onClick"],eB={class:"p-4 font-medium align-middle"},tB={class:"flex items-center gap-2"},rB={key:1,class:"relative w-8 h-8"},lB=["src","alt"],nB={class:"truncate max-w-[200px]"},aB={class:"p-4 align-middle"},oB={class:"p-4 align-middle"},sB={class:"hidden p-4 align-middle md:table-cell"},iB={key:0},cB={__name:"MediaList",props:{files:{type:Array,required:!0},selectedFile:{type:Object,default:null},selectedFiles:{type:Array,default:()=>[]}},emits:["file-click","delete-folder"],setup(r,{emit:t}){const{t:l}=Be(),n=e.ref(null),a=t,o=()=>{Jr({title:l("cms.builder.deleteTitle"),message:l("cms.builder.deleteObject"),type:"error",onConfirm:()=>{s()}})},s=()=>{a("delete-folder",n.value)};return(i,c)=>{const u=e.resolveComponent("File");return e.openBlock(),e.createElementBlock("div",null,[r.files.length===0?(e.openBlock(),e.createElementBlock("div",Hv,[e.createVNode(u,{class:"w-12 h-12 mb-2"}),e.createElementVNode("p",null,e.toDisplayString(i.$t("cms.media.noFilesInFolder")),1)])):(e.openBlock(),e.createElementBlock("table",qv,[e.createElementVNode("thead",Kv,[e.createElementVNode("tr",Gv,[e.createElementVNode("th",Wv,e.toDisplayString(i.$t("cms.media.name")),1),e.createElementVNode("th",Yv,e.toDisplayString(i.$t("cms.media.type")),1),e.createElementVNode("th",Xv,e.toDisplayString(i.$t("cms.media.size")),1),e.createElementVNode("th",Zv,e.toDisplayString(i.$t("cms.media.updatedAt")),1),c[0]||(c[0]=e.createElementVNode("th",null,null,-1))])]),e.createElementVNode("tbody",Qv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.files,d=>{var m,f,p,h,g;return e.openBlock(),e.createElementBlock("tr",{key:d.id,class:e.normalizeClass(["border-b transition-colors hover:bg-blue-200/50 data-[state=selected]:bg-muted cursor-pointer",{"bg-blue-200":((m=n.value)==null?void 0:m.id)===d.id&&((f=n.value)==null?void 0:f.type)===d.type||r.selectedFiles&&r.selectedFiles.some(y=>y.id===d.id&&y.type===d.type)}]),onClick:y=>i.$emit("cms.file-click",d)},[e.createElementVNode("td",eB,[e.createElementVNode("div",tB,[d.type==="dir"?(e.openBlock(),e.createBlock(Pv,{key:0,class:"w-5 h-5 text-blue-500"})):(d==null?void 0:d.filetype)==="image"&&(d!=null&&d.filepath)?(e.openBlock(),e.createElementBlock("div",rB,[e.createElementVNode("img",{src:d==null?void 0:d.preview,alt:(d==null?void 0:d.alt)||(d==null?void 0:d.filename),class:"object-cover w-full h-full rounded"},null,8,lB)])):(d==null?void 0:d.filetype)==="image"?(e.openBlock(),e.createBlock(zv,{key:2,class:"w-5 h-5 text-green-500"})):(e.openBlock(),e.createBlock(u,{key:3,class:"w-5 h-5 text-gray-500"})),e.createElementVNode("span",nB,e.toDisplayString((d==null?void 0:d.filename)||(d==null?void 0:d.name)),1)])]),e.createElementVNode("td",aB,e.toDisplayString((d==null?void 0:d.type)==="dir"?i.$t("cms.media.folder"):((h=(p=d==null?void 0:d.filetype)==null?void 0:p.charAt(0))==null?void 0:h.toUpperCase())+((g=d==null?void 0:d.filetype)==null?void 0:g.slice(1))),1),e.createElementVNode("td",oB,e.toDisplayString((d==null?void 0:d.type)==="dir"?"--":e.unref(Ri)(d==null?void 0:d.filesize)),1),e.createElementVNode("td",sB,e.toDisplayString(d!=null&&d.updated_at?e.unref(hv)(d==null?void 0:d.updated_at):"--"),1),d.type==="dir"?(e.openBlock(),e.createElementBlock("td",iB,[e.createVNode(e.unref(Ht),{class:"w-4 h-4 text-red-500 cursor-pointer",onClick:e.withModifiers(o,["stop"])},null,8,["onClick"])])):e.createCommentVNode("",!0)],10,Jv)}),128))])]))])}}},dB={},uB={xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"};function mB(r,t){return e.openBlock(),e.createElementBlock("svg",uB,[...t[0]||(t[0]=[e.createElementVNode("path",{d:"m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"},null,-1),e.createElementVNode("polyline",{points:"9 22 9 12 15 12 15 22"},null,-1)])])}const pB=Wt(dB,[["render",mB]]),fB={class:"flex items-center space-x-1"},hB=["onClick"],gB={__name:"MediaBreadcrumb",props:{currentPath:{type:Array,required:!0}},emits:["navigate"],setup(r){return(t,l)=>(e.openBlock(),e.createElementBlock("div",fB,[e.createElementVNode("button",{class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium transition-all duration-200 text-blue-600 dark:text-blue-400 bg-blue-50 dark:bg-blue-900/20",onClick:l[0]||(l[0]=n=>t.$emit("navigate",[]))},[e.createVNode(pB,{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(t.$t("cms.media.mediaLibrary")),1)]),r.currentPath.length>0?(e.openBlock(),e.createBlock(e.unref(Er),{key:0,class:"w-3 h-3 text-slate-400 dark:text-slate-500"})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.currentPath,(n,a)=>(e.openBlock(),e.createElementBlock("button",{key:a,class:"flex gap-x-1 items-center px-2 py-1 rounded text-sm font-medium transition-all duration-200 text-blue-700 dark:text-blue-300 bg-blue-50 dark:bg-blue-900/20",onClick:o=>t.$emit("navigate",r.currentPath.slice(0,a+1))},[e.createVNode(e.unref(Za),{class:"w-3 h-3"}),e.createTextVNode(" "+e.toDisplayString(n)+" ",1),a<r.currentPath.length-1?(e.openBlock(),e.createBlock(e.unref(Er),{key:0,class:"w-3 h-3 text-slate-400 dark:text-slate-500"})):e.createCommentVNode("",!0)],8,hB))),128))]))}},yB=["src"],bB={class:"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity rounded-lg gap-2"},kB=["onClick"],xB=["onClick"],wB=["title"],_B={key:1,class:"relative group"},EB=["src"],CB={class:"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity rounded-lg gap-2"},VB=["title"],NB={key:2,class:"absolute inset-0 bg-white bg-opacity-75 flex items-center justify-center rounded-lg z-10"},vB={class:"flex flex-col items-center gap-2"},BB={class:"text-xs text-gray-600"},SB=["multiple","disabled"],AB={class:"whitespace-nowrap text-sm"},DB={class:"whitespace-nowrap text-sm"},MB={class:"flex items-center justify-between p-4 border-b"},TB={class:"text-lg font-semibold"},LB={class:"flex items-center justify-between gap-4 p-4 border-b"},$B={class:"relative z-[1] rounded-xl text-card-foreground shadow-lg border-0 bg-white dark:bg-slate-800 backdrop-blur-sm mb-6 p-4 mx-4"},FB={class:"flex items-center justify-between gap-4"},IB={class:"flex items-center gap-4 flex-1"},OB={class:"relative flex-1 max-w-md"},PB=["placeholder"],RB={class:"flex items-center gap-2 relative"},UB={class:"text-xs font-bold"},jB={class:"text-xs font-bold"},zB={key:0,class:"w-full absolute top-full left-1/2 transform -translate-x-1/2 mt-2 z-50 bg-white dark:bg-slate-700 flex flex-col items-start border border-slate-200 dark:border-slate-600 rounded-md shadow-lg"},HB={class:"flex items-center gap-2"},qB={class:"flex flex-col gap-4 overflow-y-auto p-4 flex-1"},KB={class:"p-4 border-t flex items-center justify-between"},GB={key:0,class:"text-sm text-gray-600 dark:text-gray-400"},WB={key:1},YB=["disabled"],Pr={__name:"vs-form-media-select",props:e.mergeModels({multiple:{type:Boolean,default:!1},multi:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(r,{emit:t}){const{t:l}=Be(),n=qe.useRoute(),a=qe.useRouter(),o=e.useModel(r,"modelValue"),s=t,i=r,c=e.computed(()=>i.multiple||i.multi),u=e.ref(null),d=e.computed(()=>o.value||u.value),m=e.computed(()=>{if(!c.value)return[];const U=d.value;return U?Array.isArray(U)?U:[U]:[]}),f=e.computed(()=>d.value?typeof d.value=="object"?d.value.filename||d.value.file_name||d.value.native_file_name||"File":typeof d.value=="string"?d.value.split("cms./").pop()||d.value:"File":""),p=e.ref(!1),h=e.ref(!1),g=e.ref("grid"),y=e.ref([]),b=e.ref([]),w=e.ref([]),x=e.ref(),k=e.ref([]),_=e.ref(null),N=e.ref(!1),V=e.ref(null),P=e.ref(null),$=e.ref({}),M=e.ref(""),D=e.ref(!1),q=e.ref("name"),Q=new Map([["name",l("cms.media.sortBy.name")],["filesize",l("cms.media.sortBy.filesize")]]),R=U=>typeof U=="string"?U:(U==null?void 0:U.filepath)||(U==null?void 0:U.file_path)||U,I=U=>U?typeof U=="string"?U.split("cms./").pop()||U:U.filename||U.file_name||U.native_file_name||"File":"",F=U=>typeof U=="string"?U:(U==null?void 0:U.preview)||`/file/resize?filepath=${R(U)}&h=137&quality=75`,A=()=>{_.value&&_.value.click()},z=()=>{p.value=!p.value,p.value&&ee()},ee=()=>{if(V.value){const U=V.value.getBoundingClientRect();$.value={top:`${U.bottom+10}px`,left:`${U.left+U.width/2}px`,transform:"translateX(-50%)",width:"200px"}}},pe=U=>{var Y;if(U.type==="dir")Ze([...y.value,U.name]);else if(c.value){const re=k.value.findIndex(le=>le.id===U.id);re>=0?k.value.splice(re,1):k.value.push(U)}else x.value=U.id===((Y=x.value)==null?void 0:Y.id)?null:U},Ne=U=>{q.value=U,D.value=!1,b.value=b.value.sort((Y,re)=>{var le;if((Y==null?void 0:Y.type)==="dir")return-1;if(U==="name")return(le=Y==null?void 0:Y.name)==null?void 0:le.localeCompare(re==null?void 0:re.name);if(U==="filesize")return(re==null?void 0:re.filesize)-(Y==null?void 0:Y.filesize)})},Xe=async()=>{try{const U=y.value.join("/"),re=await(await fetch(`/api/cms-media?subdir=${U}${M.value?"&search="+M.value:""}`,{method:"GET"})).json();re.data?(b.value=re.data.map(le=>({...le,id:le.type==="dir"?`dir-${le.name}`:le.id,preview:`/file/resize?filepath=${le.filepath}&h=137&quality=75`})),Ne(q.value)):b.value=[]}catch(U){console.error("Search error:",U),b.value=[]}},Jt=()=>{if(c.value){if(k.value.length>0){const U=Array.isArray(o.value)?[...o.value]:o.value?[o.value]:[],Y=Array.isArray(u.value)?[...u.value]:u.value?[u.value]:[];k.value.forEach(re=>{const le=re.filepath||re.file_path;U.some(ue=>(typeof ue=="string"?ue:(ue==null?void 0:ue.filepath)||(ue==null?void 0:ue.file_path))===le)||(U.push(le),Y.push(re))}),o&&(o.value=U),u.value=Y,s("cms.change",U),k.value=[]}}else if(x.value){const U=x.value.filepath||x.value.file_path;o&&(o.value=U),u.value=x.value,s("cms.change",U),x.value=null}Re()},Re=()=>{h.value=!1},Ze=U=>{y.value=U,w.value=[...w.value,U],x.value=null,c.value&&(k.value=[]),xt()},At=()=>{w.value.length>1&&(w.value.pop(),y.value=w.value[w.value.length-1],x.value=null,c.value&&(k.value=[]),xt())},xt=async()=>{try{const U=y.value.join("/"),re=await(await fetch(`/api/cms-media?subdir=${U}${M.value?"&search="+M.value:""}`,{method:"GET"})).json();re.data?(b.value=re.data.map(le=>({...le,id:le.type==="dir"?`dir-${le.name}`:le.id,preview:`/file/resize?filepath=${le.filepath}&h=137&quality=75`})),Ne(q.value)):b.value=[]}catch(U){console.error("Fetch error:",U),b.value=[]}},Nt=async(U,Y)=>{try{const re=typeof U=="string"?U:R(U);if(await fetch(`/file/delete${re}`),c.value){const le=Array.isArray(o.value)?[...o.value]:[],ue=Array.isArray(u.value)?[...u.value]:[];if(Y!==void 0&&Y>=0)le.splice(Y,1),ue.splice(Y,1);else{const Te=le.findIndex(C=>(typeof C=="string"?C:(C==null?void 0:C.filepath)||(C==null?void 0:C.file_path))===re);Te>=0&&(le.splice(Te,1),ue.splice(Te,1))}o&&(o.value=le.length>0?le:null),u.value=ue.length>0?ue:null,s("cms.change",le.length>0?le:null)}else o&&(o.value=null),u.value=null,s("cms.change",null);return!0}catch(re){return console.error(re),!1}},jt=async U=>{try{const Y=await fetch(`/file/download/files/uploads${U}`),re=await Y.arrayBuffer(),le=Y.headers["content-type"],ue=new TextDecoder("utf-8").decode(re),Te=new Blob([ue],{type:le}),C=document.createElement("cms.a");C.setAttribute("download",U),C.href=window.URL.createObjectURL(Te),C.click()}catch(Y){console.error(Y.message)}},ot=async U=>{if(!U.target.files||U.target.files.length===0)return;const Y=Array.from(U.target.files);console.log("Uploading files:",Y),N.value=!0;try{const re=[];for(const le of Y){const ue=new FormData;ue.append("file",le);const Te=await fetch("/file/upload/uploads?id=1&form=form&table=table",{method:"POST",body:ue});if(!Te.ok)throw new Error(`Upload failed: ${Te.status}`);const C=await Te.json();console.log("Upload result:",C);const v=C.result,H={file_id:v.file_id,file_name:v.file_name,file_path:v.file_path,filepath:v.file_path,format:v.format,size:v.size,entity_id:v.entity_id,dir:v.dir,native_file_name:v.native_file_name,preview:`/file/resize?filepath=${v.file_path}&h=137&quality=75`};re.push(H)}if(c.value){const le=Array.isArray(o.value)?[...o.value]:o.value?[o.value]:[],ue=Array.isArray(u.value)?[...u.value]:u.value?[u.value]:[];re.forEach(Te=>{le.push(Te.file_path),ue.push(Te)}),o&&(o.value=le),u.value=ue,s("cms.change",le)}else{const le=re[0];o&&(o.value=le.file_path),u.value=le,s("cms.change",le.file_path)}p.value=!1}catch(re){console.error("Upload error:",re),alert("cms.Помилка завантаження файлу: "+re.message)}finally{N.value=!1}U.target.value=""};e.watch(h,U=>{U&&xt()}),e.watch(y,U=>{U.length>0?a.push({query:{path:U.join("/")}}):a.push({query:{path:void 0}})});let ct;return e.watch(M,U=>{clearTimeout(ct),ct=setTimeout(()=>{Xe()},500)}),e.watch(o,U=>{var Y,re,le,ue;if(U&&typeof U=="object"){const Te=((Y=x.value)==null?void 0:Y.filepath)||((re=x.value)==null?void 0:re.file_path);U.filepath!==Te&&U.file_path!==Te&&(x.value=null)}else if(U&&typeof U=="string"){const Te=((le=x.value)==null?void 0:le.filepath)||((ue=x.value)==null?void 0:ue.file_path);U!==Te&&(x.value=null)}}),e.onMounted(()=>{var Y,re;y.value=((re=(Y=n.query)==null?void 0:Y.path)==null?void 0:re.split("cms./"))||[],w.value=[[]],o.value||(x.value=null);const U=le=>{var ue;p.value&&!((ue=V.value)!=null&&ue.contains(le.target))&&(p.value=!1),D.value&&P.value&&!P.value.contains(le.target)&&(D.value=!1)};document.addEventListener("click",U)}),(U,Y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",e.mergeProps(U.$attrs,{class:"flex gap-4 flex-wrap"}),[c.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(m.value,(re,le)=>(e.openBlock(),e.createElementBlock("div",{key:le,class:"relative group"},[e.createElementVNode("img",{src:F(re),alt:"Selected File",class:"w-32 h-32 object-cover rounded-lg"},null,8,yB),e.createElementVNode("div",bB,[e.createElementVNode("button",{type:"button",onClick:ue=>Nt(re,le),class:"p-2 rounded-full bg-red-500 text-white hover:bg-red-600 transition-colors"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4"})],8,kB),e.createElementVNode("button",{type:"button",onClick:ue=>jt(R(re)),class:"p-2 rounded-full bg-blue-500 text-white hover:bg-blue-600 transition-colors"},[e.createVNode(e.unref(gn),{class:"w-4 h-4"})],8,xB)]),e.createElementVNode("div",{class:"absolute bottom-full left-0 mb-2 px-3 py-1.5 bg-gray-900 text-white text-xs rounded-lg opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap z-10 max-w-[200px] truncate",title:I(re)},[e.createTextVNode(e.toDisplayString(I(re))+" ",1),Y[12]||(Y[12]=e.createElementVNode("div",{class:"absolute top-full left-4 border-4 border-transparent border-t-gray-900"},null,-1))],8,wB)]))),128)):d.value?(e.openBlock(),e.createElementBlock("div",_B,[e.createElementVNode("img",{src:d.value.preview||d.value,alt:"Selected File",class:"w-32 h-32 object-cover rounded-lg"},null,8,EB),e.createElementVNode("div",CB,[e.createElementVNode("button",{type:"button",onClick:Y[0]||(Y[0]=re=>{var le,ue;return Nt(((le=d.value)==null?void 0:le.filepath)||((ue=d.value)==null?void 0:ue.file_path)||d.value)}),class:"p-2 rounded-full bg-red-500 text-white hover:bg-red-600 transition-colors"},[e.createVNode(e.unref(Ht),{class:"w-4 h-4"})]),e.createElementVNode("button",{type:"button",onClick:Y[1]||(Y[1]=re=>{var le,ue;return jt(((le=d.value)==null?void 0:le.filepath)||((ue=d.value)==null?void 0:ue.file_path)||d.value)}),class:"p-2 rounded-full bg-blue-500 text-white hover:bg-blue-600 transition-colors"},[e.createVNode(e.unref(gn),{class:"w-4 h-4"})])]),e.createElementVNode("div",{class:"absolute bottom-full left-0 mb-2 px-3 py-1.5 bg-gray-900 text-white text-xs rounded-lg opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap z-10 max-w-[200px] truncate",title:f.value},[e.createTextVNode(e.toDisplayString(f.value)+" ",1),Y[13]||(Y[13]=e.createElementVNode("div",{class:"absolute top-full left-4 border-4 border-transparent border-t-gray-900"},null,-1))],8,VB)])):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"triggerButton",ref:V,class:e.normalizeClass(["relative w-32 h-32 flex items-center justify-center border border-dotted border-gray-300 rounded-lg hover:border-blue-500 hover:bg-blue-500/10 hover:cursor-pointer transition-all",{"border-blue-500 bg-blue-500/10":p.value,"opacity-50 cursor-not-allowed":N.value}]),onClick:z},[N.value?(e.openBlock(),e.createBlock(e.unref(bn),{key:0,class:"w-4 h-4 animate-spin text-blue-500"})):(e.openBlock(),e.createBlock(e.unref(zt),{key:1,class:"w-4 h-4"})),N.value?(e.openBlock(),e.createElementBlock("div",NB,[e.createElementVNode("div",vB,[e.createVNode(e.unref(bn),{class:"w-6 h-6 animate-spin text-blue-500"}),e.createElementVNode("span",BB,e.toDisplayString(U.$t("cms.media.uploading")),1)])])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[p.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed bg-white z-50 border border-gray-200 rounded-lg shadow-lg flex flex-col items-center justify-center",style:e.normalizeStyle($.value)},[e.createElementVNode("div",{class:e.normalizeClass(["relative overflow-hidden flex justify-start items-center w-full gap-2 p-4 hover:bg-blue-50 text-blue-700 border hover:border-blue-200 dark:bg-slate-700 dark:text-slate-100 hover:cursor-pointer",{"opacity-50 cursor-not-allowed":N.value}]),onClick:Y[3]||(Y[3]=re=>!N.value&&A())},[e.createElementVNode("input",{type:"file",ref_key:"fileInput",ref:_,class:"absolute justify-center bottom-0 left-0 w-full opacity-0",onChange:ot,onClick:Y[2]||(Y[2]=e.withModifiers(()=>{},["stop"])),multiple:c.value,disabled:N.value},null,40,SB),N.value?(e.openBlock(),e.createBlock(e.unref(bn),{key:0,class:"w-4 h-4 animate-spin"})):(e.openBlock(),e.createBlock(e.unref(gn),{key:1})),e.createElementVNode("span",AB,e.toDisplayString(N.value?U.$t("cms.media.uploading"):U.$t("cms.media.upload")),1)],2),e.createElementVNode("div",{onClick:Y[4]||(Y[4]=re=>h.value=!0),class:"flex justify-start items-center w-full gap-2 p-4 hover:bg-blue-50 text-blue-700 border hover:border-blue-200 dark:bg-slate-700 dark:text-slate-100 hover:cursor-pointer"},[e.createVNode(e.unref(Vl)),e.createElementVNode("span",DB,e.toDisplayString(U.$t("cms.media.selectFromMedia")),1)])],4)):e.createCommentVNode("",!0)]))],2)],16),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[h.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50",onClick:Re},[e.createElementVNode("div",{class:"bg-white rounded-lg shadow-xl max-w-4xl w-full mx-4 max-h-[90vh] flex flex-col",onClick:Y[11]||(Y[11]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",MB,[e.createElementVNode("h3",TB,e.toDisplayString(U.$t("cms.media.selectFiles")),1),e.createElementVNode("button",{onClick:Re,class:"text-gray-400 hover:text-gray-600"},[...Y[14]||(Y[14]=[e.createElementVNode("svg",{class:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])]),e.createElementVNode("div",LB,[e.createVNode(gB,{"current-path":y.value,onNavigate:Ze,onNavigateBack:At},null,8,["current-path"])]),e.createElementVNode("div",$B,[e.createElementVNode("div",FB,[e.createElementVNode("div",IB,[e.createElementVNode("div",OB,[e.createVNode(e.unref(wn),{class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-slate-400 dark:text-slate-500"}),e.withDirectives(e.createElementVNode("input",{type:"text",placeholder:U.$t("cms.media.search"),class:"w-full pl-10 pr-4 py-2 text-sm border border-slate-200 dark:border-slate-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent bg-white dark:bg-slate-700 text-slate-700 dark:text-slate-200 placeholder-slate-400 dark:placeholder-slate-500","onUpdate:modelValue":Y[5]||(Y[5]=re=>M.value=re)},null,8,PB),[[e.vModelText,M.value]])]),e.createElementVNode("div",RB,[e.createElementVNode("span",UB,e.toDisplayString(U.$t("cms.media.sortBy.title")+": "),1),e.createElementVNode("button",{ref_key:"sortByButton",ref:P,class:"relative z-[1000] inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors border shadow-sm h-8 rounded-md px-3 text-xs bg-white border-slate-300 text-slate-700 disabled:pointer-events-none disabled:opacity-50 hover:text-accent-foreground hover:bg-slate-50 dark:bg-slate-700 dark:border-slate-600 dark:text-slate-300 dark:hover:bg-slate-600",onClick:Y[8]||(Y[8]=re=>D.value=!D.value)},[e.createVNode(e.unref(Xa),{class:"w-4 h-4"}),e.createElementVNode("span",jB,e.toDisplayString(e.unref(Q).get(q.value)),1),D.value?(e.openBlock(),e.createElementBlock("div",zB,[e.createElementVNode("span",{class:"text-left text-xs font-bold w-full p-2 hover:bg-slate-100 dark:hover:bg-slate-600 border-b border-slate-200 dark:border-slate-600 cursor-pointer",onClick:Y[6]||(Y[6]=e.withModifiers(re=>Ne("name"),["stop"]))},e.toDisplayString(U.$t("cms.media.sortBy.name")),1),e.createElementVNode("span",{class:"text-left text-xs font-bold w-full p-2 hover:bg-slate-100 dark:hover:bg-slate-600 cursor-pointer",onClick:Y[7]||(Y[7]=e.withModifiers(re=>Ne("filesize"),["stop"]))},e.toDisplayString(U.$t("cms.media.sortBy.filesize")),1)])):e.createCommentVNode("",!0)],512)])]),e.createElementVNode("div",HB,[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 h-8 px-3 text-xs rounded-md",{"shadow bg-blue-600 hover:bg-blue-700 text-white":g.value==="grid","border shadow-sm hover:text-accent-foreground bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-slate-600":g.value==="list"}]),onClick:Y[9]||(Y[9]=re=>g.value="grid")},[e.createVNode(e.unref(Uc),{class:"w-4 h-4"})],2),e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors disabled:pointer-events-none disabled:opacity-50 h-8 px-3 text-xs rounded-md",{"shadow bg-blue-600 hover:bg-blue-700 text-white":g.value==="list","border shadow-sm hover:text-accent-foreground bg-white dark:bg-slate-700 border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-50 dark:hover:bg-slate-600":g.value==="grid"}]),onClick:Y[10]||(Y[10]=re=>g.value="list")},[e.createVNode(e.unref(Nl),{class:"w-4 h-4"})],2)])])]),e.createElementVNode("div",qB,[g.value==="grid"?(e.openBlock(),e.createBlock($v,{key:0,files:b.value,"selected-file":c.value?null:x.value,"selected-files":c.value?k.value:[],onFileClick:pe},null,8,["files","selected-file","selected-files"])):(e.openBlock(),e.createBlock(cB,{key:1,files:b.value,"selected-file":c.value?null:x.value,"selected-files":c.value?k.value:[],onFileClick:pe},null,8,["files","selected-file","selected-files"]))]),e.createElementVNode("div",KB,[c.value&&k.value.length>0?(e.openBlock(),e.createElementBlock("div",GB,e.toDisplayString(U.$t("cms.media.selectedFiles",{count:k.value.length})),1)):(e.openBlock(),e.createElementBlock("div",WB)),e.createElementVNode("button",{onClick:Jt,disabled:c.value?k.value.length===0:!x.value,class:"flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium disabled:pointer-events-none disabled:opacity-50 h-9 px-4 py-2 ml-auto bg-blue-600 hover:bg-blue-700 text-white shadow-md hover:shadow-lg transition-all duration-200 transform hover:scale-105"},[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(U.$t("cms.common.actions.add")),1)],8,YB)])])])):e.createCommentVNode("",!0)]))],64))}},XB={};function ZB(r,t){const l=e.resolveComponent("vs-richtext-md",!0);return e.openBlock(),e.createBlock(l,{class:"w-full h-[300px]"})}const Ui=Wt(XB,[["render",ZB]]),QB={props:{min:{type:Number},step:{type:Number,default:()=>1},max:{type:Number,default:()=>1/0},modelValue:{type:Number,default:()=>null},label:{type:String,default:()=>""},placeholder:{type:String,default:()=>"0"},disabled:{type:Boolean,default:()=>!1}},data(){return{id:`input-number-${Math.floor(Math.random()*1e3)}`,inputValue:this.modelValue}},watch:{modelValue(r){this.inputValue=r},inputValue(r){this.$emit("update:modelValue",r)}},methods:{validateInput(r){(r.key==="+"||r.key===","||r.key==="."||r.key==="-"&&this.inputValue&&this.inputValue.toString().length>0)&&r.preventDefault()},handleBlur(){let r=parseFloat(this.inputValue);this.$emit("blur"),isNaN(r)?r=this.min:r>this.max?r=this.max:r<this.min&&(r=this.min),this.inputValue=r,this.$emit("update:modelValue",this.inputValue)}}},JB={class:"p-0"},e4=["step","min","max","id","placeholder","disabled"];function t4(r,t,l,n,a,o){return e.openBlock(),e.createElementBlock("div",JB,[e.renderSlot(r.$slots,"label",e.normalizeProps(e.guardReactiveProps({id:a.id}))),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":t[0]||(t[0]=s=>a.inputValue=s),type:"number",onKeydown:t[1]||(t[1]=(...s)=>o.validateInput&&o.validateInput(...s)),onBlur:t[2]||(t[2]=(...s)=>o.handleBlur&&o.handleBlur(...s)),step:l.step,min:l.min,max:l.max,id:a.id,"aria-describedby":"helper-text-explanation",class:e.normalizeClass(["vs-number__input py-2 px-3 block w-full h-[38px] border border-solid border-stone-200 rounded-lg text-sm text-stone-800 placeholder:text-stone-500 focus:z-10 focus:border-1 focus:outline-none focus:border-blue-600 dark:bg-neutral-800 dark:border-neutral-700 dark:text-neutral-200 dark:placeholder:text-neutral-500 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-neutral-600",{"cursor-not-allowed":l.disabled}]),placeholder:l.placeholder,disabled:l.disabled},null,42,e4),[[e.vModelText,a.inputValue]])])}const ji=Wt(QB,[["render",t4]]),zi={__name:"vs-form-reletion-link",props:e.mergeModels({relation:{type:String,required:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(r){const t=e.useModel(r,"modelValue"),l=r,n=e.ref([]),a=async()=>{const s=await(await fetch(`/api/cms-suggest/${l.relation}`)).json();n.value=s==null?void 0:s.data};return e.onMounted(a),(o,s)=>{var i;return(i=n.value)!=null&&i.length?(e.openBlock(),e.createBlock(e.unref(ta),{key:0,mode:"combo",modelValue:t.value,"onUpdate:modelValue":s[0]||(s[0]=c=>t.value=c),options:n.value},null,8,["modelValue","options"])):e.createCommentVNode("",!0)}}},r4={monaco:zE,edit:fV,preview:{__name:"vs-builder-preview",props:{data:{},dataModifiers:{},form:{},formModifiers:{}},emits:["update:data","update:form"],setup(r){De["vs-input-custom-datatable"]=Mi,De["vs-input-reference"]=La,De["vs-input-texteditor"]=Ta,De["vs-input-mediaselect"]=Pr,De["vs-input-file"]=Pr,De["vs-input-image"]=Pr,De["vs-input-richtext-md"]=Ui,De["vs-input-integer"]=ji,De["vs-input-relation-link"]=zi;const t=e.ref({}),l=e.useModel(r,"data"),n=e.useModel(r,"form"),a=e.computed(()=>{var o,s;return((s=(o=l.value)==null?void 0:o.columns)==null?void 0:s.map(Ma))||[]});return(o,s)=>{var i;return e.openBlock(),e.createElementBlock("div",{ref_key:"form",ref:n},[((i=a.value)==null?void 0:i.length)>0?(e.openBlock(),e.createBlock(e.unref(He),{key:0,modelValue:t.value,"onUpdate:modelValue":s[0]||(s[0]=c=>t.value=c),schema:a.value},null,8,["modelValue","schema"])):e.createCommentVNode("",!0)],512)}}}},l4={class:"max-w-6xl mx-auto"},n4={class:"flex items-center justify-between mb-6"},a4={class:"mb-2 text-2xl font-semibold text-gray-900"},o4={class:"lowercase"},s4={class:"text-gray-600"},i4={class:"flex items-center gap-2"},c4={class:"w-full"},d4={class:"flex items-center w-full h-10 max-w-md grid-cols-3 p-1 mb-6 bg-white border border-gray-200 rounded-md text-muted-foreground"},u4=["onClick"],m4={key:0,class:"container mx-auto bg-white rounded-md py-4 px-2 bg-opacity-50"},p4={__name:"EditCollectionPage",setup(r){const{t}=Be(),l=e.inject("cms.fetchContentTypes"),n=e.ref("edit"),a=e.ref({yaml:"",data:{columns:[],type:"collection"}}),o=e.ref({}),s=e.ref(""),i=qe.useRoute(),c=qe.useRouter(),u=e.ref(!1),d=e.computed(()=>[{name:t("cms.builder.edit"),id:"edit"},{name:t("cms.builder.preview"),id:"preview"}]),m=async()=>{var p;try{const g=await(await fetch(`/api/cms-type/${i.params.id}`)).json(),y={...g,columns:Array.isArray(g.columns)?g.columns:(p=Object.entries((g==null?void 0:g.columns)||{}))==null?void 0:p.map(([b,w])=>({...w,name:b}))};a.value={...a.value,data:y},s.value=y.title||y.name}catch(h){console.error(h)}finally{u.value=!0}},f=async()=>{var p,h;try{if(await o.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.builder.editFieldFailed")});return}const y=await fetch(`/api/cms-type/${i.params.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(n.value==="monaco"?(p=a.value)==null?void 0:p.yaml:(h=a.value)==null?void 0:h.data)});c.push("/settings/collections"),l(),se({type:"success",title:t("cms.common.actions.success"),message:t("cms.collections.collectionCreated")})}catch(g){console.error(g),se({type:"error",title:t("cms.common.actions.error"),message:t("cms.collections.collectionCreationFailed")})}};return e.onMounted(()=>{m()}),(p,h)=>{const g=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",l4,[e.createElementVNode("div",n4,[e.createElementVNode("div",null,[e.createElementVNode("h1",a4,[e.createTextVNode(e.toDisplayString(p.$t("cms.builder.editCollection"))+" ",1),e.createElementVNode("span",o4,e.toDisplayString(s.value),1)]),e.createElementVNode("p",s4,e.toDisplayString(p.$t("cms.builder.editContentForYourSite")),1)]),e.createElementVNode("div",i4,[e.createVNode(g,{to:"/settings/collections",class:"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border bg-background hover:text-accent-foreground h-10 px-4 py-2 border-gray-300 text-gray-700 hover:bg-gray-50"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.$t("cms.common.actions.back")),1)]),_:1}),e.createElementVNode("button",{onClick:f,class:"inline-flex items-center justify-center gap-2 whitespace-nowrap text-white rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-primary-foreground h-10 px-4 py-2 bg-blue-600 hover:bg-blue-700"},e.toDisplayString(p.$t("cms.common.actions.save")),1)])]),e.createElementVNode("div",c4,[e.createElementVNode("div",d4,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,y=>(e.openBlock(),e.createElementBlock("button",{key:y.id,onClick:b=>n.value=y.id,class:e.normalizeClass(["inline-flex flex-1 items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm data-[state=active]:bg-blue-50 data-[state=active]:text-blue-700 data-[state=active]:border-blue-200",y.id===n.value?"bg-blue-50 text-blue-700 border-blue-200":""])},e.toDisplayString(y.name),11,u4))),128))])]),u.value?(e.openBlock(),e.createElementBlock("div",m4,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(r4)[n.value]),{yaml:a.value.yaml,"onUpdate:yaml":h[0]||(h[0]=y=>a.value.yaml=y),data:a.value.data,"onUpdate:data":h[1]||(h[1]=y=>a.value.data=y),form:o.value,"onUpdate:form":h[2]||(h[2]=y=>o.value=y)},null,40,["yaml","data","form"]))])):e.createCommentVNode("",!0)])}}},f4="menu",h4=(r,t)=>{const l=r==null?void 0:r.trim();return l?l===f4?t?t==="create"?{type:"createMenu",collection:l}:{type:"editMenu",collection:l,id:t}:{type:"menu",collection:l}:t?t==="create"?{type:"createArticle",collection:l}:{type:"editArticle",collection:l,id:t}:{type:"articles",collection:l}:{type:"collections"}},g4=[{key:"title",label:"common.title",localization:!0,type:"text"},{key:"description",label:"common.description",localization:!0,type:"text"},{key:"keywords",label:"common.keywords",localization:!0,type:"text"},{key:"meta",label:"common.meta",type:"key-value",ignore:["title","description","keywords"]}],y4={__name:"VsFormTags",props:{modelValue:{default:()=>[]},modelModifiers:{}},emits:["update:modelValue"],setup(r,{expose:t}){const{t:l}=Be(),n=e.useModel(r,"modelValue"),a=e.ref({}),o=e.ref(!1);e.provide("metaParentValue",n);const s=m=>Array.isArray(m)?m.map(f=>typeof f=="object"&&f!==null&&f.id?f.id:f):[],i=async m=>{if(!Array.isArray(m)||m.length===0)return[];try{const p=await(await fetch("/api/tags")).json(),h=(p==null?void 0:p.rows)||[];return m.map(g=>{const y=h.find(b=>b.tag_id===g);return y?{id:y.tag_id,text:y.value,color:y.color}:{id:g,text:"",color:"#ababab"}})}catch(f){return console.error("Error fetching tags:",f),m.map(p=>({id:p,text:"",color:"#ababab"}))}};e.onMounted(async()=>{await e.nextTick(),await e.nextTick(),setTimeout(()=>{var m;if(Array.isArray((m=n.value)==null?void 0:m.tag_list)){const f=s(n.value.tag_list);JSON.stringify(f)!==JSON.stringify(n.value.tag_list)&&(n.value.tag_list=f)}},100)}),e.watch(()=>n.value.tag_list,m=>{if(Array.isArray(m)&&!o.value){const f=s(m);JSON.stringify(f)!==JSON.stringify(m)&&(n.value.tag_list=f)}},{deep:!0}),e.watch(()=>n.value,m=>{if(m&&Array.isArray(m.tag_list)&&!o.value){const f=s(m.tag_list);JSON.stringify(f)!==JSON.stringify(m.tag_list)&&(m.tag_list=f)}},{deep:!0,immediate:!0}),e.watch(()=>{var m;return(m=n.value)==null?void 0:m.tag_list},m=>{Array.isArray(m)&&a.value&&e.nextTick(()=>{a.value&&a.value.setValue&&a.value.setValue("tag_list",m)})},{deep:!0});const c=async m=>{if(m.tag_list&&(m.tag_list=s(m.tag_list),n.value.tag_list=m.tag_list),await a.value.validate()){se({type:"warning",title:l("cms.common.actions.warning"),message:l("cms.builder.editFieldFailed")});return}};t({restoreTagsBeforeSubmit:async()=>{var m;if(o.value=!0,Array.isArray((m=n.value)==null?void 0:m.tag_list)){console.log("Before restore:",n.value.tag_list);const f=await i(n.value.tag_list);console.log("After restore:",f),n.value.tag_list=f}setTimeout(()=>{o.value=!1},2e3)}});const d=e.computed(()=>{var m;return[{key:"tag_list",type:"select",multiple:!0,searchable:!1,placeholder:l("cms.builder.tags"),data:"tag_id",value:((m=n.value)==null?void 0:m.tag_list)||[]}]});return(m,f)=>n.value?(e.openBlock(),e.createBlock(e.unref(He),{key:0,schema:d.value,modelValue:n.value,"onUpdate:modelValue":[f[0]||(f[0]=p=>n.value=p),c]},null,8,["schema","modelValue"])):e.createCommentVNode("",!0)}},b4={class:"flex justify-end mb-4"},k4=["href"],x4=["src"],w4=["src"],_4={key:2,class:"w-full h-[80vh] flex items-center justify-center text-gray-500"},E4={__name:"VsPreview",props:{preview_path:{type:String,default:""},slug:{type:String,default:""}},setup(r){const t=e.ref(""),l=e.ref(""),n=async()=>{var o,s;try{const c=await(await fetch("/api/settings")).json();t.value=((s=(o=c==null?void 0:c.settings)==null?void 0:o.site_info)==null?void 0:s.previewUrl)||"http://ip.local.softpro.ua"}catch(i){console.error("Failed to fetch settings:",i),t.value="http://ip.local.softpro.ua"}},a=async()=>{var o;try{const i=await(await fetch("/user")).json();l.value=(o=i==null?void 0:i.user)==null?void 0:o.draftKey}catch(s){console.error("Failed to fetch user:",s)}};return e.onMounted(()=>{n(),a()}),(o,s)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",b4,[e.createElementVNode("a",{href:`${t.value}/uk/${r.preview_path}${r.slug}${l.value?`?draftKey=${l.value}`:""}`,target:"_blank",class:"inline-flex items-center gap-2 px-3 py-1.5 text-black-600 bg-white border border-blue-200 rounded hover:border-blue-300 hover:bg-blue-50 transition-colors duration-200 font-normal cursor-pointer"},[s[0]||(s[0]=e.createTextVNode(" Переглянути на сайті ",-1)),e.createVNode(e.unref(Pc),{class:"w-4 h-4"})],8,k4)]),t.value&&r.preview_path?(e.openBlock(),e.createElementBlock("iframe",{key:0,src:`${t.value}/uk/${r.preview_path}${r.slug}?hideHeader=true&hideFooter=true`,class:"w-full h-[80vh]"},null,8,x4)):t.value?(e.openBlock(),e.createElementBlock("iframe",{key:1,src:`${t.value}/uk/${r.slug}?hideHeader=true&hideFooter=true`,class:"w-full h-[80vh]"},null,8,w4)):(e.openBlock(),e.createElementBlock("div",_4," Loading preview... "))]))}},C4={class:"space-y-6 max-w-6xl mx-auto relative bg-white"},V4={class:"p-4 sticky top-[-24px] z-10 bg-white dark:bg-slate-800"},N4={class:"flex items-center justify-between"},v4={class:"flex items-center gap-4"},B4={class:"text-2xl font-semibold text-gray-900 dark:text-white"},S4=["href","title"],A4={class:"flex items-center space-x-3"},D4={class:"w-full mt-6 flex items-center justify-between"},M4={class:"flex items-center w-full h-10 max-w-md grid-cols-3 p-1 bg-white border border-gray-200 rounded-md text-muted-foreground"},T4=["onClick"],L4={class:"flex items-center gap-2"},$4={for:"is_pin",class:"text-sm font-medium text-gray-700 dark:text-gray-300 cursor-pointer"},F4={class:"relative"},I4={key:0,class:"w-3 h-3 text-white",fill:"currentColor",viewBox:"0 0 20 20"},O4={class:"container mx-auto bg-white rounded-md pb-4 px-5"},P4={class:"container mx-auto bg-white rounded-md pb-4 px-2"},R4={key:0,class:"container mx-auto bg-white rounded-md pb-4 px-2"},U4={class:"container mx-auto bg-white rounded-md pb-4 px-2"},Hi=e.defineComponent({__name:"contentForm",setup(r){De["vs-input-custom-datatable"]=Mi,De["vs-input-reference"]=La,De["vs-input-texteditor"]=Ta,De["vs-input-mediaselect"]=Pr,De["vs-input-file"]=Pr,De["vs-input-image"]=Pr,De["vs-input-richtext-md"]=Ui,De["vs-input-integer"]=ji,De["vs-input-relation-link"]=zi;const{t,locale:l}=Be(),n=qe.useRouter(),a=qe.useRoute(),o=e.inject("menu",e.ref([])),s=e.ref([]),i=e.ref({}),c=e.ref({}),u=e.ref({}),d=e.ref(""),m=$=>{const M=[];return $.forEach(D=>{if(M.push(D),D.localization){const q={...D,name:D.name+":en",label:D.label+" (en)"};M.push(q)}}),M},f=e.computed(()=>{var $;return($=s.value)==null?void 0:$.map(Ma)}),p=e.computed(()=>(l.value,g4.flatMap($=>{const M={...$,label:t($.label)};if($.localization){const D={...$,key:`${$.key}:en`,label:t($.label)+" (en)"};return[M,D]}return[M]}))),h=e.ref({}),g=e.ref({title:"",status:"draft"}),y=e.computed(()=>{const $=[{id:"content",name:t("cms.builder.content")},{id:"seo",name:t("cms.builder.seo")},{id:"tags",name:t("cms.builder.tags")}];return d.value&&$.push({id:"preview",name:t("cms.builder.preview")}),$}),b=e.ref("content"),w=e.computed(()=>{var M,D,q,Q;const $=((M=a.params)==null?void 0:M.collection)||((D=a.params)==null?void 0:D.id);return((Q=(q=o.value)==null?void 0:q.find(R=>R.id===$))==null?void 0:Q.title)||$}),x=e.computed(()=>{var $,M;return(($=g.value)==null?void 0:$.title)||((M=a.params)!=null&&M.id?t("cms.builder.editCollection"):t("cms.articles.createArticle"))}),k=e.computed(()=>{var q,Q,R;const $=((q=a.params)==null?void 0:q.collection)||((Q=a.params)==null?void 0:Q.id),M=(R=a.params)==null?void 0:R.id,D=[{label:w.value,route:`collections/${$}`}];return M?D.push({label:x.value,route:`collections/${$}/${M}`}):D.push({label:t("cms.articles.createArticle"),route:`collections/${$}/create`}),D}),_=$=>{$==="collections"?n.push("/collections"):n.push(`/${$}`)};e.onMounted(async()=>{var Q,R,I;const $=(Q=a.params)==null?void 0:Q.collection,M=(R=a.params)==null?void 0:R.id,D=$||M,q=$&&M?M:void 0;if(!q){if(!D)return;const A=await(await fetch(`/api/cms/${D}/`)).json();s.value=m(A.columns)}try{if(!q||!D)return;const F=await fetch(`/api/cms/${D}/${q}`);if(!F.ok)throw new Error("Failed to fetch article");const A=await F.json();if(s.value=m(A==null?void 0:A.columns),A!=null&&A.preview_path&&(d.value=A==null?void 0:A.preview_path),A.rows){let z=A.rows;Array.isArray(z)||(z=[z]),g.value=z[0],await e.nextTick(),(I=z[0])!=null&&I.meta?h.value={...z[0].meta}:h.value={title:"",description:"",keywords:"",meta:{}},console.log("Initialized seoData from rows[0]:",h.value)}else g.value=A,await e.nextTick(),A!=null&&A.meta?(h.value={title:A.meta.title||"",description:A.meta.description||"",keywords:A.meta.keywords||"",meta:{...A.meta}},delete h.value.meta.title,delete h.value.meta.description,delete h.value.meta.keywords):h.value={title:"",description:"",keywords:"",meta:{}},console.log("Initialized seoData from data:",h.value)}catch(F){console.error("Error fetching article:",F)}});const N=e.computed({get:()=>{var $;return(($=g.value)==null?void 0:$.is_pin)||!1},set:$=>{g.value&&(g.value.is_pin=$)}}),V=()=>{g.value&&(g.value.is_pin=!g.value.is_pin)};e.watch(h,$=>{console.log("seoData changed:",$)},{deep:!0});const P=async $=>{var I,F,A,z;const M=(I=a.params)==null?void 0:I.collection,D=(F=a.params)==null?void 0:F.id,q=await i.value.validate();if(q){se({title:t("cms.validation"),message:JSON.stringify(q),type:"warning"});return}(A=u.value)!=null&&A.restoreTagsBeforeSubmit&&await u.value.restoreTagsBeforeSubmit();const Q=h.value||{},R={...g.value,meta:{...Q,...Q.meta||{}}};console.log("Payload before submit:",R);try{const ee=await fetch(`/api/cms/${M}/${D||""}`,{method:D?"PUT":"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(R)});if(!ee.ok){let pe;try{const Ne=await ee.json();pe=JSON.stringify(Ne,null,2)}catch{pe=await ee.text()}throw new Error(`HTTP ${ee.status}: ${pe}`)}if(!D)try{const pe=await ee.json(),Ne=pe.id||((z=pe.data)==null?void 0:z.id);Ne&&a.name==="createArticle"&&await n.push(`/collections/${M}/${Ne}`)}catch(pe){console.warn("Could not parse response to get ID:",pe)}se({title:t("cms.common.success"),message:t("cms.common.successMessage"),type:"success"})}catch(ee){console.error("Submit error:",ee),se({title:t("cms.common.error"),message:"Помилка збереження",type:"error"})}};return($,M)=>{var D,q,Q,R,I,F,A;return e.openBlock(),e.createElementBlock("div",C4,[e.createElementVNode("div",V4,[e.createVNode(Ys,{items:k.value,onNavigate:_},null,8,["items"]),e.createElementVNode("div",N4,[e.createElementVNode("div",v4,[e.createElementVNode("button",{onClick:M[0]||(M[0]=z=>e.unref(n).back()),class:"p-2 text-gray-500 rounded-full hover:text-gray-900 dark:text-gray-400 dark:hover:text-white hover:bg-gray-100 dark:hover:bg-gray-700"},[e.createVNode(e.unref(hn),{class:"w-5 h-5"})]),e.createElementVNode("h1",B4,[e.createTextVNode(e.toDisplayString($.$t("cms.builder.editCollection"))+" ",1),e.createElementVNode("span",null,'"'+e.toDisplayString(((D=g.value)==null?void 0:D.type)==="single"?g.value.title:(Q=(q=e.unref(o).value)==null?void 0:q.find(z=>z.id===(e.unref(a).params.collection||e.unref(a).params.id)))==null?void 0:Q.title)+'"',1)]),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/content/`,target:"_blank",title:$.$t("cms.guide.content")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,S4)]),e.createElementVNode("div",A4,[e.createElementVNode("button",{onClick:P,type:"submit",class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(xn),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString($.$t("cms.builder.save")),1)])])]),e.createElementVNode("div",D4,[e.createElementVNode("div",M4,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,z=>(e.openBlock(),e.createElementBlock("button",{key:z.id,onClick:ee=>b.value=z.id,class:e.normalizeClass(["inline-flex flex-1 items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm data-[state=active]:bg-blue-50 data-[state=active]:text-blue-700 data-[state=active]:border-blue-200",z.id===b.value?"bg-blue-50 text-blue-700 border-blue-200":""])},e.toDisplayString(z.name),11,T4))),128))]),e.createElementVNode("div",L4,[e.createElementVNode("label",$4,e.toDisplayString($.$t("cms.collections.pinPublication")),1),e.createElementVNode("div",F4,[e.withDirectives(e.createElementVNode("input",{type:"checkbox",id:"is_pin","onUpdate:modelValue":M[1]||(M[1]=z=>N.value=z),class:"sr-only"},null,512),[[e.vModelCheckbox,N.value]]),e.createElementVNode("div",{class:e.normalizeClass(["w-5 h-5 border-2 rounded transition-all duration-200 cursor-pointer flex items-center justify-center",(R=g.value)!=null&&R.is_pin?"bg-sky-600 border-sky-600":"bg-white border-gray-300 hover:border-sky-400 dark:bg-gray-700 dark:border-gray-600 dark:hover:border-sky-400"]),onClick:V},[(I=g.value)!=null&&I.is_pin?(e.openBlock(),e.createElementBlock("svg",I4,[...M[7]||(M[7]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"},null,-1)])])):e.createCommentVNode("",!0)],2)])])])]),e.withDirectives(e.createElementVNode("div",O4,[(F=s.value)!=null&&F.length?(e.openBlock(),e.createBlock(e.unref(He),{key:0,modelValue:g.value,"onUpdate:modelValue":M[2]||(M[2]=z=>g.value=z),schema:f.value,form:i.value,"onUpdate:form":M[3]||(M[3]=z=>i.value=z)},null,8,["modelValue","schema","form"])):e.createCommentVNode("",!0)],512),[[e.vShow,b.value==="content"]]),e.withDirectives(e.createElementVNode("div",P4,[e.createVNode(e.unref(He),{schema:p.value,values:h.value,"onUpdate:values":M[4]||(M[4]=z=>h.value=z),form:c.value,"onUpdate:form":M[5]||(M[5]=z=>c.value=z)},null,8,["schema","values","form"])],512),[[e.vShow,b.value==="seo"]]),b.value==="tags"?(e.openBlock(),e.createElementBlock("div",R4,[e.createVNode(y4,{ref_key:"tagsForm",ref:u,modelValue:g.value,"onUpdate:modelValue":M[6]||(M[6]=z=>g.value=z)},null,8,["modelValue"])])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",U4,[e.createVNode(E4,{slug:(A=g.value)==null?void 0:A.slug,preview_path:d.value},null,8,["slug","preview_path"])],512),[[e.vShow,b.value==="preview"]])])}}}),j4=e.defineAsyncComponent(()=>Promise.resolve().then(()=>nS)),z4=e.defineAsyncComponent(()=>Promise.resolve().then(()=>FA)),H4=e.defineAsyncComponent(()=>Promise.resolve().then(()=>uS)),q4={collections:Qn,articles:Xs,createArticle:Hi,editArticle:Hi,menu:j4,editMenu:z4,createMenu:H4},K4=Qn,G4=r=>q4[r]??K4,W4={key:1,class:"p-4 text-sm text-slate-600 dark:text-slate-300"},Y4=e.defineComponent({__name:"CmsContentWrapper",setup(r){const t=qe.useRoute(),l=e.getCurrentInstance();if(!l)throw new Error("CmsContentWrapper must be used within a component instance");const n=e.computed(()=>{const p=l.appContext.config.globalProperties.$route;if(!p)throw new Error("Vue Router is not registered on the app instance");return p}),a=e.computed(()=>t??n.value),o=e.computed(()=>{var p;return((p=a.value)==null?void 0:p.params)??{}}),s=e.computed(()=>{var p,h;return((p=o.value)==null?void 0:p.collection)??((h=o.value)==null?void 0:h.type)}),i=e.computed(()=>{var p;return(p=o.value)==null?void 0:p.id}),c=e.computed(()=>h4(s.value,i.value)),u=e.computed(()=>G4(c.value.type)),d=e.computed(()=>`${c.value.type}-${c.value.collection??""}-${c.value.id??""}`),m=e.computed(()=>{const{type:p,collection:h,id:g}=c.value,y={...o.value};return s.value?y.collection=s.value:delete y.collection,p==="articles"?y.id=h:p==="createArticle"?delete y.id:p==="editArticle"&&g?y.id=g:delete y.id,y}),f=new Proxy({},{get(p,h,g){const y=a.value;if(!y)return;if(h==="params")return m.value;const b=Reflect.get(y,h,g);return typeof b=="function"?b.bind(y):b},has(p,h){if(h==="params")return!0;const g=a.value;return g?Reflect.has(g,h):!1},ownKeys(){const p=a.value;return p?Reflect.ownKeys(p):["params"]},getOwnPropertyDescriptor(p,h){if(h==="params")return{configurable:!0,enumerable:!0,value:m.value};const g=a.value;if(!g)return;const y=Reflect.getOwnPropertyDescriptor(g,h);if(y)return{...y,configurable:!0}}});return e.provide(qe.routeLocationKey,f),(p,h)=>u.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.value),{key:d.value})):(e.openBlock(),e.createElementBlock("div",W4,e.toDisplayString(p.$t("cms.navigation.collections")),1))}}),X4={class:"space-y-6 max-w-7xl mx-auto"},Z4={class:"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between"},Q4={class:"flex items-center gap-2"},J4={class:"text-3xl font-bold text-slate-800 dark:text-slate-100 mb-2"},eS=["href","title"],tS={class:"text-slate-600 dark:text-slate-300"},rS={class:"overflow-hidden bg-white border border-gray-200 rounded-lg shadow-sm dark:bg-gray-800 dark:border-gray-700"},lS={key:0,class:"p-4 border-b border-gray-200 sm:p-6 dark:border-gray-700"},qi=e.defineComponent({__name:"MenuPage",setup(r){const{t,locale:l}=Be({useScope:"global"}),n=qe.useRouter(),a=e.ref(""),o=e.ref([]),s=e.ref([]),i=e.ref(""),c=e.ref([{name:"name",title:t("cms.menu.form.name"),type:"text"},{name:"description",title:t("cms.menu.form.description"),type:"text"},{name:"locale",title:t("cms.menu.form.language"),type:"select",data:[{text:"uk",id:"uk"},{text:"en",id:"en"}]}]),u=async()=>{const g=await(await fetch("/api/cms-menu")).json(),y=g.rows;o.value=y;const b=(g.filters||[]).map(w=>{const{extra:x,title:k,..._}=w;return _});s.value=b},d=h=>{n.push(`/menu/${h==null?void 0:h.menu_id}`)},m=async h=>{try{await fetch(`/api/cms-menu/${h==null?void 0:h.menu_id}`,{method:"DELETE"}),await se({title:t("cms.menu.menuDeleted"),type:"success",message:t("cms.menu.menuDeleted")}),await u()}catch{se({title:t("cms.menu.menuDeleteError"),type:"error",message:t("cms.menu.menuDeleteError")})}},f=(h,g)=>{if(!g)return!0;const y=g.toLowerCase();return c.value.some(b=>{const w=h[b.name];return w&&w.toString().toLowerCase().includes(y)})},p=h=>{const g=Object.entries(h==null?void 0:h.data).filter(([,y])=>y!=null).map(([y,b])=>`${y}=${b}`).join("|");i.value=g};return e.onMounted(u),(h,g)=>{var b;const y=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",X4,[e.createElementVNode("div",Z4,[e.createElementVNode("div",null,[e.createElementVNode("div",Q4,[e.createElementVNode("h1",J4,e.toDisplayString(h.$t("cms.menu.title")),1),e.createElementVNode("a",{href:`https://cms.opengis.info/${e.unref(l)}/guides/menu/`,target:"_blank",title:h.$t("cms.guide.menu")},[e.createVNode(e.unref(er),{class:"w-5 h-5"})],8,eS)]),e.createElementVNode("p",tS,e.toDisplayString(h.$t("cms.menu.description")),1)]),e.createVNode(y,{to:"/menu/create",class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105"},{default:e.withCtx(()=>[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(h.$t("cms.menu.menuAdd")),1)]),_:1})]),e.createElementVNode("div",rS,[((b=s.value)==null?void 0:b.length)>0?(e.openBlock(),e.createElementBlock("div",lS,[e.createVNode(e.unref(jl),{schema:s.value,view:"inline",onChange:p},null,8,["schema"])])):e.createCommentVNode("",!0),e.createVNode(Jn,{rows:o.value,columns:c.value,query:a.value,filterFn:f,onEdit:d,onDelete:m},null,8,["rows","columns","query"])])])}}}),nS=Object.freeze(Object.defineProperty({__proto__:null,default:qi},Symbol.toStringTag,{value:"Module"})),aS={class:"space-y-6 max-w-7xl mx-auto"},oS={class:"flex items-center justify-between"},sS={class:"flex items-center gap-4"},iS={class:"text-2xl font-semibold text-gray-900 dark:text-white"},cS={class:"flex items-center space-x-3"},dS={class:"max-w-[1000px]"},Ki=e.defineComponent({__name:"MenuAddPage",setup(r){De["vs-input-monaco-editor"]=Hl;const{t}=Be({useScope:"global"}),l=qe.useRouter();qe.useRoute();const n=e.ref([{key:"name",title:t("cms.menu.form.name"),type:"text",placeholder:t("cms.menu.form.name"),required:!0,validators:["required"]},{key:"description",title:t("cms.menu.form.description"),type:"text",placeholder:t("cms.menu.form.description"),required:!0,validators:["required"]},{key:"locale",title:t("cms.menu.form.language"),type:"select",placeholder:t("cms.menu.form.language"),options:[{text:"Ukrainian",id:"uk"},{text:"English",id:"en"}],required:!0,validators:["required"]},{key:"content",title:t("cms.menu.form.content"),type:"monaco-editor",height:"500px",language:"yaml",theme:"vs-light"}]),a=e.ref({}),o=e.ref({}),s=async()=>{try{if(await o.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.menu.createMenuFailed")});return}await fetch("/api/cms-menu",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a.value)}),se({title:t("cms.common.success"),type:"success",message:t("cms.common.successMessage")}),a.value={},l.push("/menu")}catch(i){console.log(i),se({title:t("cms.common.error"),type:"error",message:t("cms.common.errorMessage")})}};return(i,c)=>(e.openBlock(),e.createElementBlock("div",aS,[e.createElementVNode("div",oS,[e.createElementVNode("div",sS,[e.createElementVNode("button",{onClick:c[0]||(c[0]=u=>e.unref(l).back()),class:"p-2 text-gray-500 rounded-full hover:text-gray-900 dark:text-gray-400 dark:hover:text-white hover:bg-gray-100 dark:hover:bg-gray-700"},[e.createVNode(e.unref(hn),{class:"w-5 h-5"})]),e.createElementVNode("h1",iS,e.toDisplayString(i.$t("cms.menu.menuAdd")),1)]),e.createElementVNode("div",cS,[e.createElementVNode("button",{onClick:s,class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(xn),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(i.$t("cms.common.actions.save")),1)])])]),e.createElementVNode("div",dS,[e.createVNode(e.unref(He),{schema:n.value,modelValue:a.value,"onUpdate:modelValue":c[1]||(c[1]=u=>a.value=u),form:o.value,"onUpdate:form":c[2]||(c[2]=u=>o.value=u)},null,8,["schema","modelValue","form"])])]))}}),uS=Object.freeze(Object.defineProperty({__proto__:null,default:Ki},Symbol.toStringTag,{value:"Module"})),mS={},pS={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"};function fS(r,t){return e.openBlock(),e.createElementBlock("svg",pS,[...t[0]||(t[0]=[e.createStaticVNode('<circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle>',6)])])}const hS=Wt(mS,[["render",fS]]),gS={key:0,class:"p-3 flex items-center gap-x-3 cursor-grab bg-gray-100 border border-gray-300 rounded-lg font-medium text-sm text-gray-800 dark:bg-neutral-900 dark:border-neutral-700 dark:text-neutral-200"},yS={key:0,class:"text-xs text-gray-500 dark:text-neutral-400 ml-2"},bS={key:1,class:"p-3 flex items-center gap-x-2 bg-gray-100 border border-gray-300 rounded-lg dark:bg-neutral-900 dark:border-neutral-700"},kS={class:"text-sm font-medium text-gray-800 dark:text-neutral-200 shrink-0"},xS=e.defineComponent({__name:"MenuItem",props:{title:{},value:{}},emits:["delete","update:value"],setup(r,{emit:t}){const l=r,n=t,a=e.ref(!1),o=e.ref(""),s=()=>{typeof l.value=="string"&&(o.value=l.value,a.value=!0)},i=()=>{typeof l.value=="string"&&(n("update:value",o.value),a.value=!1)},c=()=>{a.value=!1,o.value=""};return(u,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([{"space-y-1":typeof u.value!="string"},"dark:bg-transparent"])},[a.value?(e.openBlock(),e.createElementBlock("div",bS,[e.createElementVNode("span",kS,e.toDisplayString(u.title)+":",1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[1]||(d[1]=m=>o.value=m),onKeyup:[e.withKeys(i,["enter"]),e.withKeys(c,["esc"])],onBlur:i,class:"flex-1 px-2 py-1 text-sm border border-gray-300 rounded dark:bg-neutral-800 dark:border-neutral-600 dark:text-neutral-200 focus:outline-none focus:ring-2 focus:ring-blue-500",type:"text",placeholder:"/link"},null,544),[[e.vModelText,o.value]]),e.createElementVNode("button",{onClick:e.withModifiers(i,["stop"]),class:"shrink-0 p-1 text-green-600 dark:text-green-400 hover:bg-green-50 dark:hover:bg-green-900/20 rounded",title:"Save"},[e.createVNode(e.unref(Fc),{class:"size-4"})]),e.createElementVNode("button",{onClick:e.withModifiers(c,["stop"]),class:"shrink-0 p-1 text-red-600 dark:text-red-400 hover:bg-red-50 dark:hover:bg-red-900/20 rounded",title:"Cancel"},[e.createVNode(e.unref(qc),{class:"size-4"})])])):(e.openBlock(),e.createElementBlock("div",gS,[e.createTextVNode(e.toDisplayString(u.title)+" ",1),typeof u.value=="string"?(e.openBlock(),e.createElementBlock("span",yS,e.toDisplayString(u.value),1)):e.createCommentVNode("",!0),typeof u.value=="string"?(e.openBlock(),e.createBlock(e.unref(kn),{key:1,class:"shrink-0 size-4 ml-auto text-gray-500 dark:text-neutral-500 cursor-pointer hover:text-blue-600 dark:hover:text-blue-400",onClick:e.withModifiers(s,["stop"])})):e.createCommentVNode("",!0),e.createVNode(e.unref(Ht),{class:"shrink-0 size-4 text-gray-500 dark:text-neutral-500 cursor-pointer hover:text-red-600 dark:hover:text-red-400",onClick:d[0]||(d[0]=e.withModifiers(m=>n("delete"),["stop"]))}),e.createVNode(hS,{class:"shrink-0 size-4 cursor-pointer text-gray-500 dark:text-neutral-500"})]))],2))}}),wS={class:"space-y-1"},_S=e.defineComponent({__name:"MenuList",props:{list:{type:Array,default:()=>[]},inside:{type:Boolean,default:!1}},emits:["update:list","delete:item"],setup(r,{emit:t}){const{t:l}=Be({useScope:"global"}),n=r,a=t,o=e.ref([]);e.watch(()=>n.list,d=>{o.value=d?[...d]:[]},{immediate:!0,deep:!0});const s=()=>{a("update:list",o.value)},i=d=>{Jr({title:l("cms.builder.deleteTitle"),message:l("cms.builder.deleteObject"),type:"error",onConfirm:()=>{a("update:list",o.value),a("delete:item",d)}})},c=(d,m)=>{d.value=m,e.nextTick(()=>{o.value=[...o.value],a("update:list",o.value)})},u=(d,m)=>{d.children=m,e.nextTick(()=>{o.value=[...o.value],a("update:list",o.value)})};return(d,m)=>{const f=e.resolveComponent("MenuList",!0);return e.openBlock(),e.createBlock(e.unref(Da),{tag:"ul",list:o.value,group:{name:"nested",pull:!0,put:!0},"item-key":"id",class:e.normalizeClass(["nested-sortable space-y-1",{"ps-5 dark:bg-transparent":r.inside}]),onChange:s,onEnd:s},{item:e.withCtx(({element:p})=>[e.createElementVNode("div",wS,[e.createVNode(xS,{title:p.title,value:p.value,onDelete:h=>i(p),"onUpdate:value":h=>c(p,h)},null,8,["title","value","onDelete","onUpdate:value"]),Array.isArray(p.children)?(e.openBlock(),e.createBlock(f,{key:0,list:p.children,inside:!0,"onUpdate:list":h=>u(p,h),"onDelete:item":i},null,8,["list","onUpdate:list"])):e.createCommentVNode("",!0)])]),_:1},8,["list","class"])}}}),ES={class:"flex justify-end p-[20px] gap-[10px] border-t w-full"},CS=e.defineComponent({__name:"AddNewItemInTree",props:{isOpen:{type:Boolean,required:!0},isOpenModifiers:{}},emits:e.mergeModels(["addNewItem"],["update:isOpen"]),setup(r,{emit:t}){const{t:l}=Be({useScope:"global"}),n=e.useModel(r,"isOpen"),a=e.ref({}),o=t,s=e.ref({}),i={title:{type:"text",label:l("cms.menu.form.name"),required:!0,placeholder:l("cms.menu.form.name"),validators:["required"]},value:{type:"text",label:l("cms.menu.form.value"),required:!0,placeholder:l("cms.menu.form.value"),validators:["required"]}},c=async()=>{if(await a.value.validate()){se({type:"warning",title:l("cms.common.actions.warning"),message:l("cms.menu.createMenuFailed")});return}o("addNewItem",s.value),s.value={}};return(u,d)=>(e.openBlock(),e.createBlock(e.unref(Gt),{teleport:"#modal",visible:n.value,title:u.$t("cms.menu.createMenu"),template:"default",closeClickBack:!1,onClose:d[3]||(d[3]=m=>n.value=!1)},{footer:e.withCtx(()=>[e.createElementVNode("div",ES,[e.createElementVNode("button",{class:"inline-flex items-center px-3 py-2 text-sm text-black duration-300 border border-gray-200 rounded-lg gap-x-2 whitespace-nowrap hover:bg-gray-100",onClick:d[2]||(d[2]=m=>{n.value=!1,s.value={}})},e.toDisplayString(u.$t("cms.common.actions.cancel")),1),e.createElementVNode("button",{onClick:c,class:"py-2 px-3 inline-flex items-center gap-x-2 text-sm whitespace-nowrap text-white bg-blue-500 rounded-lg !border-gray-200 hover:bg-blue-700 duration-300"},e.toDisplayString(u.$t("cms.common.actions.save")),1)])]),default:e.withCtx(()=>[e.createVNode(e.unref(He),{form:a.value,"onUpdate:form":d[0]||(d[0]=m=>a.value=m),modelValue:s.value,"onUpdate:modelValue":d[1]||(d[1]=m=>s.value=m),schema:i},null,8,["form","modelValue"])]),_:1},8,["visible","title"]))}}),VS=e.defineComponent({__name:"MenuBody",props:{modelValue:{},modelModifiers:{}},emits:["update:modelValue"],setup(r){De["vs-input-monaco-editor"]=Hl;const{t}=Be({useScope:"global"}),l=e.ref(!1),n=e.ref(null),a=e.useModel(r,"modelValue"),o=e.ref({}),s=async f=>{try{if(await o.value.validate()){se({type:"warning",title:t("cms.common.actions.warning"),message:t("cms.menu.createMenuFailed")});return}l.value=!1,f.id=Math.random().toString(36).substr(2,9),f.children=[],a.value.items.unshift(f)}catch(p){console.log(p)}},i=e.ref([{key:"name",title:t("cms.common.title"),type:"text",placeholder:t("cms.common.title"),required:!0,validators:["required"]},{key:"description",title:t("cms.common.description"),type:"text",placeholder:t("cms.common.description"),required:!0,validators:["required"]},{key:"locale",title:t("cms.menu.form.language"),type:"select",placeholder:t("cms.menu.form.language"),required:!0,options:[{text:"Ukrainian",id:"uk"},{text:"English",id:"en"}],validators:["required"]}]),c=f=>{let p=[];for(const h in f)typeof f[h]=="object"?p.push({title:h,value:"",id:Math.random().toString(36).substr(2,9),children:c(f[h])}):p.push({title:h,value:f[h],id:Math.random().toString(36).substr(2,9),children:[]});return p},u=f=>{a.value.items=f},d=f=>{m(a.value.items,f.id)};function m(f,p){for(let h=f.length-1;h>=0;h--){if(f[h].id===p)return f.splice(h,1),!0;if(f[h].children&&f[h].children.length&&m(f[h].children,p))return!0}return!1}return e.onBeforeMount(()=>{Array.isArray(a.value.items)||(a.value.items=c(a.value.items))}),(f,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(He),{schema:i.value,modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=h=>a.value=h),form:o.value,"onUpdate:form":p[1]||(p[1]=h=>o.value=h)},null,8,["schema","modelValue","form"]),e.createElementVNode("button",{onClick:p[2]||(p[2]=h=>l.value=!0),class:"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium w-min ml-auto my-6 h-9 px-4 py-2 bg-blue-600 text-white shadow-md transition-all duration-200 transform hover:bg-blue-700 hover:shadow-lg hover:scale-105 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50"},[e.createVNode(e.unref(zt),{class:"w-4 h-4 mr-2"}),e.createTextVNode(" "+e.toDisplayString(f.$t("cms.menu.createMenu")),1)]),e.createVNode(CS,{isOpen:l.value,"onUpdate:isOpen":p[3]||(p[3]=h=>l.value=h),form:n.value,"onUpdate:form":p[4]||(p[4]=h=>n.value=h),onAddNewItem:s},null,8,["isOpen","form"]),e.createVNode(_S,{class:"px-2",list:a.value.items,"onUpdate:list":u,"onDelete:item":d},null,8,["list"])],64))}});/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Gi(r){return typeof r>"u"||r===null}function NS(r){return typeof r=="object"&&r!==null}function vS(r){return Array.isArray(r)?r:Gi(r)?[]:[r]}function BS(r,t){var l,n,a,o;if(t)for(o=Object.keys(t),l=0,n=o.length;l<n;l+=1)a=o[l],r[a]=t[a];return r}function SS(r,t){var l="",n;for(n=0;n<t;n+=1)l+=r;return l}function AS(r){return r===0&&Number.NEGATIVE_INFINITY===1/r}var DS=Gi,MS=NS,TS=vS,LS=SS,$S=AS,FS=BS,wr={isNothing:DS,isObject:MS,toArray:TS,repeat:LS,isNegativeZero:$S,extend:FS};function Wi(r,t){var l="",n=r.reason||"(unknown reason)";return r.mark?(r.mark.name&&(l+='in "'+r.mark.name+'" '),l+="("+(r.mark.line+1)+":"+(r.mark.column+1)+")",!t&&r.mark.snippet&&(l+=`
|
|
251
251
|
|
|
252
252
|
`+r.mark.snippet),n+" "+l):n}function ml(r,t){Error.call(this),this.name="YAMLException",this.reason=r,this.mark=t,this.message=Wi(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}ml.prototype=Object.create(Error.prototype),ml.prototype.constructor=ml,ml.prototype.toString=function(t){return this.name+": "+Wi(this,t)};var Vt=ml,IS=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],OS=["scalar","sequence","mapping"];function PS(r){var t={};return r!==null&&Object.keys(r).forEach(function(l){r[l].forEach(function(n){t[String(n)]=l})}),t}function RS(r,t){if(t=t||{},Object.keys(t).forEach(function(l){if(IS.indexOf(l)===-1)throw new Vt('Unknown option "'+l+'" is met in definition of "'+r+'" YAML type.')}),this.options=t,this.tag=r,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(l){return l},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=PS(t.styleAliases||null),OS.indexOf(this.kind)===-1)throw new Vt('Unknown kind "'+this.kind+'" is specified for "'+r+'" YAML type.')}var nt=RS;function Yi(r,t){var l=[];return r[t].forEach(function(n){var a=l.length;l.forEach(function(o,s){o.tag===n.tag&&o.kind===n.kind&&o.multi===n.multi&&(a=s)}),l[a]=n}),l}function US(){var r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,l;function n(a){a.multi?(r.multi[a.kind].push(a),r.multi.fallback.push(a)):r[a.kind][a.tag]=r.fallback[a.tag]=a}for(t=0,l=arguments.length;t<l;t+=1)arguments[t].forEach(n);return r}function $a(r){return this.extend(r)}$a.prototype.extend=function(t){var l=[],n=[];if(t instanceof nt)n.push(t);else if(Array.isArray(t))n=n.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(l=l.concat(t.implicit)),t.explicit&&(n=n.concat(t.explicit));else throw new Vt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");l.forEach(function(o){if(!(o instanceof nt))throw new Vt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(o.loadKind&&o.loadKind!=="scalar")throw new Vt("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(o.multi)throw new Vt("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(o){if(!(o instanceof nt))throw new Vt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var a=Object.create($a.prototype);return a.implicit=(this.implicit||[]).concat(l),a.explicit=(this.explicit||[]).concat(n),a.compiledImplicit=Yi(a,"implicit"),a.compiledExplicit=Yi(a,"explicit"),a.compiledTypeMap=US(a.compiledImplicit,a.compiledExplicit),a};var jS=$a,zS=new nt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(r){return r!==null?r:""}}),HS=new nt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(r){return r!==null?r:[]}}),qS=new nt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(r){return r!==null?r:{}}}),KS=new jS({explicit:[zS,HS,qS]});function GS(r){if(r===null)return!0;var t=r.length;return t===1&&r==="~"||t===4&&(r==="null"||r==="Null"||r==="NULL")}function WS(){return null}function YS(r){return r===null}var XS=new nt("tag:yaml.org,2002:null",{kind:"scalar",resolve:GS,construct:WS,predicate:YS,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function ZS(r){if(r===null)return!1;var t=r.length;return t===4&&(r==="true"||r==="True"||r==="TRUE")||t===5&&(r==="false"||r==="False"||r==="FALSE")}function QS(r){return r==="true"||r==="True"||r==="TRUE"}function JS(r){return Object.prototype.toString.call(r)==="[object Boolean]"}var e5=new nt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:ZS,construct:QS,predicate:JS,represent:{lowercase:function(r){return r?"true":"false"},uppercase:function(r){return r?"TRUE":"FALSE"},camelcase:function(r){return r?"True":"False"}},defaultStyle:"lowercase"});function t5(r){return 48<=r&&r<=57||65<=r&&r<=70||97<=r&&r<=102}function r5(r){return 48<=r&&r<=55}function l5(r){return 48<=r&&r<=57}function n5(r){if(r===null)return!1;var t=r.length,l=0,n=!1,a;if(!t)return!1;if(a=r[l],(a==="-"||a==="+")&&(a=r[++l]),a==="0"){if(l+1===t)return!0;if(a=r[++l],a==="b"){for(l++;l<t;l++)if(a=r[l],a!=="_"){if(a!=="0"&&a!=="1")return!1;n=!0}return n&&a!=="_"}if(a==="x"){for(l++;l<t;l++)if(a=r[l],a!=="_"){if(!t5(r.charCodeAt(l)))return!1;n=!0}return n&&a!=="_"}if(a==="o"){for(l++;l<t;l++)if(a=r[l],a!=="_"){if(!r5(r.charCodeAt(l)))return!1;n=!0}return n&&a!=="_"}}if(a==="_")return!1;for(;l<t;l++)if(a=r[l],a!=="_"){if(!l5(r.charCodeAt(l)))return!1;n=!0}return!(!n||a==="_")}function a5(r){var t=r,l=1,n;if(t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),n=t[0],(n==="-"||n==="+")&&(n==="-"&&(l=-1),t=t.slice(1),n=t[0]),t==="0")return 0;if(n==="0"){if(t[1]==="b")return l*parseInt(t.slice(2),2);if(t[1]==="x")return l*parseInt(t.slice(2),16);if(t[1]==="o")return l*parseInt(t.slice(2),8)}return l*parseInt(t,10)}function o5(r){return Object.prototype.toString.call(r)==="[object Number]"&&r%1===0&&!wr.isNegativeZero(r)}var s5=new nt("tag:yaml.org,2002:int",{kind:"scalar",resolve:n5,construct:a5,predicate:o5,represent:{binary:function(r){return r>=0?"0b"+r.toString(2):"-0b"+r.toString(2).slice(1)},octal:function(r){return r>=0?"0o"+r.toString(8):"-0o"+r.toString(8).slice(1)},decimal:function(r){return r.toString(10)},hexadecimal:function(r){return r>=0?"0x"+r.toString(16).toUpperCase():"-0x"+r.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),i5=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function c5(r){return!(r===null||!i5.test(r)||r[r.length-1]==="_")}function d5(r){var t,l;return t=r.replace(/_/g,"").toLowerCase(),l=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?l===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:l*parseFloat(t,10)}var u5=/^[-+]?[0-9]+e/;function m5(r,t){var l;if(isNaN(r))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===r)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===r)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(wr.isNegativeZero(r))return"-0.0";return l=r.toString(10),u5.test(l)?l.replace("e",".e"):l}function p5(r){return Object.prototype.toString.call(r)==="[object Number]"&&(r%1!==0||wr.isNegativeZero(r))}var f5=new nt("tag:yaml.org,2002:float",{kind:"scalar",resolve:c5,construct:d5,predicate:p5,represent:m5,defaultStyle:"lowercase"}),h5=KS.extend({implicit:[XS,e5,s5,f5]}),g5=h5,Xi=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Zi=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function y5(r){return r===null?!1:Xi.exec(r)!==null||Zi.exec(r)!==null}function b5(r){var t,l,n,a,o,s,i,c=0,u=null,d,m,f;if(t=Xi.exec(r),t===null&&(t=Zi.exec(r)),t===null)throw new Error("Date resolve error");if(l=+t[1],n=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(l,n,a));if(o=+t[4],s=+t[5],i=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+="0";c=+c}return t[9]&&(d=+t[10],m=+(t[11]||0),u=(d*60+m)*6e4,t[9]==="-"&&(u=-u)),f=new Date(Date.UTC(l,n,a,o,s,i,c)),u&&f.setTime(f.getTime()-u),f}function k5(r){return r.toISOString()}var x5=new nt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:y5,construct:b5,instanceOf:Date,represent:k5});function w5(r){return r==="<<"||r===null}var _5=new nt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:w5}),Fa=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
253
253
|
\r`;function E5(r){if(r===null)return!1;var t,l,n=0,a=r.length,o=Fa;for(l=0;l<a;l++)if(t=o.indexOf(r.charAt(l)),!(t>64)){if(t<0)return!1;n+=6}return n%8===0}function C5(r){var t,l,n=r.replace(/[\r\n=]/g,""),a=n.length,o=Fa,s=0,i=[];for(t=0;t<a;t++)t%4===0&&t&&(i.push(s>>16&255),i.push(s>>8&255),i.push(s&255)),s=s<<6|o.indexOf(n.charAt(t));return l=a%4*6,l===0?(i.push(s>>16&255),i.push(s>>8&255),i.push(s&255)):l===18?(i.push(s>>10&255),i.push(s>>2&255)):l===12&&i.push(s>>4&255),new Uint8Array(i)}function V5(r){var t="",l=0,n,a,o=r.length,s=Fa;for(n=0;n<o;n++)n%3===0&&n&&(t+=s[l>>18&63],t+=s[l>>12&63],t+=s[l>>6&63],t+=s[l&63]),l=(l<<8)+r[n];return a=o%3,a===0?(t+=s[l>>18&63],t+=s[l>>12&63],t+=s[l>>6&63],t+=s[l&63]):a===2?(t+=s[l>>10&63],t+=s[l>>4&63],t+=s[l<<2&63],t+=s[64]):a===1&&(t+=s[l>>2&63],t+=s[l<<4&63],t+=s[64],t+=s[64]),t}function N5(r){return Object.prototype.toString.call(r)==="[object Uint8Array]"}var v5=new nt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:E5,construct:C5,predicate:N5,represent:V5}),B5=Object.prototype.hasOwnProperty,S5=Object.prototype.toString;function A5(r){if(r===null)return!0;var t=[],l,n,a,o,s,i=r;for(l=0,n=i.length;l<n;l+=1){if(a=i[l],s=!1,S5.call(a)!=="[object Object]")return!1;for(o in a)if(B5.call(a,o))if(!s)s=!0;else return!1;if(!s)return!1;if(t.indexOf(o)===-1)t.push(o);else return!1}return!0}function D5(r){return r!==null?r:[]}var M5=new nt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:A5,construct:D5}),T5=Object.prototype.toString;function L5(r){if(r===null)return!0;var t,l,n,a,o,s=r;for(o=new Array(s.length),t=0,l=s.length;t<l;t+=1){if(n=s[t],T5.call(n)!=="[object Object]"||(a=Object.keys(n),a.length!==1))return!1;o[t]=[a[0],n[a[0]]]}return!0}function $5(r){if(r===null)return[];var t,l,n,a,o,s=r;for(o=new Array(s.length),t=0,l=s.length;t<l;t+=1)n=s[t],a=Object.keys(n),o[t]=[a[0],n[a[0]]];return o}var F5=new nt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:L5,construct:$5}),I5=Object.prototype.hasOwnProperty;function O5(r){if(r===null)return!0;var t,l=r;for(t in l)if(I5.call(l,t)&&l[t]!==null)return!1;return!0}function P5(r){return r!==null?r:{}}var R5=new nt("tag:yaml.org,2002:set",{kind:"mapping",resolve:O5,construct:P5}),U5=g5.extend({implicit:[x5,_5],explicit:[v5,M5,F5,R5]});function Qi(r){return r===48?"\0":r===97?"\x07":r===98?"\b":r===116||r===9?" ":r===110?`
|